///
import * as React from 'react';
import CommonProps from '../util';
import { PopupProps } from '../overlay';
import { SelectProps } from '../select';
interface HTMLAttributesWeak extends React.HTMLAttributes {
onChange?: any;
}
export interface PaginationProps extends HTMLAttributesWeak, CommonProps {
/**
* 分页组件类型
*/
type?: 'normal' | 'simple' | 'mini';
/**
* 前进后退按钮样式
*/
shape?: 'normal' | 'arrow-only' | 'arrow-prev-only' | 'no-border';
/**
* 分页组件大小
*/
size?: 'small' | 'medium' | 'large';
/**
* (受控)当前页码
*/
current?: number;
/**
* (非受控)初始页码
*/
defaultCurrent?: number;
/**
* 页码发生改变时的回调函数
*/
onChange?: (current: number, e: {}) => void;
/**
* 总记录数
*/
total?: number;
/**
* 总数的渲染函数
*/
totalRender?: (total: number, range: Array) => void;
/**
* 页码显示的数量,更多的使用...代替
*/
pageShowCount?: number;
/**
* 一页中的记录数
*/
pageSize?: number;
/**
* 每页显示选择器类型
*/
pageSizeSelector?: false | 'filter' | 'dropdown';
/**
* 每页显示选择器可选值
*/
pageSizeList?: Array | Array;
/**
* 自定义页码渲染函数,函数作用于页码button以及当前页/总页数的数字渲染
*/
pageNumberRender?: (index: number) => React.ReactNode;
/**
* 每页显示选择器在组件中的位置
*/
pageSizePosition?: 'start' | 'end';
/**
* 存在每页显示选择器时是否使用浮动布局
*/
useFloatLayout?: boolean;
/**
* 每页显示记录数量改变时的回调函数
*/
onPageSizeChange?: (pageSize: number) => void;
/**
* 当分页数为1时,是否隐藏分页器
*/
hideOnlyOnePage?: boolean;
/**
* type 设置为 normal 时,在页码数超过5页后,会显示跳转输入框与按钮,当设置 showJump 为 false 时,不再显示该跳转区域
*/
showJump?: boolean;
/**
* 设置页码按钮的跳转链接,它的值为一个包含 {page} 的模版字符串,如:http://www.taobao.com/{page}
*/
link?: string;
/**
* 弹层组件属性,透传给Popup
*/
popupProps?: PopupProps;
selectProps?: SelectProps;
}
export default class Pagination extends React.Component {}