// 百度地图WebGL API类型声明
declare global {
  interface Window {
    BMapGL: any
  }
  
  const BMapGL: any
}

declare class Map {
  constructor(container: string)
  centerAndZoom(point: Point, zoom: number): void
  enableScrollWheelZoom(enable: boolean): void
  addControl(control: any): void
  addOverlay(overlay: any): void
  removeOverlay(overlay: any): void
  openInfoWindow(infoWindow: InfoWindow, point: Point): void
}

declare class Point {
  constructor(lng: number, lat: number)
  lng: number
  lat: number
}

declare class Size {
  constructor(width: number, height: number)
  width: number
  height: number
}

declare class Marker {
  constructor(point: Point, options?: any)
  addEventListener(event: string, handler: Function): void
}

declare class InfoWindow {
  constructor(content: string, options?: any)
}

declare class Circle {
  constructor(center: Point, radius: number, options?: any)
}

declare class Label {
  constructor(text: string, options?: any)
  setStyle(style: any): void
}

declare class Icon {
  constructor(url: string, size: Size)
}

declare class ScaleControl {
  constructor()
}

declare class ZoomControl {
  constructor()
}

declare class LocationControl {
  constructor()
}

export {} 