import { EasingFunction, SupportedEaseNameToCubicBezier } from "@zyzgroup/core-web";
export type SupportedPageEffect = "static" | "fade" | "moveFromLeft" | "moveToLeft" | "moveFromRight" | "moveToRight" | "moveFromTop" | "moveToTop" | "moveFromBottom" | "moveToBottom" | "moveFromLeftFade" | "moveToLeftFade" | "moveFromRightFade" | "moveToRightFade" | "moveFromTopFade" | "moveToTopFade" | "moveFromBottomFade" | "moveToBottomFade" | "scaleFromSmall" | "scaleToSmall" | "scaleFromLarge" | "scaleToLarge" | "scaleFromSmallCenter" | "scaleToSmallCenter" | "rotateRightSideFirst" | "rotateLeftSideFirst" | "rotateTopSideFirst" | "rotateBottomSideFirst" | "flipOutRight" | "flipInLeft" | "flipOutLeft" | "flipInRight" | "flipOutTop" | "flipInBottom" | "flipOutBottom" | "flipInTop" | "rotateFall" | "rotateOutNewspaper" | "rotateInNewspaper" | "rotatePushLeft" | "rotatePushRight" | "rotatePushTop" | "rotatePushBottom" | "rotatePullRight" | "rotatePullLeft" | "rotatePullTop" | "rotatePullBottom" | "rotateFoldRight" | "rotateFoldLeft" | "rotateFoldTop" | "rotateFoldBottom" | "rotateUnfoldLeft" | "rotateUnfoldRight" | "rotateUnfoldTop" | "rotateUnfoldBottom" | "rotateRoomLeftOut" | "rotateRoomLeftIn" | "rotateRoomRightOut" | "rotateRoomRightIn" | "rotateRoomTopOut" | "rotateRoomTopIn" | "rotateRoomBottomOut" | "rotateRoomBottomIn" | "rotateCubeLeftOut" | "rotateCubeLeftIn" | "rotateCubeRightOut" | "rotateCubeRightIn" | "rotateCubeTopOut" | "rotateCubeTopIn" | "rotateCubeBottomOut" | "rotateCubeBottomIn" | "rotateCarouselLeftOut" | "rotateCarouselLeftIn" | "rotateCarouselRightOut" | "rotateCarouselRightIn" | "rotateCarouselTopOut" | "rotateCarouselTopIn" | "rotateCarouselBottomOut" | "rotateCarouselBottomIn" | "rotateSidesOut" | "rotateSidesIn" | "rotateSlideOut" | "rotateSlideIn";
declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToOption<{
    effect?: SupportedPageEffect;
    duration?: number;
    easeFunction?: EasingFunction;
    timingFunction?: SupportedEaseNameToCubicBezier;
    delay?: number;
}>, {
    effect: string;
    duration: number;
    easeFunction: (amount: number) => number;
    timingFunction: string;
    delay: number;
}>>, {
    open: (newEffect?: SupportedPageEffect) => void;
    close: (newEffect?: SupportedPageEffect) => void;
    clear: () => void;
    getElement: () => any;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    ready: (open: () => void, close: () => void) => void;
    pageOpenStart: () => void;
    pageOpenEnd: () => void;
    pageCloseStart: () => void;
    pageCloseEnd: () => void;
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToOption<{
    effect?: SupportedPageEffect;
    duration?: number;
    easeFunction?: EasingFunction;
    timingFunction?: SupportedEaseNameToCubicBezier;
    delay?: number;
}>, {
    effect: string;
    duration: number;
    easeFunction: (amount: number) => number;
    timingFunction: string;
    delay: number;
}>>> & Readonly<{
    onReady?: (open: () => void, close: () => void) => any;
    onPageOpenStart?: () => any;
    onPageOpenEnd?: () => any;
    onPageCloseStart?: () => any;
    onPageCloseEnd?: () => any;
}>, {
    duration: number;
    easeFunction: EasingFunction;
    effect: SupportedPageEffect;
    timingFunction: SupportedEaseNameToCubicBezier;
    delay: number;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>, {
    default?(_: {}): any;
}>;
export default _default;
type __VLS_WithDefaults<P, D> = {
    [K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
        default: D[K];
    }> : P[K];
};
type __VLS_Prettify<T> = {
    [K in keyof T]: T[K];
} & {};
type __VLS_WithTemplateSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
type __VLS_TypePropsToOption<T> = {
    [K in keyof T]-?: {} extends Pick<T, K> ? {
        type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
    } : {
        type: import('vue').PropType<T[K]>;
        required: true;
    };
};
