export interface MapViewOptions {
    latitude: number
    longitude: number
    zoom: number
    minZoom: number
    maxZoom: number
}

export interface DrawOptions {
    circle: any
    marker: any
    rectangle: any
}

export interface Map {
    map: any
    navigationControl: any
    drawControl: any
    drawnItems: any
    drawOptions: DrawOptions

    initializeMap(container: HTMLElement, options: MapViewOptions)
    setView(options: MapViewOptions)
    setZoom(zoomLevel: number)
    addNavigationControl(position: string)
    removeNavigationControl()
    addDrawControl(position: string)
    removeDrawControl()
    drawRectangle(bounds: any)
    refreshSize()
    fitWorld()
    on(eventName: string, callback: Function)
    trigger(eventName: string, detail: any)
    normalizeBox(box: any[])
}
