import { MazBtnProps } from './MazBtn.vue';
import { MazColor, MazSize } from './types';
export interface MazPaginationProps {
    /**
     * The current page number.
     * @model
     * @default 1
     */
    modelValue?: number;
    /**
     * Props apply to the MazBtn components.
     * @type {Partial<MazBtnProps>}
     * @default undefined
     */
    buttonProps?: Partial<MazBtnProps>;
    /**
     * Color of the active button.
     * @values 'contrast', 'primary', 'secondary', 'info', 'success', 'warning', 'destructive', 'accent', 'background'
     * @default 'contrast'
     */
    activeColor?: MazColor | 'background';
    /**
     * Size of the buttons.
     * @values 'mini', 'xs', 'sm', 'md', 'lg', 'xl'
     * @default 'md'
     */
    size?: MazSize;
    /**
     * Total number of pages.
     * @default 10
     */
    totalPages: number;
    /**
     * Number of buttons to display before and after the current page.
     * @default 1
     */
    pageRange?: number;
    /**
     * Enable loading state of current button
     * @default false
     */
    loading?: boolean;
}
declare function __VLS_template(): {
    attrs: Partial<{}>;
    slots: {
        'first-page-sr'?(_: {
            page: number;
        }): any;
        'previous-page-sr'?(_: {
            page: number;
        }): any;
        'page-sr'?(_: {
            page: number;
        }): any;
        'next-page-sr'?(_: {
            page: number;
        }): any;
        'last-page-sr'?(_: {
            page: number;
        }): any;
    };
    refs: {};
    rootEl: HTMLElement;
};
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
declare const __VLS_component: import('vue').DefineComponent<MazPaginationProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
    "update:model-value": (value: number) => any;
}, string, import('vue').PublicProps, Readonly<MazPaginationProps> & Readonly<{
    "onUpdate:model-value"?: ((value: number) => any) | undefined;
}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLElement>;
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
export default _default;
type __VLS_WithTemplateSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
