import Highcharts from "../chart/highcharts/highchartsEntryPoint";
import { ChartElementType, ChartType, VisType } from "../../../constants/visualizationTypes";
import { IDrillEventIntersectionElement, IHighchartsPointObject, IDrillConfig, ICellDrillEvent, IDrillEventIntersectionElementExtended } from "../../../interfaces/DrillEvents";
import { OnFiredDrillEvent } from "../../../interfaces/Events";
import { IGeoData } from "../../../interfaces/GeoChart";
import { IHeaderPredicate } from "../../../interfaces/HeaderPredicate";
import { Execution } from "@gooddata/typings";
import { IMappingHeader } from "../../../interfaces/MappingHeader";
export declare function getClickableElementNameByChartType(type: VisType): ChartElementType;
export declare function fireDrillEvent(onFiredDrillEvent: OnFiredDrillEvent, data: any, target: EventTarget): void;
export declare function chartClick(drillConfig: IDrillConfig, event: Highcharts.DrilldownEventObject, target: EventTarget, chartType: ChartType): void;
export declare function tickLabelClick(drillConfig: IDrillConfig, points: IHighchartsPointObject[], target: EventTarget, chartType: ChartType): void;
export declare function cellClick(drillConfig: IDrillConfig, event: ICellDrillEvent, target: EventTarget): void;
export declare function createDrillIntersectionElement(id: string, title: string, uri?: string, identifier?: string): IDrillEventIntersectionElement;
export declare const getDrillIntersection: (drillItems: IMappingHeader[]) => IDrillEventIntersectionElementExtended[];
export declare function handleGeoPushpinDrillEvent(drillableItems: IHeaderPredicate[], drillConfig: IDrillConfig, execution: Execution.IExecutionResponses, geoData: IGeoData, pinProperties: GeoJSON.GeoJsonProperties, pinCoordinates: number[], target: EventTarget): void;
