import { ToolbarStates } from '../types/toolbar';
import { CreatingElement, ShapeFormatPainter, TextFormatPainter } from '../types/edit';
import { DialogForExportTypes } from '../types/export';
import { TextAttrs } from '../utils/prosemirror/utils';
export interface MainState {
    activeElementIdList: string[];
    handleElementId: string;
    activeGroupElementId: string;
    hiddenElementIdList: string[];
    canvasPercentage: number;
    canvasScale: number;
    canvasDragged: boolean;
    thumbnailsFocus: boolean;
    editorAreaFocus: boolean;
    disableHotkeys: boolean;
    gridLineSize: number;
    showRuler: boolean;
    creatingElement: CreatingElement | null;
    creatingCustomShape: boolean;
    toolbarState: ToolbarStates;
    clipingImageElementId: string;
    originalPPTUrl: string;
    pptId: string;
    isScaling: boolean;
    richTextAttrs: TextAttrs;
    selectedTableCells: string[];
    selectedSlidesIndex: number[];
    dialogForExport: DialogForExportTypes;
    databaseId: string;
    textFormatPainter: TextFormatPainter | null;
    shapeFormatPainter: ShapeFormatPainter | null;
    showSelectPanel: boolean;
    showSearchPanel: boolean;
    showNotesPanel: boolean;
    showSymbolPanel: boolean;
    showMarkupPanel: boolean;
    showImageLibPanel: boolean;
    showAIPPTDialog: boolean | 'running';
}
export declare const databaseId: string;
export declare const useMainStore: import('pinia').StoreDefinition<"main", MainState, {
    activeElementList(state: {
        activeElementIdList: string[];
        handleElementId: string;
        activeGroupElementId: string;
        hiddenElementIdList: string[];
        canvasPercentage: number;
        canvasScale: number;
        canvasDragged: boolean;
        thumbnailsFocus: boolean;
        editorAreaFocus: boolean;
        disableHotkeys: boolean;
        gridLineSize: number;
        showRuler: boolean;
        creatingElement: {
            type: "text";
            vertical?: boolean | undefined;
        } | {
            type: "shape";
            data: {
                viewBox: [number, number];
                path: string;
                special?: boolean | undefined;
                pathFormula?: import('../types/slides').ShapePathFormulasKeys | undefined;
                outlined?: boolean | undefined;
                pptxShapeType?: string | undefined;
                title?: string | undefined;
                withborder?: boolean | undefined;
            };
        } | {
            type: "line";
            data: {
                path: string;
                style: import('../types/slides').LineStyleType;
                points: [import('../types/slides').LinePoint, import('../types/slides').LinePoint];
                isBroken?: boolean | undefined;
                isBroken2?: boolean | undefined;
                isCurve?: boolean | undefined;
                isCubic?: boolean | undefined;
            };
        } | null;
        creatingCustomShape: boolean;
        toolbarState: ToolbarStates;
        clipingImageElementId: string;
        originalPPTUrl: string;
        pptId: string;
        isScaling: boolean;
        richTextAttrs: {
            bold: boolean;
            em: boolean;
            underline: boolean;
            strikethrough: boolean;
            superscript: boolean;
            subscript: boolean;
            code: boolean;
            color: string;
            backcolor: string;
            fontsize: string;
            fontname: string;
            link: string;
            align: "left" | "center" | "right";
            bulletList: boolean;
            orderedList: boolean;
            blockquote: boolean;
        };
        selectedTableCells: string[];
        selectedSlidesIndex: number[];
        dialogForExport: DialogForExportTypes;
        databaseId: string;
        textFormatPainter: {
            keep: boolean;
            bold?: boolean | undefined;
            em?: boolean | undefined;
            underline?: boolean | undefined;
            strikethrough?: boolean | undefined;
            color?: string | undefined;
            backcolor?: string | undefined;
            fontsize?: string | undefined;
            fontname?: string | undefined;
            align?: "left" | "center" | "right" | undefined;
        } | null;
        shapeFormatPainter: {
            keep: boolean;
            fill?: string | undefined;
            gradient?: {
                type: import('../types/slides').GradientType;
                colors: {
                    pos: number;
                    color: string;
                }[];
                rotate: number;
            } | undefined;
            outline?: {
                style?: import('../types/slides').LineStyleType | undefined;
                width?: number | undefined;
                color?: string | undefined;
            } | undefined;
            opacity?: number | undefined;
            shadow?: {
                h: number;
                v: number;
                blur: number;
                color: string;
            } | undefined;
        } | null;
        showSelectPanel: boolean;
        showSearchPanel: boolean;
        showNotesPanel: boolean;
        showSymbolPanel: boolean;
        showMarkupPanel: boolean;
        showImageLibPanel: boolean;
        showAIPPTDialog: boolean | 'running';
    } & import('pinia').PiniaCustomStateProperties<MainState>): ({
        type: "text";
        content: string;
        defaultFontName: string;
        defaultColor: string;
        outline?: {
            style?: import('../types/slides').LineStyleType | undefined;
            width?: number | undefined;
            color?: string | undefined;
        } | undefined;
        fill?: string | undefined;
        lineHeight?: number | undefined;
        wordSpace?: number | undefined;
        opacity?: number | undefined;
        shadow?: {
            h: number;
            v: number;
            blur: number;
            color: string;
        } | undefined;
        paragraphSpace?: number | undefined;
        vertical?: boolean | undefined;
        textType?: import('../types/slides').TextType | undefined;
        id: string;
        left: number;
        top: number;
        lock?: boolean | undefined;
        groupId?: string | undefined;
        width: number;
        height: number;
        rotate: number;
        link?: {
            type: import('../types/slides').ElementLinkType;
            target: string;
        } | undefined;
        name?: string | undefined;
    } | {
        type: "image";
        fixedRatio: boolean;
        src: string;
        outline?: {
            style?: import('../types/slides').LineStyleType | undefined;
            width?: number | undefined;
            color?: string | undefined;
        } | undefined;
        filters?: {
            blur?: string | undefined;
            brightness?: string | undefined;
            contrast?: string | undefined;
            grayscale?: string | undefined;
            saturate?: string | undefined;
            'hue-rotate'?: string | undefined;
            sepia?: string | undefined;
            invert?: string | undefined;
            opacity?: string | undefined;
        } | undefined;
        clip?: {
            range: [[number, number], [number, number]];
            shape: string;
        } | undefined;
        flipH?: boolean | undefined;
        flipV?: boolean | undefined;
        shadow?: {
            h: number;
            v: number;
            blur: number;
            color: string;
        } | undefined;
        radius?: number | undefined;
        colorMask?: string | undefined;
        imageType?: import('../types/slides').ImageType | undefined;
        id: string;
        left: number;
        top: number;
        lock?: boolean | undefined;
        groupId?: string | undefined;
        width: number;
        height: number;
        rotate: number;
        link?: {
            type: import('../types/slides').ElementLinkType;
            target: string;
        } | undefined;
        name?: string | undefined;
    } | {
        type: "shape";
        viewBox: [number, number];
        path: string;
        fixedRatio: boolean;
        fill: string;
        gradient?: {
            type: import('../types/slides').GradientType;
            colors: {
                pos: number;
                color: string;
            }[];
            rotate: number;
        } | undefined;
        pattern?: string | undefined;
        outline?: {
            style?: import('../types/slides').LineStyleType | undefined;
            width?: number | undefined;
            color?: string | undefined;
        } | undefined;
        opacity?: number | undefined;
        flipH?: boolean | undefined;
        flipV?: boolean | undefined;
        shadow?: {
            h: number;
            v: number;
            blur: number;
            color: string;
        } | undefined;
        special?: boolean | undefined;
        text?: {
            content: string;
            defaultFontName: string;
            defaultColor: string;
            align: import('../types/slides').ShapeTextAlign;
            lineHeight?: number | undefined;
            wordSpace?: number | undefined;
            paragraphSpace?: number | undefined;
            type?: import('../types/slides').TextType | undefined;
        } | undefined;
        pathFormula?: import('../types/slides').ShapePathFormulasKeys | undefined;
        keypoints?: number[] | undefined;
        id: string;
        left: number;
        top: number;
        lock?: boolean | undefined;
        groupId?: string | undefined;
        width: number;
        height: number;
        rotate: number;
        link?: {
            type: import('../types/slides').ElementLinkType;
            target: string;
        } | undefined;
        name?: string | undefined;
    } | {
        type: "line";
        start: [number, number];
        end: [number, number];
        style: import('../types/slides').LineStyleType;
        color: string;
        points: [import('../types/slides').LinePoint, import('../types/slides').LinePoint];
        shadow?: {
            h: number;
            v: number;
            blur: number;
            color: string;
        } | undefined;
        broken?: [number, number] | undefined;
        broken2?: [number, number] | undefined;
        curve?: [number, number] | undefined;
        cubic?: [[number, number], [number, number]] | undefined;
        top: number;
        id: string;
        left: number;
        lock?: boolean | undefined;
        groupId?: string | undefined;
        width: number;
        link?: {
            type: import('../types/slides').ElementLinkType;
            target: string;
        } | undefined;
        name?: string | undefined;
    } | {
        type: "chart";
        fill?: string | undefined;
        chartType: import('../types/slides').ChartType;
        data: {
            labels: string[];
            legends: string[];
            series: number[][];
        };
        options?: {
            lineSmooth?: boolean | undefined;
            stack?: boolean | undefined;
        } | undefined;
        outline?: {
            style?: import('../types/slides').LineStyleType | undefined;
            width?: number | undefined;
            color?: string | undefined;
        } | undefined;
        themeColors: string[];
        textColor?: string | undefined;
        lineColor?: string | undefined;
        id: string;
        left: number;
        top: number;
        lock?: boolean | undefined;
        groupId?: string | undefined;
        width: number;
        height: number;
        rotate: number;
        link?: {
            type: import('../types/slides').ElementLinkType;
            target: string;
        } | undefined;
        name?: string | undefined;
    } | {
        type: "table";
        outline: {
            style?: import('../types/slides').LineStyleType | undefined;
            width?: number | undefined;
            color?: string | undefined;
        };
        theme?: {
            color: string;
            rowHeader: boolean;
            rowFooter: boolean;
            colHeader: boolean;
            colFooter: boolean;
        } | undefined;
        colWidths: number[];
        cellMinHeight: number;
        data: {
            id: string;
            colspan: number;
            rowspan: number;
            text: string;
            style?: {
                bold?: boolean | undefined;
                em?: boolean | undefined;
                underline?: boolean | undefined;
                strikethrough?: boolean | undefined;
                color?: string | undefined;
                backcolor?: string | undefined;
                fontsize?: string | undefined;
                fontname?: string | undefined;
                align?: import('../types/slides').TextAlign | undefined;
            } | undefined;
        }[][];
        id: string;
        left: number;
        top: number;
        lock?: boolean | undefined;
        groupId?: string | undefined;
        width: number;
        height: number;
        rotate: number;
        link?: {
            type: import('../types/slides').ElementLinkType;
            target: string;
        } | undefined;
        name?: string | undefined;
    } | {
        type: "latex";
        latex: string;
        path: string;
        color: string;
        strokeWidth: number;
        viewBox: [number, number];
        fixedRatio: boolean;
        id: string;
        left: number;
        top: number;
        lock?: boolean | undefined;
        groupId?: string | undefined;
        width: number;
        height: number;
        rotate: number;
        link?: {
            type: import('../types/slides').ElementLinkType;
            target: string;
        } | undefined;
        name?: string | undefined;
    } | {
        type: "video";
        src: string;
        autoplay: boolean;
        poster?: string | undefined;
        ext?: string | undefined;
        id: string;
        left: number;
        top: number;
        lock?: boolean | undefined;
        groupId?: string | undefined;
        width: number;
        height: number;
        rotate: number;
        link?: {
            type: import('../types/slides').ElementLinkType;
            target: string;
        } | undefined;
        name?: string | undefined;
    } | {
        type: "audio";
        fixedRatio: boolean;
        color: string;
        loop: boolean;
        autoplay: boolean;
        src: string;
        ext?: string | undefined;
        id: string;
        left: number;
        top: number;
        lock?: boolean | undefined;
        groupId?: string | undefined;
        width: number;
        height: number;
        rotate: number;
        link?: {
            type: import('../types/slides').ElementLinkType;
            target: string;
        } | undefined;
        name?: string | undefined;
    })[];
    handleElement(state: {
        activeElementIdList: string[];
        handleElementId: string;
        activeGroupElementId: string;
        hiddenElementIdList: string[];
        canvasPercentage: number;
        canvasScale: number;
        canvasDragged: boolean;
        thumbnailsFocus: boolean;
        editorAreaFocus: boolean;
        disableHotkeys: boolean;
        gridLineSize: number;
        showRuler: boolean;
        creatingElement: {
            type: "text";
            vertical?: boolean | undefined;
        } | {
            type: "shape";
            data: {
                viewBox: [number, number];
                path: string;
                special?: boolean | undefined;
                pathFormula?: import('../types/slides').ShapePathFormulasKeys | undefined;
                outlined?: boolean | undefined;
                pptxShapeType?: string | undefined;
                title?: string | undefined;
                withborder?: boolean | undefined;
            };
        } | {
            type: "line";
            data: {
                path: string;
                style: import('../types/slides').LineStyleType;
                points: [import('../types/slides').LinePoint, import('../types/slides').LinePoint];
                isBroken?: boolean | undefined;
                isBroken2?: boolean | undefined;
                isCurve?: boolean | undefined;
                isCubic?: boolean | undefined;
            };
        } | null;
        creatingCustomShape: boolean;
        toolbarState: ToolbarStates;
        clipingImageElementId: string;
        originalPPTUrl: string;
        pptId: string;
        isScaling: boolean;
        richTextAttrs: {
            bold: boolean;
            em: boolean;
            underline: boolean;
            strikethrough: boolean;
            superscript: boolean;
            subscript: boolean;
            code: boolean;
            color: string;
            backcolor: string;
            fontsize: string;
            fontname: string;
            link: string;
            align: "left" | "center" | "right";
            bulletList: boolean;
            orderedList: boolean;
            blockquote: boolean;
        };
        selectedTableCells: string[];
        selectedSlidesIndex: number[];
        dialogForExport: DialogForExportTypes;
        databaseId: string;
        textFormatPainter: {
            keep: boolean;
            bold?: boolean | undefined;
            em?: boolean | undefined;
            underline?: boolean | undefined;
            strikethrough?: boolean | undefined;
            color?: string | undefined;
            backcolor?: string | undefined;
            fontsize?: string | undefined;
            fontname?: string | undefined;
            align?: "left" | "center" | "right" | undefined;
        } | null;
        shapeFormatPainter: {
            keep: boolean;
            fill?: string | undefined;
            gradient?: {
                type: import('../types/slides').GradientType;
                colors: {
                    pos: number;
                    color: string;
                }[];
                rotate: number;
            } | undefined;
            outline?: {
                style?: import('../types/slides').LineStyleType | undefined;
                width?: number | undefined;
                color?: string | undefined;
            } | undefined;
            opacity?: number | undefined;
            shadow?: {
                h: number;
                v: number;
                blur: number;
                color: string;
            } | undefined;
        } | null;
        showSelectPanel: boolean;
        showSearchPanel: boolean;
        showNotesPanel: boolean;
        showSymbolPanel: boolean;
        showMarkupPanel: boolean;
        showImageLibPanel: boolean;
        showAIPPTDialog: boolean | 'running';
    } & import('pinia').PiniaCustomStateProperties<MainState>): {
        type: "text";
        content: string;
        defaultFontName: string;
        defaultColor: string;
        outline?: {
            style?: import('../types/slides').LineStyleType | undefined;
            width?: number | undefined;
            color?: string | undefined;
        } | undefined;
        fill?: string | undefined;
        lineHeight?: number | undefined;
        wordSpace?: number | undefined;
        opacity?: number | undefined;
        shadow?: {
            h: number;
            v: number;
            blur: number;
            color: string;
        } | undefined;
        paragraphSpace?: number | undefined;
        vertical?: boolean | undefined;
        textType?: import('../types/slides').TextType | undefined;
        id: string;
        left: number;
        top: number;
        lock?: boolean | undefined;
        groupId?: string | undefined;
        width: number;
        height: number;
        rotate: number;
        link?: {
            type: import('../types/slides').ElementLinkType;
            target: string;
        } | undefined;
        name?: string | undefined;
    } | {
        type: "image";
        fixedRatio: boolean;
        src: string;
        outline?: {
            style?: import('../types/slides').LineStyleType | undefined;
            width?: number | undefined;
            color?: string | undefined;
        } | undefined;
        filters?: {
            blur?: string | undefined;
            brightness?: string | undefined;
            contrast?: string | undefined;
            grayscale?: string | undefined;
            saturate?: string | undefined;
            'hue-rotate'?: string | undefined;
            sepia?: string | undefined;
            invert?: string | undefined;
            opacity?: string | undefined;
        } | undefined;
        clip?: {
            range: [[number, number], [number, number]];
            shape: string;
        } | undefined;
        flipH?: boolean | undefined;
        flipV?: boolean | undefined;
        shadow?: {
            h: number;
            v: number;
            blur: number;
            color: string;
        } | undefined;
        radius?: number | undefined;
        colorMask?: string | undefined;
        imageType?: import('../types/slides').ImageType | undefined;
        id: string;
        left: number;
        top: number;
        lock?: boolean | undefined;
        groupId?: string | undefined;
        width: number;
        height: number;
        rotate: number;
        link?: {
            type: import('../types/slides').ElementLinkType;
            target: string;
        } | undefined;
        name?: string | undefined;
    } | {
        type: "shape";
        viewBox: [number, number];
        path: string;
        fixedRatio: boolean;
        fill: string;
        gradient?: {
            type: import('../types/slides').GradientType;
            colors: {
                pos: number;
                color: string;
            }[];
            rotate: number;
        } | undefined;
        pattern?: string | undefined;
        outline?: {
            style?: import('../types/slides').LineStyleType | undefined;
            width?: number | undefined;
            color?: string | undefined;
        } | undefined;
        opacity?: number | undefined;
        flipH?: boolean | undefined;
        flipV?: boolean | undefined;
        shadow?: {
            h: number;
            v: number;
            blur: number;
            color: string;
        } | undefined;
        special?: boolean | undefined;
        text?: {
            content: string;
            defaultFontName: string;
            defaultColor: string;
            align: import('../types/slides').ShapeTextAlign;
            lineHeight?: number | undefined;
            wordSpace?: number | undefined;
            paragraphSpace?: number | undefined;
            type?: import('../types/slides').TextType | undefined;
        } | undefined;
        pathFormula?: import('../types/slides').ShapePathFormulasKeys | undefined;
        keypoints?: number[] | undefined;
        id: string;
        left: number;
        top: number;
        lock?: boolean | undefined;
        groupId?: string | undefined;
        width: number;
        height: number;
        rotate: number;
        link?: {
            type: import('../types/slides').ElementLinkType;
            target: string;
        } | undefined;
        name?: string | undefined;
    } | {
        type: "line";
        start: [number, number];
        end: [number, number];
        style: import('../types/slides').LineStyleType;
        color: string;
        points: [import('../types/slides').LinePoint, import('../types/slides').LinePoint];
        shadow?: {
            h: number;
            v: number;
            blur: number;
            color: string;
        } | undefined;
        broken?: [number, number] | undefined;
        broken2?: [number, number] | undefined;
        curve?: [number, number] | undefined;
        cubic?: [[number, number], [number, number]] | undefined;
        top: number;
        id: string;
        left: number;
        lock?: boolean | undefined;
        groupId?: string | undefined;
        width: number;
        link?: {
            type: import('../types/slides').ElementLinkType;
            target: string;
        } | undefined;
        name?: string | undefined;
    } | {
        type: "chart";
        fill?: string | undefined;
        chartType: import('../types/slides').ChartType;
        data: {
            labels: string[];
            legends: string[];
            series: number[][];
        };
        options?: {
            lineSmooth?: boolean | undefined;
            stack?: boolean | undefined;
        } | undefined;
        outline?: {
            style?: import('../types/slides').LineStyleType | undefined;
            width?: number | undefined;
            color?: string | undefined;
        } | undefined;
        themeColors: string[];
        textColor?: string | undefined;
        lineColor?: string | undefined;
        id: string;
        left: number;
        top: number;
        lock?: boolean | undefined;
        groupId?: string | undefined;
        width: number;
        height: number;
        rotate: number;
        link?: {
            type: import('../types/slides').ElementLinkType;
            target: string;
        } | undefined;
        name?: string | undefined;
    } | {
        type: "table";
        outline: {
            style?: import('../types/slides').LineStyleType | undefined;
            width?: number | undefined;
            color?: string | undefined;
        };
        theme?: {
            color: string;
            rowHeader: boolean;
            rowFooter: boolean;
            colHeader: boolean;
            colFooter: boolean;
        } | undefined;
        colWidths: number[];
        cellMinHeight: number;
        data: {
            id: string;
            colspan: number;
            rowspan: number;
            text: string;
            style?: {
                bold?: boolean | undefined;
                em?: boolean | undefined;
                underline?: boolean | undefined;
                strikethrough?: boolean | undefined;
                color?: string | undefined;
                backcolor?: string | undefined;
                fontsize?: string | undefined;
                fontname?: string | undefined;
                align?: import('../types/slides').TextAlign | undefined;
            } | undefined;
        }[][];
        id: string;
        left: number;
        top: number;
        lock?: boolean | undefined;
        groupId?: string | undefined;
        width: number;
        height: number;
        rotate: number;
        link?: {
            type: import('../types/slides').ElementLinkType;
            target: string;
        } | undefined;
        name?: string | undefined;
    } | {
        type: "latex";
        latex: string;
        path: string;
        color: string;
        strokeWidth: number;
        viewBox: [number, number];
        fixedRatio: boolean;
        id: string;
        left: number;
        top: number;
        lock?: boolean | undefined;
        groupId?: string | undefined;
        width: number;
        height: number;
        rotate: number;
        link?: {
            type: import('../types/slides').ElementLinkType;
            target: string;
        } | undefined;
        name?: string | undefined;
    } | {
        type: "video";
        src: string;
        autoplay: boolean;
        poster?: string | undefined;
        ext?: string | undefined;
        id: string;
        left: number;
        top: number;
        lock?: boolean | undefined;
        groupId?: string | undefined;
        width: number;
        height: number;
        rotate: number;
        link?: {
            type: import('../types/slides').ElementLinkType;
            target: string;
        } | undefined;
        name?: string | undefined;
    } | {
        type: "audio";
        fixedRatio: boolean;
        color: string;
        loop: boolean;
        autoplay: boolean;
        src: string;
        ext?: string | undefined;
        id: string;
        left: number;
        top: number;
        lock?: boolean | undefined;
        groupId?: string | undefined;
        width: number;
        height: number;
        rotate: number;
        link?: {
            type: import('../types/slides').ElementLinkType;
            target: string;
        } | undefined;
        name?: string | undefined;
    } | null;
}, {
    setActiveElementIdList(activeElementIdList: string[]): void;
    setHandleElementId(handleElementId: string): void;
    setActiveGroupElementId(activeGroupElementId: string): void;
    setHiddenElementIdList(hiddenElementIdList: string[]): void;
    setCanvasPercentage(percentage: number): void;
    setCanvasScale(scale: number): void;
    setCanvasDragged(isDragged: boolean): void;
    setThumbnailsFocus(isFocus: boolean): void;
    setEditorareaFocus(isFocus: boolean): void;
    setDisableHotkeysState(disable: boolean): void;
    setGridLineSize(size: number): void;
    setRulerState(show: boolean): void;
    setCreatingElement(element: CreatingElement | null): void;
    setCreatingCustomShapeState(state: boolean): void;
    setToolbarState(toolbarState: ToolbarStates): void;
    setClipingImageElementId(elId: string): void;
    setRichtextAttrs(attrs: TextAttrs): void;
    setSelectedTableCells(cells: string[]): void;
    setScalingState(isScaling: boolean): void;
    updateSelectedSlidesIndex(selectedSlidesIndex: number[]): void;
    setDialogForExport(type: DialogForExportTypes): void;
    setTextFormatPainter(textFormatPainter: TextFormatPainter | null): void;
    setShapeFormatPainter(shapeFormatPainter: ShapeFormatPainter | null): void;
    setSelectPanelState(show: boolean): void;
    setSearchPanelState(show: boolean): void;
    setNotesPanelState(show: boolean): void;
    setSymbolPanelState(show: boolean): void;
    setMarkupPanelState(show: boolean): void;
    setImageLibPanelState(show: boolean): void;
    setAIPPTDialogState(show: boolean | 'running'): void;
    setPPTId(id: string): void;
    setOriginalPPTUrl(url: string): void;
}>;
