import { ControlsFactory, IAction, IDataMemberInfo, ISerializationInfo, ISerializationInfoArray } from '@devexpress/analytics-core/analytics-utils'; import { IDialogModel } from '../tools/dialogs/reportDialogBase'; import { INavigateTab } from '../tools/navigation/navigateTab'; import { WizardType, WizardTypeString } from '../wizard/wizardTypes'; import { DxDeferred, ICommonCallbacksHandler } from '@devexpress/analytics-core/analytics-internal'; import { SaveReportDialog } from '../tools/dialogs/saveReportDialog'; import { OpenReportDialog } from '../tools/dialogs/openReportDialog'; import { SaveAsReportDialog } from '../tools/dialogs/saveAsReportDialog'; import { IPreviewCustomizationCallbacks, IPreviewCustomizationCallbacksCommon } from '../../viewer/utils/publicCallbacks'; import { IReportDesignerRootContext } from '../tools/generator/reportDesignerContext'; import { LayoutItemType } from '../helpers/reportParameterHelper'; import { IParameterDescriptor } from '../../viewer/parameters/parameterHelper'; interface IReportNavigationArgs { Tab: INavigateTab; } interface IReportTabClosingArgs extends IReportNavigationArgs { Tab: INavigateTab; ReadyToClose: DxDeferred; Handled: boolean; } interface IReportOpenedArgs { Url: string; Report?: any; } interface IReportOpeningArgs extends IReportOpenedArgs { Cancel: boolean; } interface IComponentAddedArgs { Model: any; Parent: any; } interface ICustomizeDialogArgs { Popup: DialogType; Customize: (template: string, model: IDialogModel) => void; } interface ICustomizeWizardArgs { Type: WizardTypeString; Wizard: WizardType; } interface ICustomizeFieldListActionsArgs { Item: IDataMemberInfo; Actions: IAction[]; } interface ICustomizeParameterPropertiesArgs { parameter: IParameterDescriptor; parameterPanelLayoutItem: { layoutItemType: LayoutItemType; name: string; }; editors: ISerializationInfoArray; getEditor: (path: string) => ISerializationInfo; editOptions: { allowDelete: boolean; }; } export type IReportViewerIntoDesignerCallbacks = { [K in keyof IPreviewCustomizationCallbacks as `Preview${K}`]: IPreviewCustomizationCallbacks[K]; }; export interface IReportDeisgnerCallbacks extends IReportViewerIntoDesignerCallbacks, IPreviewCustomizationCallbacksCommon, ICommonCallbacksHandler { ReportTabClosing?: (sender: T, args: IReportTabClosingArgs) => void; ReportTabClosed?: (sender: T, args: IReportNavigationArgs) => void; ReportOpening?: (sender: T, args: IReportOpeningArgs) => void; ReportOpened?: (sender: T, args: IReportOpenedArgs) => void; TabChanged?: (sender: T, args: { Tab: INavigateTab; }) => void; ExitDesigner?: (sender: T) => void; ReportSaving?: (sender: T, args: IReportOpeningArgs) => void; reportSaved?: (sender: T, args: IReportOpenedArgs) => void; ComponentAdded?: (sender: T, args: IComponentAddedArgs) => void; CustomizeSaveDialog?: (sender: T, args: ICustomizeDialogArgs) => void; CustomizeOpenDialog?: (sender: T, args: ICustomizeDialogArgs) => void; CustomizeSaveAsDialog?: (sender: T, args: ICustomizeDialogArgs) => void; CustomizeWizard?: (sender: T, args: ICustomizeWizardArgs) => void; CustomizeToolbox?: (sender: T, args: { ControlsFactory: ControlsFactory; }) => void; CustomizeFieldListActions?: (sender: T, args: ICustomizeFieldListActionsArgs) => void; CustomizeParameterProperties?: (sender: T, args: ICustomizeParameterPropertiesArgs) => void; } export {};