choerodon-ui
Version:
An enterprise-class UI design language and React-based implementation
55 lines (54 loc) • 2.16 kB
TypeScript
import { Component, CSSProperties, ReactElement, ReactNode } from 'react';
import { Size } from '../_util/enum';
import { SelectProps } from '../select';
import ConfigContext, { ConfigContextValue } from '../config-provider/ConfigContext';
declare function itemRender(page: number, type: string, item: ReactNode, disabled: boolean, size?: Size): JSX.Element | undefined;
export interface PaginationProps {
total?: number;
defaultCurrent?: number;
current?: number;
defaultPageSize?: number;
pageSize?: number;
onChange?: (page: number, pageSize?: number) => void;
hideOnSinglePage?: boolean;
showSizeChanger?: boolean;
showSizeChangerLabel?: boolean;
tiny?: boolean;
pageSizeOptions?: string[];
onShowSizeChange?: (current: number, size: number) => void;
showQuickJumper?: boolean;
showTotal?: false | ((total: number, range: [number, number]) => ReactNode);
sizeChangerOptionText?: false | ((value: string) => ReactNode);
size?: Size;
simple?: boolean;
style?: CSSProperties;
locale?: Record<string, any>;
className?: string;
prefixCls?: string;
selectPrefixCls?: string;
selectProps?: SelectProps;
renderJumper?: () => ReactNode;
itemRender?: (page: number, type: 'page' | 'first' | 'last' | 'prev' | 'next' | 'jump-prev' | 'jump-next', element: ReactElement) => ReactNode;
role?: string;
}
export interface PaginationConfig extends PaginationProps {
position?: 'top' | 'bottom' | 'both';
}
export declare type PaginationLocale = any;
export default class Pagination extends Component<PaginationProps, {}> {
static displayName: string;
static get contextType(): typeof ConfigContext;
static defaultProps: {
showSizeChanger: boolean;
showSizeChangerLabel: boolean;
tiny: boolean;
pageSizeOptions: string[];
showTotal: (total: number, range: number[]) => string;
sizeChangerOptionText: (value: string) => string;
itemRender: typeof itemRender;
};
context: ConfigContextValue;
renderPagination: (contextLocale: any) => JSX.Element;
render(): JSX.Element;
}
export {};