import { PropType } from "vue";
declare const Button: {
    new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<Readonly<{
        label?: string;
        labelClass?: string | Object;
        icon?: string;
        iconClass?: string | Object;
        iconRight?: string;
        iconRightClass?: string | Object;
        disabled?: boolean;
        focusDisabled?: boolean;
    }> & Readonly<{}>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, import("vue").PublicProps, {
        disabled: boolean;
        labelClass: string | Object;
        iconClass: string | Object;
        iconRightClass: string | Object;
        focusDisabled: boolean;
    }, false, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
        P: {};
        B: {};
        D: {};
        C: {};
        M: {};
        Defaults: {};
    }, Readonly<{
        label?: string;
        labelClass?: string | Object;
        icon?: string;
        iconClass?: string | Object;
        iconRight?: string;
        iconRightClass?: string | Object;
        disabled?: boolean;
        focusDisabled?: boolean;
    }> & Readonly<{}>, {}, {}, {}, {}, {
        disabled: boolean;
        labelClass: string | Object;
        iconClass: string | Object;
        iconRightClass: string | Object;
        focusDisabled: boolean;
    }>;
    __isFragment?: never;
    __isTeleport?: never;
    __isSuspense?: never;
} & import("vue").ComponentOptionsBase<Readonly<{
    label?: string;
    labelClass?: string | Object;
    icon?: string;
    iconClass?: string | Object;
    iconRight?: string;
    iconRightClass?: string | Object;
    disabled?: boolean;
    focusDisabled?: boolean;
}> & Readonly<{}>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, {
    disabled: boolean;
    labelClass: string | Object;
    iconClass: string | Object;
    iconRightClass: string | Object;
    focusDisabled: boolean;
}, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
    $slots: {
        default?: ((props: {}) => any) | undefined;
    };
});
declare const Pager: import("vue").DefineComponent<{
    modelValue: number;
    pages: number;
    disabled?: boolean;
    mode: "vertical" | "horizontal";
}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    "update:modelValue": (...args: any[]) => void;
}, string, import("vue").PublicProps, Readonly<{
    modelValue: number;
    pages: number;
    disabled?: boolean;
    mode: "vertical" | "horizontal";
}> & Readonly<{
    "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
}>, {
    pages: number;
    disabled: boolean;
    modelValue: number;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
declare const Zoomer: import("vue").DefineComponent<{
    scale: number;
    scales?: Array<{
        value?: number | string;
        show: boolean;
        label?: string;
    }>;
    disabled?: boolean;
}, {
    scales: import("vue").ComputedRef<{
        value?: number | string;
        show: boolean;
        label?: string;
    }[]>;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    "update:scale": (...args: any[]) => void;
    fitPage: (...args: any[]) => void;
}, string, import("vue").PublicProps, Readonly<{
    scale: number;
    scales?: Array<{
        value?: number | string;
        show: boolean;
        label?: string;
    }>;
    disabled?: boolean;
}> & Readonly<{
    "onUpdate:scale"?: ((...args: any[]) => any) | undefined;
    onFitPage?: ((...args: any[]) => any) | undefined;
}>, {
    scale: number;
    scales: Array<{
        value?: number | string;
        show: boolean;
        label?: string;
    }>;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
declare const emit: (event: "update:page" | "update:scale" | "fitPage" | "update:mode" | "update:sidebar" | "update:rotation", ...args: any[]) => void;
declare const zoomer: import("vue").Ref<import("vue").DefineComponent<{
    scale: number;
    scales?: Array<{
        value?: number | string;
        show: boolean;
        label?: string;
    }>;
    disabled?: boolean;
}, {
    scales: import("vue").ComputedRef<{
        value?: number | string;
        show: boolean;
        label?: string;
    }[]>;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    "update:scale": (...args: any[]) => void;
    fitPage: (...args: any[]) => void;
}, string, import("vue").PublicProps, Readonly<{
    scale: number;
    scales?: Array<{
        value?: number | string;
        show: boolean;
        label?: string;
    }>;
    disabled?: boolean;
}> & Readonly<{
    "onUpdate:scale"?: ((...args: any[]) => any) | undefined;
    onFitPage?: ((...args: any[]) => any) | undefined;
}>, {
    scale: number;
    scales: Array<{
        value?: number | string;
        show: boolean;
        label?: string;
    }>;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any> | undefined, import("vue").DefineComponent<{
    scale: number;
    scales?: Array<{
        value?: number | string;
        show: boolean;
        label?: string;
    }>;
    disabled?: boolean;
}, {
    scales: import("vue").ComputedRef<{
        value?: number | string;
        show: boolean;
        label?: string;
    }[]>;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    "update:scale": (...args: any[]) => void;
    fitPage: (...args: any[]) => void;
}, string, import("vue").PublicProps, Readonly<{
    scale: number;
    scales?: Array<{
        value?: number | string;
        show: boolean;
        label?: string;
    }>;
    disabled?: boolean;
}> & Readonly<{
    "onUpdate:scale"?: ((...args: any[]) => any) | undefined;
    onFitPage?: ((...args: any[]) => any) | undefined;
}>, {
    scale: number;
    scales: Array<{
        value?: number | string;
        show: boolean;
        label?: string;
    }>;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any> | undefined>;
declare const _scale: import("vue").WritableComputedRef<number, number>;
declare const _page: import("vue").WritableComputedRef<number, number>;
declare const _sidebar: import("vue").WritableComputedRef<boolean, boolean>;
declare const toggleViewMode: () => void;
declare const rotate: (deg: number) => void;
declare const __VLS_ctx: InstanceType<__VLS_PickNotAny<typeof __VLS_self, new () => {}>>;
declare var __VLS_1: {}, __VLS_41: {};
type __VLS_Slots = __VLS_PrettifyGlobal<__VLS_OmitStringIndex<typeof __VLS_ctx.$slots> & {
    prepend?: (props: typeof __VLS_1) => any;
} & {
    append?: (props: typeof __VLS_41) => any;
}>;
declare const __VLS_self: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
    page: {
        type: NumberConstructor;
        default: number;
    };
    pages: {
        type: NumberConstructor;
        default: number;
    };
    scale: {
        type: NumberConstructor;
        default: number;
    };
    rotation: {
        type: NumberConstructor;
        default: number;
        validator: (val: number) => boolean;
    };
    mode: {
        type: PropType<"vertical" | "horizontal">;
        default: string;
    };
    sidebar: {
        type: BooleanConstructor;
        default: boolean;
    };
    loading: {
        type: BooleanConstructor;
        default: boolean;
    };
    disabled: {
        type: BooleanConstructor;
        default: boolean;
    };
}>, {
    Button: typeof Button;
    Pager: typeof Pager;
    Zoomer: typeof Zoomer;
    emit: typeof emit;
    zoomer: typeof zoomer;
    _scale: typeof _scale;
    _page: typeof _page;
    _sidebar: typeof _sidebar;
    toggleViewMode: typeof toggleViewMode;
    rotate: typeof rotate;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    "update:page": (...args: any[]) => void;
    "update:scale": (...args: any[]) => void;
    fitPage: (...args: any[]) => void;
    "update:mode": (...args: any[]) => void;
    "update:sidebar": (...args: any[]) => void;
    "update:rotation": (...args: any[]) => void;
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
    page: {
        type: NumberConstructor;
        default: number;
    };
    pages: {
        type: NumberConstructor;
        default: number;
    };
    scale: {
        type: NumberConstructor;
        default: number;
    };
    rotation: {
        type: NumberConstructor;
        default: number;
        validator: (val: number) => boolean;
    };
    mode: {
        type: PropType<"vertical" | "horizontal">;
        default: string;
    };
    sidebar: {
        type: BooleanConstructor;
        default: boolean;
    };
    loading: {
        type: BooleanConstructor;
        default: boolean;
    };
    disabled: {
        type: BooleanConstructor;
        default: boolean;
    };
}>> & Readonly<{
    "onUpdate:page"?: ((...args: any[]) => any) | undefined;
    "onUpdate:scale"?: ((...args: any[]) => any) | undefined;
    onFitPage?: ((...args: any[]) => any) | undefined;
    "onUpdate:mode"?: ((...args: any[]) => any) | undefined;
    "onUpdate:sidebar"?: ((...args: any[]) => any) | undefined;
    "onUpdate:rotation"?: ((...args: any[]) => any) | undefined;
}>, {
    page: number;
    scale: number;
    rotation: number;
    mode: "vertical" | "horizontal";
    pages: number;
    disabled: boolean;
    sidebar: boolean;
    loading: boolean;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
declare const __VLS_component: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
    page: {
        type: NumberConstructor;
        default: number;
    };
    pages: {
        type: NumberConstructor;
        default: number;
    };
    scale: {
        type: NumberConstructor;
        default: number;
    };
    rotation: {
        type: NumberConstructor;
        default: number;
        validator: (val: number) => boolean;
    };
    mode: {
        type: PropType<"vertical" | "horizontal">;
        default: string;
    };
    sidebar: {
        type: BooleanConstructor;
        default: boolean;
    };
    loading: {
        type: BooleanConstructor;
        default: boolean;
    };
    disabled: {
        type: BooleanConstructor;
        default: boolean;
    };
}>, {
    scales: import("vue").ComputedRef<any>;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    "update:page": (...args: any[]) => void;
    "update:scale": (...args: any[]) => void;
    fitPage: (...args: any[]) => void;
    "update:mode": (...args: any[]) => void;
    "update:sidebar": (...args: any[]) => void;
    "update:rotation": (...args: any[]) => void;
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
    page: {
        type: NumberConstructor;
        default: number;
    };
    pages: {
        type: NumberConstructor;
        default: number;
    };
    scale: {
        type: NumberConstructor;
        default: number;
    };
    rotation: {
        type: NumberConstructor;
        default: number;
        validator: (val: number) => boolean;
    };
    mode: {
        type: PropType<"vertical" | "horizontal">;
        default: string;
    };
    sidebar: {
        type: BooleanConstructor;
        default: boolean;
    };
    loading: {
        type: BooleanConstructor;
        default: boolean;
    };
    disabled: {
        type: BooleanConstructor;
        default: boolean;
    };
}>> & Readonly<{
    "onUpdate:page"?: ((...args: any[]) => any) | undefined;
    "onUpdate:scale"?: ((...args: any[]) => any) | undefined;
    onFitPage?: ((...args: any[]) => any) | undefined;
    "onUpdate:mode"?: ((...args: any[]) => any) | undefined;
    "onUpdate:sidebar"?: ((...args: any[]) => any) | undefined;
    "onUpdate:rotation"?: ((...args: any[]) => any) | undefined;
}>, {
    page: number;
    scale: number;
    rotation: number;
    mode: "vertical" | "horizontal";
    pages: number;
    disabled: boolean;
    sidebar: boolean;
    loading: boolean;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
export default _default;
type __VLS_WithSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
