import { ITreeNode } from '@blueprintjs/core';
import * as React from 'react';
import { DirectoryId } from '../../../Common/Request';
import './TexturePanel.less';
export interface IDirectoryProps {
    id: DirectoryId | string;
    path: string;
    pathNum: number[];
}
interface ICommonPanelState {
    isContextMenuOpen: boolean;
    nodes: ITreeNode[];
    defaultDirName: string;
    updateNode: ITreeNode;
    isSelectAll: boolean;
    searchStr: string;
    searchDir: boolean;
}
interface ICommonPanelProps {
    defaultDirId: string;
    renderNav?: () => JSX.Element;
    renderMenuItems?: () => JSX.Element;
    canDelete?: boolean;
    deleteUrl: string;
    getUrl: string;
    clickTree?: () => void;
    delete?: (data: any) => void;
    canOrder?: boolean;
    maxDirLength?: number;
    copyUrl?: string;
    dirNameFilter?: string[];
    loadCacheDirKey?: string;
}
/**
 * 贴图,材质面板通用组件,左边目录右边数据列表
 */
export declare class CommonPanel extends React.Component<ICommonPanelProps, ICommonPanelState> {
    private tree;
    startHandleDir: import("mobx").IObservableValue<boolean>;
    private timeId;
    dataList: import("mobx").IObservableArray<any>;
    selectIds: Set<string>;
    private _orderType;
    currentDir: IDirectoryProps;
    pageData: {
        count: number;
        currentPage: number;
        pageCount: number;
    };
    private _dragId;
    private nodeEls;
    static defaultProps: Partial<ICommonPanelProps>;
    static CurrentDirCache: Map<string, IDirectoryProps>;
    private selectContainer;
    private selectTool;
    private idKey;
    private loading;
    private showInfos;
    private event;
    private copyIds;
    searchedDirs: IDirectoryProps[];
    constructor(props: any);
    get IsCtrlDown(): true | Boolean;
    componentDidMount(): void;
    componentWillUnmount(): void;
    render(): JSX.Element;
    private handleSelectAll;
    private handleSelectData;
    private SelectNode;
    private handleNodeClick;
    private forEachNode;
    private handleNodeCollapse;
    private getCurrentDir;
    private showContextMenu;
    private parseNodes;
    private handleDir;
    private handleAddDir;
    private addTreeNodes;
    private handleUpdateDir;
    handleDeleteDir: () => Promise<void>;
    private DeleteTreeNode;
    handleSearch: (e: React.ChangeEvent<HTMLInputElement>) => Promise<void>;
    /**
    * 服务段获取数据
    * name-查询字符串,curr_page-当前页,dir_id:目录id
    *  desc 倒序
    */
    handleGetData: (queryData?: {
        dir_id?: string;
        name?: string;
        curr_page?: number;
    }) => Promise<void>;
    private getSelectDataIds;
    private handDeleteData;
    private handleTreeMouseDown;
    private updateNodeEls;
    private getTargetId;
    private _moveDirId;
    private _moveElement;
    private handleDirDragStart;
    private _targetElement;
    private _postion;
    private handleDirMove;
    private handleDragStart;
    private handleDragEnd;
    private handleMoveFiles;
    private expandTimeId;
    private handleDragEnterFile;
    private handleDragLeave;
    private loadCurrentNode;
    private loadingData;
    private moveDir;
    private sendDir;
    private getNodeFromId;
    private moveDirNode;
    private autoExpand;
    private getPathInfoById;
    private handleKeydown;
    private _isPasted;
    private copy;
    private paste;
    private toggleSearch;
    private searchDir;
    private clickSearchDir;
}
export {};
//# sourceMappingURL=CommonPanel.d.ts.map