/// import { ButtonClasses } from '../button/button.type'; import { SelectClasses } from '../select/select.type'; import { InputClasses } from '../input/input.type'; import { CommonType } from '../common/type'; import { SelectProps as FullSelectProps } from '../select/select.type'; export type AlignType = 'left' | 'center' | 'right'; export type LayoutType = ('links' | 'list' | 'jumper' | 'simple' | ((props: PaginationProps) => React.ReactNode))[]; export interface PaginationJssStyle { input?: () => InputClasses; select?: () => SelectClasses; button?: () => ButtonClasses; pagination?: () => PaginationClasses; } export type SelectProps = Pick, 'absolute' | 'width' | 'height' | 'position' | 'optionWidth' | 'emptyText' | 'zIndex'>; export interface PaginationClasses { rootClass: string; pagination: string; section: string; buttons: string; left: string; right: string; center: string; jumper: string; split: string; icon: string; simple: string; small: string; large: string; sizeList: string; jumperInput: string; buttonItem: string; } export interface TextParams { prev?: string; next?: string; page?: string; jumper?: string; } export interface PaginationProps extends Pick { /** * @en Align of pagination * @cn 排布方式 * @default 'left' */ align?: 'left' | 'center' | 'right'; /** * @en Number of each page * @cn 每页数量 * @default 10 */ pageSize?: number; /** * @en Total number. If total is less than 0, hide the Pagination * @cn 总条目数。如果 total 小于 0,隐藏分页 * @default 0 */ total?: number; /** * @en Current page, if passed in, the component is a controlled component, you must handle the callback through onChange * @cn 当前页,如果传入值,组件为受控组件,必须通过 onChange 来处理回调 */ current?: number; /** * @en The number of pagination buttons * @cn 分页器页码按钮数量 * @default 5 */ span?: number; /** * @en Initial page number * @cn 初始页码 * @default 1 */ defaultCurrent?: number; /** * @en Disabled * @cn 禁用 * @default false */ disabled?: boolean; /** * @en The layout of child elements, options: "links": page number; "simple": simple page number(Do not use both simple and links); "list": page size selector; "jumper": jump to page number; "simple": minimalist mode; function({ current, total, pageSize }): custom information * @cn 子组件布局,可选值为:"links": 页码;"simple": 简约页码(和links不要同时使用);"list": 每页数量选择。"jumper": 跳转页码;function({ current, total, pageSize }): 匿名函数,用来信息展示 * @default ['links'] */ layout?: LayoutType; /** * @en The style of pagination * @cn 风格 * @default 'text' */ mode?: 'outline' | 'text'; /** * @en The callback function when current page or pageSize is changing.current:new page number.pageSize: number of each page * @cn 页码或每页显示数量改变时回调。current: 新的页码。pageSize: 每页数量 */ onChange?: (current: number, pageSize: number, sizeChange?: boolean) => void; /** * @en The list of number of each page * @cn 每页数量可选列表 * @default [10, 20, 30, 50, 100] */ pageSizeList?: number[]; /** * @en Replaced text。prev: the previous page.next: the next page.page:the text of pageSizeList.jumper: jump to input box text, "{input}" pilaceholder for input box * @cn 替换文案。prev: 上一页。next: 下一页。page: pageSizeList 文字。jumper: 跳转输入框文字, "{input}" 为输入框占位 */ text?: TextParams; /** * @en Whether to use simple mode * @cn 是否使用简约模式 */ simple?: boolean; jssStyle?: PaginationJssStyle; /** * @en Configuration related to the Select component in the pagination, properties same as Select component * @cn 分页器有关 Select 组件的配置,属性同 Select 组件 * @version 3.4.4 */ select?: SelectProps; /** * @cn 旧版本的属性,新版本中使用 `select` 替代 * @en Deprecated property, use `select` instead in the new version * @version 3.8.0 * @deprecated */ sizeListProps?: SelectProps; } //# sourceMappingURL=pagination.type.d.ts.map