analytica-frontend-lib
Version:
Repositório público dos componentes utilizados nas plataformas da Analytica Ensino
62 lines • 1.71 kB
TypeScript
import { HTMLAttributes } from 'react';
export interface TablePaginationProps extends HTMLAttributes<HTMLDivElement> {
/**
* Total number of items
*/
totalItems: number;
/**
* Current page (1-based)
*/
currentPage: number;
/**
* Total number of pages
*/
totalPages: number;
/**
* Items per page
*/
itemsPerPage: number;
/**
* Available options for items per page
* @default [10, 20, 50, 100]
*/
itemsPerPageOptions?: number[];
/**
* Callback when page changes
*/
onPageChange: (page: number) => void;
/**
* Callback when items per page changes
*/
onItemsPerPageChange?: (itemsPerPage: number) => void;
/**
* Customizable label for items (e.g., "escolas", "alunos", "atividades")
* @default "itens"
*/
itemLabel?: string;
}
/**
* Table pagination component with navigation controls and items per page selector
*
* @example
* ```tsx
* import { TablePagination } from 'analytica-frontend-lib';
*
* <TablePagination
* totalItems={1000}
* currentPage={1}
* totalPages={10}
* itemsPerPage={10}
* itemsPerPageOptions={[10, 20, 50, 100]}
* onPageChange={(page) => setCurrentPage(page)}
* onItemsPerPageChange={(items) => setItemsPerPage(items)}
* itemLabel="escolas"
* />
* ```
*/
declare const TablePagination: {
({ totalItems, currentPage, totalPages, itemsPerPage, itemsPerPageOptions, onPageChange, onItemsPerPageChange, itemLabel, className, ...props }: TablePaginationProps): import("react/jsx-runtime").JSX.Element;
displayName: string;
};
export default TablePagination;
//# sourceMappingURL=TablePagination.d.ts.map