import React from 'react'; interface PaginationChangeParams { currentPage: number; previousPage: number; totalPage: number; currentIndex: number; } declare type PaginationAttributes = React.ComponentProps<'div'>; declare type PaginationItemAttributes = React.ComponentPropsWithoutRef<'button'> & React.ComponentPropsWithoutRef<'a'>; declare type NavItemAttributes = Omit; export interface PaginationProps extends Omit { /** * Set additional props to active item element. */ activeProps?: PaginationItemAttributes; /** * Set index of active Pagination item. */ activeIndex?: number; /** * Set base url for Pagination item for page number interpolation. */ baseURL?: string; /** * @deprecated Use `activeIndex` instead. */ indexActive?: number; /** * Set total pagination item. */ items?: number[] | number; /** * Set additional props to inactive Pagination item. */ itemProps?: PaginationItemAttributes; /** * Set a11y label language. */ lang?: 'id' | 'en'; /** * Set additional props to Next button. */ nextProps?: NavItemAttributes; /** * Set URL parameter name of pages */ pageParamName?: string; /** * Set additional props to Prev button. */ prevProps?: NavItemAttributes; /** * Set callback function when active item changed */ onChange?: (paginationState: PaginationChangeParams) => void; /** * Set callback function when Pagination item clicked. */ onClickItem?: (currentPage: number, e: React.MouseEvent) => void; /** * Set callback function when Next button clicked. */ onClickNext?: (e: React.MouseEvent) => void; /** * Set callback function when Prev button clicked. */ onClickPrev?: (e: React.MouseEvent) => void; /** * @deprecated Use `onClickItem` instead. */ onItemClick?: (index: number) => void; } export interface PaginationItemProps extends PaginationProps { activeItemRef?: React.RefObject; currentIndex?: number; } export {};