import { PaginationConfig, PaginationController } from './types'; import * as i0 from "@angular/core"; /** * Servicio para crear controladores de paginacion reutilizables. * * @example * // En un componente * pagination = inject(PaginationService); * * usersController = this.pagination.createController({ * strategy: 'offset', * pageSize: 20, * loadFn: (params) => this.userService.getUsers(params.page, params.pageSize) * }); * * // En el template * @for (user of usersController.items(); track user.id) { * * } * * @if (usersController.hasMore()) { * Cargar mas * } */ export declare class PaginationService { /** * Crea un controlador de paginacion para una fuente de datos. * * @param config Configuracion del controlador * @returns Controlador de paginacion */ createController(config: PaginationConfig): PaginationController; /** * Crea un controlador simple para arrays estaticos con paginacion local. * * @param items Array completo de items * @param pageSize Tamano de pagina * @returns Controlador de paginacion */ createLocalController(items: T[], pageSize?: number): PaginationController; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; }