Use typeof to simplify JSDoc class types

This commit is contained in:
Kevin Schmidt
2018-10-01 07:10:30 -06:00
parent 88cde255f8
commit accdc79c05
5 changed files with 6 additions and 12 deletions

View File

@@ -8,8 +8,7 @@ import {listenOnce, unlistenByKey} from './events.js';
import EventType from './events/EventType.js'; import EventType from './events/EventType.js';
/** /**
* @typedef {function(new: ImageTile, import("./tilecoord.js").TileCoord, * @typedef {typeof ImageTile} TileClass
* TileState, string, ?string, import("./Tile.js").LoadFunction)} TileClass
* @api * @api
*/ */

View File

@@ -13,7 +13,7 @@ import {get as getProjection} from '../proj.js';
/** /**
* @typedef {Object} Options * @typedef {Object} Options
* @property {Array<function(new: import("../format/Feature.js").default)>} [formatConstructors] Format constructors. * @property {Array<typeof import("../format/Feature.js").default>} [formatConstructors] Format constructors.
* @property {import("../source/Vector.js").default} [source] Optional vector source where features will be added. If a source is provided * @property {import("../source/Vector.js").default} [source] Optional vector source where features will be added. If a source is provided
* all existing features will be removed and new features will be added when * all existing features will be removed and new features will be added when
* they are dropped on the target. If you want to add features to a vector * they are dropped on the target. If you want to add features to a vector
@@ -101,7 +101,7 @@ class DragAndDrop extends Interaction {
/** /**
* @private * @private
* @type {Array<function(new: import("../format/Feature.js").default)>} * @type {Array<typeof import("../format/Feature.js").default>}
*/ */
this.formatConstructors_ = options.formatConstructors ? this.formatConstructors_ = options.formatConstructors ?
options.formatConstructors : []; options.formatConstructors : [];

View File

@@ -19,9 +19,7 @@ import {create as createTransform, compose as composeTransform} from '../../tran
/** /**
* @type {Object<ReplayType, * @type {Object<ReplayType, typeof CanvasReplay>}
* function(new: CanvasReplay, number, import("../../extent.js").Extent,
* number, number, boolean, Array<import("../canvas.js").DeclutterGroup>)>}
*/ */
const BATCH_CONSTRUCTORS = { const BATCH_CONSTRUCTORS = {
'Circle': CanvasPolygonReplay, 'Circle': CanvasPolygonReplay,

View File

@@ -19,9 +19,7 @@ import WebGLTextReplay from '../webgl/TextReplay.js';
const HIT_DETECTION_SIZE = [1, 1]; const HIT_DETECTION_SIZE = [1, 1];
/** /**
* @type {Object<import("../ReplayType.js").default, * @type {Object<import("../ReplayType.js").default, typeof import("./Replay.js").default>}
* function(new: import("./Replay.js").default, number,
* import("../../extent.js").Extent)>}
*/ */
const BATCH_CONSTRUCTORS = { const BATCH_CONSTRUCTORS = {
'Circle': WebGLCircleReplay, 'Circle': WebGLCircleReplay,

View File

@@ -93,8 +93,7 @@ class TileImage extends UrlTile {
/** /**
* @protected * @protected
* @type {function(new: ImageTile, import("../tilecoord.js").TileCoord, TileState, string, * @type {typeof ImageTile}
* ?string, import("../Tile.js").LoadFunction, import("../Tile.js").Options=)}
*/ */
this.tileClass = options.tileClass !== undefined ? this.tileClass = options.tileClass !== undefined ?
options.tileClass : ImageTile; options.tileClass : ImageTile;