import { EventsKey } from '../events'; import { Condition } from '../events/condition'; import BaseEvent from '../events/Event'; import MapBrowserEvent from '../MapBrowserEvent'; import { ObjectEvent } from '../Object'; import DragBox, { DragBoxEvent } from './DragBox'; export interface Options { className?: string | undefined; condition?: Condition | undefined; duration?: number | undefined; out?: boolean | undefined; minArea?: number | undefined; } export default class DragZoom extends DragBox { constructor(opt_options?: Options); /** * Function to execute just before onboxend is fired */ onBoxEnd(event: MapBrowserEvent): void; on(type: string | string[], listener: (p0: any) => any): EventsKey | EventsKey[]; once(type: string | string[], listener: (p0: any) => any): EventsKey | EventsKey[]; un(type: string | string[], listener: (p0: any) => any): void; on(type: 'boxcancel', listener: (evt: DragBoxEvent) => void): EventsKey; once(type: 'boxcancel', listener: (evt: DragBoxEvent) => void): EventsKey; un(type: 'boxcancel', listener: (evt: DragBoxEvent) => void): void; on(type: 'boxdrag', listener: (evt: DragBoxEvent) => void): EventsKey; once(type: 'boxdrag', listener: (evt: DragBoxEvent) => void): EventsKey; un(type: 'boxdrag', listener: (evt: DragBoxEvent) => void): void; on(type: 'boxend', listener: (evt: DragBoxEvent) => void): EventsKey; once(type: 'boxend', listener: (evt: DragBoxEvent) => void): EventsKey; un(type: 'boxend', listener: (evt: DragBoxEvent) => void): void; on(type: 'boxstart', listener: (evt: DragBoxEvent) => void): EventsKey; once(type: 'boxstart', listener: (evt: DragBoxEvent) => void): EventsKey; un(type: 'boxstart', listener: (evt: DragBoxEvent) => void): void; on(type: 'change', listener: (evt: BaseEvent) => void): EventsKey; once(type: 'change', listener: (evt: BaseEvent) => void): EventsKey; un(type: 'change', listener: (evt: BaseEvent) => void): void; on(type: 'change:active', listener: (evt: ObjectEvent) => void): EventsKey; once(type: 'change:active', listener: (evt: ObjectEvent) => void): EventsKey; un(type: 'change:active', listener: (evt: ObjectEvent) => void): void; on(type: 'error', listener: (evt: BaseEvent) => void): EventsKey; once(type: 'error', listener: (evt: BaseEvent) => void): EventsKey; un(type: 'error', listener: (evt: BaseEvent) => void): void; on(type: 'propertychange', listener: (evt: ObjectEvent) => void): EventsKey; once(type: 'propertychange', listener: (evt: ObjectEvent) => void): EventsKey; un(type: 'propertychange', listener: (evt: ObjectEvent) => void): void; }