import { IConfigOption } from "../../Components/Board/UserConfigComponent";
import { BoardStore } from "../BoardStore";
import { IDoorAndDrawerConfigOption, IDoorInfo, IDrawerInfo, ISelectTempInfo } from "../DoorInterface";
import { IUiOption } from "../OptionInterface/IOptionInterface";
import { ITemplateParam } from "../RightPanelStore/ITemplateParam";
type IDoorDrawer = IDoorInfo | IDrawerInfo;
export declare class DoorDrawerStore extends BoardStore<IDoorAndDrawerConfigOption> {
    m_Option: IDoorAndDrawerConfigOption;
    protected m_UiOption: IUiOption<IDoorAndDrawerConfigOption>;
    totalHeight: number;
    totalWidth: number;
    totalDepth: number;
    doorWidth: number;
    doorHeight: number;
    spaceWidth: number;
    spaceHeight: number;
    preDivWidth: number;
    preDivHeight: number;
    /**全部锁定高度后剩下的高度 */
    restHeight: number;
    previewEl: HTMLDivElement;
    doorDrawersInfo: IDoorDrawer[];
    /**当前模态框右侧模板属性 */
    currentTempProp: ITemplateParam[];
    /**当前模态框右侧拉手属性 */
    currentHandleProp: ITemplateParam[];
    selectTemplateInfo: ISelectTempInfo;
    private calcParam;
    get IsLockMidHeight(): boolean;
    get IsLockUpSpace(): boolean;
    get IsLockDownSpace(): boolean;
    get LockedTotalSize(): {
        setWidth: number;
        setHeight: number;
        lockAllHeight: boolean;
        lockAllWidth: boolean;
    };
    InitInfos(): void;
    /**更新计算后的总空间 */
    protected UpdateTotalCalcSpace(): void;
    /**更新预览图 */
    protected UpdatePreviewSize(): void;
    /**计算门板抽屉信息*/
    CalcInfos(): void;
    /**预留间隙和 */
    get TotalSpaceValue(): number;
    get HeightDivCount(): {
        count: number;
        constVal: number;
    };
    get WidthDivCount(): {
        count: number;
        constVal: number;
    };
    private UpdateUpDownSpace;
    protected DoorSizeConvertDivSize(size: number, isWidth: boolean, refSize?: number): number;
    /**
     *
     * 检查锁定是否有效
    */
    CheckLockSize(isWidth: boolean, hasToaster?: boolean, currentInfo?: IDrawerInfo): boolean;
    CalcPaddingTop(size: number): number;
    SaveConfig(): IConfigOption;
    UpdateOption(cof: IConfigOption): void;
    HasInvailValue(): string;
    protected UpdateDoorDrawerVersionInfo(cof: IConfigOption<IDoorAndDrawerConfigOption>): void;
    OnHandleUseBoardProcessOptionChange(): void;
    OnHandleIsModifyHardwareMaterialChange(): void;
}
export {};
//# sourceMappingURL=DoorDrawerStore.d.ts.map