import { EventDispatcher, INotifyPropertyChanged, PropertyChangedArg } from "../../events/Events.module";
export interface PageInfoJSON {
    pageIndex: number;
    pageSize: number;
}
export declare class PageInfo implements INotifyPropertyChanged {
    private _pageIndex;
    private _pageSize;
    private _onPropertyChanged;
    /**
     * Конструктор. Не предназначен для использования внешним кодом.
     * Следует использовать PageInfo.createNew()
     */
    constructor();
    static createNew(pageIndex: number, pageSize: number): PageInfo;
    static fromJSON(json: PageInfoJSON | string): PageInfo;
    toJSON(): PageInfoJSON;
    get onPropertyChanged(): EventDispatcher<PropertyChangedArg>;
    get pageIndex(): number;
    set pageIndex(value: number);
    get pageSize(): number;
    set pageSize(value: number);
    private raisePropertyChanged;
}
