@flexis/ui
Version:
Styleless React Components
47 lines • 1.61 kB
TypeScript
import { HTMLAttributes, MouseEvent, PureComponent } from 'react';
import PropTypes from 'prop-types';
import { CombinePropsAndAttributes } from '../../helpers';
interface ISelfProps {
tabIndex?: number;
type?: 'button' | 'submit';
name?: string;
defaultPage?: number;
page?: number;
total: number;
disabled?: boolean;
mapPagesLabel?(label: string): string;
onChange?(page: number, event: MouseEvent): any;
}
export declare type IProps = CombinePropsAndAttributes<ISelfProps, HTMLAttributes<HTMLElement>>;
interface IState {
page: number;
}
export default class Paginator extends PureComponent<IProps, IState> {
static propTypes: {
tabIndex: PropTypes.Requireable<number>;
type: PropTypes.Requireable<string>;
name: PropTypes.Requireable<string>;
onChange: PropTypes.Requireable<(...args: any[]) => any>;
defaultPage: PropTypes.Requireable<number>;
page: PropTypes.Requireable<number>;
total: PropTypes.Validator<number>;
disabled: PropTypes.Requireable<boolean>;
mapPagesLabel: PropTypes.Requireable<(...args: any[]) => any>;
};
static defaultProps: {
tabIndex: number;
type: string;
defaultPage: number;
disabled: boolean;
mapPagesLabel: (_: any) => any;
};
static getDerivedStateFromProps({ page }: IProps, { page: prevPage }: IState): IState;
constructor(props: any);
render(): JSX.Element;
private pages;
private page;
private onChange;
private triggerNewPage;
}
export {};
//# sourceMappingURL=Paginator.d.ts.map