/// <reference types="react" />
import { UkeComponent } from '../utils/uke-component';
export interface DefaultPaginInfo {
    /** 当前第几页 */
    pIdx: number;
    /** 每页多少项 */
    pSize: number;
    /** 一共多少项 */
    total: number;
    /** 是否激活分页 */
    active: boolean;
}
export declare type PaginInfo = {
    [key: string]: number | boolean;
} | DefaultPaginInfo;
export interface PaginationProps {
    /** 分页的存储数据，可以为不确定的结构，通过 infoMapper 做映射 */
    pagingInfo: PaginInfo;
    /** 分页切换时的回调 */
    onPagin: (nextPaginInfo: any) => void;
    /** 由于不确定远端分页数据具体字段，所以有分页数据的字段映射 */
    infoMapper?: {
        /** 当前第几页 */
        pIdx: string;
        /** 每页多少项 */
        pSize: string;
        /** 一共多少项 */
        total: string;
        /** 是否激活分页 */
        active: string;
    };
    /** 是否显示全部项 */
    displayTotal?: boolean;
    /** 是否需要辅助分页的按钮 */
    isNeedHelper?: boolean;
    /** 前面的按钮数量 */
    prevBtnCount?: number;
    /** 后面的按钮数量 */
    lastBtnCount?: number;
}
interface DefaultProps {
    infoMapper: {};
    isNeedHelper: boolean;
    displayTotal: boolean;
    prevBtnCount: number;
    lastBtnCount: number;
}
export default class Pagination extends UkeComponent<PaginationProps> {
    static defaultProps: DefaultProps;
    node: any;
    dropdownPosition: any;
    getSelectorOptions: () => {};
    componentDidMount(): void;
    componentDidUpdate(): void;
    paginInfoTranslate(nextPaginInfo?: PaginInfo): {
        [x: string]: number | boolean;
        pIdx?: undefined;
        pSize?: undefined;
        total?: undefined;
        active?: undefined;
    } | {
        pIdx: number;
        pSize: number;
        total: number;
        active: boolean;
    };
    changePagin(nextIdx: number, nextSize?: any): void;
    render(): JSX.Element;
}
export {};
