import { EventListenerMap } from '../../../utils/eventHandling';
export declare const MISSING_GEOMETRY_PROPS_EXCEPTION_MSG = "Error in Polyline: Polyline without geometry makes no sense";
export declare const WRONG_GEOMETRY_PROPS_EXCEPTION_MSG = "Error in Polyline: property geometry must be of type H.geo.LineString";
export type ArrowStyle = {
    fillColor?: string;
    strokeColor?: string;
};
export type PolylineObjects = {
    group: H.map.Group;
    line: H.map.Polyline;
    routeArrows?: H.map.Polyline;
};
export type PolylineProps = {
    /**
     * Controls whether directional arrows are rendered on the polyline.
     */
    hasArrows?: boolean;
    /**
     * Defines the arrow appearance when arrows are rendered.
     */
    arrowStyle?: ArrowStyle;
    /**
     * Geometry used to render the polyline.
     */
    geometry: H.geo.LineString;
    /**
     * Visual style applied to the main polyline.
     *
     * @default H.map.SpatialStyle.DEFAULT_STYLE
     */
    style?: H.map.SpatialStyle;
    /**
     * Custom payload forwarded to the rendered polyline objects and their events.
     */
    customData?: object;
    /**
     * Event handlers attached to the polyline.
     */
    eventListenerMap?: EventListenerMap;
    /**
     * Receives the created HERE polyline objects once they are mounted and `undefined` on cleanup.
     */
    onReady?: (objects?: PolylineObjects) => void;
};
declare const Polyline: (props: PolylineProps) => null;
export default Polyline;
