import { PropType } from 'vue';
import { PageData } from '../../defaultProps';
declare const __default__: import("vue").DefineComponent<{
    pages: {
        type: PropType<PageData[]>;
        required: true;
    };
    currentPageId: {
        type: StringConstructor;
        required: true;
    };
    position: {
        type: () => 'top' | 'bottom' | 'left' | 'right';
        default: string;
    };
    style: {
        type: () => 'dot' | 'number';
        default: string;
    };
    color: {
        type: StringConstructor;
        default: string;
    };
    activeColor: {
        type: StringConstructor;
        default: string;
    };
    size: {
        type: NumberConstructor;
        default: number;
    };
    activeSize: {
        type: NumberConstructor;
        default: number;
    };
    spacing: {
        type: NumberConstructor;
        default: number;
    };
}, {
    currentPageIndex: import("vue").ComputedRef<number>;
    indicatorStyle: import("vue").ComputedRef<{
        right?: string | undefined;
        top?: string | undefined;
        transform?: string | undefined;
        flexDirection?: string | undefined;
        left?: string | undefined;
        bottom?: string | undefined;
        position: string;
        display: string;
        alignItems: string;
        justifyContent: string;
        zIndex: number;
        transition: string;
    }>;
    activeDotStyle: import("vue").ComputedRef<{
        width: string;
        height: string;
        backgroundColor: string;
    }>;
    handleDotClick: (pageId: string, index: number) => void;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "change"[], "change", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
    pages: {
        type: PropType<PageData[]>;
        required: true;
    };
    currentPageId: {
        type: StringConstructor;
        required: true;
    };
    position: {
        type: () => 'top' | 'bottom' | 'left' | 'right';
        default: string;
    };
    style: {
        type: () => 'dot' | 'number';
        default: string;
    };
    color: {
        type: StringConstructor;
        default: string;
    };
    activeColor: {
        type: StringConstructor;
        default: string;
    };
    size: {
        type: NumberConstructor;
        default: number;
    };
    activeSize: {
        type: NumberConstructor;
        default: number;
    };
    spacing: {
        type: NumberConstructor;
        default: number;
    };
}>> & {
    onChange?: ((...args: any[]) => any) | undefined;
}, {
    position: "top" | "bottom" | "left" | "right";
    style: "number" | "dot";
    color: string;
    activeColor: string;
    size: number;
    activeSize: number;
    spacing: number;
}, {}>;
export default __default__;
