import { type IAttribute, type IInsightDefinition, type ObjRef } from "@gooddata/sdk-model"; import { type IBucketItem, type IVisualizationProperties } from "../../../interfaces/Visualization.js"; /** * Extracts visualization controls from insight properties. * * @param insight - The insight definition * @returns Visualization controls or empty object * @internal */ export declare function extractControls(insight: IInsightDefinition): IVisualizationProperties; /** * Gets the latitude attribute from the insight's LOCATION bucket. * * @remarks * The LOCATION bucket contains the primary geo attribute (latitude label). * This is used for backward compatibility with the bucket structure. * * @param insight - The insight definition * @returns Latitude attribute or undefined if not present * @internal */ export declare function getLatitudeAttribute(insight: IInsightDefinition): IAttribute | undefined; /** * Extracts identifier or URI from an ObjRef. * * @param ref - Object reference to extract from * @returns URI string, identifier string, or undefined * @internal */ export declare function getRefIdentifier(ref: ObjRef | undefined): string | undefined; /** * Creates an ObjRef for an attribute, using URI or ID based on the location attribute format. * * @param locationAttribute - The location attribute to match format against * @param attributeId - Display form ID or URI to use * @returns Object reference (URI or ID based) * @internal */ export declare function createAttributeRef(locationAttribute: IAttribute, attributeId: string): ObjRef; /** * Extracts location-related properties for latitude and longitude display forms. * * @param locationItem - The location bucket item containing display forms * @param supportsSeparateLatLong - Whether backend supports separate lat/long labels * @returns Object with optional latitude/longitude identifiers * @internal */ export declare function getLocationProperties(locationItem: IBucketItem): { latitude?: string | undefined; longitude?: string | undefined; geoIcon?: string | undefined; }; /** * Checks whether the location attribute has a GDC.geo.icon display form. * * @param locationItem - The location bucket item containing display forms * @returns True if a geo icon display form exists * @internal */ export declare function hasGeoIconDisplayForm(locationItem: IBucketItem): boolean; /** * Gets the alias and local identifier from a location attribute. * * @param locationAttribute - The location attribute * @param customLocalId - Optional custom local identifier to use * @returns Object with alias and localId * @internal */ export declare function getAttributeMetadata(locationAttribute: IAttribute, customLocalId?: string): { alias: string | undefined; localId: string; }; /** * Returns controls attached to the primary pushpin layer in the insight definition. * * @internal */ export declare function getPrimaryLayerControls(insight: IInsightDefinition): { latitude?: string; longitude?: string; }; //# sourceMappingURL=geoAttributeHelper.d.ts.map