Add typed signature for Observable#un()

This commit is contained in:
Andreas Hocevar
2021-06-25 10:51:27 +02:00
parent 3a73af842d
commit e9e664f3c9
25 changed files with 309 additions and 145 deletions

View File

@@ -94,12 +94,13 @@ export class DragBoxEvent extends Event {
}
/***
* @typedef {import("../Observable").OnSignature<import("../Observable").EventTypes, import("../events/Event.js").default> &
* @template Return
* @typedef {import("../Observable").OnSignature<import("../Observable").EventTypes, import("../events/Event.js").default, Return> &
* import("../Observable").OnSignature<import("../ObjectEventType").Types|
* 'change:active', import("../Object").ObjectEvent> &
* import("../Observable").OnSignature<'boxcancel'|'boxdrag'|'boxend', DragBoxEvent> &
* 'change:active', import("../Object").ObjectEvent, Return> &
* import("../Observable").OnSignature<'boxcancel'|'boxdrag'|'boxend', DragBoxEvent, Return> &
* import("../Observable").CombinedOnSignature<import("../Observable").EventTypes|import("../ObjectEventType").Types|
* 'change:active'|'boxcancel'|'boxdrag'|'boxend'>} DragBoxOnSignature
* 'change:active'|'boxcancel'|'boxdrag'|'boxend', Return>} DragBoxOnSignature
*/
/**
@@ -122,15 +123,20 @@ class DragBox extends PointerInteraction {
super();
/***
* @type {DragBoxOnSignature}
* @type {DragBoxOnSignature<import("../Observable").OnReturn>}
*/
this.on;
/***
* @type {DragBoxOnSignature}
* @type {DragBoxOnSignature<import("../Observable").OnReturn>}
*/
this.once;
/***
* @type {DragBoxOnSignature<void>}
*/
this.un;
const options = opt_options ? opt_options : {};
/**

View File

@@ -173,12 +173,13 @@ export class DrawEvent extends Event {
}
/***
* @typedef {import("../Observable").OnSignature<import("../Observable").EventTypes, import("../events/Event.js").default> &
* @template Return
* @typedef {import("../Observable").OnSignature<import("../Observable").EventTypes, import("../events/Event.js").default, Return> &
* import("../Observable").OnSignature<import("../ObjectEventType").Types|
* 'change:active', import("../Object").ObjectEvent> &
* import("../Observable").OnSignature<'drawabort'|'drawend'|'drawstart', DrawEvent> &
* 'change:active', import("../Object").ObjectEvent, Return> &
* import("../Observable").OnSignature<'drawabort'|'drawend'|'drawstart', DrawEvent, Return> &
* import("../Observable").CombinedOnSignature<import("../Observable").EventTypes|import("../ObjectEventType").Types|
* 'change:active'|'drawabort'|'drawend'|'drawstart'>} DrawOnSignature
* 'change:active'|'drawabort'|'drawend'|'drawstart', Return>} DrawOnSignature
*/
/**
@@ -203,15 +204,20 @@ class Draw extends PointerInteraction {
super(pointerOptions);
/***
* @type {DrawOnSignature}
* @type {DrawOnSignature<import("../Observable").OnReturn>}
*/
this.on;
/***
* @type {DrawOnSignature}
* @type {DrawOnSignature<import("../Observable").OnReturn>}
*/
this.once;
/***
* @type {DrawOnSignature<void>}
*/
this.un;
/**
* @type {boolean}
* @private

View File

@@ -75,12 +75,13 @@ export class ExtentEvent extends Event {
}
/***
* @typedef {import("../Observable").OnSignature<import("../Observable").EventTypes, import("../events/Event.js").default> &
* @template Return
* @typedef {import("../Observable").OnSignature<import("../Observable").EventTypes, import("../events/Event.js").default, Return> &
* import("../Observable").OnSignature<import("../ObjectEventType").Types|
* 'change:active', import("../Object").ObjectEvent> &
* import("../Observable").OnSignature<'extentchanged', ExtentEvent> &
* 'change:active', import("../Object").ObjectEvent, Return> &
* import("../Observable").OnSignature<'extentchanged', ExtentEvent, Return> &
* import("../Observable").CombinedOnSignature<import("../Observable").EventTypes|import("../ObjectEventType").Types|
* 'change:active'|'extentchanged'>} ExtentOnSignature
* 'change:active'|'extentchanged', Return>} ExtentOnSignature
*/
/**
@@ -102,15 +103,20 @@ class Extent extends PointerInteraction {
super(/** @type {import("./Pointer.js").Options} */ (options));
/***
* @type {ExtentOnSignature}
* @type {ExtentOnSignature<import("../Observable.js").OnReturn>}
*/
this.on;
/***
* @type {ExtentOnSignature}
* @type {ExtentOnSignature<import("../Observable.js").OnReturn>}
*/
this.once;
/***
* @type {ExtentOnSignature<void>}
*/
this.un;
/**
* Condition
* @type {import("../events/condition.js").Condition}

View File

@@ -6,11 +6,12 @@ import InteractionProperty from './Property.js';
import {easeOut, linear} from '../easing.js';
/***
* @typedef {import("../Observable").OnSignature<import("../Observable").EventTypes, import("../events/Event.js").default> &
* @template Return
* @typedef {import("../Observable").OnSignature<import("../Observable").EventTypes, import("../events/Event.js").default, Return> &
* import("../Observable").OnSignature<import("../ObjectEventType").Types|
* 'change:active', import("../Object").ObjectEvent> &
* 'change:active', import("../Object").ObjectEvent, Return> &
* import("../Observable").CombinedOnSignature<import("../Observable").EventTypes|import("../ObjectEventType").Types|
* 'change:active'>} InteractionOnSignature
* 'change:active', Return>} InteractionOnSignature
*/
/**
@@ -45,15 +46,20 @@ class Interaction extends BaseObject {
super();
/***
* @type {InteractionOnSignature}
* @type {InteractionOnSignature<import("../Observable.js").OnReturn>}
*/
this.on;
/***
* @type {InteractionOnSignature}
* @type {InteractionOnSignature<import("../Observable.js").OnReturn>}
*/
this.once;
/***
* @type {InteractionOnSignature<void>}
*/
this.un;
if (opt_options && opt_options.handleEvent) {
this.handleEvent = opt_options.handleEvent;
}

