import { type FilterContextItem, type IAttributeDescriptor, type ICrossFiltering, type IDashboardAttributeFilter, type IDashboardAttributeFilterConfig, type IDrillToAttributeUrl, type IDrillToCustomUrl, type IDrillToDashboard, type IDrillToInsight, type IDrillToLegacyDashboard, type IInsight, type IInsightParameterValue, type IKeyDriveAnalysis, type IMeasureDescriptor } from "@gooddata/sdk-model"; import { type ExplicitDrill, type ITableDataAttributeScope } from "@gooddata/sdk-ui"; import { type IKdaDefinition } from "../../kdaDialog/types.js"; import { type IDashboardDrillContext, type IDashboardDrillEvent, type IDashboardFilter, type IDrillDownDefinition } from "../../types.js"; import { type DashboardContext, type FiltersInfo } from "../types/commonTypes.js"; import { type IDashboardEvent } from "./base.js"; /** * @internal */ export type DashboardKeyDriverCombinationRangeItem = { normalizedValue: string; } & IAttributeDescriptor; /** * @internal */ export interface IDashboardKeyDriverCombinationItem { where: "before" | "after" | "none"; type: "comparative" | "year-to-year"; measure: IMeasureDescriptor; difference: number; values: [number, number]; range: [ITableDataAttributeScope, ITableDataAttributeScope]; } /** * Payload of the {@link IDashboardDrillRequested} event. * @alpha */ export interface IDashboardDrillRequestedPayload { /** * Original drill event, that triggered this particular drill interaction. */ readonly drillEvent: IDashboardDrillEvent; /** * Context in which the drill interaction was triggered (widget and insight details - if available). */ readonly drillContext: IDashboardDrillContext; } /** * This event is emitted on start of the resolution of the {@link IDrill} command. * It contains details about all possible drill definitions that are available for this particular drill interaction * * @alpha */ export interface IDashboardDrillRequested extends IDashboardEvent { readonly type: "GDC.DASH/EVT.DRILL.REQUESTED"; readonly payload: IDashboardDrillRequestedPayload; } /** * @alpha */ export declare function drillRequested(ctx: DashboardContext, drillEvent: IDashboardDrillEvent, drillContext: IDashboardDrillContext, correlationId?: string): IDashboardDrillRequested; /** * Tests whether the provided object is an instance of {@link IDashboardDrillRequested}. * * @param obj - object to test * @alpha */ export declare const isDashboardDrillRequested: (obj: unknown) => obj is IDashboardDrillRequested; /** * Payload of the {@link IDashboardDrillResolved} event. * @alpha */ export interface IDashboardDrillResolvedPayload { /** * Original drill event, that triggered this particular drill interaction. */ readonly drillEvent: IDashboardDrillEvent; /** * Context in which the drill interaction was triggered (widget and insight details - if available). */ readonly drillContext: IDashboardDrillContext; } /** * A general drill event that is emitted each time any dashboard drill is resolved. * It contains only valid drillDefinitions for this particular drill interaction, * so you can select and dispatch relevant more granular drill command(s). * * This is general dashboard drill event with details about all possible more granular drill interactions that can follow. * Reason for this general drill event is that it may happen that multiple drill interactions are possible for one drill event. * * Example: some attribute on the insight has drilled down set and also widget has drilled to insight set. Then this event will be dispatched with both * {@link @gooddata/sdk-ui-ext#IDrillDownDefinition} and {@link @gooddata/sdk-backend-spi#IDrillToInsight} definitions. * * - This must be always the first event that occurs after the drill interaction, and must be dispatched before more granular drill events. * - Specific drill commands that can follow this general drill event are: {@link IDrillDown}, {@link IDrillToInsight}, {@link IDrillToDashboard}, * {@link IDrillToCustomUrl}, {@link IDrillToAttributeUrl}, {@link IDrillToLegacyDashboard} * * @alpha */ export interface IDashboardDrillResolved extends IDashboardEvent { readonly type: "GDC.DASH/EVT.DRILL.RESOLVED"; readonly payload: IDashboardDrillResolvedPayload; } /** * @alpha */ export declare function drillResolved(ctx: DashboardContext, drillEvent: IDashboardDrillEvent, drillContext: IDashboardDrillContext, correlationId?: string): IDashboardDrillResolved; /** * Tests whether the provided object is an instance of {@link IDashboardDrillResolved}. * * @param obj - object to test * @alpha */ export declare const isDashboardDrillResolved: (obj: unknown) => obj is IDashboardDrillResolved; /** * Payload of the {@link IDashboardDrillDownRequested} event. * @alpha */ export interface IDashboardDrillDownRequestedPayload { /** * Drill down definition that was applied. */ readonly drillDefinition: IDrillDownDefinition; /** * Original drill event, that triggered this particular drill interaction. */ readonly drillEvent: IDashboardDrillEvent; /** * The target insight to apply drill down on. */ readonly insight: IInsight; } /** * This event is emitted on start of the resolution of the {@link IDrillDown} command. * It contains the target insight to apply the drill-down on (result of the drill-down application * depends on the particular visualization type). * * @alpha */ export interface IDashboardDrillDownRequested extends IDashboardEvent { readonly type: "GDC.DASH/EVT.DRILL.DRILL_DOWN.REQUESTED"; readonly payload: IDashboardDrillDownRequestedPayload; } /** * @alpha */ export declare function drillDownRequested(ctx: DashboardContext, insight: IInsight, drillDefinition: IDrillDownDefinition, drillEvent: IDashboardDrillEvent, correlationId?: string): IDashboardDrillDownRequested; /** * Tests whether the provided object is an instance of {@link IDashboardDrillDownRequested}. * * @param obj - object to test * @alpha */ export declare const isDashboardDrillDownRequested: (obj: unknown) => obj is IDashboardDrillDownRequested; /** * Payload of the {@link IDashboardDrillDownResolved} event. * @alpha */ export interface IDashboardDrillDownResolvedPayload { /** * Drill down definition that was applied. */ readonly drillDefinition: IDrillDownDefinition; /** * Original drill event, that triggered this particular drill interaction. */ readonly drillEvent: IDashboardDrillEvent; /** * Target insight with the drill-down definition applied. */ readonly insight: IInsight; } /** * This event is emitted as a result of the {@link IDrillDown} command. * It contains the target insight with the drill-down definition applied (result of the drill-down application * depends on the particular visualization type). * * In the default dashboard implementation this event also opens drill dialog with the insight * that has this particular drill down definition applied. * * @alpha */ export interface IDashboardDrillDownResolved extends IDashboardEvent { readonly type: "GDC.DASH/EVT.DRILL.DRILL_DOWN.RESOLVED"; readonly payload: IDashboardDrillDownResolvedPayload; } /** * @alpha */ export declare function drillDownResolved(ctx: DashboardContext, insight: IInsight, drillDefinition: IDrillDownDefinition, drillEvent: IDashboardDrillEvent, correlationId?: string): IDashboardDrillDownResolved; /** * Tests whether the provided object is an instance of {@link IDashboardDrillDownResolved}. * * @param obj - object to test * @alpha */ export declare const isDashboardDrillDownResolved: (obj: unknown) => obj is IDashboardDrillDownResolved; /** * Payload of the {@link IDashboardDrillToInsightRequested} event. * @alpha */ export interface IDashboardDrillToInsightRequestedPayload { /** * Drill definition with the target insight. */ readonly drillDefinition: IDrillToInsight; /** * Original drill event, that triggered this particular drill interaction. */ readonly drillEvent: IDashboardDrillEvent; /** * Target insight with the drill intersection filters applied. */ readonly insight: IInsight; } /** * This event is emitted on start of the resolution of the {@link IDrillToInsight} command. * It contains the target insight to apply drill intersection filters on. * * @alpha */ export interface IDashboardDrillToInsightRequested extends IDashboardEvent { readonly type: "GDC.DASH/EVT.DRILL.DRILL_TO_INSIGHT.REQUESTED"; readonly payload: IDashboardDrillToInsightRequestedPayload; } /** * @alpha */ export declare function drillToInsightRequested(ctx: DashboardContext, insight: IInsight, drillDefinition: IDrillToInsight, drillEvent: IDashboardDrillEvent, correlationId?: string): IDashboardDrillToInsightRequested; /** * Tests whether the provided object is an instance of {@link IDashboardDrillToInsightRequested}. * * @param obj - object to test * @alpha */ export declare const isDashboardDrillToInsightRequested: (obj: unknown) => obj is IDashboardDrillToInsightRequested; /** * Payload of the {@link IDashboardDrillToInsightResolved} event. * @alpha */ export interface IDashboardDrillToInsightResolvedPayload { /** * Drill definition with the target insight. */ readonly drillDefinition: IDrillToInsight; /** * Original drill event, that triggered this particular drill interaction. */ readonly drillEvent: IDashboardDrillEvent; /** * Target insight with the drill intersection filters applied. */ readonly insight: IInsight; } /** * This event is emitted as a result of the {@link IDrillToInsight} command. * It contains the target insight with the drill intersection filters applied. * * In the default dashboard implementation this event also opens drill dialog with the insight * that has the drill intersection filters applied. * * @alpha */ export interface IDashboardDrillToInsightResolved extends IDashboardEvent { readonly type: "GDC.DASH/EVT.DRILL.DRILL_TO_INSIGHT.RESOLVED"; readonly payload: IDashboardDrillToInsightResolvedPayload; } /** * @alpha */ export declare function drillToInsightResolved(ctx: DashboardContext, insight: IInsight, drillDefinition: IDrillToInsight, drillEvent: IDashboardDrillEvent, correlationId?: string): IDashboardDrillToInsightResolved; /** * Tests whether the provided object is an instance of {@link IDashboardDrillToInsightResolved}. * * @param obj - object to test * @alpha */ export declare const isDashboardDrillToInsightResolved: (obj: unknown) => obj is IDashboardDrillToInsightResolved; /** * Payload of the {@link IDashboardDrillToDashboardRequested} event. * @alpha */ export interface IDashboardDrillToDashboardRequestedPayload { /** * Original drill event, that triggered this particular drill interaction. */ readonly drillEvent: IDashboardDrillEvent; /** * Drill definition with the target dashboard. */ readonly drillDefinition: IDrillToDashboard; } /** * This event is emitted on start of the resolution of the {@link IDrillToDashboard} command. * * @alpha */ export interface IDashboardDrillToDashboardRequested extends IDashboardEvent { readonly type: "GDC.DASH/EVT.DRILL.DRILL_TO_DASHBOARD.REQUESTED"; readonly payload: IDashboardDrillToDashboardRequestedPayload; } /** * @alpha */ export declare function drillToDashboardRequested(ctx: DashboardContext, drillDefinition: IDrillToDashboard, drillEvent: IDashboardDrillEvent, correlationId?: string): IDashboardDrillToDashboardRequested; /** * Tests whether the provided object is an instance of {@link IDashboardDrillToDashboardRequested}. * * @param obj - object to test * @alpha */ export declare const isDashboardDrillToDashboardRequested: (obj: unknown) => obj is IDashboardDrillToDashboardRequested; /** * Payload of the {@link IDashboardDrillToDashboardResolved} event. * @alpha */ export interface IDashboardDrillToDashboardResolvedPayload { /** * Drill intersection filters that can be applied to the target dashboard. */ readonly filters: (IDashboardFilter | FilterContextItem)[]; /** * Attribute filter configs with additional props */ readonly attributeFilterConfigs: IDashboardAttributeFilterConfig[]; /** * Source dashboard's active parameter overrides, applied to the target where parameter refs match. */ readonly parameters: IInsightParameterValue[]; /** * Original drill event, that triggered this particular drill interaction. */ readonly drillEvent: IDashboardDrillEvent; /** * Drill definition with the target dashboard. */ readonly drillDefinition: IDrillToDashboard; } /** * This event is emitted as a result of the {@link IDrillToDashboard} command. * It contains the drill intersection filters that can be applied to the target dashboard. * * There is a factory function to create default event handler for drill to same dashboard - see {@link newDrillToSameDashboardHandler}. * * @alpha */ export interface IDashboardDrillToDashboardResolved extends IDashboardEvent { readonly type: "GDC.DASH/EVT.DRILL.DRILL_TO_DASHBOARD.RESOLVED"; readonly payload: IDashboardDrillToDashboardResolvedPayload; } /** * @alpha */ export declare function drillToDashboardResolved(ctx: DashboardContext, filters: (IDashboardFilter | FilterContextItem)[], attributeFilterConfigs: IDashboardAttributeFilterConfig[], parameters: IInsightParameterValue[], drillDefinition: IDrillToDashboard, drillEvent: IDashboardDrillEvent, correlationId?: string): IDashboardDrillToDashboardResolved; /** * Tests whether the provided object is an instance of {@link IDashboardDrillToDashboardResolved}. * * @param obj - object to test * @alpha */ export declare const isDashboardDrillToDashboardResolved: (obj: unknown) => obj is IDashboardDrillToDashboardResolved; /** * Payload of the {@link IDashboardDrillToCustomUrlRequested} event. * @alpha */ export interface IDashboardDrillToCustomUrlRequestedPayload { /** * Original drill event, that triggered this particular drill interaction. */ readonly drillEvent: IDashboardDrillEvent; /** * Drill definition with the custom url that was resolved. */ readonly drillDefinition: IDrillToCustomUrl; } /** * This event is emitted on start of the resolution of the {@link IDrillToCustomUrl} command. * * @alpha */ export interface IDashboardDrillToCustomUrlRequested extends IDashboardEvent { readonly type: "GDC.DASH/EVT.DRILL.DRILL_TO_CUSTOM_URL.REQUESTED"; readonly payload: IDashboardDrillToCustomUrlRequestedPayload; } /** * @alpha */ export declare function drillToCustomUrlRequested(ctx: DashboardContext, drillDefinition: IDrillToCustomUrl, drillEvent: IDashboardDrillEvent, correlationId?: string): IDashboardDrillToCustomUrlRequested; /** * Tests whether the provided object is an instance of {@link IDashboardDrillToCustomUrlRequested}. * * @param obj - object to test * @alpha */ export declare const isDashboardDrillToCustomUrlRequested: (obj: unknown) => obj is IDashboardDrillToCustomUrlRequested; /** * Payload of the {@link IDashboardDrillToCustomUrlResolved} event. * @alpha */ export interface IDashboardDrillToCustomUrlResolvedPayload { /** * Original drill event, that triggered this particular drill interaction. */ readonly drillEvent: IDashboardDrillEvent; /** * Drill definition with the custom url that was resolved. */ readonly drillDefinition: IDrillToCustomUrl; /** * Resolved custom url. */ readonly url: string; /** * Information about filters used on the dashboard. */ readonly filtersInfo: FiltersInfo; } /** * This event is emitted as a result of the {@link IDrillToCustomUrl} command. * It contains resolved custom url from the drill definition. * * @alpha */ export interface IDashboardDrillToCustomUrlResolved extends IDashboardEvent { readonly type: "GDC.DASH/EVT.DRILL.DRILL_TO_CUSTOM_URL.RESOLVED"; readonly payload: IDashboardDrillToCustomUrlResolvedPayload; } /** * @alpha */ export declare function drillToCustomUrlResolved(ctx: DashboardContext, url: string, drillDefinition: IDrillToCustomUrl, drillEvent: IDashboardDrillEvent, filtersInfo: FiltersInfo, correlationId?: string): IDashboardDrillToCustomUrlResolved; /** * Tests whether the provided object is an instance of {@link IDashboardDrillToCustomUrlResolved}. * * @param obj - object to test * @alpha */ export declare const isDashboardDrillToCustomUrlResolved: (obj: unknown) => obj is IDashboardDrillToCustomUrlResolved; /** * Payload of the {@link IDashboardDrillToAttributeUrlRequested} event. * @alpha */ export interface IDashboardDrillToAttributeUrlRequestedPayload { /** * Original drill event, that triggered this particular drill interaction. */ readonly drillEvent: IDashboardDrillEvent; /** * Drill definition with the attribute url that was resolved. */ readonly drillDefinition: IDrillToAttributeUrl; } /** * This event is emitted on start of the resolution of the {@link IDrillToAttributeUrl} command. * * @alpha */ export interface IDashboardDrillToAttributeUrlRequested extends IDashboardEvent { readonly type: "GDC.DASH/EVT.DRILL.DRILL_TO_ATTRIBUTE_URL.REQUESTED"; readonly payload: IDashboardDrillToAttributeUrlRequestedPayload; } /** * @alpha */ export declare function drillToAttributeUrlRequested(ctx: DashboardContext, drillDefinition: IDrillToAttributeUrl, drillEvent: IDashboardDrillEvent, correlationId?: string): IDashboardDrillToAttributeUrlRequested; /** * Tests whether the provided object is an instance of {@link IDashboardDrillToAttributeUrlRequested}. * * @param obj - object to test * @alpha */ export declare const isDashboardDrillToAttributeUrlRequested: (obj: unknown) => obj is IDashboardDrillToAttributeUrlRequested; /** * Payload of the {@link IDashboardDrillToAttributeUrlResolved} event. * @alpha */ export interface IDashboardDrillToAttributeUrlResolvedPayload { /** * Original drill event, that triggered this particular drill interaction. */ readonly drillEvent: IDashboardDrillEvent; /** * Drill definition with the attribute url that was resolved. */ readonly drillDefinition: IDrillToAttributeUrl; /** * Resolved attribute url. */ readonly url: string; /** * Information about filters used on the dashboard. */ readonly filtersInfo: FiltersInfo; /** * drill is implicit generated on the fly base on metadata model or configured by user */ readonly isImplicit: boolean; } /** * This event is emitted as a result of the {@link IDrillToAttributeUrl} command. * It contains resolved attribute url from the drill definition. * * @alpha */ export interface IDashboardDrillToAttributeUrlResolved extends IDashboardEvent { readonly type: "GDC.DASH/EVT.DRILL.DRILL_TO_ATTRIBUTE_URL.RESOLVED"; readonly payload: IDashboardDrillToAttributeUrlResolvedPayload; } /** * @alpha */ export declare function drillToAttributeUrlResolved(ctx: DashboardContext, url: string, drillDefinition: IDrillToAttributeUrl, drillEvent: IDashboardDrillEvent, filtersInfo: FiltersInfo, isImplicit: boolean, correlationId?: string): IDashboardDrillToAttributeUrlResolved; /** * Tests whether the provided object is an instance of {@link IDashboardDrillToAttributeUrlResolved}. * * @param obj - object to test * @alpha */ export declare const isDashboardDrillToAttributeUrlResolved: (obj: unknown) => obj is IDashboardDrillToAttributeUrlResolved; /** * Payload of the {@link IDashboardDrillToLegacyDashboardRequested} event. * @alpha */ export interface IDashboardDrillToLegacyDashboardRequestedPayload { /** * Original drill event, that triggered this particular drill interaction. */ readonly drillEvent: IDashboardDrillEvent; /** * Drill definition with the drill information. */ readonly drillDefinition: IDrillToLegacyDashboard; } /** * This event is emitted on start of the resolution of the {@link IDrillToLegacyDashboard} command. * * @alpha */ export interface IDashboardDrillToLegacyDashboardRequested extends IDashboardEvent { readonly type: "GDC.DASH/EVT.DRILL.DRILL_TO_LEGACY_DASHBOARD.REQUESTED"; readonly payload: IDashboardDrillToLegacyDashboardRequestedPayload; } /** * @alpha */ export declare function drillToLegacyDashboardRequested(ctx: DashboardContext, drillDefinition: IDrillToLegacyDashboard, drillEvent: IDashboardDrillEvent, correlationId?: string): IDashboardDrillToLegacyDashboardRequested; /** * Tests whether the provided object is an instance of {@link IDashboardDrillToLegacyDashboardRequested}. * * @param obj - object to test * @alpha */ export declare const isDashboardDrillToLegacyDashboardRequested: (obj: unknown) => obj is IDashboardDrillToLegacyDashboardRequested; /** * Payload of the {@link IDashboardDrillToLegacyDashboardResolved} event. * @alpha */ export interface IDashboardDrillToLegacyDashboardResolvedPayload { /** * Original drill event, that triggered this particular drill interaction. */ readonly drillEvent: IDashboardDrillEvent; /** * Drill definition with the drill information. */ readonly drillDefinition: IDrillToLegacyDashboard; } /** * This event is emitted as a result of the {@link IDrillToLegacyDashboard} command. * * Drill to legacy dashboard can be configured for Kpi widgets only. * * @alpha */ export interface IDashboardDrillToLegacyDashboardResolved extends IDashboardEvent { readonly type: "GDC.DASH/EVT.DRILL.DRILL_TO_LEGACY_DASHBOARD.RESOLVED"; readonly payload: IDashboardDrillToLegacyDashboardResolvedPayload; } /** * @alpha */ export declare function drillToLegacyDashboardResolved(ctx: DashboardContext, drillDefinition: IDrillToLegacyDashboard, drillEvent: IDashboardDrillEvent, correlationId?: string): IDashboardDrillToLegacyDashboardResolved; /** * Tests whether the provided object is an instance of {@link IDashboardDrillToLegacyDashboardResolved}. * * @param obj - object to test * @alpha */ export declare const isDashboardDrillToLegacyDashboardResolved: (obj: unknown) => obj is IDashboardDrillToLegacyDashboardResolved; /** * Payload of the {@link IDashboardDrillableItemsChanged} event. * @alpha */ export interface IDashboardDrillableItemsChangedPayload { /** * Drillable items that was set. */ readonly drillableItems: ExplicitDrill[]; } /** * This event is emitted as a result of the {@link IChangeDrillableItems} command, if drillable items was successfully changed. * * @alpha */ export interface IDashboardDrillableItemsChanged extends IDashboardEvent { readonly type: "GDC.DASH/EVT.DRILL.DRILLABLE_ITEMS.CHANGED"; readonly payload: IDashboardDrillableItemsChangedPayload; } /** * @alpha */ export declare function drillableItemsChanged(ctx: DashboardContext, drillableItems: ExplicitDrill[], correlationId?: string): IDashboardDrillableItemsChanged; /** * Tests whether the provided object is an instance of {@link IDashboardDrillableItemsChanged}. * * @param obj - object to test * @alpha */ export declare const isDashboardDrillableItemsChanged: (obj: unknown) => obj is IDashboardDrillableItemsChanged; /** * Payload of the {@link IDashboardCrossFilteringRequested} event. * @beta */ export interface IDashboardCrossFilteringRequestedPayload { /** * Original drill event, that triggered this particular drill interaction. */ readonly drillEvent: IDashboardDrillEvent; /** * Drill definition. */ readonly drillDefinition: ICrossFiltering; } /** * This event is emitted on start of the resolution of the {@link ICrossFiltering} command. * * @beta */ export interface IDashboardCrossFilteringRequested extends IDashboardEvent { readonly type: "GDC.DASH/EVT.DRILL.CROSS_FILTERING.REQUESTED"; readonly payload: IDashboardCrossFilteringRequestedPayload; } /** * @beta */ export declare function crossFilteringRequested(ctx: DashboardContext, drillDefinition: ICrossFiltering, drillEvent: IDashboardDrillEvent, correlationId?: string): IDashboardCrossFilteringRequested; /** * Tests whether the provided object is an instance of {@link IDashboardCrossFilteringRequested}. * * @param obj - object to test * @beta */ export declare const isDashboardCrossFilteringRequested: (obj: unknown) => obj is IDashboardCrossFilteringRequested; /** * Payload of the {@link IDashboardCrossFilteringResolved} event. * @beta */ export interface IDashboardCrossFilteringResolvedPayload { /** * Dashboard filters from drill intersection. */ readonly filters: IDashboardAttributeFilter[]; /** * Original drill event, that triggered this particular drill interaction. */ readonly drillEvent: IDashboardDrillEvent; /** * Drill definition with the custom url that was resolved. */ readonly drillDefinition: ICrossFiltering; } /** * This event is emitted as a result of the {@link ICrossFiltering} command. * * @beta */ export interface IDashboardCrossFilteringResolved extends IDashboardEvent { readonly type: "GDC.DASH/EVT.DRILL.CROSS_FILTERING.RESOLVED"; readonly payload: IDashboardCrossFilteringResolvedPayload; } /** * @beta */ export declare function crossFilteringResolved(ctx: DashboardContext, filters: IDashboardAttributeFilter[], drillDefinition: ICrossFiltering, drillEvent: IDashboardDrillEvent, correlationId?: string): IDashboardCrossFilteringResolved; /** * Tests whether the provided object is an instance of {@link IDashboardCrossFilteringResolved}. * * @param obj - object to test * @beta */ export declare const isDashboardCrossFilteringResolved: (obj: unknown) => obj is IDashboardCrossFilteringResolved; /** * Payload of the {@link IDashboardKeyDriverAnalysisRequested} event. * @beta */ export interface IDashboardKeyDriverAnalysisRequestedPayload { /** * Key driver item to analyze. */ readonly keyDriveItem: IDashboardKeyDriverCombinationItem; /** * Original drill event, that triggered this particular drill interaction. */ readonly drillEvent: IDashboardDrillEvent; /** * Drill definition. */ readonly drillDefinition: IKeyDriveAnalysis; } /** * This event is emitted on start of the resolution of the {@link IKeyDriverAnalysis} command. * * @beta */ export interface IDashboardKeyDriverAnalysisRequested extends IDashboardEvent { readonly type: "GDC.DASH/EVT.DRILL.KEY_DRIVER_ANALYSIS.REQUESTED"; readonly payload: IDashboardKeyDriverAnalysisRequestedPayload; } /** * @beta */ export declare function keyDriverAnalysisRequested(ctx: DashboardContext, drillDefinition: IKeyDriveAnalysis, drillEvent: IDashboardDrillEvent, keyDriveItem: IDashboardKeyDriverCombinationItem, correlationId?: string): IDashboardKeyDriverAnalysisRequested; /** * Tests whether the provided object is an instance of {@link IDashboardKeyDriverAnalysisRequested}. * * @param obj - object to test * @beta */ export declare const isDashboardKeyDriverAnalysisRequested: (obj: unknown) => obj is IDashboardKeyDriverAnalysisRequested; /** * This event is emitted as a result of the {@link IKeyDriverAnalysis} command. * * @beta */ export interface IDashboardKeyDriverAnalysisResolved extends IDashboardEvent { readonly type: "GDC.DASH/EVT.DRILL.KEY_DRIVER_ANALYSIS.RESOLVED"; readonly payload: IDashboardKeyDriverAnalysisResolvedPayload; } /** * Payload of the {@link IDashboardKeyDriverAnalysisResolved} event. * @beta */ export interface IDashboardKeyDriverAnalysisResolvedPayload { /** * Key driver item to analyze. */ readonly keyDriveDefinition: IKdaDefinition; /** * Original drill event, that triggered this particular drill interaction. */ readonly drillEvent: IDashboardDrillEvent; /** * Drill definition with key driver analysis */ readonly drillDefinition: IKeyDriveAnalysis; } /** * @beta */ export declare function keyDriverAnalysisResolved(ctx: DashboardContext, drillDefinition: IKeyDriveAnalysis, drillEvent: IDashboardDrillEvent, keyDriveDefinition: IKdaDefinition, correlationId?: string): IDashboardKeyDriverAnalysisResolved; /** * Tests whether the provided object is an instance of {@link IDashboardKeyDriverAnalysisResolved}. * * @param obj - object to test * @beta */ export declare const isDashboardKeyDriverAnalysisResolved: (obj: unknown) => obj is IDashboardKeyDriverAnalysisResolved; //# sourceMappingURL=drill.d.ts.map