export type PageItemType = 'PAGE' ; export type EllipsisItemType = 'ELLIPSIS' ; export type FirstPageLinkItemType = 'FIRST_PAGE_LINK' ; export type PreviousPageLinkItemType = 'PREVIOUS_PAGE_LINK' ; export type NextPageLinkItemType = 'NEXT_PAGE_LINK' ; export type LastPageLinkItemType = 'LAST_PAGE_LINK' ; export type PaginationItemType = PageItemType | EllipsisItemType | FirstPageLinkItemType | PreviousPageLinkItemType | NextPageLinkItemType | LastPageLinkItemType ; export interface ItemTypes { PAGE : PageItemType ; ELLIPSIS : EllipsisItemType ; FIRST_PAGE_LINK : FirstPageLinkItemType ; PREVIOUS_PAGE_LINK : PreviousPageLinkItemType ; NEXT_PAGE_LINK : NextPageLinkItemType ; LAST_PAGE_LINK : LastPageLinkItemType ; } export interface ItemKeys { FIRST_ELLIPSIS : number ; SECOND_ELLIPSIS : number ; FIRST_PAGE_LINK : number ; PREVIOUS_PAGE_LINK : number ; NEXT_PAGE_LINK : number ; LAST_PAGE_LINK : number ; [ type ] : number ; } export const ITEM_TYPES = { PAGE : 'PAGE' , ELLIPSIS : 'ELLIPSIS' , FIRST_PAGE_LINK : 'FIRST_PAGE_LINK' , PREVIOUS_PAGE_LINK : 'PREVIOUS_PAGE_LINK' , NEXT_PAGE_LINK : 'NEXT_PAGE_LINK' , LAST_PAGE_LINK : 'LAST_PAGE_LINK' } ; export const ITEM_KEYS = { FIRST_ELLIPSIS : - 1 , SECOND_ELLIPSIS : - 2 , FIRST_PAGE_LINK : - 3 , PREVIOUS_PAGE_LINK : - 4 , NEXT_PAGE_LINK : - 5 , LAST_PAGE_LINK : - 6 } ;