import { TransferableRequestContext } from '../../editor/request-context';
import { PagerMode } from '../common/page-mode';
export declare class PagerViewModel {
    static readonly PageNumberDefaultTemplate: string;
    static readonly PageNumberDefaultQueryTemplate: string;
    ProcessedUrlSegments: string[];
    CurrentPage: number;
    StartPageIndex: number;
    EndPageIndex: number;
    TotalPagesCount: number;
    DisplayPagesCount: number;
    IsPreviousButtonVisible: boolean;
    IsNextButtonVisible: boolean;
    IsPageNumberValid: boolean;
    PreviousPageIndex: number;
    NextPageIndex: number;
    PagerQueryParameterTemplate: string;
    PagerSegmentTemplate: string;
    PagerMode: PagerMode;
    ViewUrl: string;
    PageNumberSlot: string;
    constructor(currentPage: number, totalItemsCount: number, itemsPerPage: number, pagerSegmentTemplate: string, pagerQueryParamTemplate: string, pagerMode: PagerMode);
    isPageValid(pageNumber: number): boolean;
    getPagerUrl(pageNumber: number, context: TransferableRequestContext): string;
    private isSegmentMatch;
}
export declare function getPageNumber(pagerMode: PagerMode, requestContext: TransferableRequestContext, pagerQueryTemplate?: string, pagerTemplate?: string): number;
