import { EventEmitter, OnInit } from '@angular/core';
import { PageEvent } from '@angular/material/paginator';
import { TranslateLibraryService } from "../../services/translation-registry.service";
export interface QMSPaginationOption {
    pageSize?: number;
    pageSizeOptions?: number[];
    length: number;
}
export declare enum PaginationSize {
    small = "small",
    medium = "medium",
    large = "large",
    mobile = "mobile"
}
export declare class QMSPaginatorComponent implements OnInit {
    private trans;
    sizeMedium: string;
    sizeSmall: string;
    sizeLarge: string;
    sizeMobile: string;
    LANG: any;
    numHidden: number;
    size: PaginationSize;
    get pageSizeOptions(): number[];
    set pageSizeOptions(value: number[]);
    private _pageSizeOptions;
    get pageSize(): number;
    set pageSize(value: number);
    private _pageSize;
    get length(): number;
    set length(value: number);
    private _length;
    get pageIndex(): number;
    set pageIndex(value: number);
    _pageIndex: number;
    readonly page: EventEmitter<PageEvent>;
    previousPageIndex?: number;
    numberOfPages: number[];
    displayNumberOfPages: string[];
    minPage: number;
    maxpage: number;
    isFirstLoad: boolean;
    constructor(trans: TranslateLibraryService);
    ngOnInit(): void;
    private _updateDisplayedPageSizeOptions;
    getNumberOfPages(): void;
    renderDisplayNumberOfpages(): void;
    changePage(page: number): void;
    pagination(c: any, m: any): any[];
    nextPage(): void;
    previousPage(): void;
    _changePageSize(pageSize: number): void;
    _changePageNumber(pageNumber: number): void;
    private _emitPageEvent;
    ngAfterViewChecked(): void;
}
