import type { CreateComponentDoc } from "../../types/CreateComponentDoc"; type RegionChangeBegin = { type: "begin"; causedBy: "gesture" | "update"; }; export type MarkLocation = { latitude: number; longitude: number; }; type RegionChangeEnd = { type: "end"; causedBy: "drag" | "scale" | "update"; centerLocation: MarkLocation; region: { northeast: MarkLocation; southwest: MarkLocation; }; rotate: number; scale: number; skew: number; }; type RegionChangeDetail = RegionChangeBegin | RegionChangeEnd; export type Callout = { content: string; display: "ALWAYS" | "BYCLICK"; color?: string; fontSize?: string | number; borderWidth?: number; borderRadius?: number; borderColor?: string; bgColor?: string; padding?: number; textAlign?: "center" | "left" | "right"; anchorX?: number; anchorYL?: number; }; export type Marker = { id: number; width: number | string; height: number | string; clusterId?: number; joinCluster?: boolean; latitude: number; longitude: number; title?: string; zIndex?: number; iconPath: string; rotate?: number; alpha?: number; callout?: Callout; customCallout?: Callout; label?: Callout; anchor?: { x: number; y: number; }; ariaLabel?: string; collisionRelation?: string; collision?: string; }; export type Circle = { latitude: number; longitude: number; radius: number; color?: string; fillColor?: string; strokeWidth?: number; level?: string; }; export type Polygon = { dashArray?: number[]; points: MarkLocation[]; strokeWidth?: number; strokeColor?: string; fillColor?: string; zIndex?: number; level?: string; }; export type Polyline = { points: MarkLocation[]; color?: string; colorList?: string[]; width?: number; dottedLine?: boolean; arrowLine?: boolean; arrowIconPath?: string; borderColor?: string; borderWidth?: number; level?: string; textStyle?: TextStyle; segmentTexts?: SegmentText[]; }; export type TextStyle = { textColor?: string; strokeColor?: string; fontSize?: number; }; export type SegmentText = { name: string; startIndex: string; endIndex: number; }; export type Map = CreateComponentDoc<"map", { properties: { latitude: number; longitude: number; scale?: number; minScale?: number; maxScale?: number; markers?: Marker[]; covers?: Marker[]; polyline?: Polyline[]; circles?: Circle[]; controls?: Marker[]; includePoints?: Marker[]; showLocation?: boolean; polygons?: Polygon[]; subkey?: string; layerStyle?: number; rotate?: number; skew?: number; enable3D?: boolean; showCompass?: boolean; showScale?: boolean; enableOverlooking?: boolean; enableAutoMaxOverlooking?: boolean; enableZoom?: boolean; enableScroll?: boolean; enableRotate?: boolean; enableSatellite?: boolean; enableTraffic?: boolean; enablePOI?: boolean; enableBuilding?: boolean; setting?: object; }; events: { tap: MarkLocation; markertap: { markerId: number; }; labeltap: { markerId: number; }; controltap: { controlId: number; }; callouttap: { markerId: number; }; updated: undefined; regionchange: RegionChangeDetail; poitap: { name: string; longitude: number; latitude: number; }; polylinetap: { longitude: number; latitude: number; }; abilitysuccess: { ability: string; errCode: number; errMsg: string; }; abilityfail: { ability: string; errCode: number; errMsg: string; }; authsuccess: { errCode: number; errMsg: string; }; interpolatepoint: { markerId: number; longitude: number; latitude: number; animationStatus: "interpolating" | "complete"; }; error: { longitude: number; latitude: number; }; }; }>; export {};