import { NTable } from '../interface';
import { Ref, VNode } from 'vue';
export declare const DEFAULT_PAGE_SIZE = 10;
export declare const DEFAULT_PAGE_SIZE_OPTIONS: number[];
export declare const DEFAULT_PAGINATION_POSITION = "right";
export interface IUsePagination {
    mergedPagination: Ref<NTable.NPagination.IProps>;
    resetPagination: (modelValue?: number, length?: number) => void;
}
export declare function usePagination(totalRef: Ref<number>, paginationRef: Ref<NTable.NPagination.IProps | false | undefined>, disabled: Ref<boolean>, onChange: (modelValue: number | undefined, length: number) => void): IUsePagination;
export declare function getPaginationParam(pagination: NTable.NPagination.IProps | boolean | undefined, mergedPagination: NTable.NPagination.IProps): any;
export declare function useRenderPagination(paginationProps: Ref<NTable.NPagination.IProps>, pagination?: false | NTable.NPagination.IProps, tableLocale?: Ref<NTable.ILocale>, triggerOnChange?: (info: Partial<NTable.IChangeEventInfo>, action: NTable.TAction, reset: boolean) => void): {
    topPaginationNode: VNode<import('vue').RendererNode, import('vue').RendererElement, {
        [key: string]: any;
    }> | undefined;
    bottomPaginationNode: VNode<import('vue').RendererNode, import('vue').RendererElement, {
        [key: string]: any;
    }> | undefined;
};
