﻿/**
* DevExpress HTML/JS Reporting (viewer\reportPreview.d.ts)
* Version:  20.2.13
* Build date: Apr 10, 2023
* Copyright (c) 2012 - 2023 Developer Express Inc. ALL RIGHTS RESERVED
* License: https://www.devexpress.com/Support/EULAs/universal.xml
*/
import { EditingField } from './editing/editingField';
import { PreviewRequestWrapper } from './internal/_previewRequestWrapper';
import { IBrickNode, IDocumentOperationResult, IBrickNodeNavigation } from './utils/utils';
import { PreviewPage } from './internal/_page';
import { PreviewHandlersHelper, IExportProgressStatus, IDocumentBuildStatus } from './internal/_previewHandlersHelper';
import { IPreviewCustomizationHandler, IPreviewInitialize, IPreviewExportOptionsCustomizationArgs } from './utils/initializer';
import { ExportOptionsPreview } from './exportOptions/exportOptionsPreview';
import { IReportParametersInfo } from './parameters/previewParametersViewModel';
import { IBookmarkNode } from './documentMap/_documentMapModel';
import { IProgressHandler } from './internal/_progressViewModel';
import { Disposable } from '@devexpress/analytics-core/analytics-utils';
import * as ko from 'knockout';
import { PreviewBricksKeyboardHelper } from './accessibility/_previewBricksKeyboardHelper';
export declare class ReportPreview extends Disposable {
    private enableKeyboardSupport?;
    predefinedZoomLevels: ko.ObservableArray<number>;
    _pageWidth: ko.Observable<number>;
    _pageHeight: ko.Observable<number>;
    _pageBackColor: ko.Observable<string>;
    _currentReportId: ko.Observable<string>;
    _currentReportUrl: ko.Observable<string>;
    _currentDocumentId: ko.Observable<string>;
    _unifier: ko.Observable<string>;
    _currentOperationId: ko.Observable<string>;
    _stopBuildRequests: {
        [key: string]: boolean;
    };
    _closeReportRequests: {
        [key: string]: boolean;
    };
    _closeDocumentRequests: {
        [key: string]: boolean;
    };
    _editingFields: ko.Observable<EditingField[]>;
    private _openReportOperationDeferred;
    _startBuildOperationId: string;
    private _editingValuesSubscriptions;
    private _workerTicker;
    private _workerFunctionBlobUrl;
    private _workerTickerFunction;
    private _getUrlObject;
    private _createWorker;
    private _terminateWorker;
    private _callPrint;
    private _drillDownState;
    private _sortingState;
    private _sortingProcessor;
    private _getBuildStatusDeferreds;
    private _doDrillDown;
    private _doSorting;
    private _timeouts;
    private _deferreds;
    dispose(): void;
    removeEmptyPages(all?: boolean): void;
    private _initialize;
    createPage(pageIndex: number, processClick?: (target: IBrickNode) => void, loading?: ko.Observable<boolean>): PreviewPage;
    private _cleanTabInfo;
    private _clearReportInfo;
    private _window;
    private _initExportWindow;
    private _export;
    private _shouldUseBlob;
    private _printUsingBlob;
    private _safelyRunWindowOpen;
    createBrickClickProcessor(cyclePageIndex: number): (brick: IBrickNode, e?: JQueryEventObject) => void;
    constructor(handlerUri?: string, previewRequestWrapper?: PreviewRequestWrapper, previewHandlersHelper?: PreviewHandlersHelper, callbacks?: IPreviewCustomizationHandler, rtl?: boolean, enableKeyboardSupport?: boolean);
    delayedInit(): void;
    openReport(reportName: string): JQueryPromise<IPreviewInitialize>;
    drillThrough(customData?: string, closeCurrentReport?: boolean): JQuery.Promise<IPreviewInitialize, any, any>;
    initialize(initializeDataPromise: JQueryPromise<IPreviewInitialize>): JQueryPromise<IPreviewInitialize>;
    private _deserializeExportOptions;
    deactivate(): void;
    startBuild(): JQuery.Promise<boolean, any, any>;
    updateExportStatus(progress: number): void;
    customDocumentOperation(customData?: string, hideMessageFromUser?: boolean): JQueryPromise<IDocumentOperationResult>;
    _initializeStartBuild(): boolean;
    _startBuildRequest(): JQuery.Promise<boolean, any, any>;
    getExportStatus(operationId: string): JQueryPromise<IExportProgressStatus>;
    getExportResult(operationId: string, inlineDisposition: boolean, token?: string, printable?: boolean, uri?: string): void;
    getBuildStatus(documentId: string): JQueryPromise<IDocumentBuildStatus>;
    getDoGetBuildStatusFunc(): (documentId: string) => void;
    getDocumentData(documentId: any): void;
    exportDocumentTo(format: string, inlineResult?: boolean): void;
    printDocument(pageIndex?: number): void;
    stopBuild(documentId?: string): void;
    closeDocument(documentId?: string): void;
    closeReport(): void;
    goToPage(pageIndex: number, forcePageChanging?: boolean, throttle?: number): void;
    private _goToPageTimer;
    getSelectedContent: (punctuationMark?: string) => string;
    createEditingField(item: any, index: any): EditingField;
    rtlReport: ko.Observable<boolean>;
    rtlViewer: boolean;
    previewHandlersHelper: PreviewHandlersHelper;
    currentPage: ko.Observable<PreviewPage>;
    originalParametersInfo: ko.Observable<IReportParametersInfo>;
    pageIndex: ko.Observable<number>;
    showMultipagePreview: ko.Observable<boolean>;
    documentMap: ko.Observable<IBookmarkNode>;
    exportOptionsModel: ko.Observable<ExportOptionsPreview>;
    pageLoading: ko.Observable<boolean>;
    errorMessage: ko.Observable<string>;
    documentBuilding: ko.Observable<boolean>;
    reportOpening: ko.Observable<boolean>;
    progressBar: IProgressHandler;
    pages: ko.ObservableArray<PreviewPage>;
    customProcessBrickClick: (pageNamber: number, brick: IBrickNode, defaultHandler: () => void) => boolean;
    brickClickDocumentMapHandler: (navigationBrick: IBrickNodeNavigation) => void;
    editingFieldChanged: (field: EditingField, oldVal: any, newVal: any) => void;
    customizeExportOptions: (options: IPreviewExportOptionsCustomizationArgs) => void;
    isAutoFit: ko.Observable<boolean>;
    autoFitBy: ko.Observable<number>;
    exportDisabled: ko.PureComputed<boolean>;
    _zoom: ko.Observable<number>;
    zoom: ko.PureComputed<any>;
    editingFieldsProvider: () => EditingField[];
    _currentPageText: ko.PureComputed<any>;
    currentPageAriaLabelImgAlt(index: any): string;
    _getErrorMessage(jqXHR: any): any;
    _processError(error: string, jqXHR?: any, showForUser?: boolean): void;
    _raiseOnSizeChanged: () => void;
    previewSize: ko.Observable<number>;
    onSizeChanged: ko.Observable<any>;
    previewVisible: ko.Observable<boolean>;
    editingFieldsHighlighted: ko.Observable<boolean>;
    canSwitchToDesigner: boolean;
    allowURLsWithJSContent: boolean;
    requestWrapper: PreviewRequestWrapper;
    zoomStep: ko.Observable<number>;
    private _progressFirstTime;
    emptyDocumentCaption: ko.PureComputed<string>;
    readonly reportId: string;
    readonly reportUrl: string;
    readonly documentId: string;
    exportOptionsTabVisible: ko.Observable<boolean>;
    previewBrickKeyboardHelper: PreviewBricksKeyboardHelper;
}
