Merge pull request #12416 from ahocevar/eventtype-generics
Use generics to limit event types in on(), once() and un()
This commit is contained in:
@@ -38,6 +38,8 @@ import {clamp} from '../math.js';
|
||||
* the options is set as a {@link module:ol/Object} property on the layer object, so
|
||||
* is observable, and has get/set accessors.
|
||||
*
|
||||
* @template {string} EventTypes
|
||||
* @extends BaseObject<EventTypes|'change:extent'|'change:maxResolution'|'change:maxZoom'|'change:minResolution'|'change:minZoom'|'change:opacity'|'change:visible'|'change:zIndex'>
|
||||
* @api
|
||||
*/
|
||||
class BaseLayer extends BaseObject {
|
||||
|
||||
@@ -45,7 +45,7 @@ import {assign} from '../obj.js';
|
||||
* options means that `title` is observable, and has get/set accessors.
|
||||
*
|
||||
* @template {import("../source/Tile.js").default} TileSourceType
|
||||
* @extends {Layer<TileSourceType>}
|
||||
* @extends Layer<TileSourceType,'preload'|'useInterimTilesOnError'>
|
||||
* @api
|
||||
*/
|
||||
class BaseTileLayer extends Layer {
|
||||
|
||||
@@ -73,7 +73,8 @@ const Property = {
|
||||
* options means that `title` is observable, and has get/set accessors.
|
||||
*
|
||||
* @template {import("../source/Vector.js").default|import("../source/VectorTile.js").default} VectorSourceType
|
||||
* @extends {Layer<VectorSourceType>}
|
||||
* @template {string} EventTypes
|
||||
* @extends Layer<VectorSourceType,EventTypes>
|
||||
* @api
|
||||
*/
|
||||
class BaseVectorLayer extends Layer {
|
||||
|
||||
@@ -84,6 +84,8 @@ import {listen, unlistenByKey} from '../events.js';
|
||||
* @fires import("../render/Event.js").RenderEvent#postrender
|
||||
*
|
||||
* @template {import("../source/Source.js").default} SourceType
|
||||
* @template {string} EventTypes
|
||||
* @extends BaseLayer<EventTypes|'postrender'|'prerender'>
|
||||
* @api
|
||||
*/
|
||||
class Layer extends BaseLayer {
|
||||
|
||||
@@ -75,7 +75,7 @@ import {assign} from '../obj.js';
|
||||
* options means that `title` is observable, and has get/set accessors.
|
||||
*
|
||||
* @param {Options} [opt_options] Options.
|
||||
* @extends {BaseVectorLayer<import("../source/VectorTile.js").default>}
|
||||
* @extends BaseVectorLayer<import("../source/VectorTile.js").default,'change:preload'|'change:useInterimTilesOnError'>
|
||||
* @api
|
||||
*/
|
||||
class VectorTileLayer extends BaseVectorLayer {
|
||||
|
||||
Reference in New Issue
Block a user