import type { DashboardAttributeFilterConfigMode, DashboardDateFilterConfigMode, FilterContextItem, IAutomationMetadataObject, IAutomationMetadataObjectDefinition, IDashboardExportParameter, IExportTemplate, IInsight, IWidget } from "@gooddata/sdk-model"; /** * Sub-context for the scheduled-email create/edit dialog. * Shape grows during Phase 2 migration as DefaultScheduledEmailDialog and its hooks are migrated. * The connector hydrates this from dashboard state and provides the CRUD callbacks. */ export interface IScheduledEmailDialogContextValue { widget?: IWidget; insight?: IInsight; widgetTitle?: string; dashboardId?: string; dashboardTitle: string; dashboardFilters?: FilterContextItem[]; /** * Raw dashboard hidden filters (selectDashboardHiddenFilters). Combined with edited filters via * getAppliedDashboardFilters/getAppliedWidgetFilters inside the dialog, mirroring the alerting context. */ hiddenFilters: FilterContextItem[]; widgetLocalIdToTabIdMap: Record; commonDateFilterId?: string; /** * Effective export parameter overrides keyed by tab, scoped to the dialog's widget when present. * Replaces the direct selectExportEffectiveParameters read in useEditScheduledEmail. */ exportParametersByTab: Record; /** * Organization-level export templates fetched in the connector (replaces the useExportTemplates * react hook read in the dialog). */ exportTemplates: IExportTemplate[]; /** Workspace date format (e.g. "MM/dd/yyyy"); from selectDateFormat. */ dateFormat: string | undefined; /** Whether cross-filtering is active on the dashboard; from selectIsCrossFiltering. */ isCrossFiltering: boolean; /** Whether the dashboard has more than one tab; derived from selectTabs. */ hasMultipleTabs: boolean; /** Effective mode for the common (dashboard-level) date filter. */ commonDateFilterMode: DashboardDateFilterConfigMode; /** Effective mode map for per-dataset date filters (localIdentifier → mode). */ dateFiltersModeMap: Map; /** Effective mode map for attribute filters (localIdentifier → mode). */ attributeFiltersModeMap: Map; createScheduledEmail(se: IAutomationMetadataObjectDefinition): Promise; saveScheduledEmail(se: IAutomationMetadataObject): Promise; deleteScheduledEmail(se: IAutomationMetadataObject): Promise; } export declare const ScheduledEmailDialogContextProvider: import("react").Provider; export declare function useScheduledEmailDialogContext(): IScheduledEmailDialogContextValue; //# sourceMappingURL=ScheduledEmailDialogContext.d.ts.map