﻿/**
* DevExpress HTML/JS Reporting (designer\jsReportDesignerBinding.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 { DxAnalyticsComponentCommon, ICommonBindingCustomizationHandler, JSDesignerBindingCommon, IJSDesignerBindingCommonOptions } from '@devexpress/analytics-core/analytics-internal';
import * as ko from 'knockout';
import { IPreviewCustomizationHandler } from '../viewer/utils/initializer';
import { JSReportDesigner } from './jsReportDesigner';
import { IReportPreviewSettings } from './tools/generator/_settings';
import { IDataSourceSettings, IReportDesignerCustomizationHandler, IReportDesignerInitializationModel, IReportDesignerParameterEditingSettings, IReportWizardSettings } from './utils/inititalizer';
import { IReportDeisgnerCallbacks } from './utils/publicCallbacks';
export interface IJSDesignerCallbacks extends IReportDeisgnerCallbacks<DxReportDesigner>, ICommonBindingCustomizationHandler<JSReportDesigner> {
    designer?: IReportDesignerCustomizationHandler;
    preview?: IPreviewCustomizationHandler;
}
export interface IServerSideConfigurationOptions {
    wizardSettings?: IReportWizardSettings;
    reportPreviewSettings?: IReportPreviewSettings;
    dataSourceSettings?: IDataSourceSettings;
    parameterEditingSettings?: IReportDesignerParameterEditingSettings;
    allowMDI?: boolean;
    rightToLeft?: boolean;
}
export interface IReportDesignerOptions extends IJSDesignerBindingCommonOptions {
    designerModel?: any;
    initializationData?: IReportDesignerInitializationModel | ko.Observable<IReportDesignerInitializationModel>;
    requestOptions?: {
        host: string;
        getDesignerModelAction?: string;
        getLocalizationAction?: string;
    };
    designerModelSettings?: IServerSideConfigurationOptions;
    callbacks?: IJSDesignerCallbacks;
    reportModel?: any;
    reportUrl?: any;
    parts?: any[];
    limitation?: boolean;
    undoEngine?: any;
}
export declare class JSReportDesignerBinding extends JSDesignerBindingCommon<JSReportDesigner, IReportDesignerOptions> {
    private _initializationData;
    private _callbacks;
    private _model;
    private _deferreds;
    private _updateSurfaceSizeTimeout;
    private _applyBindings;
    private _initializeCallbacks;
    private _createModel;
    private _showErrorInfo;
    private _getDesignerModelRequest;
    constructor(_options: IReportDesignerOptions, customEventRaiser?: (eventName: string, args?: any) => void);
    dispose(): void;
    applyBindings(element: HTMLElement): void;
}
export declare class DxReportDesigner extends DxAnalyticsComponentCommon<IReportDesignerOptions> {
    getBindingName(): string;
}
