@xcritical/pagination
Version:
69 lines (61 loc) • 2.15 kB
TypeScript
import { ButtonGroupTheme } from '@xcritical/button';
import { ButtonTheme } from '@xcritical/button';
import { CSSObject } from 'styled-components';
import { GroupBase } from 'react-select';
import { ISelectBaseTheme } from '@xcritical/select';
import { IThemeNamespace } from '@xcritical/theme';
import { default as React_2 } from 'react';
import { SelectProps } from '@xcritical/select';
export declare interface IPageSizeOption {
value: number;
label: number;
}
export declare interface IPagination {
currentPage?: number;
showSizeChanger?: boolean;
showTotals?: boolean;
disabled?: boolean;
pageSize?: number;
pageSizeOptions?: number[];
pageSizeProps?: SelectProps;
visibleRange?: 3 | 5 | 7;
total: number;
onChangePage: (page: number) => void;
onChangePageSize?: (page: number, pageSize: number) => void;
theme?: IThemeNamespace<IPaginationTheme>;
className?: string;
classNamePrefix?: string;
}
export declare interface IPaginationTheme {
wrapper?: CSSObject;
totals?: CSSObject;
buttonGroup?: ButtonGroupTheme;
button?: ButtonTheme;
select?: ISelectBaseTheme;
}
export declare interface ITotalsProps {
currentPage: number;
pageSize: number;
total: number;
className?: string;
}
export declare const Pagination: React_2.ForwardRefExoticComponent<{
currentPage?: number | undefined;
visibleRange?: 3 | 5 | 7 | undefined;
showSizeChanger?: boolean | undefined;
showTotals?: boolean | undefined;
disabled?: boolean | undefined;
pageSize?: number | undefined;
pageSizeOptions?: number[] | undefined;
pageSizeProps?: SelectProps<unknown, false, GroupBase<unknown>> | undefined;
className?: string | undefined;
classNamePrefix?: string | undefined;
total: number;
onChangePage: (page: number) => void;
onChangePageSize?: ((page: number, pageSize: number) => void) | undefined;
children?: React_2.ReactNode;
} & {
theme?: any;
}>;
export declare const paginationThemeNamespace = "@xcritical\\pagination";
export { }