tg-map-vue3
Version:
封装 百度地图, Google地图, Here地图(未完成), Maptalks 的Vue3组件库
1,022 lines • 166 kB
TypeScript
import { BuildInMapTypeId, GestureHandlingOptions, LatLng, MapType, TgMapType, type AbstractMap, type AbstractMapEventMap, type BaseMap, type MapStyle, type StringEnumValue } from 'tg-map-core';
import { type PropType } from 'vue';
import { type EventEmits } from '../utils/vue-utils';
type TgMapEmits = {
load: AbstractMap;
error: any;
'update:center': LatLng;
'update:current-center': LatLng;
'update:zoom': number;
'update:map-type': MapType;
'update:map-type-id': string;
'update:last-center': LatLng;
};
export declare const tgMapProps: {
/** type没做响应式, 但外部可以把type作为tg-map的key, 让type修改时完全重建tg-map */
type: {
type: PropType<StringEnumValue<typeof TgMapType>>;
default: TgMapType;
};
/**
* 当对该属性使用双向绑定时, 改变center将触发update:center又反过来触发center改变, 最终导致无限循环...
* 当前通过setCenter()时判断center是否有改变来避免该问题, 但为了避免可能存在的问题, 另外设计了如下机制:
* - :center-sync-delay="300": 延时同步center, 防止center的值更新过快
* - :current-center.sync="currentCenter": 实时获取center的值
* - :last-center.sync="center": 获取tg-map销毁时的最后的center的值, 使用这种方式可以做到type切换时保留中心点位置
* @see AbstractMapEventMap.center-changed
*/
center: {
type: PropType<LatLng>;
required: true;
};
/**
* 同步center的延时
* @default 300
* @see center
*/
centerSyncDelay: {
type: PropType<number>;
default: number;
};
/**
* 仅用来获取center的值, 需要设置center的值请使用`center`属性
* @see center
* @deprecated 用的太少, 故maptalks未实现该属性, 要实时获取中心点, 请将{@link centerSyncDelay}设为0
*/
currentCenter: {
type: PropType<LatLng>;
};
/**
* 仅用于获取tg-map销毁时的最后的center的值
* @see center
* @deprecated 用的太少, 故maptalks未实现该属性
*/
lastCenter: {
type: PropType<LatLng>;
};
zoom: {
type: PropType<number>;
required: true;
};
/**
* 该属性不会响应式更新, 要让它立即生效, 请参考{@link file://./../views/map/InfoDemo.vue#L3}
* @see MapOptions.infoWindowMode
*/
infoWindowMode: {
type: PropType<"single" | "multi">;
};
gestureHandling: {
type: PropType<StringEnumValue<typeof GestureHandlingOptions>>;
};
fractionalZoom: {
type: PropType<boolean>;
};
minZoom: {
type: PropType<number>;
};
maxZoom: {
type: PropType<number>;
};
mapStyle: {
type: PropType<MapStyle>;
};
mapTypeId: {
type: PropType<StringEnumValue<typeof BuildInMapTypeId>>;
};
/** 地图类型对象, 优先级比mapTypeId高 */
mapType: {
type: PropType<any>;
};
hideLogo: {
type: PropType<boolean>;
};
onLoad: import("vue").Prop<import("tg-map-core").EventCallback<AbstractMap>>;
'onUpdate:center': import("vue").Prop<import("tg-map-core").EventCallback<LatLng>>;
'onUpdate:current-center': import("vue").Prop<import("tg-map-core").EventCallback<LatLng>>;
'onUpdate:last-center': import("vue").Prop<import("tg-map-core").EventCallback<LatLng>>;
'onUpdate:map-type': import("vue").Prop<import("tg-map-core").EventCallback<MapType>>;
'onUpdate:map-type-id': import("vue").Prop<import("tg-map-core").EventCallback<string>>;
'onUpdate:zoom': import("vue").Prop<import("tg-map-core").EventCallback<number>>;
onError: import("vue").Prop<import("tg-map-core").EventCallback<any>>;
};
export type TgMapEventEmits = EventEmits<AbstractMapEventMap & TgMapEmits>;
declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
/** type没做响应式, 但外部可以把type作为tg-map的key, 让type修改时完全重建tg-map */
type: {
type: PropType<StringEnumValue<typeof TgMapType>>;
default: TgMapType;
};
/**
* 当对该属性使用双向绑定时, 改变center将触发update:center又反过来触发center改变, 最终导致无限循环...
* 当前通过setCenter()时判断center是否有改变来避免该问题, 但为了避免可能存在的问题, 另外设计了如下机制:
* - :center-sync-delay="300": 延时同步center, 防止center的值更新过快
* - :current-center.sync="currentCenter": 实时获取center的值
* - :last-center.sync="center": 获取tg-map销毁时的最后的center的值, 使用这种方式可以做到type切换时保留中心点位置
* @see AbstractMapEventMap.center-changed
*/
center: {
type: PropType<LatLng>;
required: true;
};
/**
* 同步center的延时
* @default 300
* @see center
*/
centerSyncDelay: {
type: PropType<number>;
default: number;
};
/**
* 仅用来获取center的值, 需要设置center的值请使用`center`属性
* @see center
* @deprecated 用的太少, 故maptalks未实现该属性, 要实时获取中心点, 请将{@link centerSyncDelay}设为0
*/
currentCenter: {
type: PropType<LatLng>;
};
/**
* 仅用于获取tg-map销毁时的最后的center的值
* @see center
* @deprecated 用的太少, 故maptalks未实现该属性
*/
lastCenter: {
type: PropType<LatLng>;
};
zoom: {
type: PropType<number>;
required: true;
};
/**
* 该属性不会响应式更新, 要让它立即生效, 请参考{@link file://./../views/map/InfoDemo.vue#L3}
* @see MapOptions.infoWindowMode
*/
infoWindowMode: {
type: PropType<"single" | "multi">;
};
gestureHandling: {
type: PropType<StringEnumValue<typeof GestureHandlingOptions>>;
};
fractionalZoom: {
type: PropType<boolean>;
};
minZoom: {
type: PropType<number>;
};
maxZoom: {
type: PropType<number>;
};
mapStyle: {
type: PropType<MapStyle>;
};
mapTypeId: {
type: PropType<StringEnumValue<typeof BuildInMapTypeId>>;
};
/** 地图类型对象, 优先级比mapTypeId高 */
mapType: {
type: PropType<any>;
};
hideLogo: {
type: PropType<boolean>;
};
onLoad: import("vue").Prop<import("tg-map-core").EventCallback<AbstractMap>>;
'onUpdate:center': import("vue").Prop<import("tg-map-core").EventCallback<LatLng>>;
'onUpdate:current-center': import("vue").Prop<import("tg-map-core").EventCallback<LatLng>>;
'onUpdate:last-center': import("vue").Prop<import("tg-map-core").EventCallback<LatLng>>;
'onUpdate:map-type': import("vue").Prop<import("tg-map-core").EventCallback<MapType>>;
'onUpdate:map-type-id': import("vue").Prop<import("tg-map-core").EventCallback<string>>;
'onUpdate:zoom': import("vue").Prop<import("tg-map-core").EventCallback<number>>;
onError: import("vue").Prop<import("tg-map-core").EventCallback<any>>;
}>, {
attrs: import("vue").ComputedRef<{
binds: Record<string, unknown>;
listeners: Record<string, unknown>;
listenerProps: Record<string, unknown>;
}>;
centerSyncTimeoutId: TimeoutId | undefined;
}, {
map: BaseMap | undefined;
isDestroyed: boolean;
}, {
propsJson(): string;
}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, EventEmits<AbstractMapEventMap & TgMapEmits>, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
/** type没做响应式, 但外部可以把type作为tg-map的key, 让type修改时完全重建tg-map */
type: {
type: PropType<StringEnumValue<typeof TgMapType>>;
default: TgMapType;
};
/**
* 当对该属性使用双向绑定时, 改变center将触发update:center又反过来触发center改变, 最终导致无限循环...
* 当前通过setCenter()时判断center是否有改变来避免该问题, 但为了避免可能存在的问题, 另外设计了如下机制:
* - :center-sync-delay="300": 延时同步center, 防止center的值更新过快
* - :current-center.sync="currentCenter": 实时获取center的值
* - :last-center.sync="center": 获取tg-map销毁时的最后的center的值, 使用这种方式可以做到type切换时保留中心点位置
* @see AbstractMapEventMap.center-changed
*/
center: {
type: PropType<LatLng>;
required: true;
};
/**
* 同步center的延时
* @default 300
* @see center
*/
centerSyncDelay: {
type: PropType<number>;
default: number;
};
/**
* 仅用来获取center的值, 需要设置center的值请使用`center`属性
* @see center
* @deprecated 用的太少, 故maptalks未实现该属性, 要实时获取中心点, 请将{@link centerSyncDelay}设为0
*/
currentCenter: {
type: PropType<LatLng>;
};
/**
* 仅用于获取tg-map销毁时的最后的center的值
* @see center
* @deprecated 用的太少, 故maptalks未实现该属性
*/
lastCenter: {
type: PropType<LatLng>;
};
zoom: {
type: PropType<number>;
required: true;
};
/**
* 该属性不会响应式更新, 要让它立即生效, 请参考{@link file://./../views/map/InfoDemo.vue#L3}
* @see MapOptions.infoWindowMode
*/
infoWindowMode: {
type: PropType<"single" | "multi">;
};
gestureHandling: {
type: PropType<StringEnumValue<typeof GestureHandlingOptions>>;
};
fractionalZoom: {
type: PropType<boolean>;
};
minZoom: {
type: PropType<number>;
};
maxZoom: {
type: PropType<number>;
};
mapStyle: {
type: PropType<MapStyle>;
};
mapTypeId: {
type: PropType<StringEnumValue<typeof BuildInMapTypeId>>;
};
/** 地图类型对象, 优先级比mapTypeId高 */
mapType: {
type: PropType<any>;
};
hideLogo: {
type: PropType<boolean>;
};
onLoad: import("vue").Prop<import("tg-map-core").EventCallback<AbstractMap>>;
'onUpdate:center': import("vue").Prop<import("tg-map-core").EventCallback<LatLng>>;
'onUpdate:current-center': import("vue").Prop<import("tg-map-core").EventCallback<LatLng>>;
'onUpdate:last-center': import("vue").Prop<import("tg-map-core").EventCallback<LatLng>>;
'onUpdate:map-type': import("vue").Prop<import("tg-map-core").EventCallback<MapType>>;
'onUpdate:map-type-id': import("vue").Prop<import("tg-map-core").EventCallback<string>>;
'onUpdate:zoom': import("vue").Prop<import("tg-map-core").EventCallback<number>>;
onError: import("vue").Prop<import("tg-map-core").EventCallback<any>>;
}>> & Readonly<{
onLoad?: ((event: AbstractMap) => any) | undefined;
onError?: ((event: any) => any) | undefined;
"onUpdate:center"?: ((event: LatLng) => any) | undefined;
"onUpdate:current-center"?: ((event: LatLng) => any) | undefined;
"onUpdate:zoom"?: ((event: number) => any) | undefined;
"onUpdate:map-type"?: ((event: MapType) => any) | undefined;
"onUpdate:map-type-id"?: ((event: string) => any) | undefined;
"onUpdate:last-center"?: ((event: LatLng) => any) | undefined;
onClick?: ((event: import("tg-map-core").Tg.MouseEvent) => any) | undefined;
onDblclick?: ((event: import("tg-map-core").Tg.MouseEvent) => any) | undefined;
onRightclick?: ((event: import("tg-map-core").Tg.MouseEvent) => any) | undefined;
onContextmenu?: ((event: import("tg-map-core").Tg.MouseEvent) => any) | undefined;
onDragstart?: ((event: import("tg-map-core").Tg.Event) => any) | undefined;
onDrag?: ((event: import("tg-map-core").Tg.Event) => any) | undefined;
onDragend?: ((event: import("tg-map-core").Tg.Event) => any) | undefined;
onMouseover?: ((event: import("tg-map-core").Tg.MouseEvent) => any) | undefined;
onMouseout?: ((event: import("tg-map-core").Tg.MouseEvent) => any) | undefined;
onMousedown?: ((event: import("tg-map-core").Tg.MouseEvent) => any) | undefined;
onMousemove?: ((event: import("tg-map-core").Tg.MouseEvent) => any) | undefined;
onMouseup?: ((event: import("tg-map-core").Tg.MouseEvent) => any) | undefined;
onTilesloaded?: ((event: import("tg-map-core").Tg.Event) => any) | undefined;
"onCenter-changed"?: ((event: import("tg-map-core").Tg.Event) => any) | undefined;
"onZoom-changed"?: ((event: import("tg-map-core").Tg.Event) => any) | undefined;
"onMap-type-changed"?: ((event: import("tg-map-core").Tg.Event) => any) | undefined;
}>, {
type: StringEnumValue<typeof TgMapType>;
centerSyncDelay: number;
}, {}, {}, {}, string, () => {
$map: import("vue").ComputedRef<{
element: HTMLElement;
setGestureHandling: (gestureHandling: GestureHandlingOptions) => void;
readonly innerMap: {
controls: {
clear: () => void;
forEach: (callback: (arg0: HTMLElement, arg1: number) => void) => void;
getArray: () => HTMLElement[];
getAt: (i: number) => HTMLElement;
getLength: () => number;
insertAt: (i: number, elem: HTMLElement) => void;
pop: () => HTMLElement;
push: (elem: HTMLElement) => number;
removeAt: (i: number) => HTMLElement;
setAt: (i: number, elem: HTMLElement) => void;
addListener: (eventName: string, handler: Function) => google.maps.MapsEventListener;
bindTo: (key: string, target: google.maps.MVCObject, targetKey?: string | null, noNotify?: boolean) => void;
get: (key: string) => any;
notify: (key: string) => void;
set: (key: string, value: unknown) => void;
setValues: (values?: object | null) => void;
unbind: (key: string) => void;
unbindAll: () => void;
}[];
data: {
add: (feature?: google.maps.Data.Feature | google.maps.Data.FeatureOptions | null) => google.maps.Data.Feature;
addGeoJson: (geoJson: object, options?: google.maps.Data.GeoJsonOptions | null) => google.maps.Data.Feature[];
contains: (feature: google.maps.Data.Feature) => boolean;
forEach: (callback: (arg0: google.maps.Data.Feature) => void) => void;
getControlPosition: () => google.maps.ControlPosition | null;
getControls: () => string[] | null;
getDrawingMode: () => string | null;
getFeatureById: (id: number | string) => google.maps.Data.Feature | undefined;
getMap: () => google.maps.Map | null;
getStyle: () => google.maps.Data.StylingFunction | google.maps.Data.StyleOptions | null;
loadGeoJson: (url: string, options?: google.maps.Data.GeoJsonOptions | null, callback?: ((arg0: google.maps.Data.Feature[]) => void) | undefined) => void;
overrideStyle: (feature: google.maps.Data.Feature, style: google.maps.Data.StyleOptions) => void;
remove: (feature: google.maps.Data.Feature) => void;
revertStyle: (feature?: google.maps.Data.Feature | null) => void;
setControlPosition: (controlPosition: google.maps.ControlPosition | null) => void;
setControls: (controls: string[] | null) => void;
setDrawingMode: (drawingMode: string | null) => void;
setMap: (map: google.maps.Map | null) => void;
setStyle: (style: google.maps.Data.StylingFunction | google.maps.Data.StyleOptions | null) => void;
toGeoJson: (callback: (arg0: object) => void) => void;
addListener: (eventName: string, handler: Function) => google.maps.MapsEventListener;
bindTo: (key: string, target: google.maps.MVCObject, targetKey?: string | null, noNotify?: boolean) => void;
get: (key: string) => any;
notify: (key: string) => void;
set: (key: string, value: unknown) => void;
setValues: (values?: object | null) => void;
unbind: (key: string) => void;
unbindAll: () => void;
};
mapTypes: {
set: (id: string, mapType: google.maps.MapType | unknown) => void;
addListener: (eventName: string, handler: Function) => google.maps.MapsEventListener;
bindTo: (key: string, target: google.maps.MVCObject, targetKey?: string | null, noNotify?: boolean) => void;
get: (key: string) => any;
notify: (key: string) => void;
setValues: (values?: object | null) => void;
unbind: (key: string) => void;
unbindAll: () => void;
};
overlayMapTypes: {
clear: () => void;
forEach: (callback: (arg0: google.maps.MapType | null, arg1: number) => void) => void;
getArray: () => (google.maps.MapType | null)[];
getAt: (i: number) => google.maps.MapType | null;
getLength: () => number;
insertAt: (i: number, elem: google.maps.MapType | null) => void;
pop: () => google.maps.MapType | null;
push: (elem: google.maps.MapType | null) => number;
removeAt: (i: number) => google.maps.MapType | null;
setAt: (i: number, elem: google.maps.MapType | null) => void;
addListener: (eventName: string, handler: Function) => google.maps.MapsEventListener;
bindTo: (key: string, target: google.maps.MVCObject, targetKey?: string | null, noNotify?: boolean) => void;
get: (key: string) => any;
notify: (key: string) => void;
set: (key: string, value: unknown) => void;
setValues: (values?: object | null) => void;
unbind: (key: string) => void;
unbindAll: () => void;
};
fitBounds: (bounds: google.maps.LatLngBounds | google.maps.LatLngBoundsLiteral, padding?: number | google.maps.Padding) => void;
getBounds: () => google.maps.LatLngBounds | undefined;
getCenter: () => google.maps.LatLng | undefined;
getClickableIcons: () => boolean | undefined;
getDatasetFeatureLayer: (datasetId: string) => google.maps.FeatureLayer;
getDiv: () => HTMLElement;
getFeatureLayer: (featureType: google.maps.FeatureTypeString) => google.maps.FeatureLayer;
getHeading: () => number | undefined;
getHeadingInteractionEnabled: () => boolean | null;
getInternalUsageAttributionIds: () => Iterable<string> | null;
getMapCapabilities: () => google.maps.MapCapabilities;
getMapTypeId: () => google.maps.MapTypeIdString | string | undefined;
getProjection: () => google.maps.Projection | undefined;
getRenderingType: () => google.maps.RenderingTypeString;
getStreetView: () => google.maps.StreetViewPanorama;
getTilt: () => number | undefined;
getTiltInteractionEnabled: () => boolean | null;
getZoom: () => number | undefined;
moveCamera: (cameraOptions: google.maps.CameraOptions) => void;
panBy: (x: number, y: number) => void;
panTo: (latLng: google.maps.LatLng | google.maps.LatLngLiteral) => void;
panToBounds: (latLngBounds: google.maps.LatLngBounds | google.maps.LatLngBoundsLiteral, padding?: number | google.maps.Padding) => void;
setCenter: (latlng: google.maps.LatLng | google.maps.LatLngLiteral) => void;
setClickableIcons: (value: boolean) => void;
setHeading: (heading: number) => void;
setHeadingInteractionEnabled: (headingInteractionEnabled: boolean) => void;
setMapTypeId: (mapTypeId: google.maps.MapTypeIdString | string) => void;
setOptions: (options: google.maps.MapOptions | null) => void;
setRenderingType: (renderingType: google.maps.RenderingTypeString) => void;
setStreetView: (panorama: google.maps.StreetViewPanorama | null) => void;
setTilt: (tilt: number) => void;
setTiltInteractionEnabled: (tiltInteractionEnabled: boolean) => void;
setZoom: (zoom: number) => void;
addListener: (eventName: string, handler: Function) => google.maps.MapsEventListener;
bindTo: (key: string, target: google.maps.MVCObject, targetKey?: string | null, noNotify?: boolean) => void;
get: (key: string) => any;
notify: (key: string) => void;
set: (key: string, value: unknown) => void;
setValues: (values?: object | null) => void;
unbind: (key: string) => void;
unbindAll: () => void;
} | {
addEventListener: {
(event: string, handler: BMap.Callback): void;
(event: string, handler: BMap.Callback): void;
};
removeEventListener: {
(event: string, handler: BMap.Callback): void;
(event: string, handler: BMap.Callback): void;
};
enableDragging: () => void;
disableDragging: () => void;
enableScrollWheelZoom: () => void;
disableScrollWheelZoom: () => void;
enableDoubleClickZoom: () => void;
disableDoubleClickZoom: () => void;
enableKeyboard: () => void;
disableKeyboard: () => void;
enableInertialDragging: () => void;
disableInertialDragging: () => void;
enableContinuousZoom: () => void;
disableContinuousZoom: () => void;
enablePinchToZoom: () => void;
disablePinchToZoom: () => void;
enableAutoResize: () => void;
disableAutoResize: () => void;
setDefaultCursor: (cursor: string) => void;
getDefaultCursor: () => string;
setDraggingCursor: (cursor: string) => void;
getDraggingCursor: () => string;
setMinZoom: (zoom: number) => void;
setMaxZoom: (zoom: number) => void;
setMapStyle: (mapStyle: BMap.MapStyle) => void;
setMapStyleV2: (style: BMap.MapStyleV2) => void;
setPanorama: (pano: BMap.Panorama) => void;
disable3DBuilding: () => void;
getBounds: () => BMap.Bounds;
getCenter: () => BMap.Point;
getDistance: (start: BMap.Point, end: BMap.Point) => number;
getMapType: () => BMap.MapType;
getSize: () => BMap.Size;
getViewport: (view: BMap.Point[], viewportOptions?: BMap.ViewportOptions) => BMap.Viewport;
getZoom: () => number;
getPanorama: () => BMap.Panorama;
centerAndZoom: {
(center: BMap.Point, zoom: number): void;
(city: string): void;
};
panTo: (center: BMap.Point, opts?: BMap.PanOptions) => void;
panBy: (x: number, y: number, opts?: BMap.PanOptions) => void;
reset: () => void;
setCenter: (center: BMap.Point | string) => void;
setCurrentCity: (city: string) => void;
setMapType: (mapType: BMap.MapType) => void;
setViewport: (view: BMap.Point[], viewportOptions?: BMap.ViewportOptions) => void;
setZoom: (zoom: number) => void;
highResolutionEnabled: () => boolean;
zoomIn: () => void;
zoomOut: () => void;
addHotspot: (hotspot: BMap.Hotspot) => void;
removeHotspot: (hotspot: BMap.Hotspot) => void;
clearHotspots: () => void;
addControl: (control: BMap.Control) => void;
removeControl: (control: BMap.Control) => void;
getContainer: () => HTMLElement;
addContextMenu: (menu: BMap.ContextMenu) => void;
removeContextMenu: (menu: BMap.ContextMenu) => void;
addOverlay: (overlay: BMap.Overlay) => void;
removeOverlay: (overlay: BMap.Overlay) => void;
clearOverlays: () => void;
openInfoWindow: (infoWnd: BMap.InfoWindow, point: BMap.Point) => void;
closeInfoWindow: () => void;
pointToOverlayPixel: (point: BMap.Point) => BMap.Pixel;
overlayPixelToPoint: (pixel: BMap.Pixel) => BMap.Point;
getInfoWindow: () => BMap.InfoWindow;
getOverlays: () => BMap.Overlay[];
getPanes: () => BMap.MapPanes;
addTileLayer: (tileLayer: BMap.TileLayer) => void;
removeTileLayer: (tilelayer: BMap.TileLayer) => void;
getTileLayer: (mapType: string) => BMap.TileLayer;
pixelToPoint: (pixel: BMap.Pixel) => BMap.Point;
pointToPixel: (point: BMap.Point) => BMap.Pixel;
onclick: (event: {
type: string;
target: any;
point: BMap.Point;
pixel: BMap.Pixel;
overlay: BMap.Overlay;
}) => void;
ondblclick: (event: {
type: string;
target: any;
point: BMap.Point;
pixel: BMap.Pixel;
}) => void;
onrightclick: (event: {
type: string;
target: any;
point: BMap.Point;
pixel: BMap.Pixel;
overlay: BMap.Overlay;
}) => void;
onrightdblclick: (event: {
type: string;
target: any;
point: BMap.Point;
pixel: BMap.Pixel;
overlay: BMap.Overlay;
}) => void;
onmaptypechange: (event: {
type: string;
target: any;
}) => void;
onmousemove: (event: {
type: string;
target: any;
point: BMap.Point;
pixel: BMap.Pixel;
overlay: BMap.Overlay;
}) => void;
onmouseover: (event: {
type: string;
target: any;
}) => void;
onmouseout: (event: {
type: string;
target: any;
}) => void;
onmovestart: (event: {
type: string;
target: any;
}) => void;
onmoving: (event: {
type: string;
target: any;
}) => void;
onmoveend: (event: {
type: string;
target: any;
}) => void;
onzoomstart: (event: {
type: string;
target: any;
}) => void;
onzoomend: (event: {
type: string;
target: any;
}) => void;
onaddoverlay: (event: {
type: string;
target: any;
}) => void;
onaddcontrol: (event: {
type: string;
target: any;
}) => void;
onremovecontrol: (event: {
type: string;
target: any;
}) => void;
onremoveoverlay: (event: {
type: string;
target: any;
}) => void;
onclearoverlays: (event: {
type: string;
target: any;
}) => void;
ondragstart: (event: {
type: string;
target: any;
point: BMap.Point;
pixel: BMap.Pixel;
}) => void;
ondragging: (event: {
type: string;
target: any;
point: BMap.Point;
pixel: BMap.Pixel;
}) => void;
ondragend: (event: {
type: string;
target: any;
point: BMap.Point;
pixel: BMap.Pixel;
}) => void;
onaddtilelayer: (event: {
type: string;
target: any;
}) => void;
onremovetilelayer: (event: {
type: string;
target: any;
}) => void;
onload: (event: {
type: string;
target: any;
point: BMap.Point;
pixel: BMap.Pixel;
zoom: number;
}) => void;
onresize: (event: {
type: string;
target: any;
size: BMap.Size;
}) => void;
onhotspotclick: (event: {
type: string;
target: any;
spots: BMap.HotspotOptions;
}) => void;
onhotspotover: (event: {
type: string;
target: any;
spots: BMap.HotspotOptions;
}) => void;
onhotspotout: (event: {
type: string;
target: any;
spots: BMap.HotspotOptions;
}) => void;
ontilesloaded: (event: {
type: string;
target: any;
}) => void;
ontouchstart: (event: {
type: string;
target: any;
point: BMap.Point;
pixel: BMap.Pixel;
}) => void;
ontouchmove: (event: {
type: string;
target: any;
point: BMap.Point;
pixel: BMap.Pixel;
}) => void;
ontouchend: (event: {
type: string;
target: any;
point: BMap.Point;
pixel: BMap.Pixel;
}) => void;
onlongpress: (event: {
type: string;
target: any;
point: BMap.Point;
pixel: BMap.Pixel;
}) => void;
} | {
getElement: () => Element;
setCenter: (center: H.geo.IPoint, opt_animate?: boolean) => H.Map;
getCenter: () => H.geo.Point;
setZoom: (zoom: number, opt_animate?: boolean) => H.Map;
getZoom: () => number;
zoomAt: (zoom: number, x: number, y: number) => void;
setViewBounds: (boundingRect: H.geo.Rect, opt_animate?: boolean) => H.Map;
getViewBounds: () => H.geo.Rect;
getCameraDataForBounds: (rect: H.geo.Rect) => H.map.ViewModel.CameraData;
getViewPort: () => H.map.ViewPort;
getViewModel: () => H.map.ViewModel;
getLayers: () => H.map.DataModel;
getImprint: () => H.map.Imprint;
capture: (callback?: ((canvas: HTMLCanvasElement) => void) | undefined, opt_capturables?: H.util.ICapturable[], opt_x1?: number, opt_y1?: number, opt_x2?: number, opt_y2?: number) => void;
setEngineType: (type: H.Map.EngineType) => H.Map;
storeContent: (opt_onprogress?: ((req: H.util.Request) => void) | undefined, opt_bounds?: H.geo.Rect, opt_min?: number, opt_max?: number, opt_layer?: H.map.layer.BaseTileLayer) => H.util.Request;
clearContent: (opt_onprogress?: ((req: H.util.Request) => void) | undefined) => H.util.Request;
addLayer: (layer: H.map.layer.Layer, opt_idx?: number) => H.Map;
removeLayer: (layer: H.map.layer.Layer) => H.Map;
setBaseLayer: (layer: H.map.layer.Layer) => H.Map;
getBaseLayer: () => H.map.layer.Layer;
geoToScreen: (geoPoint: H.geo.IPoint) => H.math.Point;
screenToGeo: (x: number, y: number) => H.geo.Point;
screenToCameraData: (x: number, y: number) => H.map.ViewModel.CameraData;
addObject: (mapObject: H.map.Object) => H.map.Object;
removeObject: (mapObject: H.map.Object) => H.map.Object;
getObjects: () => H.map.Object[];
addObjects: (mapObjects: H.map.Object[]) => H.Map;
removeObjects: (mapObjects: (H.map.Object[] | H.map.Group)) => H.Map;
getObjectAt: (x: number, y: number) => H.map.Object;
getObjectsAt: (x: number, y: number) => H.map.Object[];
dispatchEvent: (evt: (H.util.Event | string)) => void;
dispose: () => void;
addOnDisposeCallback: (callback: () => void, opt_scope?: {}) => void;
getEngine: () => H.map.render.p2d.RenderEngine;
addEventListener: (type: string, handler: EventListenerOrEventListenerObject, opt_capture?: boolean, opt_scope?: any) => void;
removeEventListener: (type: string, handler: EventListenerOrEventListenerObject, opt_capture?: boolean, opt_scope?: any) => void;
} | {
addControl: (control: import("maptalks").control.Control) => import("maptalks").Map;
removeControl: (control: import("maptalks").control.Control) => import("maptalks").Map;
VERSION: string;
isMap: boolean;
centerAltitude: number;
width: number;
height: number;
CanvasClass: any;
cameraCenterDistance: number;
options: {
pitch?: number | undefined;
bearing?: number | undefined;
baseLayer?: {
map: /*elided*/ any;
parent: any;
options: {
attribution?: string | undefined;
minZoom?: number | undefined;
maxZoom?: number | undefined;
visible?: boolean | undefined;
opacity?: number | undefined;
zIndex?: number | undefined;
globalCompositeOperation?: string | undefined;
renderer?: "canvas" | "gl" | "gpu" | "dom" | null | undefined;
debugOutline?: string | undefined;
cssFilter?: string | undefined;
forceRenderOnMoving?: boolean | undefined;
forceRenderOnZooming?: boolean | undefined;
forceRenderOnRotating?: boolean | undefined;
collision?: boolean | undefined;
collisionScope?: "layer" | "map" | undefined;
hitDetect?: boolean | undefined;
canvas?: HTMLCanvasElement | undefined;
mask?: any;
drawImmediate?: boolean | undefined;
geometryEvents?: boolean | undefined;
geometryEventTolerance?: number | undefined;
maskClip?: boolean | undefined;
};
getLayers?: (() => import("maptalks").Layer[]) | undefined;
load: () => import("maptalks").Layer;
getId: () => string;
setId: (id: string) => import("maptalks").Layer;
addTo: (map: import("maptalks").Map) => import("maptalks").Layer;
setZIndex: (zIndex: number) => import("maptalks").Layer;
getZIndex: () => number;
getMinZoom: () => number;
getMaxZoom: () => number;
getOpacity: () => number;
setOpacity: (op: number) => import("maptalks").Layer;
isCanvasRender: () => boolean;
getMap: () => import("maptalks").Map;
getProjection: () => import("maptalks").CommonProjectionType;
bringToFront: () => import("maptalks").Layer;
bringToBack: () => import("maptalks").Layer;
show: () => import("maptalks").Layer;
hide: () => import("maptalks").Layer;
isVisible: () => boolean;
remove: () => import("maptalks").Layer;
getMask: () => import("maptalks").Marker | import("maptalks").MultiPolygon | import("maptalks").Polygon;
setMask: (mask: import("maptalks").Polygon | import("maptalks").MultiPolygon | import("maptalks").Marker) => import("maptalks").Layer;
removeMask: () => import("maptalks").Layer;
onLoad: () => boolean;
onLoadEnd: () => void;
isLoaded: () => boolean;
getCollisionIndex: () => import("maptalks").CollisionIndex;
clearCollisionIndex: () => import("maptalks").Layer;
getRenderer: () => any;
onConfig: (conf: {
[key: string]: any;
}) => void;
onAdd: () => void;
onRendererCreate: () => void;
onCanvasCreate: () => void;
onRemove: () => void;
getRendererOption: () => "canvas" | "gl" | "gpu" | "dom";
toJSON: (options?: any) => import("maptalks").LayerJSONType;
identify: (_coordinate: import("maptalks").Coordinate, _options: import("maptalks").LayerIdentifyOptionsType) => void;
identifyAtPoint: (_containerPoint: import("maptalks").Point, _options: import("maptalks").LayerIdentifyOptionsType) => void;
_jsonType?: string | undefined;
getJSONType: () => string;
_eventMap?: Record<string, {
handler: import("maptalks").HandlerFn;
context: any;
}[]> | undefined;
_eventParent?: any;
_eventTarget?: any;
on: (eventsOn: string | import("maptalks").EventRecords, handler: import("maptalks").HandlerFn, context?: any) => any;
addEventListener: (...args: any[]) => any;
once: (eventTypes: string | import("maptalks").EventRecords, handler: import("maptalks").HandlerFn, context?: any) => any;
off: (eventsOff: string | import("maptalks").EventRecords, handler: import("maptalks").HandlerFn, context?: any) => any;
removeEventListener: (...args: any[]) => any;
listens: (eventType: string, handler?: import("maptalks").HandlerFn, context?: any) => number;
getListeningEvents: () => string[];
copyEventListeners: (target: any) => any;
fire: (eventType: string, param?: import("maptalks").BaseEventParamsType) => any;
_wrapOnceHandler: (evtType: string, handler: import("maptalks").HandlerFn, context?: any) => (...args: any[]) => void;
_switch: (to: string, eventRecords: import("maptalks").EventRecords, context?: any) => any;
_clearListeners: (eventType: string) => void;
_clearAllListeners: () => void;
_setEventParent: (parent: any) => any;
_setEventTarget: (target: any) => any;
_fire: (eventType: string, param: import("maptalks").BaseEventParamsType) => any;
proxyOptions: () => import("maptalks").Layer;
callInitHooks: () => import("maptalks").Layer;
_setOptions: (options: import("maptalks").ClassOptions) => import("maptalks").Layer;
setOptions: (options: import("maptalks").ClassOptions) => import("maptalks").Layer;
config: (conf?: string | import("maptalks").ClassOptions, value?: any) => import("maptalks").Layer | import("maptalks").ClassOptions;
} | undefined;
layers?: {
map: /*elided*/ any;
parent: any;
options: {
attribution?: string | undefined;
minZoom?: number | undefined;
maxZoom?: number | undefined;
visible?: boolean | undefined;
opacity?: number | undefined;
zIndex?: number | undefined;
globalCompositeOperation?: string | undefined;
renderer?: "canvas" | "gl" | "gpu" | "dom" | null | undefined;
debugOutline?: string | undefined;
cssFilter?: string | undefined;
forceRenderOnMoving?: boolean | undefined;
forceRenderOnZooming?: boolean | undefined;
forceRenderOnRotating?: boolean | undefined;
collision?: boolean | undefined;
collisionScope?: "layer" | "map" | undefined;
hitDetect?: boolean | undefined;
canvas?: HTMLCanvasElement | undefined;
mask?: any;
drawImmediate?: boolean | undefined;
geometryEvents?: boolean | undefined;
geometryEventTolerance?: number | undefined;
maskClip?: boolean | undefined;
};
getLayers?: (() => import("maptalks").Layer[]) | undefined;
load: () => import("maptalks").Layer;
getId: () => string;
setId: (id: string) => import("maptalks").Layer;
addTo: (map: import("maptalks").Map) => import("maptalks").Layer;
setZIndex: (zIndex: number) => import("maptalks").Layer;
getZIndex: () => number;
getMinZoom: () => number;
getMaxZoom: () => number;
getOpacity: () => number;
setOpacity: (op: number) => import("maptalks").Layer;
isCanvasRender: () => boolean;
getMap: () => import("maptalks").Map;
getProjection: () => import("maptalks").CommonProjectionType;
bringToFront: () => import("maptalks").Layer;
bringToBack: () => import("maptalks").Layer;
show: () => import("maptalks").Layer;
hide: () => import("maptalks").Layer;
isVisible: () => boolean;
remove: () => import("maptalks").Layer;
getMask: () => import("maptalks").Marker | import("maptalks").MultiPolygon | import("maptalks").Polygon;
setMask: (mask: import("maptalks").Polygon | import("maptalks").MultiPolygon | import("maptalks").Marker) => import("maptalks").Layer;
removeMask: () => import("maptalks").Layer;
onLoad: () => boolean;
onLoadEnd: () => void;
isLoaded: () => boolean;
getCollisionIndex: () => import("maptalks").CollisionIndex;
clearCollisionIndex: () => import("maptalks").Layer;
getRenderer: () => any;
onConfig: (conf: {
[key: string]: any;
}) => void;
onAdd: () => void;
onRendererCreate: () => void;
onCanvasCreate: () => void;
onRemove: () => void;
getRendererOption: () => "canvas" | "gl" | "gpu" | "dom";
toJSON: (options?: any) => import("maptalks").LayerJSONType;
identify: (_coordinate: import("maptalks").Coordinate, _options: import("maptalks").LayerIdentifyOptionsType) => void;
identifyAtPoint: (_containerPoint: import("maptalks").Point, _options: import("maptalks").LayerIdentifyOptionsType) => void;
_jsonType?: string | undefined;
getJSONType: () => string;
_eventMap?: Record<string, {
handler: import("maptalks").HandlerFn;
context: any;
}[]> | undefined;
_eventParent?: any;
_eventTarget?: any;
on: (eventsOn: string | import("maptalks").EventRecords, handler: import("maptalks").HandlerFn, context?: any) => any;
addEventListener: (...args: any[]) => any;
once: (eventTypes: string | import("maptalks").EventRecords, handler: import("maptalks").HandlerFn, context?: any) => any;
off: (eventsOff: string | import("maptalks").EventRecords, handler: import("maptalks").HandlerFn, context?: any) => any;
removeEventListener: (...args: any[]) => any;
listens: (eventType: string, handler?: import("maptalks").HandlerFn, context?: any) => number;
getListeningEvents: () => string[];
copyEventListeners: (target: any) => any;
fire: (eventType: string, param?: import("maptalks").BaseEventParamsType) => any;
_wrapOnceHandler: (evtType: string, handler: import("maptalks").HandlerFn, context?: any) => (...args: any[]) => void;
_switch: (to: string, eventRecords: import("maptalks").EventRecords, context?: any) => any;
_clearListeners: (eventType: string) => void;
_clearAllListeners: () => void;
_setEventParent: (parent: any) => any;
_setEventTarget: (target: any) => any;
_fire: (eventType: string, param: import("maptalks").BaseEventParamsType) => any;
proxyOptions: () => import("maptalks").Layer;
callInitHooks: () => import("maptalks").Layer;
_setOptions: (options: import("maptalks").ClassOptions) => import("maptalks").Layer;
setOptions: (options: import("maptalks").ClassOptions) => import("maptalks").Layer;
config: (conf?: string | import("maptalks").ClassOptions, value?: any) => import("maptalks").Layer | import("maptalks").ClassOptions;
}[] | undefined;
draggable?: boolean | undefined;
dragPan?: boolean | undefined;
dragPanEasing?: import("maptalks").EasingType | undefined;
dragRotate?: boolean | undefined;
dragPitch?: boolean | undefined;
dragRotatePitch?: boolean | undefined;
touchGesture?: boolean | undefined;
touchZoom?: boolean | undefined;
touchRotate?: boolean | undefined;
touchPitch?: boolean | undefined;
touchZoomRotate?: boolean | undefined;
doubleClickZoom?: boolean | undefined;
scrollWheelZoom?: boolean | undefined;
geometryEvents?: boolean | undefined;
control?: boolean | undefined;
attribution?: boolean | {
content?: (string | HTMLElement) | undefined;
custom?: boolean | undefined;
position?: string | {
top?: number | string | undefined;
bottom?: number | string | undefined;
left?: number | string | undefined;
right?: number | string | undefined;
} | undefined;
cssName?: (string | Array<string>) | undefined;
} | undefined;
zoomControl?: boolean | undefined;
scaleControl?: boolean | undefined;
overviewControl?: boolean | undefined;
fog?: boolean | undefined;
fogColor?: any;
devicePixelRatio?: number | undefined;
heightFactor?: number | undefined;
originLatitudeForAltitude?: number | undefined;
viewHistory?: boolean | undefined;
viewHistoryCount?: number | undefined;
seamlessZoom?: boolean | undefined;
maxVisualPitch?: number | undefined;
maxPitch?: number | undefined;
centerCross?: boolean | undefined;
zoomable?: boolean | undefined;
zoomInCenter?: boolean | undefined;
zoomOrigin?: Array<number> | undefined;
zoomAnimation?: boolean | undefined;
zoomAnimationDuration?: number | undefined;
tileBackgroundLimitPerFrame?: number | undefined;
panAnimation?: boolean | undefined;
panAnimationDuration?: number | undefined;
rotateAnimation?: boolean | undefined;
rotateAnimationDuration?: number | undefined;
enableInfoWindow?: boolean | undefined;
hitDetect?: boolean | undefined;
hitDetectLimit?: number | undefined;
fpsOnInteracting?: number | undefined;
layerCanvasLimitOnInteracting?: number | undefined;
maxZoom?: number | undefined;
minZoom?: number | undefined;
maxExtent?: {
_clazz: typeof import("maptalks").Coordinate | typeof import("maptalks").Point;
_dirty: boolean;
projection: any;
xmin: import("maptalks").WithNull<number>;
xmax: import("maptalks").WithNull<number>;
ymin: import("maptalks").WithNull<number>;
ymax: import("maptalks").WithNull<number>;
pxmin: number;
pxmax: number;
pymin: number;
pymax: number;
left?: number | undefined;
right?: number | undefined;
top?: number | undefined;
bottom?: number | undefined;
antiMeridian?: boolean | undefined;
_initialize: {
(p1: import("maptalks").WithNull<import("maptalks").ExtentLike>): void;
(p1: import("maptalks").PositionType, p2: import("maptalks").PositionType): void;
(p1: number, p2: number, p3: number, p4: number): void;
};
_add: {
(p: import("maptalks").Extent): import("maptalks").Extent;
(p: import("maptalks").PointExtent): import("maptalks").Extent;
(p: import("maptalks").PositionType): import("maptalks").Extent;
(p: number[]): import("maptalks").Extent;
};
add: {
(p: imp