/// import { TemplateRef, EventEmitter, OnChanges, OnInit, IterableDiffers, DoCheck, SimpleChanges } from "@angular/core"; export declare class Pagination implements OnInit, DoCheck, OnChanges { availablePageSizes: number[]; pageSize: number; lazy: boolean; pager: string; maxVisiblePages: number; filterFunction: (data: Array, restraints: Restraints) => Array; sortFunction: (data: Array, restraints: Restraints) => Array; pageChange: EventEmitter; onLazy: EventEmitter; private pageTemplate; private _data; private dataToDisplay; private totalRows; private currentPage; private pages; private pageContext; private differ; constructor(differs: IterableDiffers); data: Array | LazyPageData; ngOnInit(): any; ngDoCheck(): any; ngOnChanges(changes: SimpleChanges): any; filter(): void; sort(): void; refresh(): void; open(pageNumber: number): void; private shiftVisiblePages(); private calculatePaginationBoundaries(); private preparePageContext(); private changePageSize(newPageSize); private emitPageDataRequest(); private openNext(); private openPrevious(); private openFirst(); private openLast(); private hasNext(); private hasPrev(); private getPageCount(); private hasDataChanged(); } export declare class PageTemplate { templateRef: TemplateRef; constructor(templateRef: TemplateRef); } export declare const PAGINATION_UI_DIRECTIVES: Array; export interface LazyPageData { data: Array; totalRows: number; } export interface LazyLoadEvent { page: number; rows: number; restraints: Restraints; } export interface PageContext { pageData?: Array; restraints: Restraints; } export interface Restraints { custom: any; orderBy?: OrderMeta; filterBy: FilterMeta; } export interface OrderMeta { field?: string; order?: number; } export interface FilterMeta { [filteredField: string]: string | number; }