declare function __VLS_template(): {
    attrs: Partial<{}>;
    slots: {
        'header-left'?(_: {
            containerWidth: number;
            containerHeight: number;
            contentWidth: number;
            contentHeight: number;
            scale: number;
            scaleX: number;
            scaleY: number;
            offsetX: number;
            offsetY: number;
            anchorX: number;
            anchorY: number;
            renderMode: string;
        }): any;
        title?(_: {
            containerWidth: number;
            containerHeight: number;
            contentWidth: number;
            contentHeight: number;
            scale: number;
            scaleX: number;
            scaleY: number;
            offsetX: number;
            offsetY: number;
            anchorX: number;
            anchorY: number;
            renderMode: string;
        }): any;
        'header-right'?(_: {
            containerWidth: number;
            containerHeight: number;
            contentWidth: number;
            contentHeight: number;
            scale: number;
            scaleX: number;
            scaleY: number;
            offsetX: number;
            offsetY: number;
            anchorX: number;
            anchorY: number;
            renderMode: string;
        }): any;
        default?(_: {
            containerWidth: number;
            containerHeight: number;
            contentWidth: number;
            contentHeight: number;
            scale: number;
            scaleX: number;
            scaleY: number;
            offsetX: number;
            offsetY: number;
            anchorX: number;
            anchorY: number;
            renderMode: string;
        }): any;
    };
    refs: {
        scaleRef: ({
            $: import('vue').ComponentInternalInstance;
            $data: {};
            $props: Partial<{
                width: number;
                height: number;
                mode: string;
                renderMode: string;
                alignX: string;
                alignY: string;
                containerSelector: string;
                disabled: boolean;
                minScale: number;
                maxScale: number;
                overflowHidden: boolean;
                background: string;
                useResizeObserver: boolean;
                listenWindowResize: boolean;
                transitionDuration: number;
                transitionTimingFunction: string;
            }> & Omit<{
                readonly width: number;
                readonly height: number;
                readonly mode: string;
                readonly renderMode: string;
                readonly alignX: string;
                readonly alignY: string;
                readonly containerSelector: string;
                readonly disabled: boolean;
                readonly minScale: number;
                readonly maxScale: number;
                readonly overflowHidden: boolean;
                readonly background: string;
                readonly useResizeObserver: boolean;
                readonly listenWindowResize: boolean;
                readonly transitionDuration: number;
                readonly transitionTimingFunction: string;
                readonly onUpdate?: ((...args: any[]) => any) | undefined;
            } & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps, "width" | "height" | "mode" | "renderMode" | "alignX" | "alignY" | "containerSelector" | "disabled" | "minScale" | "maxScale" | "overflowHidden" | "background" | "useResizeObserver" | "listenWindowResize" | "transitionDuration" | "transitionTimingFunction">;
            $attrs: import('vue').Attrs;
            $refs: {
                [x: string]: unknown;
            } & {
                wrapperRef: HTMLDivElement;
            };
            $slots: Readonly<{
                [name: string]: import('vue').Slot<any> | undefined;
            }>;
            $root: import('vue').ComponentPublicInstance | null;
            $parent: import('vue').ComponentPublicInstance | null;
            $host: Element | null;
            $emit: (event: "update", ...args: any[]) => void;
            $el: HTMLDivElement;
            $options: import('vue').ComponentOptionsBase<Readonly<import('vue').ExtractPropTypes<{
                width: {
                    type: NumberConstructor;
                    default: number;
                };
                height: {
                    type: NumberConstructor;
                    default: number;
                };
                mode: {
                    type: StringConstructor;
                    default: string;
                };
                renderMode: {
                    type: StringConstructor;
                    default: string;
                };
                alignX: {
                    type: StringConstructor;
                    default: string;
                };
                alignY: {
                    type: StringConstructor;
                    default: string;
                };
                containerSelector: {
                    type: StringConstructor;
                    default: string;
                };
                disabled: {
                    type: BooleanConstructor;
                    default: boolean;
                };
                minScale: {
                    type: NumberConstructor;
                    default: number;
                };
                maxScale: {
                    type: NumberConstructor;
                    default: number;
                };
                overflowHidden: {
                    type: BooleanConstructor;
                    default: boolean;
                };
                background: {
                    type: StringConstructor;
                    default: string;
                };
                useResizeObserver: {
                    type: BooleanConstructor;
                    default: boolean;
                };
                listenWindowResize: {
                    type: BooleanConstructor;
                    default: boolean;
                };
                transitionDuration: {
                    type: NumberConstructor;
                    default: number;
                };
                transitionTimingFunction: {
                    type: StringConstructor;
                    default: string;
                };
            }>> & Readonly<{
                onUpdate?: ((...args: any[]) => any) | undefined;
            }>, {
                refresh: () => void;
            }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
                update: (...args: any[]) => void;
            }, string, {
                width: number;
                height: number;
                mode: string;
                renderMode: string;
                alignX: string;
                alignY: string;
                containerSelector: string;
                disabled: boolean;
                minScale: number;
                maxScale: number;
                overflowHidden: boolean;
                background: string;
                useResizeObserver: boolean;
                listenWindowResize: boolean;
                transitionDuration: number;
                transitionTimingFunction: string;
            }, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & {
                beforeCreate?: (() => void) | (() => void)[];
                created?: (() => void) | (() => void)[];
                beforeMount?: (() => void) | (() => void)[];
                mounted?: (() => void) | (() => void)[];
                beforeUpdate?: (() => void) | (() => void)[];
                updated?: (() => void) | (() => void)[];
                activated?: (() => void) | (() => void)[];
                deactivated?: (() => void) | (() => void)[];
                beforeDestroy?: (() => void) | (() => void)[];
                beforeUnmount?: (() => void) | (() => void)[];
                destroyed?: (() => void) | (() => void)[];
                unmounted?: (() => void) | (() => void)[];
                renderTracked?: ((e: import('vue').DebuggerEvent) => void) | ((e: import('vue').DebuggerEvent) => void)[];
                renderTriggered?: ((e: import('vue').DebuggerEvent) => void) | ((e: import('vue').DebuggerEvent) => void)[];
                errorCaptured?: ((err: unknown, instance: import('vue').ComponentPublicInstance | null, info: string) => boolean | void) | ((err: unknown, instance: import('vue').ComponentPublicInstance | null, info: string) => boolean | void)[];
            };
            $forceUpdate: () => void;
            $nextTick: typeof import('vue').nextTick;
            $watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (...args: [R, R, import('@vue/reactivity').OnCleanup]) => any : (...args: [any, any, import('@vue/reactivity').OnCleanup]) => any, options?: import('vue').WatchOptions): import('vue').WatchStopHandle;
        } & Readonly<{
            width: number;
            height: number;
            mode: string;
            renderMode: string;
            alignX: string;
            alignY: string;
            containerSelector: string;
            disabled: boolean;
            minScale: number;
            maxScale: number;
            overflowHidden: boolean;
            background: string;
            useResizeObserver: boolean;
            listenWindowResize: boolean;
            transitionDuration: number;
            transitionTimingFunction: string;
        }> & Omit<Readonly<import('vue').ExtractPropTypes<{
            width: {
                type: NumberConstructor;
                default: number;
            };
            height: {
                type: NumberConstructor;
                default: number;
            };
            mode: {
                type: StringConstructor;
                default: string;
            };
            renderMode: {
                type: StringConstructor;
                default: string;
            };
            alignX: {
                type: StringConstructor;
                default: string;
            };
            alignY: {
                type: StringConstructor;
                default: string;
            };
            containerSelector: {
                type: StringConstructor;
                default: string;
            };
            disabled: {
                type: BooleanConstructor;
                default: boolean;
            };
            minScale: {
                type: NumberConstructor;
                default: number;
            };
            maxScale: {
                type: NumberConstructor;
                default: number;
            };
            overflowHidden: {
                type: BooleanConstructor;
                default: boolean;
            };
            background: {
                type: StringConstructor;
                default: string;
            };
            useResizeObserver: {
                type: BooleanConstructor;
                default: boolean;
            };
            listenWindowResize: {
                type: BooleanConstructor;
                default: boolean;
            };
            transitionDuration: {
                type: NumberConstructor;
                default: number;
            };
            transitionTimingFunction: {
                type: StringConstructor;
                default: string;
            };
        }>> & Readonly<{
            onUpdate?: ((...args: any[]) => any) | undefined;
        }>, "refresh" | ("width" | "height" | "mode" | "renderMode" | "alignX" | "alignY" | "containerSelector" | "disabled" | "minScale" | "maxScale" | "overflowHidden" | "background" | "useResizeObserver" | "listenWindowResize" | "transitionDuration" | "transitionTimingFunction")> & {
            refresh: () => void;
        } & {} & import('vue').ComponentCustomProperties & {} & {
            $slots: {
                default?(_: {
                    containerWidth: number;
                    containerHeight: number;
                    contentWidth: number;
                    contentHeight: number;
                    scale: number;
                    scaleX: number;
                    scaleY: number;
                    offsetX: number;
                    offsetY: number;
                    anchorX: number;
                    anchorY: number;
                    renderMode: string;
                }): any;
            };
        }) | null;
    };
    rootEl: HTMLDivElement;
};
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
declare const __VLS_component: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
    title: {
        type: StringConstructor;
        default: string;
    };
    width: {
        type: NumberConstructor;
        default: number;
    };
    height: {
        type: NumberConstructor;
        default: number;
    };
    scaleMode: {
        type: StringConstructor;
        default: string;
    };
    renderMode: {
        type: StringConstructor;
        default: string;
    };
    alignX: {
        type: StringConstructor;
        default: string;
    };
    alignY: {
        type: StringConstructor;
        default: string;
    };
    containerSelector: {
        type: StringConstructor;
        default: string;
    };
    disabledScale: {
        type: BooleanConstructor;
        default: boolean;
    };
    minScale: {
        type: NumberConstructor;
        default: number;
    };
    maxScale: {
        type: NumberConstructor;
        default: number;
    };
    overflowHidden: {
        type: BooleanConstructor;
        default: boolean;
    };
    useResizeObserver: {
        type: BooleanConstructor;
        default: boolean;
    };
    listenWindowResize: {
        type: BooleanConstructor;
        default: boolean;
    };
    headerHeight: {
        type: NumberConstructor;
        default: number;
    };
    contentPadding: {
        type: StringConstructor;
        default: string;
    };
    gap: {
        type: NumberConstructor;
        default: number;
    };
    background: {
        type: StringConstructor;
        default: string;
    };
    pageBackgroundImage: {
        type: StringConstructor;
        default: string;
    };
    headerBackgroundImage: {
        type: StringConstructor;
        default: string;
    };
    showHeader: {
        type: BooleanConstructor;
        default: boolean;
    };
    showDateTime: {
        type: BooleanConstructor;
        default: boolean;
    };
    titleClickable: {
        type: BooleanConstructor;
        default: boolean;
    };
    teleportDialog: {
        type: BooleanConstructor;
        default: boolean;
    };
    /** micro-app 下可指定主应用挂载点选择器，默认挂到真实 window.document.body */
    teleportTo: {
        type: StringConstructor;
        default: string;
    };
}>, {
    refresh: () => void | undefined;
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
    "title-click": (...args: any[]) => void;
    "scale-update": (...args: any[]) => void;
}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
    title: {
        type: StringConstructor;
        default: string;
    };
    width: {
        type: NumberConstructor;
        default: number;
    };
    height: {
        type: NumberConstructor;
        default: number;
    };
    scaleMode: {
        type: StringConstructor;
        default: string;
    };
    renderMode: {
        type: StringConstructor;
        default: string;
    };
    alignX: {
        type: StringConstructor;
        default: string;
    };
    alignY: {
        type: StringConstructor;
        default: string;
    };
    containerSelector: {
        type: StringConstructor;
        default: string;
    };
    disabledScale: {
        type: BooleanConstructor;
        default: boolean;
    };
    minScale: {
        type: NumberConstructor;
        default: number;
    };
    maxScale: {
        type: NumberConstructor;
        default: number;
    };
    overflowHidden: {
        type: BooleanConstructor;
        default: boolean;
    };
    useResizeObserver: {
        type: BooleanConstructor;
        default: boolean;
    };
    listenWindowResize: {
        type: BooleanConstructor;
        default: boolean;
    };
    headerHeight: {
        type: NumberConstructor;
        default: number;
    };
    contentPadding: {
        type: StringConstructor;
        default: string;
    };
    gap: {
        type: NumberConstructor;
        default: number;
    };
    background: {
        type: StringConstructor;
        default: string;
    };
    pageBackgroundImage: {
        type: StringConstructor;
        default: string;
    };
    headerBackgroundImage: {
        type: StringConstructor;
        default: string;
    };
    showHeader: {
        type: BooleanConstructor;
        default: boolean;
    };
    showDateTime: {
        type: BooleanConstructor;
        default: boolean;
    };
    titleClickable: {
        type: BooleanConstructor;
        default: boolean;
    };
    teleportDialog: {
        type: BooleanConstructor;
        default: boolean;
    };
    /** micro-app 下可指定主应用挂载点选择器，默认挂到真实 window.document.body */
    teleportTo: {
        type: StringConstructor;
        default: string;
    };
}>> & Readonly<{
    "onTitle-click"?: ((...args: any[]) => any) | undefined;
    "onScale-update"?: ((...args: any[]) => any) | undefined;
}>, {
    title: string;
    width: number;
    height: number;
    renderMode: string;
    alignX: string;
    alignY: string;
    containerSelector: string;
    minScale: number;
    maxScale: number;
    overflowHidden: boolean;
    background: string;
    useResizeObserver: boolean;
    listenWindowResize: boolean;
    titleClickable: boolean;
    scaleMode: string;
    disabledScale: boolean;
    headerHeight: number;
    contentPadding: string;
    gap: number;
    pageBackgroundImage: string;
    headerBackgroundImage: string;
    showHeader: boolean;
    showDateTime: boolean;
    teleportDialog: boolean;
    teleportTo: string;
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {
    scaleRef: ({
        $: import('vue').ComponentInternalInstance;
        $data: {};
        $props: Partial<{
            width: number;
            height: number;
            mode: string;
            renderMode: string;
            alignX: string;
            alignY: string;
            containerSelector: string;
            disabled: boolean;
            minScale: number;
            maxScale: number;
            overflowHidden: boolean;
            background: string;
            useResizeObserver: boolean;
            listenWindowResize: boolean;
            transitionDuration: number;
            transitionTimingFunction: string;
        }> & Omit<{
            readonly width: number;
            readonly height: number;
            readonly mode: string;
            readonly renderMode: string;
            readonly alignX: string;
            readonly alignY: string;
            readonly containerSelector: string;
            readonly disabled: boolean;
            readonly minScale: number;
            readonly maxScale: number;
            readonly overflowHidden: boolean;
            readonly background: string;
            readonly useResizeObserver: boolean;
            readonly listenWindowResize: boolean;
            readonly transitionDuration: number;
            readonly transitionTimingFunction: string;
            readonly onUpdate?: ((...args: any[]) => any) | undefined;
        } & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps, "width" | "height" | "mode" | "renderMode" | "alignX" | "alignY" | "containerSelector" | "disabled" | "minScale" | "maxScale" | "overflowHidden" | "background" | "useResizeObserver" | "listenWindowResize" | "transitionDuration" | "transitionTimingFunction">;
        $attrs: import('vue').Attrs;
        $refs: {
            [x: string]: unknown;
        } & {
            wrapperRef: HTMLDivElement;
        };
        $slots: Readonly<{
            [name: string]: import('vue').Slot<any> | undefined;
        }>;
        $root: import('vue').ComponentPublicInstance | null;
        $parent: import('vue').ComponentPublicInstance | null;
        $host: Element | null;
        $emit: (event: "update", ...args: any[]) => void;
        $el: HTMLDivElement;
        $options: import('vue').ComponentOptionsBase<Readonly<import('vue').ExtractPropTypes<{
            width: {
                type: NumberConstructor;
                default: number;
            };
            height: {
                type: NumberConstructor;
                default: number;
            };
            mode: {
                type: StringConstructor;
                default: string;
            };
            renderMode: {
                type: StringConstructor;
                default: string;
            };
            alignX: {
                type: StringConstructor;
                default: string;
            };
            alignY: {
                type: StringConstructor;
                default: string;
            };
            containerSelector: {
                type: StringConstructor;
                default: string;
            };
            disabled: {
                type: BooleanConstructor;
                default: boolean;
            };
            minScale: {
                type: NumberConstructor;
                default: number;
            };
            maxScale: {
                type: NumberConstructor;
                default: number;
            };
            overflowHidden: {
                type: BooleanConstructor;
                default: boolean;
            };
            background: {
                type: StringConstructor;
                default: string;
            };
            useResizeObserver: {
                type: BooleanConstructor;
                default: boolean;
            };
            listenWindowResize: {
                type: BooleanConstructor;
                default: boolean;
            };
            transitionDuration: {
                type: NumberConstructor;
                default: number;
            };
            transitionTimingFunction: {
                type: StringConstructor;
                default: string;
            };
        }>> & Readonly<{
            onUpdate?: ((...args: any[]) => any) | undefined;
        }>, {
            refresh: () => void;
        }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
            update: (...args: any[]) => void;
        }, string, {
            width: number;
            height: number;
            mode: string;
            renderMode: string;
            alignX: string;
            alignY: string;
            containerSelector: string;
            disabled: boolean;
            minScale: number;
            maxScale: number;
            overflowHidden: boolean;
            background: string;
            useResizeObserver: boolean;
            listenWindowResize: boolean;
            transitionDuration: number;
            transitionTimingFunction: string;
        }, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & {
            beforeCreate?: (() => void) | (() => void)[];
            created?: (() => void) | (() => void)[];
            beforeMount?: (() => void) | (() => void)[];
            mounted?: (() => void) | (() => void)[];
            beforeUpdate?: (() => void) | (() => void)[];
            updated?: (() => void) | (() => void)[];
            activated?: (() => void) | (() => void)[];
            deactivated?: (() => void) | (() => void)[];
            beforeDestroy?: (() => void) | (() => void)[];
            beforeUnmount?: (() => void) | (() => void)[];
            destroyed?: (() => void) | (() => void)[];
            unmounted?: (() => void) | (() => void)[];
            renderTracked?: ((e: import('vue').DebuggerEvent) => void) | ((e: import('vue').DebuggerEvent) => void)[];
            renderTriggered?: ((e: import('vue').DebuggerEvent) => void) | ((e: import('vue').DebuggerEvent) => void)[];
            errorCaptured?: ((err: unknown, instance: import('vue').ComponentPublicInstance | null, info: string) => boolean | void) | ((err: unknown, instance: import('vue').ComponentPublicInstance | null, info: string) => boolean | void)[];
        };
        $forceUpdate: () => void;
        $nextTick: typeof import('vue').nextTick;
        $watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (...args: [R, R, import('@vue/reactivity').OnCleanup]) => any : (...args: [any, any, import('@vue/reactivity').OnCleanup]) => any, options?: import('vue').WatchOptions): import('vue').WatchStopHandle;
    } & Readonly<{
        width: number;
        height: number;
        mode: string;
        renderMode: string;
        alignX: string;
        alignY: string;
        containerSelector: string;
        disabled: boolean;
        minScale: number;
        maxScale: number;
        overflowHidden: boolean;
        background: string;
        useResizeObserver: boolean;
        listenWindowResize: boolean;
        transitionDuration: number;
        transitionTimingFunction: string;
    }> & Omit<Readonly<import('vue').ExtractPropTypes<{
        width: {
            type: NumberConstructor;
            default: number;
        };
        height: {
            type: NumberConstructor;
            default: number;
        };
        mode: {
            type: StringConstructor;
            default: string;
        };
        renderMode: {
            type: StringConstructor;
            default: string;
        };
        alignX: {
            type: StringConstructor;
            default: string;
        };
        alignY: {
            type: StringConstructor;
            default: string;
        };
        containerSelector: {
            type: StringConstructor;
            default: string;
        };
        disabled: {
            type: BooleanConstructor;
            default: boolean;
        };
        minScale: {
            type: NumberConstructor;
            default: number;
        };
        maxScale: {
            type: NumberConstructor;
            default: number;
        };
        overflowHidden: {
            type: BooleanConstructor;
            default: boolean;
        };
        background: {
            type: StringConstructor;
            default: string;
        };
        useResizeObserver: {
            type: BooleanConstructor;
            default: boolean;
        };
        listenWindowResize: {
            type: BooleanConstructor;
            default: boolean;
        };
        transitionDuration: {
            type: NumberConstructor;
            default: number;
        };
        transitionTimingFunction: {
            type: StringConstructor;
            default: string;
        };
    }>> & Readonly<{
        onUpdate?: ((...args: any[]) => any) | undefined;
    }>, "refresh" | ("width" | "height" | "mode" | "renderMode" | "alignX" | "alignY" | "containerSelector" | "disabled" | "minScale" | "maxScale" | "overflowHidden" | "background" | "useResizeObserver" | "listenWindowResize" | "transitionDuration" | "transitionTimingFunction")> & {
        refresh: () => void;
    } & {} & import('vue').ComponentCustomProperties & {} & {
        $slots: {
            default?(_: {
                containerWidth: number;
                containerHeight: number;
                contentWidth: number;
                contentHeight: number;
                scale: number;
                scaleX: number;
                scaleY: number;
                offsetX: number;
                offsetY: number;
                anchorX: number;
                anchorY: number;
                renderMode: string;
            }): any;
        };
    }) | null;
}, HTMLDivElement>;
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
export default _default;
type __VLS_WithTemplateSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
