import { EventsKey } from '../events'; import { Condition } from '../events/condition'; import BaseEvent from '../events/Event'; import { Extent as Extent_1 } from '../extent'; import MapBrowserEvent from '../MapBrowserEvent'; import { ObjectEvent } from '../Object'; import PluggableMap from '../PluggableMap'; import { StyleLike } from '../style/Style'; import PointerInteraction from './Pointer'; export interface Options { condition?: Condition | undefined; extent?: Extent_1 | undefined; boxStyle?: StyleLike | undefined; pixelTolerance?: number | undefined; pointerStyle?: StyleLike | undefined; wrapX?: boolean | undefined; } export default class Extent extends PointerInteraction { constructor(opt_options?: Options); /** * Returns the current drawn extent in the view projection (or user projection if set) */ getExtent(): Extent_1; /** * Returns the current drawn extent in the view projection */ getExtentInternal(): Extent_1; /** * Handle pointer down events. */ handleDownEvent(mapBrowserEvent: MapBrowserEvent): boolean; /** * Handle pointer drag events. */ handleDragEvent(mapBrowserEvent: MapBrowserEvent): void; handleEvent(mapBrowserEvent: MapBrowserEvent): boolean; /** * Handle pointer up events. */ handleUpEvent(mapBrowserEvent: MapBrowserEvent): boolean; /** * Manually sets the drawn extent, using the view projection. */ setExtent(extent: Extent_1): void; /** * Remove the interaction from its current map and attach it to the new map. * Subclasses may set up event handlers to get notified about changes to * the map here. */ setMap(map: PluggableMap): 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: '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: 'extentchanged', listener: (evt: ExtentEvent) => void): EventsKey; once(type: 'extentchanged', listener: (evt: ExtentEvent) => void): EventsKey; un(type: 'extentchanged', listener: (evt: ExtentEvent) => 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; } export class ExtentEvent extends BaseEvent { constructor(extent: Extent_1); /** * The current extent. */ extent: Extent_1; }