View File

@@ -165,12 +165,13 @@ export class ModifyEvent extends Event {
}
/***
* @typedef {import("../Observable").OnSignature<import("../Observable").EventTypes, import("../events/Event.js").default> &
* @template Return
* @typedef {import("../Observable").OnSignature<import("../Observable").EventTypes, import("../events/Event.js").default, Return> &
* import("../Observable").OnSignature<import("../ObjectEventType").Types|
* 'change:active', import("../Object").ObjectEvent> &
* import("../Observable").OnSignature<'modifyend'|'modifystart', ModifyEvent> &
* 'change:active', import("../Object").ObjectEvent, Return> &
* import("../Observable").OnSignature<'modifyend'|'modifystart', ModifyEvent, Return> &
* import("../Observable").CombinedOnSignature<import("../Observable").EventTypes|import("../ObjectEventType").Types|
* 'change:active'|'modifyend'|'modifystart'>} ModifyOnSignature
* 'change:active'|'modifyend'|'modifystart', Return>} ModifyOnSignature
*/
/**
@@ -202,15 +203,20 @@ class Modify extends PointerInteraction {
super(/** @type {import("./Pointer.js").Options} */ (options));
/***
* @type {ModifyOnSignature}
* @type {ModifyOnSignature<import("../Observable.js").OnReturn>}
*/
this.on;
/***
* @type {ModifyOnSignature}
* @type {ModifyOnSignature<import("../Observable.js").OnReturn>}
*/
this.once;
/***
* @type {ModifyOnSignature<void>}
*/
this.un;
/** @private */
this.boundHandleFeatureChange_ = this.handleFeatureChange_.bind(this);

View File

@@ -135,12 +135,13 @@ export class SelectEvent extends Event {
const originalFeatureStyles = {};
/***
* @typedef {import("../Observable").OnSignature<import("../Observable").EventTypes, import("../events/Event.js").default> &
* @template Return
* @typedef {import("../Observable").OnSignature<import("../Observable").EventTypes, import("../events/Event.js").default, Return> &
* import("../Observable").OnSignature<import("../ObjectEventType").Types|
* 'change:active', import("../Object").ObjectEvent> &
* import("../Observable").OnSignature<'select', SelectEvent> &
* 'change:active', import("../Object").ObjectEvent, Return> &
* import("../Observable").OnSignature<'select', SelectEvent, Return> &
* import("../Observable").CombinedOnSignature<import("../Observable").EventTypes|import("../ObjectEventType").Types|
* 'change:active'|'select'>} SelectOnSignature
* 'change:active'|'select', Return>} SelectOnSignature
*/
/**
@@ -166,15 +167,20 @@ class Select extends Interaction {
super();
/***
* @type {SelectOnSignature}
* @type {SelectOnSignature<import("../Observable.js").OnReturn>}
*/
this.on;
/***
* @type {SelectOnSignature}
* @type {SelectOnSignature<import("../Observable.js").OnReturn>}
*/
this.once;
/***
* @type {SelectOnSignature<void>}
*/
this.un;
const options = opt_options ? opt_options : {};
/**

View File

@@ -111,12 +111,13 @@ export class TranslateEvent extends Event {
}
/***
* @typedef {import("../Observable").OnSignature<import("../Observable").EventTypes, import("../events/Event.js").default> &
* @template Return
* @typedef {import("../Observable").OnSignature<import("../Observable").EventTypes, import("../events/Event.js").default, Return> &
* import("../Observable").OnSignature<import("../ObjectEventType").Types|
* 'change:active', import("../Object").ObjectEvent> &
* import("../Observable").OnSignature<'translateend'|'translatestart'|'translating', TranslateEvent> &
* 'change:active', import("../Object").ObjectEvent, Return> &
* import("../Observable").OnSignature<'translateend'|'translatestart'|'translating', TranslateEvent, Return> &
* import("../Observable").CombinedOnSignature<import("../Observable").EventTypes|import("../ObjectEventType").Types|
* 'change:active'|'translateend'|'translatestart'|'translating'>} TranslateOnSignature
* 'change:active'|'translateend'|'translatestart'|'translating', Return>} TranslateOnSignature
*/
/**
@@ -136,15 +137,20 @@ class Translate extends PointerInteraction {
super(/** @type {import("./Pointer.js").Options} */ (options));
/***
* @type {TranslateOnSignature}
* @type {TranslateOnSignature<import("../Observable.js").OnReturn>}
*/
this.on;
/***
* @type {TranslateOnSignature}
* @type {TranslateOnSignature<import("../Observable.js").OnReturn>}
*/
this.once;
/***
* @type {TranslateOnSignature<void>}
*/
this.un;
/**
* The last position we translated to.
* @type {import("../coordinate.js").Coordinate}