interface UsePaginationOptions { /** The total number of pages */ totalPages: number; /** The selected page by page number */ selectedPageNumber?: number; /** The size of the visible window of pages */ windowSize?: number; } type UsePaginationResult = { /** List of visible pages by page number */ visiblePages: number[]; /** The page number of the currently selected page */ selectedPage: number; /** The index of the currently selected page */ selectedIndex: number; /** Whether to show the first page button */ showFirstPage: boolean; /** Whether to show the last page button */ showLastPage: boolean; /** Whether to show previous arrow */ showPrev: boolean; /** Whether to show next arrow */ showNext: boolean; }; /** * Create an array of consecutive numbers from start to end (inclusive) */ export declare const range: (start: number, end: number) => number[]; /** * Calculate the sliding window of visible pages */ export declare const calculateVisiblePages: (totalPages: number, selectedPage: number, windowSize: number) => number[]; /** * Headless hook for pagination attributes. * Creates a sliding window of visible pages with current selection centered. */ export declare const usePagination: ({ totalPages, selectedPageNumber, windowSize, }: UsePaginationOptions) => UsePaginationResult; export {}; //# sourceMappingURL=usePagination.d.ts.map