﻿/**
* DevExpress HTML/JS Reporting (viewer\internal\_page.viewModel.d.ts)
* Version:  26.1.3
* Build date: Jun 16, 2026
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
* License: https://www.devexpress.com/Support/EULAs/universal.xml
*/
import { ArrayPropertyChangedEventArgs, IViewModel, PropertyChangedEventArgs } from '@devexpress/analytics-core/analytics-serializer-native';
import { Properties as DxMenuOptions } from 'devextreme/ui/menu';
import { ReportPreview } from '../reportPreview';
import { IBrickNode } from '../utils/utils';
import { IAutoFitOptions, IPreviewImageOptions } from './_bindings';
import { PreviewPage } from './_page';
import { PreviewEditingFieldsKeyboardHelper } from '../accessibility/_previewEditingFieldsKeyboardHelper';
import { SurfacePosition } from '../ai/_aiPanelModel';
export interface IPreviewPageViewModel extends IViewModel {
    pageLoading: boolean;
    pageLoaded: boolean;
    brickLoading: boolean;
    displayImageSrc: string;
    width: number;
    height: number;
    loadingText: string;
    brickSelectionProg: {
        page: PreviewPage;
        preview: ReportPreview;
        click: (pageIndex: number) => void;
    };
    autoFitOptions: IAutoFitOptions;
    editingFields: any[];
    delayedInit: () => void;
    clickToBrick: (sender: IPreviewPageViewModel, event: any) => void;
    currentPageAriaLabelImgAlt: string;
    bricks: IBrickNode[];
    activeBricks: IBrickNode[];
    clickableBricks: IBrickNode[];
    setPageActiveChangedEvent: (callback: (active: boolean) => void) => () => void;
    isClientVisible: boolean;
    color: string;
    active: boolean;
    editingFieldsKeyboardHelper: PreviewEditingFieldsKeyboardHelper;
    imageOptions: IPreviewImageOptions;
    smartTagAIMenu: DxMenuOptions;
    smartTagAIMenuPosition: SurfacePosition;
    aiServicesEnabled: boolean;
    loading: boolean;
    page_id: string;
    aiCustomDocumentStorageId: string;
    revertToOriginal: () => void;
    translatedPageBadgeText: string;
    imageSrc: string;
    revertToOriginalBtnTxt: string;
    aiOperationInProgress: boolean;
    getAILoadingPanelOptions: () => any;
}
export declare function createPreviewPageViewModel(this: PreviewPage, base: IPreviewPageViewModel): IPreviewPageViewModel;
export declare function updatePreviewPageViewModel(this: PreviewPage, args: PropertyChangedEventArgs<PreviewPage> | ArrayPropertyChangedEventArgs<PreviewPage>): void;
