import { ChangeDetectorRef, EventEmitter, OnChanges, OnInit, SimpleChanges } from '@angular/core';
import { SelectType } from '../../enums/select-type.enum';
import { PaginationType } from '../../enums/pagination-type.enum';
import * as i0 from "@angular/core";
export declare class PaginationComponent implements OnInit, OnChanges {
    private cdr;
    data: any[];
    itemsPerPageOptions: {
        value: string;
        label: string;
    }[];
    allPages: number;
    itemsPerPage: number;
    allItems: number;
    currentPage: number;
    type: PaginationType;
    pageChange: EventEmitter<number>;
    itemsPerPageChange: EventEmitter<number>;
    displayedData: any[];
    pagesArray: any[];
    visiblePages: (number | string)[];
    maxVisiblePages: number;
    currentItemsPerPageValue: string;
    currentPageSelectValue: string;
    SelectType: typeof SelectType;
    constructor(cdr: ChangeDetectorRef);
    isStandardType(): boolean;
    isContextualType(): boolean;
    ngOnInit(): void;
    ngOnChanges(changes: SimpleChanges): void;
    private updatePaginationData;
    private updatePagesArray;
    private updateDisplayedData;
    private updateVisiblePages;
    changeItemsPerPage(selected: any[]): void;
    goToPage(selection: any): void;
    prevPage(): void;
    nextPage(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<PaginationComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<PaginationComponent, "cfc-pagination", never, { "data": { "alias": "data"; "required": false; }; "itemsPerPageOptions": { "alias": "itemsPerPageOptions"; "required": false; }; "allPages": { "alias": "allPages"; "required": false; }; "itemsPerPage": { "alias": "itemsPerPage"; "required": false; }; "allItems": { "alias": "allItems"; "required": false; }; "currentPage": { "alias": "currentPage"; "required": false; }; "type": { "alias": "type"; "required": false; }; }, { "pageChange": "pageChange"; "itemsPerPageChange": "itemsPerPageChange"; }, never, never, false, never>;
}
