import { type IExecutionFactory } from "@gooddata/sdk-backend-spi"; import { type IInsightDefinition } from "@gooddata/sdk-model"; import { type IGeoConfig } from "@gooddata/sdk-ui-geo"; import { type IExtendedReferencePoint, type IReferencePoint, type IUiConfig, type IVisConstruct, type IVisProps, type IVisualizationProperties } from "../../../interfaces/Visualization.js"; import { PluggableBaseChart } from "../baseChart/PluggableBaseChart.js"; /** * PluggableGeoPushpinChart * * ## Buckets * * | Name | Id | Accepts | * |-------------|-------------|---------------------------------------------------------------| * | Location | location | geo attributes only | * | Latitude | latitude | geo attributes only, added internally, not accessible from UI | * | Longitude | longitude | geo attributes only, added internally, not accessible from UI | * | Size | size | measures only | * | Color | color | measures only | * | Segment | segment | attributes only | * | TooltipText | tooltipText | attributes only, added internally, not accessible from UI | * * Internal buckets are used only for execution, they never exist in reference point. * In ref. point they are represented by items in properties * * ### Bucket axioms * * - |Location| = 1 * - |Size| ≤ 1 * - |Color| ≤ 1 * - |Segment| ≤ 1 * * ## Dimensions * * The PluggableGeoPushpinChart creates either one- or two-dimensional execution. * * In the case when latitude and longitude is in the one string label, delimited by ";": * - |Size| + |Color| ≥ 1 ⇒ [[MeasureGroupIdentifier], [Location, Segment, TooltipText]] * - |Size| + |Color| = 0 ⇒ [[Location, Segment, TooltipText]] * * In the case when latitude and longitude is in two numerical separate labels: * - |Size| + |Color| ≥ 1 ⇒ [[MeasureGroupIdentifier], [Latitude, Longitude, Segment, TooltipText]] * - |Size| + |Color| = 0 ⇒ [[Latitude, Longitude, Segment, TooltipText]] * * ## Sorts * * Unless the user specifies otherwise, the sorts used by default are: * * - |Segment| ≥ 1 ⇒ [attributeSort(Segment[0])] */ export declare class PluggableGeoPushpinChart extends PluggableBaseChart { private readonly basemapItemsLoader; constructor(props: IVisConstruct); protected checkBeforeRender(insight: IInsightDefinition): boolean; getExtendedReferencePoint(referencePoint: IReferencePoint): Promise; getUiConfig(): IUiConfig; getExecution(options: IVisProps, insight: IInsightDefinition, executionFactory: IExecutionFactory): import("@gooddata/sdk-backend-spi").IPreparedExecution; protected getSupportedPropertiesList(): string[]; protected configureBuckets(extendedReferencePoint: IExtendedReferencePoint): IExtendedReferencePoint; protected renderConfigurationPanel(insight: IInsightDefinition, options: IVisProps): void; protected buildVisualizationConfig(options: IVisProps, supportedControls: IVisualizationProperties): IGeoConfig; protected renderVisualization(options: IVisProps, insight: IInsightDefinition, executionFactory: IExecutionFactory): void; private withEmptyAttributeTargets; private superHandlePushData; protected handlePushData: (data: any) => void; private sanitizeMeasures; private createSort; private getSegmentItems; private getLocationItems; private getPreferredBucketItemLimit; private updateSupportedProperties; private getLocationProperties; private prepareBuckets; /** * Creates new virtual bucket from existing LOCATION bucket * @param insight - current insight * @param bucketName - new bucket name * @param attributeId - id of bucket item * @param attributeLocalIdentifier - local identifier of bucket item, Location item one will be used if not defined */ private createVirtualBucketFromLocationAttribute; } //# sourceMappingURL=PluggableGeoPushpinChart.d.ts.map