devexpress-reporting
Version:
DevExpress Reporting provides the capability to develop a reporting application to create and customize reports.
89 lines (88 loc) • 3.96 kB
TypeScript
/**
* DevExpress HTML/JS Reporting (designer\utils\publicCallbacks.d.ts)
* Version: 24.2.6
* Build date: Mar 18, 2025
* Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
* License: https://www.devexpress.com/Support/EULAs/universal.xml
*/
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<any>;
Handled: boolean;
}
interface IReportOpenedArgs {
Url: string;
Report?: any;
}
interface IReportOpeningArgs extends IReportOpenedArgs {
Cancel: boolean;
}
interface IComponentAddedArgs {
Model: any;
Parent: any;
}
interface ICustomizeDialogArgs<DialogType> {
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<T> = {
[K in keyof IPreviewCustomizationCallbacks<T> as `Preview${K}`]: IPreviewCustomizationCallbacks<T>[K];
};
export interface IReportDeisgnerCallbacks<T> extends IReportViewerIntoDesignerCallbacks<T>, IPreviewCustomizationCallbacksCommon<T>, ICommonCallbacksHandler<T, IReportDesignerRootContext> {
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<SaveReportDialog>) => void;
CustomizeOpenDialog?: (sender: T, args: ICustomizeDialogArgs<OpenReportDialog>) => void;
CustomizeSaveAsDialog?: (sender: T, args: ICustomizeDialogArgs<SaveAsReportDialog>) => 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 {};