import { type IInsightDefinition } from "@gooddata/sdk-model"; import { type IVisualizationDescriptor } from "../interfaces/VisualizationDescriptor.js"; /** * Visualization catalog is able to resolve visualization class to factory function that will * create respective pluggable visualization. * * @alpha */ export interface IVisualizationCatalog { /** * Looks up pluggable visualization descriptor by vis class URI. * * @param uri - visualization URI (in format such as local:) * @param enablePivotTableNext - enable new pivot table * @param enableGeoPushpinNext - enable new geo pushpin chart * @alpha */ forUri(uri: string, enablePivotTableNext?: boolean, enableGeoPushpinNext?: boolean): IVisualizationDescriptor; /** * Looks up whether there is a pluggable visualization descriptor for a given vis class URI. * * @param uri - visualization URI (in format such as local:) * @alpha */ hasDescriptorForUri(uri: string): boolean; /** * Looks up pluggable visualization descriptor that provides all access to the visualization. * * @param insight - insight to render * @param enablePivotTableNext - enable new pivot table * @param enableGeoPushpinNext - enable new geo pushpin chart * @alpha */ forInsight(insight: IInsightDefinition, enablePivotTableNext?: boolean, enableGeoPushpinNext?: boolean): IVisualizationDescriptor; /** * Looks up whether there is a pluggable visualization descriptor for the provided insight. * * @param insight - insight to query for * @alpha */ hasDescriptorForInsight(insight: IInsightDefinition): boolean; } type TypeToClassMapping = { [type: string]: any; }; /** * @internal */ export declare class CatalogViaTypeToClassMap implements IVisualizationCatalog { private readonly mapping; constructor(mapping: TypeToClassMapping); forUri(uri: string, enablePivotTableNext?: boolean, enableGeoPushpinNext?: boolean): IVisualizationDescriptor; hasDescriptorForUri(uri: string): boolean; forInsight(insight: IInsightDefinition, enablePivotTableNext?: boolean, enableGeoPushpinNext?: boolean): IVisualizationDescriptor; hasDescriptorForInsight(insight: IInsightDefinition): boolean; private findInMapping; } /** * Default pluggable visualization catalog. This is implemented using static lookup table between vis type * and the actual plug vis implementation. * * @alpha */ export declare const DefaultVisualizationCatalog: IVisualizationCatalog; /** * Pluggable visualization catalog containing all available visualizations. * * @alpha */ export declare const FullVisualizationCatalog: IVisualizationCatalog; export {}; //# sourceMappingURL=VisualizationCatalog.d.ts.map