You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
96 lines
4.0 KiB
96 lines
4.0 KiB
/**
|
|
* Removes an event listener using the key returned by `on()` or `once()`.
|
|
* @param {import("./events.js").EventsKey|Array<import("./events.js").EventsKey>} key The key returned by `on()`
|
|
* or `once()` (or an array of keys).
|
|
* @api
|
|
*/
|
|
export function unByKey(key: import("./events.js").EventsKey | Array<import("./events.js").EventsKey>): void;
|
|
export default Observable;
|
|
/**
|
|
* *
|
|
*/
|
|
export type OnSignature<Type extends string, EventClass extends import("./events/Event.js").default | Event, Return> = (type: Type, listener: (event: EventClass) => unknown) => Return;
|
|
/**
|
|
* *
|
|
*/
|
|
export type CombinedOnSignature<Type extends string, Return> = (type: Type[], listener: (event: Event | import("./events/Event").default) => unknown) => Return extends void ? void : Return[];
|
|
export type EventTypes = 'change' | 'error';
|
|
/**
|
|
* *
|
|
*/
|
|
export type ObservableOnSignature<Return> = OnSignature<EventTypes, import("./events/Event.js").default, Return> & CombinedOnSignature<EventTypes, Return>;
|
|
/***
|
|
* @template {string} Type
|
|
* @template {Event|import("./events/Event.js").default} EventClass
|
|
* @template Return
|
|
* @typedef {(type: Type, listener: (event: EventClass) => ?) => Return} OnSignature
|
|
*/
|
|
/***
|
|
* @template {string} Type
|
|
* @template Return
|
|
* @typedef {(type: Type[], listener: (event: Event|import("./events/Event").default) => ?) => Return extends void ? void : Return[]} CombinedOnSignature
|
|
*/
|
|
/**
|
|
* @typedef {'change'|'error'} EventTypes
|
|
*/
|
|
/***
|
|
* @template Return
|
|
* @typedef {OnSignature<EventTypes, import("./events/Event.js").default, Return> & CombinedOnSignature<EventTypes, Return>} ObservableOnSignature
|
|
*/
|
|
/**
|
|
* @classdesc
|
|
* Abstract base class; normally only used for creating subclasses and not
|
|
* instantiated in apps.
|
|
* An event target providing convenient methods for listener registration
|
|
* and unregistration. A generic `change` event is always available through
|
|
* {@link module:ol/Observable~Observable#changed}.
|
|
*
|
|
* @fires import("./events/Event.js").default
|
|
* @api
|
|
*/
|
|
declare class Observable extends EventTarget {
|
|
constructor();
|
|
on: ObservableOnSignature<import("./events.js").EventsKey>;
|
|
once: ObservableOnSignature<import("./events.js").EventsKey>;
|
|
un: ObservableOnSignature<void>;
|
|
/**
|
|
* @private
|
|
* @type {number}
|
|
*/
|
|
private revision_;
|
|
/**
|
|
* Increases the revision counter and dispatches a 'change' event.
|
|
* @api
|
|
*/
|
|
changed(): void;
|
|
/**
|
|
* Get the version number for this object. Each time the object is modified,
|
|
* its version number will be incremented.
|
|
* @return {number} Revision.
|
|
* @api
|
|
*/
|
|
getRevision(): number;
|
|
/**
|
|
* @param {string|Array<string>} type Type.
|
|
* @param {function((Event|import("./events/Event").default)): ?} listener Listener.
|
|
* @return {import("./events.js").EventsKey|Array<import("./events.js").EventsKey>} Event key.
|
|
* @protected
|
|
*/
|
|
protected onInternal(type: string | Array<string>, listener: (arg0: (Event | import("./events/Event").default)) => unknown): import("./events.js").EventsKey | Array<import("./events.js").EventsKey>;
|
|
/**
|
|
* @param {string|Array<string>} type Type.
|
|
* @param {function((Event|import("./events/Event").default)): ?} listener Listener.
|
|
* @return {import("./events.js").EventsKey|Array<import("./events.js").EventsKey>} Event key.
|
|
* @protected
|
|
*/
|
|
protected onceInternal(type: string | Array<string>, listener: (arg0: (Event | import("./events/Event").default)) => unknown): import("./events.js").EventsKey | Array<import("./events.js").EventsKey>;
|
|
/**
|
|
* Unlisten for a certain type of event.
|
|
* @param {string|Array<string>} type Type.
|
|
* @param {function((Event|import("./events/Event").default)): ?} listener Listener.
|
|
* @protected
|
|
*/
|
|
protected unInternal(type: string | Array<string>, listener: (arg0: (Event | import("./events/Event").default)) => unknown): void;
|
|
}
|
|
import EventTarget from "./events/Target.js";
|
|
//# sourceMappingURL=Observable.d.ts.map
|