/// export type TStyle = string | mapboxgl.Style; export interface ICreateLine { type: 'csv' | 'json' | 'geojson' | 'image' | 'raster' | 'rasterTile' | 'mvt' | 'geojsonvt'; data: any; name?: string; } export type TlngLat = { lng: number; lat: number; } | Array; export type ElementType = HTMLElement | HTMLElement[] | DocumentFragment | Text | string; export type position = 'topleft' | 'lefttop' | 'topright' | 'righttop' | 'bottomleft' | 'leftbottom' | 'bottomright' | 'rightbottom' | 'topcenter' | 'bottomcenter' | 'leftcenter' | 'rightcenter' | Element; interface IControl { position?: position; className?: string; style?: string; } export interface IControlZoom extends IControl { zoomInText?: string; zoomOutText?: string; zoomInTitle?: string; zoomOutTitle?: string; } export type zoomOnType = 'add' | 'remove' | 'show' | 'hide'; export type zoomOnCb = (e: Function) => void; export interface IControlScale extends IControl { lockWidth?: boolean; maxWidth?: number; metric?: boolean; imperial?: boolean; } export interface IControlFullScreen extends IControl { btnIcon?: HTMLElement | SVGAElement; btnText?: string; title?: string; vertical?: boolean; exitBtnIcon?: HTMLElement | SVGAElement; exitBtnText?: string; exitTitle?: string; } export interface IControlLocate extends IControl { position?: position; btnIcon?: HTMLElement | SVGAElement; btnText?: string; title?: string; vertical?: boolean; transform?: (position: [number, number]) => [number, number]; } export interface IcontrolMouseLocation extends IControl { transform?: (position: [number, number]) => [number, number]; } export interface IMarker { color?: string; element?: HTMLElement | string; anchor?: 'center' | 'top' | 'bottom' | 'left' | 'right' | 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right'; offset?: [number, number]; extData?: any; } export type AnchorType = 'center' | 'top' | 'top-left' | 'top-right' | 'bottom' | 'bottom-left' | 'bottom-right' | 'left' | 'right'; export interface IPopup { lnglat?: TlngLat; text?: string; html?: ElementType; title?: ElementType; closeOnClick?: boolean; closeOnEsc?: boolean; maxWidth?: number; anchor?: AnchorType; offset?: [number, number]; } export {};