import { ComputedRef } from 'vue'; import { DataTableRow, DataTableSortMeta, DataTableSortOrder } from '../useDataTable'; import { DataTablePageEvent } from '../utils/pagination'; export type DataTablePaginatorPosition = 'top' | 'bottom' | 'both'; export interface UseDataTablePaginationProps { value?: DataTableRow[] | null; paginator?: boolean; first?: number; rows?: number; totalRecords?: number; lazy?: boolean; alwaysShowPaginator?: boolean; paginatorPosition?: DataTablePaginatorPosition; rowsPerPageOptions?: number[]; pageMessage?: string; } export type DataTablePaginationEmit = { (event: 'update:first', first: number): void; (event: 'update:rows', rows: number): void; (event: 'page', payload: DataTablePageEvent): void; }; export declare const useDataTablePagination: (props: UseDataTablePaginationProps, emit: DataTablePaginationEmit, sortedRows: ComputedRef, sortState: ComputedRef<{ sortField?: string; sortOrder?: DataTableSortOrder; multiSortMeta?: DataTableSortMeta[]; }>) => { displayedRows: ComputedRef; resolvedFirst: ComputedRef; resolvedRows: ComputedRef; totalRecords: ComputedRef; pageCount: ComputedRef; displayRange: ComputedRef; pageOptions: ComputedRef; currentAzPage: ComputedRef; showPaginator: ComputedRef; showTopPaginator: ComputedRef; showBottomPaginator: ComputedRef; setAzPage: (azPage: number) => void; setRows: (next: number) => void; makePageEvent: (first: number, rows: number) => DataTablePageEvent; }; //# sourceMappingURL=useDataTablePagination.d.ts.map