import { IObservableValue } from 'mobx';
import * as React from 'react';
import { TemplateParam } from '../../../DatabaseServices/Template/Param/TemplateParam';
import { IDrawerDoorTempInfo, ISelectTempInfo } from '../../Store/DoorInterface';
import { ITemplateManageOption } from '../../Store/OptionInterface/TemplateManageOption';
import { ITemplateParam } from "../../Store/RightPanelStore/ITemplateParam";
import { TempalteEditorStore } from '../../Store/TemplateEditorStore';
import { IDirectoryProps } from '../SourceManage/CommonPanel';
export interface ITemplateListProps {
    deleteFun?: (temp: {
        module_id: any;
    }) => void;
    dataList?: any[];
    select?: (e: React.FormEvent<HTMLInputElement>, data: any) => void;
    getData?: () => void;
    /**当前的模板ui参数 */
    currentProps: ITemplateParam[];
    isRename?: IObservableValue<boolean>;
    /**当前点选的模板信息 */
    currentInfo: IDrawerDoorTempInfo;
    editor?: () => void;
    /**禁止删除模板 */
    forbidDelete?: boolean;
    /**隐藏选择checkbox */
    hideSelectBox?: boolean;
    /**选择的模板信息 */
    selectInfo?: ISelectTempInfo;
    currentDir?: IDirectoryProps;
    templateManageOption?: ITemplateManageOption;
    selectIds?: Set<string>;
    showInfos?: boolean;
    insert?: (bool: boolean) => void;
    searchStr?: string;
    searchDir?: boolean;
    isShowDetail?: boolean;
    isFromResource?: boolean;
    params: TemplateParam[];
    SetImageDefaultTemplate?: (id: string) => void;
}
export interface ITempItemBack {
    diy_logo: string;
    module_id: string;
    props: string;
    name: string;
    logo: string;
    dir_id: string;
    path: string;
    pathNum: number[];
    sn?: string;
    source?: string;
}
export declare class TemplateList extends React.Component<ITemplateListProps> {
    private watchDir;
    openResourceTree: IObservableValue<boolean>;
    store: TempalteEditorStore;
    _ScaleImagesContainer: HTMLElement;
    openScaleImages: IObservableValue<boolean>;
    UNSAFE_componentWillMount(): void;
    componentWillUnmount(): void;
    render(): JSX.Element;
    private handleMounseDown;
    private showContextMenu;
    private handleResourceTreeNodeclick;
    private copyid;
    private uploadCover;
    private undoCover;
    private publishTemplate;
    private scaleImages;
    private handleDbclick;
    private openDir;
}
//# sourceMappingURL=TemplateList.d.ts.map