/// /// declare namespace my { interface IGetCenterLocationResult { readonly longitude: number; readonly latitude: number; readonly scale: number; } interface IShowRouteOptions { searchType: "bus" | "walk" | "drive" | "ride"; startLat?: number; startLng?: number; endLat?: number; endLng?: number; throughPoints: Array<{ lat: number; lng: number; }>; routeColor?: string; iconPath?: string; iconWidth?: number; routeWidth?: number; zIndex?: number; mode?: 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9; city?: string; destinationCity?: string; } interface IGestureEnableOptions { isGestureEnable: 0 | 1; } interface IShowsScaleOptions { isShowsScale: 0 | 1; } interface IShowsCompassOptions { isShowsCompass: 0 | 1; } interface IUpdateComponentsOptions { scale?: number; longitude?: number; latitude?: number; command?: { markerAnim?: Array<{ type?: number; markerId?: string; }>; }; setting?: { gestureEnable?: 0 | 1; showScale?: 0 | 1; showCompass?: 0 | 1; tiltGesturesEnabled?: 0 | 1; trafficEnabled?: 0 | 1; showMapText?: 0 | 1; logoPosition?: { centerX?: number; centerY?: number }; }; markers?: any[]; polylines?: any[]; "include-points"?: any[]; "include-padding"?: { left?: 0; right?: 0; top?: 0; bottom?: 0; }; } interface ITranslateMarkerOptions { markerId: string; destination: { longitude: number; latitude: number; }; autoRotate?: boolean; rotate?: number; duration?: number; animationEnd?: () => void; } interface IMapContext { moveToLocation(): void; gestureEnable(options: IGestureEnableOptions): void; showsScale(options: IShowsScaleOptions): void; showsCompass(options: IShowsCompassOptions): void; showRoute(options: IShowRouteOptions): void; clearRoute(): void; getCenterLocation(callback: (res: IGetCenterLocationResult) => {}): void; updateComponents(options: IUpdateComponentsOptions): void; translateMarker(options: ITranslateMarkerOptions): void; } /** * sắp hỗ trợ */ function createMapContext(mapId: string): IMapContext; }