import React from 'react'; export interface PaginationProps { total: number; limit: number; currentPage: number; children: (props: PaginationRenderProps) => React.ReactNode; onPageChange?: (page: number) => void; scrollToTop?: boolean; scrollBehavior?: 'auto' | 'smooth'; } export interface PaginationRenderProps { currentPage: number; totalPages: number; total: number; limit: number; hasNext: boolean; hasPrev: boolean; startItem: number; endItem: number; goToPage: (page: number) => Promise; goToNext: () => Promise; goToPrev: () => Promise; goToFirst: () => Promise; goToLast: () => Promise; getPageNumbers: (range?: number) => number[]; isCurrentPage: (page: number) => boolean; isValidPage: (page: number) => boolean; isLoading: boolean; getDisplayText: () => string; getPageInfo: () => { showing: string; total: string; }; } export declare const PaginationContext: React.Context<{ goToPage: (page: number) => Promise; } | null>; export declare const usePagination: () => { goToPage: (page: number) => Promise; }; export declare const usePaginationLogic: (total: number, limit: number, initialPage: number, onPageChange?: (page: number) => void, scrollToTop?: boolean, scrollBehavior?: "auto" | "smooth") => { currentPage: number; totalPages: number; hasNext: boolean; hasPrev: boolean; startItem: number; endItem: number; goToPage: (pageNum: number) => Promise; goToNext: () => Promise; goToPrev: () => Promise; goToFirst: () => Promise; goToLast: () => Promise; getPageNumbers: (range?: number) => number[]; isCurrentPage: (pageNum: number) => boolean; isValidPage: (pageNum: number) => boolean; isLoading: boolean; getDisplayText: () => string; getPageInfo: () => { showing: string; total: string; }; }; export declare function Pagination({ total, limit, currentPage, children, onPageChange, scrollToTop, scrollBehavior }: PaginationProps): React.JSX.Element; export declare const DefaultPaginationRenderer: React.FC<{ renderProps: PaginationRenderProps; className?: string; showInfo?: boolean; }>; export declare const CompactPaginationRenderer: React.FC<{ renderProps: PaginationRenderProps; className?: string; }>; export declare const InputPaginationRenderer: React.FC<{ renderProps: PaginationRenderProps; className?: string; }>;