import * as React from 'react';
import { BoardProcessOption, IGrooveOption, LayerNailOption, TBBoardOption, AnyObject, IDrawBoardAutoCutOption } from '../../Store/BoardInterface';
import { IConfigStore } from '../../Store/BoardStore';
import { DrillingOption } from '../../Store/drillInterface';
import { BoardModalType } from './BoardModal';
import { IDrawerInfo, IDoorInfo } from '../../Store/DoorInterface';
export interface IConfigOption<T = AnyObject> {
    option?: T;
    nailData?: LayerNailOption;
    topBoardData?: TBBoardOption;
    bottomBoardData?: TBBoardOption;
    processData?: BoardProcessOption;
    ruleMap?: Map<string, DrillingOption[]>;
    grooveData?: IGrooveOption;
    doorsInfo?: (IDrawerInfo | IDoorInfo)[];
    processGroupCategory?: string[];
    autoCutOption?: IDrawBoardAutoCutOption;
    other?: any;
}
export interface IExportConfigData {
    type: string;
    config: AnyObject;
    other?: any;
}
interface IConfigProps {
    type: BoardModalType;
    store: IConfigStore;
    isUpdate?: boolean;
    isExpImp?: boolean;
    otherConfig?: () => AnyObject;
}
/**
 *用户配置
 */
export declare class UserConfig extends React.Component<IConfigProps, {}> {
    private _userConfigStore;
    static defaultProps: {
        isUpdate: boolean;
        isExpImp: boolean;
    };
    private exportData;
    constructor(props: any);
    private handleInitConfig;
    private handleSaveConfig;
    private handleDeleteConfig;
    private updateBoardOption;
    UNSAFE_componentWillMount(): Promise<void>;
    render(): JSX.Element;
    private handleImport;
    private handleExport;
}
export {};
//# sourceMappingURL=UserConfig.d.ts.map