import { type ICatalogDateDataset, type IDashboardAttributeFilter, type IDrillToLegacyDashboard, type IKpi, type IKpiWidget, type IKpiWidgetConfiguration, type IKpiWidgetDefinition, type IMeasureMetadataObject, type ObjRef } from "@gooddata/sdk-model"; import { type DashboardContext } from "../types/commonTypes.js"; import { type IWidgetDescription, type IWidgetHeader } from "../types/widgetTypes.js"; import { type IDashboardEvent } from "./base.js"; /** * Payload of the {@link IDashboardKpiWidgetHeaderChanged} event. * @beta */ export interface IDashboardKpiWidgetHeaderChangedPayload { /** * Reference to changed KPI Widget. */ readonly ref: ObjRef; /** * New value of the widget header. */ readonly header: IWidgetHeader; } /** * This event is emitted when the dashboard's KPI Widget header is modified. * * @beta */ export interface IDashboardKpiWidgetHeaderChanged extends IDashboardEvent { readonly type: "GDC.DASH/EVT.KPI_WIDGET.HEADER_CHANGED"; readonly payload: IDashboardKpiWidgetHeaderChangedPayload; } export declare function kpiWidgetHeaderChanged(ctx: DashboardContext, ref: ObjRef, header: IWidgetHeader, correlationId?: string): IDashboardKpiWidgetHeaderChanged; /** * Tests whether the provided object is an instance of {@link IDashboardKpiWidgetHeaderChanged}. * * @param obj - object to test * @beta */ export declare const isDashboardKpiWidgetHeaderChanged: (obj: unknown) => obj is IDashboardKpiWidgetHeaderChanged; /** * Payload of the {@link IDashboardKpiWidgetDescriptionChanged} event. * @beta */ export interface IDashboardKpiWidgetDescriptionChangedPayload { /** * Reference to changed KPI Widget. */ readonly ref: ObjRef; /** * New value of the widget description. */ readonly description: IWidgetDescription; } /** * This event is emitted when the dashboard's KPI Widget description is modified. * * @beta */ export interface IDashboardKpiWidgetDescriptionChanged extends IDashboardEvent { readonly type: "GDC.DASH/EVT.KPI_WIDGET.DESCRIPTION_CHANGED"; readonly payload: IDashboardKpiWidgetDescriptionChangedPayload; } export declare function kpiWidgetDescriptionChanged(ctx: DashboardContext, ref: ObjRef, description: IWidgetDescription, correlationId?: string): IDashboardKpiWidgetDescriptionChanged; /** * Tests whether the provided object is an instance of {@link IDashboardKpiWidgetDescriptionChanged}. * * @param obj - object to test * @beta */ export declare const isDashboardKpiWidgetDescriptionChanged: (obj: unknown) => obj is IDashboardKpiWidgetDescriptionChanged; /** * Payload of the {@link IDashboardKpiWidgetConfigurationChanged} event. * @beta */ export interface IDashboardKpiWidgetConfigurationChangedPayload { /** * Reference to changed KPI Widget. */ readonly ref: ObjRef; /** * New value of the widget configuration. */ readonly configuration: IKpiWidgetConfiguration | undefined; } /** * This event is emitted when the dashboard's KPI Widget configuration is modified. * * @beta */ export interface IDashboardKpiWidgetConfigurationChanged extends IDashboardEvent { readonly type: "GDC.DASH/EVT.KPI_WIDGET.CONFIGURATION_CHANGED"; readonly payload: IDashboardKpiWidgetConfigurationChangedPayload; } export declare function kpiWidgetConfigurationChanged(ctx: DashboardContext, ref: ObjRef, configuration: IKpiWidgetConfiguration | undefined, correlationId?: string): IDashboardKpiWidgetConfigurationChanged; /** * Tests whether the provided object is an instance of {@link IDashboardKpiWidgetConfigurationChanged}. * * @param obj - object to test * @beta */ export declare const isDashboardKpiWidgetConfigurationChanged: (obj: unknown) => obj is IDashboardKpiWidgetConfigurationChanged; /** * Payload of the {@link IDashboardKpiWidgetMeasureChanged} event. * @beta */ export interface IDashboardKpiWidgetMeasureChangedPayload { /** * Reference to changed KPI Widget. */ readonly ref: ObjRef; /** * New setup of KPI. Includes the measure used to calculate KPI and the comparison settings that * are in effect. * * Note: the comparison may be 'none' - meaning */ readonly kpiWidget: IKpiWidget; /** * Metadata object describing the measure that is now used on the KPI. */ readonly measure: IMeasureMetadataObject; /** * If a new header was also set while changing the measure, then the new header value is included here. */ readonly header?: IWidgetHeader; } /** * This event is emitted when the dashboard's KPI Widget measure is modified - the KPI now shows value for * different measure. The change of measure to use may be accompanied by a change of the KPI header (change of * title). In that case new value of header is also included in the event. * * @beta */ export interface IDashboardKpiWidgetMeasureChanged extends IDashboardEvent { readonly type: "GDC.DASH/EVT.KPI_WIDGET.MEASURE_CHANGED"; readonly payload: IDashboardKpiWidgetMeasureChangedPayload; } export declare function kpiWidgetMeasureChanged(ctx: DashboardContext, ref: ObjRef, kpiWidget: IKpiWidget, measure: IMeasureMetadataObject, header?: IWidgetHeader, correlationId?: string): IDashboardKpiWidgetMeasureChanged; /** * Tests whether the provided object is an instance of {@link IDashboardKpiWidgetMeasureChanged}. * * @param obj - object to test * @beta */ export declare const isDashboardKpiWidgetMeasureChanged: (obj: unknown) => obj is IDashboardKpiWidgetMeasureChanged; /** * Payload of the {@link IDashboardKpiWidgetFilterSettingsChanged} event. * @beta */ export interface IDashboardKpiWidgetFilterSettingsChangedPayload { /** * Reference to changed KPI Widget. */ readonly ref: ObjRef; /** * Attribute filters that are ignored for the widget. * * If empty, then all attribute filters defined for the dashboard are in effect. */ readonly ignoredAttributeFilters: IDashboardAttributeFilter[]; /** * Date dataset used for date filtering. * * If undefined, then dashboard's date filter is not in effect for the widget. */ readonly dateDatasetForFiltering?: ICatalogDateDataset; } /** * This event is emitted when dashboard's KPI Widget filter settings are modified. * * @beta */ export interface IDashboardKpiWidgetFilterSettingsChanged extends IDashboardEvent { readonly type: "GDC.DASH/EVT.KPI_WIDGET.FILTER_SETTINGS_CHANGED"; readonly payload: IDashboardKpiWidgetFilterSettingsChangedPayload; } export declare function kpiWidgetFilterSettingsChanged(ctx: DashboardContext, ref: ObjRef, ignoredAttributeFilters: IDashboardAttributeFilter[], dateDatasetForFiltering: ICatalogDateDataset | undefined, correlationId?: string): IDashboardKpiWidgetFilterSettingsChanged; /** * Tests whether the provided object is an instance of {@link IDashboardKpiWidgetFilterSettingsChanged}. * * @param obj - object to test * @beta */ export declare const isDashboardKpiWidgetFilterSettingsChanged: (obj: unknown) => obj is IDashboardKpiWidgetFilterSettingsChanged; /** * Payload of the {@link IDashboardKpiWidgetComparisonChanged} event. * @beta */ export interface IDashboardKpiWidgetComparisonChangedPayload { /** * Reference to changed KPI Widget. */ readonly ref: ObjRef; /** * New setup of KPI. Includes the measure used to calculate KPI and the comparison settings that * are in effect. * * Note: the comparison may be 'none' - meaning */ readonly kpi: IKpi; } /** * This event is emitted when dashboard's KPI Widget has its comparison type changed. The event includes * the new definition of the KPI that has uses same measure as before however has new setup of the over-time * comparison. * * @beta */ export interface IDashboardKpiWidgetComparisonChanged extends IDashboardEvent { readonly type: "GDC.DASH/EVT.KPI_WIDGET.COMPARISON_CHANGED"; readonly payload: IDashboardKpiWidgetComparisonChangedPayload; } export declare function kpiWidgetComparisonChanged(ctx: DashboardContext, ref: ObjRef, kpi: IKpi, correlationId?: string): IDashboardKpiWidgetComparisonChanged; /** * Tests whether the provided object is an instance of {@link IDashboardKpiWidgetComparisonChanged}. * * @param obj - object to test * @beta */ export declare const isDashboardKpiWidgetComparisonChanged: (obj: unknown) => obj is IDashboardKpiWidgetComparisonChanged; /** * Payload of the {@link IDashboardKpiWidgetDrillRemoved} event. * @beta */ export interface IDashboardKpiWidgetDrillRemovedPayload { /** * Reference to changed KPI Widget. */ readonly ref: ObjRef; } /** * This event is emitted when dashboard's KPI Widget has its drills removed. * * @beta */ export interface IDashboardKpiWidgetDrillRemoved extends IDashboardEvent { readonly type: "GDC.DASH/EVT.KPI_WIDGET.DRILL_REMOVED"; readonly payload: IDashboardKpiWidgetDrillRemovedPayload; } export declare function kpiWidgetDrillRemoved(ctx: DashboardContext, ref: ObjRef, correlationId?: string): IDashboardKpiWidgetDrillRemoved; /** * Tests whether the provided object is an instance of {@link IDashboardKpiWidgetDrillRemoved}. * * @param obj - object to test * @beta */ export declare const isDashboardKpiWidgetDrillRemoved: (obj: unknown) => obj is IDashboardKpiWidgetDrillRemoved; /** * Payload of the {@link IDashboardKpiWidgetDrillSet} event. * @beta */ export interface IDashboardKpiWidgetDrillSetPayload { /** * Reference to changed KPI Widget. */ readonly ref: ObjRef; /** * The drill set. */ readonly drill: IDrillToLegacyDashboard; } /** * This event is emitted when dashboard's KPI Widget has its drill set. * * @beta */ export interface IDashboardKpiWidgetDrillSet extends IDashboardEvent { readonly type: "GDC.DASH/EVT.KPI_WIDGET.DRILL_SET"; readonly payload: IDashboardKpiWidgetDrillSetPayload; } export declare function kpiWidgetDrillSet(ctx: DashboardContext, ref: ObjRef, drill: IDrillToLegacyDashboard, correlationId?: string): IDashboardKpiWidgetDrillSet; /** * Tests whether the provided object is an instance of {@link IDashboardKpiWidgetDrillSet}. * * @param obj - object to test * @beta */ export declare const isDashboardKpiWidgetDrillSet: (obj: unknown) => obj is IDashboardKpiWidgetDrillSet; /** * Payload of the {@link IDashboardKpiWidgetChanged} event. * @beta */ export interface IDashboardKpiWidgetChangedPayload { /** * The new value of the changed widget. */ kpiWidget: IKpiWidget | IKpiWidgetDefinition; } /** * This event is emitted after any change to KPI Widget configuration. It contains the entire new state of the * KPI Widget. * * @beta */ export interface IDashboardKpiWidgetChanged extends IDashboardEvent { readonly type: "GDC.DASH/EVT.KPI_WIDGET.WIDGET_CHANGED"; readonly payload: IDashboardKpiWidgetChangedPayload; } export declare function kpiWidgetChanged(ctx: DashboardContext, kpiWidget: IKpiWidget, correlationId?: string): IDashboardKpiWidgetChanged; /** * Tests whether the provided object is an instance of {@link IDashboardKpiWidgetChanged}. * * @param obj - object to test * @beta */ export declare const isDashboardKpiWidgetChanged: (obj: unknown) => obj is IDashboardKpiWidgetChanged; //# sourceMappingURL=kpi.d.ts.map