import * as React from 'react' import { SemanticShorthandItem } from '../../generic' import PaginationItem, { PaginationItemProps } from './PaginationItem' export interface PaginationProps extends StrictPaginationProps { [key: string]: any } export interface StrictPaginationProps { /** A pagination item can have an aria label. */ 'aria-label'?: string /** Initial activePage value. */ defaultActivePage?: number | string /** Index of the currently active page. */ activePage?: number | string /** Number of always visible pages at the beginning and end. */ boundaryRange?: number | string /** A pagination can be disabled. */ disabled?: boolean /** A shorthand for PaginationItem. */ ellipsisItem?: SemanticShorthandItem /** A shorthand for PaginationItem. */ firstItem?: SemanticShorthandItem /** A shorthand for PaginationItem. */ lastItem?: SemanticShorthandItem /** A shorthand for PaginationItem. */ nextItem?: SemanticShorthandItem /** A shorthand for PaginationItem. */ pageItem?: SemanticShorthandItem /** A shorthand for PaginationItem. */ prevItem?: SemanticShorthandItem /** * Called on change of an active page. * * @param {SyntheticEvent} event - React's original SyntheticEvent. * @param {object} data - All props. */ onPageChange?: (event: React.MouseEvent, data: PaginationProps) => void /** Number of always visible pages before and after the current one. */ siblingRange?: number | string /** Total number of pages. */ totalPages: number | string } declare class Pagination extends React.Component { static Item: typeof PaginationItem } export default Pagination