@alifd/next
Version:
A configurable component library for web built on React.
106 lines (105 loc) • 4.83 kB
TypeScript
import React, { Component, type ReactNode, type KeyboardEvent, type MouseEvent } from 'react';
import PropTypes from 'prop-types';
import { type ClassPropsWithDefault } from '../util';
import type { PaginationProps, PaginationState } from './types';
type PaginationPropsWithDefault = ClassPropsWithDefault<PaginationProps, typeof Pagination.defaultProps>;
/**
* Pagination
*/
declare class Pagination extends Component<PaginationProps, PaginationState> {
static displayName: string;
static propTypes: {
prefix: PropTypes.Requireable<string>;
pure: PropTypes.Requireable<boolean>;
rtl: PropTypes.Requireable<boolean>;
device: PropTypes.Requireable<string>;
className: PropTypes.Requireable<string>;
locale: PropTypes.Requireable<object>;
type: PropTypes.Requireable<string>;
shape: PropTypes.Requireable<string>;
size: PropTypes.Requireable<string>;
current: PropTypes.Requireable<number>;
defaultCurrent: PropTypes.Requireable<number>;
onChange: PropTypes.Requireable<(...args: any[]) => any>;
total: PropTypes.Requireable<number>;
totalRender: PropTypes.Requireable<(...args: any[]) => any>;
pageShowCount: PropTypes.Requireable<number>;
pageSize: PropTypes.Requireable<number>;
pageSizeSelector: PropTypes.Requireable<string | boolean>;
pageSizeList: PropTypes.Requireable<NonNullable<(number | null | undefined)[] | (PropTypes.InferProps<{
label: PropTypes.Requireable<string>;
value: PropTypes.Requireable<number>;
}> | null | undefined)[] | null | undefined>>;
pageNumberRender: PropTypes.Requireable<(...args: any[]) => any>;
pageSizePosition: PropTypes.Requireable<string>;
useFloatLayout: PropTypes.Requireable<boolean>;
onPageSizeChange: PropTypes.Requireable<(...args: any[]) => any>;
hideOnlyOnePage: PropTypes.Requireable<boolean>;
showJump: PropTypes.Requireable<boolean>;
link: PropTypes.Requireable<string>;
popupProps: PropTypes.Requireable<object>;
selectProps: PropTypes.Requireable<object>;
defaultPropsConfig: PropTypes.Requireable<object>;
errorBoundary: PropTypes.Requireable<NonNullable<boolean | object | null | undefined>>;
warning: PropTypes.Requireable<boolean>;
children: PropTypes.Requireable<any>;
popupContainer: PropTypes.Requireable<any>;
};
static defaultProps: {
prefix: string;
pure: boolean;
rtl: boolean;
locale: Partial<{
prev: string;
next: string;
goTo: string;
page: string;
go: string;
total: string;
labelPrev: string;
labelNext: string;
inputAriaLabel: string;
selectAriaLabel: string;
pageSize: string;
}> & {
momentLocale?: string | undefined;
};
type: string;
shape: string;
size: string;
defaultCurrent: number;
onChange: () => void;
pageSize: number;
pageSizeSelector: boolean;
pageSizeList: number[];
pageSizePosition: string;
onPageSizeChange: () => void;
useFloatLayout: boolean;
total: number;
pageShowCount: number;
hideOnlyOnePage: boolean;
showJump: boolean;
pageNumberRender: (index: number) => ReactNode;
};
readonly props: PaginationPropsWithDefault;
constructor(props: PaginationProps);
static getDerivedStateFromProps(props: PaginationPropsWithDefault, state: PaginationState): Partial<PaginationState>;
handleJump: (e: KeyboardEvent<Element> | MouseEvent<Element>) => void;
onPageItemClick(page: number, e: KeyboardEvent<Element> | MouseEvent<Element>): void;
onInputChange(value: string): void;
onSelectSize(pageSize: number): void;
renderPageTotal(): React.JSX.Element;
renderPageItem(index: number): React.JSX.Element;
renderPageFirst(current: number): React.JSX.Element;
renderPageLast(current: number, totalPage: number): React.JSX.Element;
renderPageEllipsis(idx: number): React.JSX.Element;
renderPageJump(): React.JSX.Element[];
renderPageDisplay(current: number, totalPage: number): React.JSX.Element;
renderPageList(current: number, totalPage: number): React.JSX.Element;
renderPageSizeSelector(): React.JSX.Element | null;
renderPageSizeFilter(): React.JSX.Element;
renderPageSizeDropdown(): React.JSX.Element;
render(): React.JSX.Element | null;
}
declare const _default: import("../config-provider/types").ConfiguredComponentClass<PaginationProps & import("../config-provider/types").ComponentCommonProps, Pagination, {}>;
export default _default;