// Type definitions for Leaflet.label v0.2.1 // Project: https://github.com/Leaflet/Leaflet.label // Definitions by: Wim Looman // Definitions: https://github.com/borisyankov/DefinitelyTyped /// declare module L { export interface IconOptions { labelAnchor?: Point; } export interface PathOptions { labelAnchor?: Point; } export interface CircleMarkerOptions { labelAnchor?: Point; } export interface Marker { showLabel(): Marker; hideLabel(): Marker; setLabelNoHide(noHide: boolean): void; bindLabel(content: string, options?: LabelOptions): Marker; unbindLabel(): Marker; updateLabelContent(content: string): void; getLabel(): Label; setOpacity(opacity: number, labelHasSemiTransparency: boolean): void; } export interface CircleMarker { showLabel(): CircleMarker; hideLabel(): CircleMarker; setLabelNoHide(noHide: boolean): void; bindLabel(content: string, options?: LabelOptions): CircleMarker; unbindLabel(): CircleMarker; updateLabelContent(content: string): void; getLabel(): Label; } export interface FeatureGroup { clearLayers(): FeatureGroup; bindLabel(content: string, options?: LabelOptions): FeatureGroup; unbindLabel(): FeatureGroup; updateLabelContent(content: string): FeatureGroup; } export interface Path { bindLabel(content: string, options?: LabelOptions): Path; unbindLabel(): Path; updateLabelContent(content: string): void; } export interface LabelOptions { className?: string; clickable?: boolean; direction?: string; // 'left' | 'right' | 'auto'; pane?: string; noHide?: boolean; offset?: Point; opacity?: number; zoomAnimation?: boolean; } export interface LabelStatic extends ClassStatic { new(options?: LabelOptions): Label; } export var Label: LabelStatic; export interface Label extends IEventPowered