import { DasIcon } from '@das-fed/ui';
import { ElConfigProvider, ElPagination } from 'element-plus';
import 'element-plus/es/components/pagination/style/css';
import { sizes, totalPage as totalPageComponent } from './components';
import type { PaginationProps } from './type';
declare const locale: import("vue").ComputedRef<any>;
declare const dasPagination: import("vue").Ref<any, any>;
declare const disabledIcon: {
    first: boolean;
    pre: boolean;
    next: boolean;
    last: boolean;
};
declare const background: import("vue").ComputedRef<boolean>;
declare const pageSizes: import("vue").ComputedRef<number[]>;
declare const total: import("vue").ComputedRef<number>;
declare const simple: import("vue").ComputedRef<boolean>;
declare const currentPage: import("vue").Ref<any, any>;
declare const pageSize: import("vue").Ref<any, any>;
declare const totalPage: import("vue").ComputedRef<number>;
declare const computedLayout: import("vue").ComputedRef<string>;
declare const realLayout: import("vue").ComputedRef<string>;
declare const handleSizeChange: (val: number) => void;
declare const handleCurrentChange: (val: number) => void;
declare const handlePrevClick: () => void;
declare const handleNextClick: () => void;
declare const changePage: (actions: "first" | "pre" | "next" | "last", disabled: boolean) => void;
declare const __VLS_ctx: InstanceType<__VLS_PickNotAny<typeof __VLS_self, new () => {}>>;
declare var __VLS_21: {};
type __VLS_Slots = __VLS_PrettifyGlobal<__VLS_OmitStringIndex<typeof __VLS_ctx.$slots> & {
    default?: (props: typeof __VLS_21) => any;
}>;
declare const __VLS_self: import("vue").DefineComponent<PaginationProps, {
    DasIcon: typeof DasIcon;
    ElConfigProvider: typeof ElConfigProvider;
    ElPagination: typeof ElPagination;
    sizes: typeof sizes;
    totalPageComponent: typeof totalPageComponent;
    locale: typeof locale;
    dasPagination: typeof dasPagination;
    disabledIcon: typeof disabledIcon;
    background: typeof background;
    pageSizes: typeof pageSizes;
    total: typeof total;
    simple: typeof simple;
    currentPage: typeof currentPage;
    pageSize: typeof pageSize;
    totalPage: typeof totalPage;
    computedLayout: typeof computedLayout;
    realLayout: typeof realLayout;
    handleSizeChange: typeof handleSizeChange;
    handleCurrentChange: typeof handleCurrentChange;
    handlePrevClick: typeof handlePrevClick;
    handleNextClick: typeof handleNextClick;
    changePage: typeof changePage;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
    "update:modelValue": (currentPage: number) => any;
    "current-change": (pageSize: number) => any;
    "size-change": (currentPage: number) => any;
    "update:pageSize": (pageSize: number) => any;
    "prev-click": (currentPage: number) => any;
    "next-click": (currentPage: number) => any;
    "first-click": (currentPage: number) => any;
    "last-click": (currentPage: number) => any;
}, string, import("vue").PublicProps, Readonly<PaginationProps> & Readonly<{
    "onUpdate:modelValue"?: ((currentPage: number) => any) | undefined;
    "onCurrent-change"?: ((pageSize: number) => any) | undefined;
    "onSize-change"?: ((currentPage: number) => any) | undefined;
    "onUpdate:pageSize"?: ((pageSize: number) => any) | undefined;
    "onPrev-click"?: ((currentPage: number) => any) | undefined;
    "onNext-click"?: ((currentPage: number) => any) | undefined;
    "onFirst-click"?: ((currentPage: number) => any) | undefined;
    "onLast-click"?: ((currentPage: number) => any) | undefined;
}>, {
    small: boolean;
    disabled: boolean;
    modelValue: number;
    background: boolean;
    pageSize: number;
    total: number;
    pageSizes: number[];
    simple: boolean;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
declare const __VLS_component: import("vue").DefineComponent<PaginationProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
    "update:modelValue": (currentPage: number) => any;
    "current-change": (pageSize: number) => any;
    "size-change": (currentPage: number) => any;
    "update:pageSize": (pageSize: number) => any;
    "prev-click": (currentPage: number) => any;
    "next-click": (currentPage: number) => any;
    "first-click": (currentPage: number) => any;
    "last-click": (currentPage: number) => any;
}, string, import("vue").PublicProps, Readonly<PaginationProps> & Readonly<{
    "onUpdate:modelValue"?: ((currentPage: number) => any) | undefined;
    "onCurrent-change"?: ((pageSize: number) => any) | undefined;
    "onSize-change"?: ((currentPage: number) => any) | undefined;
    "onUpdate:pageSize"?: ((pageSize: number) => any) | undefined;
    "onPrev-click"?: ((currentPage: number) => any) | undefined;
    "onNext-click"?: ((currentPage: number) => any) | undefined;
    "onFirst-click"?: ((currentPage: number) => any) | undefined;
    "onLast-click"?: ((currentPage: number) => any) | undefined;
}>, {
    small: boolean;
    disabled: boolean;
    modelValue: number;
    background: boolean;
    pageSize: number;
    total: number;
    pageSizes: number[];
    simple: boolean;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
export default _default;
type __VLS_WithSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
