openlayers-test
Version:
Build tools and sources for developing OpenLayers based mapping applications
2,208 lines (1,717 loc) • 143 kB
JavaScript
/**
* @type {Object}
*/
var olx;
/* typedefs for object literals provided by applications */
/**
* @typedef {{html: string,
* tileRanges: (Object.<string, Array.<ol.TileRange>>|undefined)}}
* @api
*/
olx.AttributionOptions;
/**
* HTML markup for this attribution.
* @type {string}
* @api stable
*/
olx.AttributionOptions.prototype.html;
/**
* @typedef {{loadTilesWhileAnimating: (boolean|undefined),
* loadTilesWhileInteracting: (boolean|undefined)}}
* @api
*/
olx.DeviceOptions;
/**
* When set to false, no tiles will be loaded while animating, which improves
* responsiveness on devices with slow memory. Default is `true`.
* @type {boolean|undefined}
* @api
*/
olx.DeviceOptions.prototype.loadTilesWhileAnimating;
/**
* When set to false, no tiles will be loaded while interacting, which improves
* responsiveness on devices with slow memory. Default is `true`.
* @type {boolean|undefined}
* @api
*/
olx.DeviceOptions.prototype.loadTilesWhileInteracting;
/**
* @typedef {{tracking: (boolean|undefined)}}
* @api
*/
olx.DeviceOrientationOptions;
/**
* Start tracking. Default is `false`.
* @type {boolean|undefined}
* @api
*/
olx.DeviceOrientationOptions.prototype.tracking;
/**
* @typedef {{tracking: (boolean|undefined),
* trackingOptions: (GeolocationPositionOptions|undefined),
* projection: ol.proj.ProjectionLike}}
* @api
*/
olx.GeolocationOptions;
/**
* Start Tracking. Default is `false`.
* @type {boolean|undefined}
* @api stable
*/
olx.GeolocationOptions.prototype.tracking;
/**
* Tracking options. See
* {@link http://www.w3.org/TR/geolocation-API/#position_options_interface}.
* @type {GeolocationPositionOptions|undefined}
* @api stable
*/
olx.GeolocationOptions.prototype.trackingOptions;
/**
* The projection the position is reported in.
* @type {ol.proj.ProjectionLike}
* @api stable
*/
olx.GeolocationOptions.prototype.projection;
/**
* Object literal with config options for the map logo.
* @typedef {{href: (string), src: (string)}}
* @api
*/
olx.LogoOptions;
/**
* Link url for the logo. Will be followed when the logo is clicked.
* @type {string}
* @api
*/
olx.LogoOptions.prototype.href;
/**
* Image src for the logo
* @type {string}
* @api
*/
olx.LogoOptions.prototype.src;
/**
* @typedef {{map: (ol.Map|undefined),
* maxLines: (number|undefined),
* strokeStyle: (ol.style.Stroke|undefined),
* targetSize: (number|undefined)}}
* @api
*/
olx.GraticuleOptions;
/**
* Reference to an `ol.Map` object.
* @type {ol.Map|undefined}
* @api
*/
olx.GraticuleOptions.prototype.map;
/**
* The maximum number of meridians and parallels from the center of the
* map. The default value is 100, which means that at most 200 meridians
* and 200 parallels will be displayed. The default value is appropriate
* for conformal projections like Spherical Mercator. If you increase
* the value more lines will be drawn and the drawing performance will
* decrease.
* @type {number|undefined}
* @api
*/
olx.GraticuleOptions.prototype.maxLines;
/**
* The stroke style to use for drawing the graticule. If not provided, the
* lines will be drawn with `rgba(0,0,0,0.2)`, a not fully opaque black.
*
* @type {ol.style.Stroke|undefined}
* @api
*/
olx.GraticuleOptions.prototype.strokeStyle;
/**
* The target size of the graticule cells, in pixels. Default
* value is 100 pixels.
* @type {number|undefined}
* @api
*/
olx.GraticuleOptions.prototype.targetSize;
/**
* Object literal with config options for interactions.
* @typedef {{handleEvent: function(ol.MapBrowserEvent):boolean}}
* @api
*/
olx.interaction.InteractionOptions;
/**
* Method called by the map to notify the interaction that a browser event was
* dispatched to the map. The function may return `false` to prevent the
* propagation of the event to other interactions in the map's interactions
* chain. Required.
* @type {function(ol.MapBrowserEvent):boolean}
* @api
*/
olx.interaction.InteractionOptions.prototype.handleEvent;
/**
* Object literal with config options for the map.
* @typedef {{controls: (ol.Collection.<ol.control.Control>|Array.<ol.control.Control>|undefined),
* deviceOptions: (olx.DeviceOptions|undefined),
* pixelRatio: (number|undefined),
* interactions: (ol.Collection.<ol.interaction.Interaction>|Array.<ol.interaction.Interaction>|undefined),
* keyboardEventTarget: (Element|Document|string|undefined),
* layers: (Array.<ol.layer.Base>|ol.Collection.<ol.layer.Base>|undefined),
* logo: (boolean|string|olx.LogoOptions|undefined),
* overlays: (ol.Collection.<ol.Overlay>|Array.<ol.Overlay>|undefined),
* renderer: (ol.RendererType|Array.<ol.RendererType|string>|string|undefined),
* target: (Element|string|undefined),
* view: (ol.View|undefined)}}
* @api
*/
olx.MapOptions;
/**
* Controls initially added to the map. If not specified,
* {@link ol.control.defaults ol.control.defaults()} is used.
* @type {ol.Collection.<ol.control.Control>|Array.<ol.control.Control>|undefined}
* @api stable
*/
olx.MapOptions.prototype.controls;
/**
* Device options for the map.
* @type {olx.DeviceOptions|undefined}
* @api
*/
olx.MapOptions.prototype.deviceOptions;
/**
* The ratio between physical pixels and device-independent pixels (dips) on the
* device. If `undefined` then it gets set by using `window.devicePixelRatio`.
* @type {number|undefined}
* @api
*/
olx.MapOptions.prototype.pixelRatio;
/**
* Interactions that are initially added to the map. If not specified,
* {@link ol.interaction.defaults ol.interaction.defaults()} is used.
* @type {ol.Collection.<ol.interaction.Interaction>|Array.<ol.interaction.Interaction>|undefined}
* @api stable
*/
olx.MapOptions.prototype.interactions;
/**
* The element to listen to keyboard events on. This determines when the
* `KeyboardPan` and `KeyboardZoom` interactions trigger. For example, if this
* option is set to `document` the keyboard interactions will always trigger. If
* this option is not specified, the element the library listens to keyboard
* events on is the map target (i.e. the user-provided div for the map). If this
* is not `document` the target element needs to be focused for key events to be
* emitted, requiring that the target element has a `tabindex` attribute.
* @type {Element|Document|string|undefined}
* @api
*/
olx.MapOptions.prototype.keyboardEventTarget;
/**
* Layers. If this is not defined, a map with no layers will be rendered.
* @type {Array.<ol.layer.Base>|ol.Collection.<ol.layer.Base>|undefined}
* @api stable
*/
olx.MapOptions.prototype.layers;
/**
* The map logo. A logo to be displayed on the map at all times. If a string is
* provided, it will be set as the image source of the logo. If an object is
* provided, the `src` property should be the URL for an image and the `href`
* property should be a URL for creating a link. To disable the map logo, set
* the option to `false`. By default, the OpenLayers 3 logo is shown.
* @type {boolean|string|olx.LogoOptions|undefined}
* @api stable
*/
olx.MapOptions.prototype.logo;
/**
* Overlays initially added to the map. By default, no overlays are added.
* @type {ol.Collection.<ol.Overlay>|Array.<ol.Overlay>|undefined}
* @api stable
*/
olx.MapOptions.prototype.overlays;
/**
* Renderer. By default, Canvas, DOM and WebGL renderers are tested for support
* in that order, and the first supported used. Specify a
* {@link ol.RendererType} here to use a specific renderer.
* Note that at present only the Canvas renderer supports vector data.
* @type {ol.RendererType|Array.<ol.RendererType|string>|string|undefined}
* @api stable
*/
olx.MapOptions.prototype.renderer;
/**
* The container for the map, either the element itself or the `id` of the
* element. If not specified at construction time, {@link ol.Map#setTarget}
* must be called for the map to be rendered.
* @type {Element|string|undefined}
* @api stable
*/
olx.MapOptions.prototype.target;
/**
* The map's view. No layer sources will be fetched unless this is specified at
* construction time or through {@link ol.Map#setView}.
* @type {ol.View|undefined}
* @api stable
*/
olx.MapOptions.prototype.view;
/**
* Object literal with config options for the overlay.
* @typedef {{element: (Element|undefined),
* offset: (Array.<number>|undefined),
* position: (ol.Coordinate|undefined),
* positioning: (ol.OverlayPositioning|string|undefined),
* stopEvent: (boolean|undefined),
* insertFirst: (boolean|undefined)}}
* @api stable
*/
olx.OverlayOptions;
/**
* The overlay element.
* @type {Element|undefined}
* @api stable
*/
olx.OverlayOptions.prototype.element;
/**
* Offsets in pixels used when positioning the overlay. The fist element in the
* array is the horizontal offset. A positive value shifts the overlay right.
* The second element in the array is the vertical offset. A positive value
* shifts the overlay down. Default is `[0, 0]`.
* @type {Array.<number>|undefined}
* @api stable
*/
olx.OverlayOptions.prototype.offset;
/**
* The overlay position in map projection.
* @type {ol.Coordinate|undefined}
* @api stable
*/
olx.OverlayOptions.prototype.position;
/**
* Defines how the overlay is actually positioned with respect to its `position`
* property. Possible values are `'bottom-left'`, `'bottom-center'`,
* `'bottom-right'`, `'center-left'`, `'center-center'`, `'center-right'`,
* `'top-left'`, `'top-center'`, and `'top-right'`. Default is `'top-left'`.
* @type {ol.OverlayPositioning|string|undefined}
* @api stable
*/
olx.OverlayOptions.prototype.positioning;
/**
* Whether event propagation to the map viewport should be stopped. Default is
* `true`. If `true` the overlay is placed in the same container as that of the
* controls (CSS class name `ol-overlaycontainer-stopevent`); if `false` it is
* placed in the container with CSS class name `ol-overlaycontainer`.
* @type {boolean|undefined}
* @api stable
*/
olx.OverlayOptions.prototype.stopEvent;
/**
* Whether the overlay is inserted first in the overlay container, or appended.
* Default is `true`. If the overlay is placed in the same container as that of
* the controls (see the `stopEvent` option) you will probably set `insertFirst`
* to `true` so the overlay is displayed below the controls.
* @type {boolean|undefined}
* @api stable
*/
olx.OverlayOptions.prototype.insertFirst;
/**
* Object literal with config options for the projection.
* @typedef {{code: string,
* units: (ol.proj.Units|string),
* extent: (ol.Extent|undefined),
* axisOrientation: (string|undefined),
* global: (boolean|undefined),
* worldExtent: (ol.Extent|undefined)}}
* @api
*/
olx.ProjectionOptions;
/**
* The SRS identifier code, e.g. `EPSG:4326`.
* @type {string}
* @api stable
*/
olx.ProjectionOptions.prototype.code;
/**
* Units.
* @type {ol.proj.Units|string}
* @api stable
*/
olx.ProjectionOptions.prototype.units;
/**
* The validity extent for the SRS.
* @type {ol.Extent|undefined}
* @api stable
*/
olx.ProjectionOptions.prototype.extent;
/**
* The axis orientation as specified in Proj4. The default is `enu`.
* @type {string|undefined}
* @api stable
*/
olx.ProjectionOptions.prototype.axisOrientation;
/**
* Whether the projection is valid for the whole globe. Default is `false`.
* @type {boolean|undefined}
* @api stable
*/
olx.ProjectionOptions.prototype.global;
/**
* The world extent for the SRS.
* @type {ol.Extent|undefined}
* @api
*/
olx.ProjectionOptions.prototype.worldExtent;
/**
* Object literal with config options for the view.
* @typedef {{center: (ol.Coordinate|undefined),
* constrainRotation: (boolean|number|undefined),
* enableRotation: (boolean|undefined),
* extent: (ol.Extent|undefined),
* minResolution: (number|undefined),
* maxResolution: (number|undefined),
* minZoom: (number|undefined),
* maxZoom: (number|undefined),
* projection: ol.proj.ProjectionLike,
* resolution: (number|undefined),
* resolutions: (Array.<number>|undefined),
* rotation: (number|undefined),
* zoom: (number|undefined),
* zoomFactor: (number|undefined)}}
* @api
*/
olx.ViewOptions;
/**
* The initial center for the view. The coordinate system for the center is
* specified with the `projection` option. Default is `undefined`, and layer
* sources will not be fetched if this is not set.
* @type {ol.Coordinate|undefined}
* @api stable
*/
olx.ViewOptions.prototype.center;
/**
* Rotation constraint. `false` means no constraint. `true` means no constraint,
* but snap to zero near zero. A number constrains the rotation to that number
* of values. For example, `4` will constrain the rotation to 0, 90, 180, and
* 270 degrees. The default is `true`.
* @type {boolean|number|undefined}
* @api
*/
olx.ViewOptions.prototype.constrainRotation;
/**
* Enable rotation. Default is `true`. If `false` a rotation constraint that
* always sets the rotation to zero is used. The `constrainRotation` option
* has no effect if `enableRotation` is `false`.
* @type {boolean|undefined}
* @api
*/
olx.ViewOptions.prototype.enableRotation;
/**
* The extent that constrains the center, in other words, center cannot be set
* outside this extent. Default is `undefined`.
* @type {ol.Extent|undefined}
* @api
*/
olx.ViewOptions.prototype.extent;
/**
* The maximum resolution used to determine the resolution constraint. It is
* used together with `minResolution` (or `maxZoom`) and `zoomFactor`. If
* unspecified it is calculated in such a way that the projection's validity
* extent fits in a 256x256 px tile. If the projection is Spherical Mercator
* (the default) then `maxResolution` defaults to `40075016.68557849 / 256 =
* 156543.03392804097`.
* @type {number|undefined}
* @api stable
*/
olx.ViewOptions.prototype.maxResolution;
/**
* The minimum resolution used to determine the resolution constraint. It is
* used together with `maxResolution` (or `minZoom`) and `zoomFactor`. If
* unspecified it is calculated assuming 29 zoom levels (with a factor of 2).
* If the projection is Spherical Mercator (the default) then `minResolution`
* defaults to `40075016.68557849 / 256 / Math.pow(2, 28) =
* 0.0005831682455839253`.
* @type {number|undefined}
* @api stable
*/
olx.ViewOptions.prototype.minResolution;
/**
* The maximum zoom level used to determine the resolution constraint. It is
* used together with `minZoom` (or `maxResolution`) and `zoomFactor`. Default
* is `28`. Note that if `minResolution` is also provided, it is given
* precedence over `maxZoom`.
* @type {number|undefined}
* @api stable
*/
olx.ViewOptions.prototype.maxZoom;
/**
* The minimum zoom level used to determine the resolution constraint. It is
* used together with `maxZoom` (or `minResolution`) and `zoomFactor`. Default
* is `0`. Note that if `maxResolution` is also provided, it is given
* precedence over `minZoom`.
* @type {number|undefined}
* @api stable
*/
olx.ViewOptions.prototype.minZoom;
/**
* The projection. Default is `EPSG:3857` (Spherical Mercator).
* @type {ol.proj.ProjectionLike}
* @api stable
*/
olx.ViewOptions.prototype.projection;
/**
* The initial resolution for the view. The units are `projection` units per
* pixel (e.g. meters per pixel). An alternative to setting this is to set
* `zoom`. Default is `undefined`, and layer sources will not be fetched if
* neither this nor `zoom` are defined.
* @type {number|undefined}
* @api stable
*/
olx.ViewOptions.prototype.resolution;
/**
* Resolutions to determine the resolution constraint. If set the
* `maxResolution`, `minResolution`, `minZoom`, `maxZoom`, and `zoomFactor`
* options are ignored.
* @type {Array.<number>|undefined}
* @api stable
*/
olx.ViewOptions.prototype.resolutions;
/**
* The initial rotation for the view in radians (positive rotation clockwise).
* Default is `0`.
* @type {number|undefined}
* @api stable
*/
olx.ViewOptions.prototype.rotation;
/**
* Only used if `resolution` is not defined. Zoom level used to calculate the
* initial resolution for the view. The initial resolution is determined using
* the `ol.View#constrainResolution` method.
* @type {number|undefined}
* @api stable
*/
olx.ViewOptions.prototype.zoom;
/**
* The zoom factor used to determine the resolution constraint. Default is `2`.
* @type {number|undefined}
* @api stable
*/
olx.ViewOptions.prototype.zoomFactor;
/**
* Namespace.
* @type {Object}
*/
olx.animation;
/**
* @typedef {{resolution: number,
* start: (number|undefined),
* duration: (number|undefined),
* easing: (function(number):number|undefined)}}
* @api
*/
olx.animation.BounceOptions;
/**
* The resolution to start the bounce from, typically
* `map.getView().getResolution()`.
* @type {number}
* @api
*/
olx.animation.BounceOptions.prototype.resolution;
/**
* The start time of the animation. Default is immediately.
* @type {number|undefined}
* @api
*/
olx.animation.BounceOptions.prototype.start;
/**
* The duration of the animation in milliseconds. Default is `1000`.
* @type {number|undefined}
* @api
*/
olx.animation.BounceOptions.prototype.duration;
/**
* The easing function to use. Can be an {@link ol.easing} or a custom function.
* Default is {@link ol.easing.upAndDown}.
* @type {function(number):number|undefined}
* @api
*/
olx.animation.BounceOptions.prototype.easing;
/**
* @typedef {{source: ol.Coordinate,
* start: (number|undefined),
* duration: (number|undefined),
* easing: (function(number):number|undefined)}}
* @api
*/
olx.animation.PanOptions;
/**
* The location to start panning from, typically `map.getView().getCenter()`.
* @type {ol.Coordinate}
* @api
*/
olx.animation.PanOptions.prototype.source;
/**
* The start time of the animation. Default is immediately.
* @type {number|undefined}
* @api
*/
olx.animation.PanOptions.prototype.start;
/**
* The duration of the animation in milliseconds. Default is `1000`.
* @type {number|undefined}
* @api
*/
olx.animation.PanOptions.prototype.duration;
/**
* The easing function to use. Can be an {@link ol.easing} or a custom function.
* Default is {@link ol.easing.inAndOut}.
* @type {function(number):number|undefined}
* @api
*/
olx.animation.PanOptions.prototype.easing;
/**
* @typedef {{rotation: (number|undefined),
* anchor: (ol.Coordinate|undefined),
* start: (number|undefined),
* duration: (number|undefined),
* easing: (function(number):number|undefined)}}
* @api
*/
olx.animation.RotateOptions;
/**
* The rotation value (in radians) to begin rotating from, typically
* `map.getView().getRotation()`. If `undefined` then `0` is assumed.
* @type {number|undefined}
* @api
*/
olx.animation.RotateOptions.prototype.rotation;
/**
* The rotation center/anchor. The map rotates around the center of the view
* if unspecified.
* @type {ol.Coordinate|undefined}
* @api
*/
olx.animation.RotateOptions.prototype.anchor;
/**
* The start time of the animation. Default is immediately.
* @type {number|undefined}
* @api
*/
olx.animation.RotateOptions.prototype.start;
/**
* The duration of the animation in milliseconds. Default is `1000`.
* @type {number|undefined}
* @api
*/
olx.animation.RotateOptions.prototype.duration;
/**
* The easing function to use. Can be an {@link ol.easing} or a custom function.
* Default is {@link ol.easing.inAndOut}.
* @type {function(number):number|undefined}
* @api
*/
olx.animation.RotateOptions.prototype.easing;
/**
* @typedef {{resolution: number,
* start: (number|undefined),
* duration: (number|undefined),
* easing: (function(number):number|undefined)}}
* @api
*/
olx.animation.ZoomOptions;
/**
* number The resolution to begin zooming from, typically
* `map.getView().getResolution()`.
* @type {number}
* @api
*/
olx.animation.ZoomOptions.prototype.resolution;
/**
* The start time of the animation. Default is immediately.
* @type {number|undefined}
* @api
*/
olx.animation.ZoomOptions.prototype.start;
/**
* The duration of the animation in milliseconds. Default is `1000`.
* @type {number|undefined}
* @api
*/
olx.animation.ZoomOptions.prototype.duration;
/**
* The easing function to use. Can be an {@link ol.easing} or a custom function.
* Default is {@link ol.easing.inAndOut}.
* @type {function(number):number|undefined}
* @api
*/
olx.animation.ZoomOptions.prototype.easing;
/**
* Namespace.
* @type {Object}
*/
olx.control;
/**
* @typedef {{className: (string|undefined),
* collapsible: (boolean|undefined),
* collapsed: (boolean|undefined),
* tipLabel: (string|undefined),
* label: (string|undefined),
* collapseLabel: (string|undefined),
* render: (function(ol.MapEvent)|undefined),
* target: (Element|undefined)}}
* @api
*/
olx.control.AttributionOptions;
/**
* CSS class name. Default is `ol-attribution`.
* @type {string|undefined}
* @api
*/
olx.control.AttributionOptions.prototype.className;
/**
* Target.
* @type {Element|undefined}
* @api
*/
olx.control.AttributionOptions.prototype.target;
/**
* Specify if attributions can be collapsed. If you use an OSM source,
* should be set to `false` — see
* {@link http://www.openstreetmap.org/copyright OSM Copyright} —
* Default is `true`.
* @type {boolean|undefined}
* @api
*/
olx.control.AttributionOptions.prototype.collapsible;
/**
* Specify if attributions should be collapsed at startup. Default is `true`.
* @type {boolean|undefined}
* @api
*/
olx.control.AttributionOptions.prototype.collapsed;
/**
* Text label to use for the button tip. Default is `Attributions`
* @type {string|undefined}
* @api
*/
olx.control.AttributionOptions.prototype.tipLabel;
/**
* Text label to use for the collapsed attributions button. Default is `i`
* @type {string|undefined}
* @api
*/
olx.control.AttributionOptions.prototype.label;
/**
* Text label to use for the expanded attributions button. Default is `»`
* @type {string|undefined}
* @api
*/
olx.control.AttributionOptions.prototype.collapseLabel;
/**
* Function called when the control should be re-rendered. This is called
* in a requestAnimationFrame callback.
* @type {function(ol.MapEvent)|undefined}
* @api
*/
olx.control.AttributionOptions.prototype.render;
/**
* @typedef {{element: (Element|undefined),
* render: (function(ol.MapEvent)|undefined),
* target: (Element|string|undefined)}}
* @api stable
*/
olx.control.ControlOptions;
/**
* The element is the control's container element. This only needs to be
* specified if you're developing a custom control.
* @type {Element|undefined}
* @api stable
*/
olx.control.ControlOptions.prototype.element;
/**
* Function called when the control should be re-rendered. This is called
* in a requestAnimationFrame callback.
* @type {function(ol.MapEvent)|undefined}
* @api
*/
olx.control.ControlOptions.prototype.render;
/**
* Specify a target if you want the control to be rendered outside of the map's
* viewport.
* @type {Element|string|undefined}
* @api stable
*/
olx.control.ControlOptions.prototype.target;
/**
* @typedef {{attribution: (boolean|undefined),
* attributionOptions: (olx.control.AttributionOptions|undefined),
* rotate: (boolean|undefined),
* rotateOptions: (olx.control.RotateOptions|undefined),
* zoom: (boolean|undefined),
* zoomOptions: (olx.control.ZoomOptions|undefined)}}
* @api
*/
olx.control.DefaultsOptions;
/**
* Attribution. Default is `true`.
* @type {boolean|undefined}
* @api stable
*/
olx.control.DefaultsOptions.prototype.attribution;
/**
* Attribution options.
* @type {olx.control.AttributionOptions|undefined}
* @api
*/
olx.control.DefaultsOptions.prototype.attributionOptions;
/**
* Rotate. Default is `true`.
* @type {boolean|undefined}
* @api stable
*/
olx.control.DefaultsOptions.prototype.rotate;
/**
* Rotate options.
* @type {olx.control.RotateOptions|undefined}
* @api
*/
olx.control.DefaultsOptions.prototype.rotateOptions;
/**
* Zoom. Default is `true`.
* @type {boolean|undefined}
* @api stable
*/
olx.control.DefaultsOptions.prototype.zoom;
/**
* Zoom options.
* @type {olx.control.ZoomOptions|undefined}
* @api
*/
olx.control.DefaultsOptions.prototype.zoomOptions;
/**
* @typedef {{className: (string|undefined),
* tipLabel: (string|undefined),
* keys: (boolean|undefined),
* target: (Element|undefined)}}
* @api
*/
olx.control.FullScreenOptions;
/**
* CSS class name. Default is `ol-full-screen`.
* @type {string|undefined}
* @api
*/
olx.control.FullScreenOptions.prototype.className;
/**
* Text label to use for the button tip. Default is `Toggle full-screen`
* @type {string|undefined}
* @api
*/
olx.control.FullScreenOptions.prototype.tipLabel;
/**
* Full keyboard access.
* @type {boolean|undefined}
* @api
*/
olx.control.FullScreenOptions.prototype.keys;
/**
* Target.
* @type {Element|undefined}
* @api
*/
olx.control.FullScreenOptions.prototype.target;
/**
* @typedef {{className: (string|undefined),
* coordinateFormat: (ol.CoordinateFormatType|undefined),
* projection: ol.proj.ProjectionLike,
* render: (function(ol.MapEvent)|undefined),
* target: (Element|undefined),
* undefinedHTML: (string|undefined)}}
* @api stable
*/
olx.control.MousePositionOptions;
/**
* CSS class name. Default is `ol-mouse-position`.
* @type {string|undefined}
* @api stable
*/
olx.control.MousePositionOptions.prototype.className;
/**
* Coordinate format.
* @type {ol.CoordinateFormatType|undefined}
* @api stable
*/
olx.control.MousePositionOptions.prototype.coordinateFormat;
/**
* Projection.
* @type {ol.proj.ProjectionLike}
* @api stable
*/
olx.control.MousePositionOptions.prototype.projection;
/**
* Function called when the control should be re-rendered. This is called
* in a requestAnimationFrame callback.
* @type {function(ol.MapEvent)|undefined}
* @api
*/
olx.control.MousePositionOptions.prototype.render;
/**
* Target.
* @type {Element|undefined}
* @api stable
*/
olx.control.MousePositionOptions.prototype.target;
/**
* Markup for undefined coordinates. Default is `` (empty string).
* @type {string|undefined}
* @api stable
*/
olx.control.MousePositionOptions.prototype.undefinedHTML;
/**
* @typedef {{collapsed: (boolean|undefined),
* collapseLabel: (string|undefined),
* collapsible: (boolean|undefined),
* label: (string|undefined),
* layers: (Array.<ol.layer.Layer>|ol.Collection|undefined),
* render: (function(ol.MapEvent)|undefined),
* target: (Element|undefined),
* tipLabel: (string|undefined)}}
* @api
*/
olx.control.OverviewMapOptions;
/**
* Whether the control should start collapsed or not (expanded).
* Default to `true`.
* @type {boolean|undefined}
* @api
*/
olx.control.OverviewMapOptions.prototype.collapsed;
/**
* Text label to use for the expanded overviewmap button. Default is `«`
* @type {string|undefined}
* @api
*/
olx.control.OverviewMapOptions.prototype.collapseLabel;
/**
* Whether the control can be collapsed or not. Default to `true`.
* @type {boolean|undefined}
* @api
*/
olx.control.OverviewMapOptions.prototype.collapsible;
/**
* Text label to use for the collapsed overviewmap button. Default is `»`
* @type {string|undefined}
* @api
*/
olx.control.OverviewMapOptions.prototype.label;
/**
* Layers for the overview map. If not set, then all main map layers are used
* instead.
* @type {!Array.<ol.layer.Layer>|!ol.Collection|undefined}
* @api
*/
olx.control.OverviewMapOptions.prototype.layers;
/**
* Function called when the control should be re-rendered. This is called
* in a requestAnimationFrame callback.
* @type {function(ol.MapEvent)|undefined}
* @api
*/
olx.control.OverviewMapOptions.prototype.render;
/**
* Specify a target if you want the control to be rendered outside of the map's
* viewport.
* @type {Element|undefined}
* @api
*/
olx.control.OverviewMapOptions.prototype.target;
/**
* Text label to use for the button tip. Default is `Overview map`
* @type {string|undefined}
* @api
*/
olx.control.OverviewMapOptions.prototype.tipLabel;
/**
* @typedef {{className: (string|undefined),
* minWidth: (number|undefined),
* render: (function(ol.MapEvent)|undefined),
* target: (Element|undefined),
* units: (ol.control.ScaleLineUnits|string|undefined)}}
* @api stable
*/
olx.control.ScaleLineOptions;
/**
* CSS Class name. Default is `ol-scale-line`.
* @type {string|undefined}
* @api stable
*/
olx.control.ScaleLineOptions.prototype.className;
/**
* Minimum width in pixels. Default is `64`.
* @type {number|undefined}
* @api stable
*/
olx.control.ScaleLineOptions.prototype.minWidth;
/**
* Function called when the control should be re-rendered. This is called
* in a requestAnimationFrame callback.
* @type {function(ol.MapEvent)|undefined}
* @api
*/
olx.control.ScaleLineOptions.prototype.render;
/**
* Target.
* @type {Element|undefined}
* @api stable
*/
olx.control.ScaleLineOptions.prototype.target;
/**
* Units. Default is `metric`.
* @type {ol.control.ScaleLineUnits|string|undefined}
* @api stable
*/
olx.control.ScaleLineOptions.prototype.units;
/**
* @typedef {{duration: (number|undefined),
* className: (string|undefined),
* label: (string|undefined),
* tipLabel: (string|undefined),
* target: (Element|undefined),
* render: (function(ol.MapEvent)|undefined),
* autoHide: (boolean|undefined)}}
* @api stable
*/
olx.control.RotateOptions;
/**
* CSS class name. Default is `ol-rotate`.
* @type {string|undefined}
* @api stable
*/
olx.control.RotateOptions.prototype.className;
/**
* Text label to use for the rotate button. Default is `⇧`
* @type {string|undefined}
* @api stable
*/
olx.control.RotateOptions.prototype.label;
/**
* Text label to use for the rotate tip. Default is `Reset rotation`
* @type {string|undefined}
* @api stable
*/
olx.control.RotateOptions.prototype.tipLabel;
/**
* Animation duration in milliseconds. Default is `250`.
* @type {number|undefined}
* @api stable
*/
olx.control.RotateOptions.prototype.duration;
/**
* Hide the control when rotation is 0. Default is `true`.
* @type {boolean|undefined}
* @api stable
*/
olx.control.RotateOptions.prototype.autoHide;
/**
* Function called when the control should be re-rendered. This is called
* in a requestAnimationFrame callback.
* @type {function(ol.MapEvent)|undefined}
* @api
*/
olx.control.RotateOptions.prototype.render;
/**
* Target.
* @type {Element|undefined}
* @api stable
*/
olx.control.RotateOptions.prototype.target;
/**
* @typedef {{duration: (number|undefined),
* className: (string|undefined),
* zoomInLabel: (string|undefined),
* zoomOutLabel: (string|undefined),
* zoomInTipLabel: (string|undefined),
* zoomOutTipLabel: (string|undefined),
* delta: (number|undefined),
* target: (Element|undefined)}}
* @api stable
*/
olx.control.ZoomOptions;
/**
* Animation duration in milliseconds. Default is `250`.
* @type {number|undefined}
* @api stable
*/
olx.control.ZoomOptions.prototype.duration;
/**
* CSS class name. Default is `ol-zoom`.
* @type {string|undefined}
* @api stable
*/
olx.control.ZoomOptions.prototype.className;
/**
* Text label to use for the zoom-in button. Default is `+`
* @type {string|undefined}
* @api stable
*/
olx.control.ZoomOptions.prototype.zoomInLabel;
/**
* Text label to use for the zoom-out button. Default is `-`
* @type {string|undefined}
* @api stable
*/
olx.control.ZoomOptions.prototype.zoomOutLabel;
/**
* Text label to use for the button tip. Default is `Zoom in`
* @type {string|undefined}
* @api stable
*/
olx.control.ZoomOptions.prototype.zoomInTipLabel;
/**
* Text label to use for the button tip. Default is `Zoom out`
* @type {string|undefined}
* @api stable
*/
olx.control.ZoomOptions.prototype.zoomOutTipLabel;
/**
* The zoom delta applied on each click.
* @type {number|undefined}
* @api stable
*/
olx.control.ZoomOptions.prototype.delta;
/**
* Target.
* @type {Element|undefined}
* @api stable
*/
olx.control.ZoomOptions.prototype.target;
/**
* @typedef {{className: (string|undefined),
* maxResolution: (number|undefined),
* minResolution: (number|undefined),
* render: (function(ol.MapEvent)|undefined)}}
* @api
*/
olx.control.ZoomSliderOptions;
/**
* CSS class name.
* @type {string|undefined}
* @api stable
*/
olx.control.ZoomSliderOptions.prototype.className;
/**
* Maximum resolution.
* @type {number|undefined}
* @api stable
*/
olx.control.ZoomSliderOptions.prototype.maxResolution;
/**
* Minimum resolution.
* @type {number|undefined}
* @api stable
*/
olx.control.ZoomSliderOptions.prototype.minResolution;
/**
* Function called when the control should be re-rendered. This is called
* in a requestAnimationFrame callback.
* @type {function(ol.MapEvent)|undefined}
* @api
*/
olx.control.ZoomSliderOptions.prototype.render;
/**
* @typedef {{className: (string|undefined),
* target: (Element|undefined),
* tipLabel: (string|undefined),
* extent: (ol.Extent|undefined)}}
* @api stable
*/
olx.control.ZoomToExtentOptions;
/**
* Class name. Default is `ol-zoom-extent`.
* @type {string|undefined}
* @api stable
*/
olx.control.ZoomToExtentOptions.prototype.className;
/**
* Target.
* @type {Element|undefined}
* @api stable
*/
olx.control.ZoomToExtentOptions.prototype.target;
/**
* Text label to use for the button tip. Default is `Zoom to extent`
* @type {string|undefined}
* @api stable
*/
olx.control.ZoomToExtentOptions.prototype.tipLabel;
/**
* The extent to zoom to. If undefined the validity extent of the view
* projection is used.
* @type {ol.Extent|undefined}
* @api stable
*/
olx.control.ZoomToExtentOptions.prototype.extent;
/**
* Namespace.
* @type {Object}
*/
olx.format;
/**
* @typedef {{dataProjection: (ol.proj.ProjectionLike|undefined),
* featureProjection: (ol.proj.ProjectionLike|undefined)}}
* @api
*/
olx.format.ReadOptions;
/**
* Projection of the data we are reading. If not provided, the projection will
* be derived from the data (where possible) or the `defaultDataProjection` of
* the format is assigned (where set). If the projection can not be derived from
* the data and if no `defaultDataProjection` is set for a format, the features
* will not be reprojected.
* @type {ol.proj.ProjectionLike|undefined}
* @api stable
*/
olx.format.ReadOptions.prototype.dataProjection;
/**
* Projection of the feature geometries created by the format reader. If not
* provided, features will be returned in the `dataProjection`.
* @type {ol.proj.ProjectionLike|undefined}
* @api stable
*/
olx.format.ReadOptions.prototype.featureProjection;
/**
* @typedef {{dataProjection: (ol.proj.ProjectionLike|undefined),
* featureProjection: ol.proj.ProjectionLike}}
* @api
*/
olx.format.WriteOptions;
/**
* Projection of the data we are writing. If not provided, the
* `defaultDataProjection` of the format is assigned (where set). If no
* `defaultDataProjection` is set for a format, the features will be returned
* in the `featureProjection`.
* @type {ol.proj.ProjectionLike|undefined}
* @api stable
*/
olx.format.WriteOptions.prototype.dataProjection;
/**
* Projection of the feature geometries that will be serialized by the format
* writer.
* @type {ol.proj.ProjectionLike}
* @api stable
*/
olx.format.WriteOptions.prototype.featureProjection;
/**
* @typedef {{defaultDataProjection: ol.proj.ProjectionLike,
* geometryName: (string|undefined)}}
* @api
*/
olx.format.GeoJSONOptions;
/**
* Default data projection.
* @type {ol.proj.ProjectionLike}
* @api stable
*/
olx.format.GeoJSONOptions.prototype.defaultDataProjection;
/**
* Geometry name to use when creating features.
* @type {string|undefined}
* @api stable
*/
olx.format.GeoJSONOptions.prototype.geometryName;
/**
* @typedef {{factor: (number|undefined)}}
* @api
*/
olx.format.PolylineOptions;
/**
* The factor by which the coordinates values will be scaled.
* Default is `1e5`.
* @type {number}
* @api stable
*/
olx.format.PolylineOptions.prototype.factor;
/**
* @typedef {{defaultDataProjection: ol.proj.ProjectionLike}}
* @api
*/
olx.format.TopoJSONOptions;
/**
* Default data projection.
* @type {ol.proj.ProjectionLike}
* @api stable
*/
olx.format.TopoJSONOptions.prototype.defaultDataProjection;
/**
* @typedef {{altitudeMode: (ol.format.IGCZ|undefined)}}
* @api
*/
olx.format.IGCOptions;
/**
* Altitude mode. Possible values are `barometric`, `gps`, and `none`. Default
* is `none`.
* @type {ol.format.IGCZ|undefined}
* @api
*/
olx.format.IGCOptions.prototype.altitudeMode;
/**
* @typedef {{extractStyles: (boolean|undefined),
* defaultStyle: (Array.<ol.style.Style>|undefined)}}
* @api
*/
olx.format.KMLOptions;
/**
* Extract styles from the KML. Default is `true`.
* @type {boolean|undefined}
* @api stable
*/
olx.format.KMLOptions.prototype.extractStyles;
/**
* Default style. The default default style is the same as Google Earth.
* @type {Array.<ol.style.Style>|undefined}
* @api stable
*/
olx.format.KMLOptions.prototype.defaultStyle;
/**
* @typedef {{featureNS: string,
* featureType: string,
* srsName: string,
* surface: (boolean|undefined),
* curve: (boolean|undefined),
* multiCurve: (boolean|undefined),
* multiSurface: (boolean|undefined),
* schemaLocation: (string|undefined)}}
* @api
*/
olx.format.GMLOptions;
/**
* Feature namespace.
* @type {string}
* @api stable
*/
olx.format.GMLOptions.prototype.featureNS;
/**
* Feature type to parse.
* @type {string}
* @api stable
*/
olx.format.GMLOptions.prototype.featureType;
/**
* srsName to use when writing geometries.
* @type {string}
* @api
*/
olx.format.GMLOptions.prototype.srsName;
/**
* Write gml:Surface instead of gml:Polygon elements. This also affects the
* elements in multi-part geometries. Default is `false`.
* @type {boolean|undefined}
* @api stable
*/
olx.format.GMLOptions.prototype.surface;
/**
* Write gml:Curve instead of gml:LineString elements. This also affects the
* elements in multi-part geometries. Default is `false`.
* @type {boolean|undefined}
* @api stable
*/
olx.format.GMLOptions.prototype.curve;
/**
* Write gml:MultiCurve instead of gml:MultiLineString. Since the latter is
* deprecated in GML 3, the default is `true`.
* @type {boolean|undefined}
* @api stable
*/
olx.format.GMLOptions.prototype.multiCurve;
/**
* Write gml:multiSurface instead of gml:MultiPolygon. Since the latter is
* deprecated in GML 3, the default is `true`.
* @type {boolean|undefined}
* @api stable
*/
olx.format.GMLOptions.prototype.multiSurface;
/**
* Optional schemaLocation to use when writing out the GML, this will override
* the default provided.
* @type {string|undefined}
* @api stable
*/
olx.format.GMLOptions.prototype.schemaLocation;
/**
* @typedef {{readExtensions: (function(ol.Feature, Node)|undefined)}}
* @api
*/
olx.format.GPXOptions;
/**
* Callback function to process `extensions` nodes.
* To prevent memory leaks, this callback function must
* not store any references to the node. Note that the `extensions`
* node is not allowed in GPX 1.0. Moreover, only `extensions`
* nodes from `wpt`, `rte` and `trk` can be processed, as those are
* directly mapped to a feature.
* @type {function(ol.Feature, Node)}
* @api stable
*/
olx.format.GPXOptions.prototype.readExtensions;
/**
* @typedef {{featureNS: string,
* featureType: string,
* gmlFormat: (ol.format.GMLBase|undefined),
* schemaLocation: (string|undefined)}}
* @api
*/
olx.format.WFSOptions;
/**
* The namespace URI used for features.
* @type {string}
* @api stable
*/
olx.format.WFSOptions.prototype.featureNS;
/**
* The feature type to parse. Only used for read operations.
* @type {string}
* @api stable
*/
olx.format.WFSOptions.prototype.featureType;
/**
* The GML format to use to parse the response. Default is `ol.format.GML3`.
* @type {ol.format.GMLBase|undefined}
* @api
*/
olx.format.WFSOptions.prototype.gmlFormat;
/**
* Optional schemaLocation to use for serialization, this will override the
* default.
* @type {string|undefined}
* @api stable
*/
olx.format.WFSOptions.prototype.schemaLocation;
/**
* @typedef {{featureNS: string,
* featurePrefix: string,
* featureTypes: Array.<string>,
* srsName: (string|undefined),
* handle: (string|undefined),
* outputFormat: (string|undefined),
* maxFeatures: (number|undefined),
* geometryName: (string|undefined),
* bbox: (ol.Extent|undefined)}}
* @api
*/
olx.format.WFSWriteGetFeatureOptions;
/**
* The namespace URI used for features.
* @type {string}
* @api stable
*/
olx.format.WFSWriteGetFeatureOptions.prototype.featureNS;
/**
* The prefix for the feature namespace.
* @type {string}
* @api stable
*/
olx.format.WFSWriteGetFeatureOptions.prototype.featurePrefix;
/**
* The feature type names.
* @type {Array.<string>}
* @api stable
*/
olx.format.WFSWriteGetFeatureOptions.prototype.featureTypes;
/**
* SRS name. No srsName attribute will be set on geometries when this is not
* provided.
* @type {string|undefined}
* @api
*/
olx.format.WFSWriteGetFeatureOptions.prototype.srsName;
/**
* Handle.
* @type {string|undefined}
* @api stable
*/
olx.format.WFSWriteGetFeatureOptions.prototype.handle;
/**
* Output format.
* @type {string|undefined}
* @api stable
*/
olx.format.WFSWriteGetFeatureOptions.prototype.outputFormat;
/**
* Maximum number of features to fetch.
* @type {number|undefined}
* @api stable
*/
olx.format.WFSWriteGetFeatureOptions.prototype.maxFeatures;
/**
* Geometry name to use in a BBOX filter.
* @type {string|undefined}
* @api
*/
olx.format.WFSWriteGetFeatureOptions.prototype.geometryName;
/**
* Extent to use for the BBOX filter.
* @type {ol.Extent|undefined}
* @api
*/
olx.format.WFSWriteGetFeatureOptions.prototype.bbox;
/**
* @typedef {{featureNS: string,
* featurePrefix: string,
* featureType: string,
* srsName: (string|undefined),
* handle: (string|undefined),
* nativeElements: Array.<Object>,
* gmlOptions: (olx.format.GMLOptions|undefined)}}
* @api stable
*/
olx.format.WFSWriteTransactionOptions;
/**
* The namespace URI used for features.
* @type {string}
* @api stable
*/
olx.format.WFSWriteTransactionOptions.prototype.featureNS;
/**
* The prefix for the feature namespace.
* @type {string}
* @api stable
*/
olx.format.WFSWriteTransactionOptions.prototype.featurePrefix;
/**
* The feature type name.
* @type {string}
* @api stable
*/
olx.format.WFSWriteTransactionOptions.prototype.featureType;
/**
* SRS name. No srsName attribute will be set on geometries when this is not
* provided.
* @type {string|undefined}
* @api
*/
olx.format.WFSWriteTransactionOptions.prototype.srsName;
/**
* Handle.
* @type {string|undefined}
* @api stable
*/
olx.format.WFSWriteTransactionOptions.prototype.handle;
/**
* Native elements. Currently not supported.
* @type {Array.<Object>}
* @api
*/
olx.format.WFSWriteTransactionOptions.prototype.nativeElements;
/**
* GML options for the WFS transaction writer.
* @type {olx.format.GMLOptions|undefined}
* @api stable
*/
olx.format.WFSWriteTransactionOptions.prototype.gmlOptions;
/**
* @typedef {{splitCollection: (boolean|undefined)}}
* @api
*/
olx.format.WKTOptions;
/**
* Whether to split GeometryCollections into
* multiple features on reading. Default is `false`.
* @type {boolean|undefined}
* @api stable
*/
olx.format.WKTOptions.prototype.splitCollection;
/**
* Namespace.
* @type {Object}
*/
olx.interaction;
/**
* Interactions for the map. Default is `true` for all options.
* @typedef {{altShiftDragRotate: (boolean|undefined),
* doubleClickZoom: (boolean|undefined),
* keyboard: (boolean|undefined),
* mouseWheelZoom: (boolean|undefined),
* shiftDragZoom: (boolean|undefined),
* dragPan: (boolean|undefined),
* pinchRotate: (boolean|undefined),
* pinchZoom: (boolean|undefined),
* zoomDelta: (number|undefined),
* zoomDuration: (number|undefined)}}
* @api
*/
olx.interaction.DefaultsOptions;
/**
* Whether Alt-Shift-drag rotate is desired. Default is `true`.
* @type {boolean|undefined}
* @api
*/
olx.interaction.DefaultsOptions.prototype.altShiftDragRotate;
/**
* Whether double click zoom is desired. Default is `true`.
* @type {boolean|undefined}
* @api
*/
olx.interaction.DefaultsOptions.prototype.doubleClickZoom;
/**
* Whether keyboard interaction is desired. Default is `true`.
* @type {boolean|undefined}
* @api
*/
olx.interaction.DefaultsOptions.prototype.keyboard;
/**
* Whether mousewheel zoom is desired. Default is `true`.
* @type {boolean|undefined}
* @api
*/
olx.interaction.DefaultsOptions.prototype.mouseWheelZoom;
/**
* Whether Shift-drag zoom is desired. Default is `true`.
* @type {boolean|undefined}
* @api
*/
olx.interaction.DefaultsOptions.prototype.shiftDragZoom;
/**
* Whether drag pan is desired. Default is `true`.
* @type {boolean|undefined}
* @api
*/
olx.interaction.DefaultsOptions.prototype.dragPan;
/**
* Whether pinch rotate is desired. Default is `true`.
* @type {boolean|undefined}
* @api
*/
olx.interaction.DefaultsOptions.prototype.pinchRotate;
/**
* Whether pinch zoom is desired. Default is `true`.
* @type {boolean|undefined}
* @api
*/
olx.interaction.DefaultsOptions.prototype.pinchZoom;
/**
* Zoom delta.
* @type {number|undefined}
* @api
*/
olx.interaction.DefaultsOptions.prototype.zoomDelta;
/**
* Zoom duration.
* @type {number|undefined}
* @api
*/
olx.interaction.DefaultsOptions.prototype.zoomDuration;
/**
* @typedef {{duration: (number|undefined),
* delta: (number|undefined)}}
* @api
*/
olx.interaction.DoubleClickZoomOptions;
/**
* Animation duration in milliseconds. Default is `250`.
* @type {number|undefined}
* @api
*/
olx.interaction.DoubleClickZoomOptions.prototype.duration;
/**
* The zoom delta applied on each double click, default is `1`.
* @type {number|undefined}
* @api
*/
olx.interaction.DoubleClickZoomOptions.prototype.delta;
/**
* @typedef {{formatConstructors: (Array.<function(new: ol.format.Feature)>|undefined),
* projection: ol.proj.ProjectionLike}}
* @api
*/
olx.interaction.DragAndDropOptions;
/**
* Format constructors.
* @type {Array.<function(new: ol.format.Feature)>|undefined}
* @api
*/
olx.interaction.DragAndDropOptions.prototype.formatConstructors;
/**
* Target projection. By default, the map's view's projection is used.
* @type {ol.proj.ProjectionLike}
* @api
*/
olx.interaction.DragAndDropOptions.prototype.projection;
/**
* @typedef {{condition: (ol.events.ConditionType|undefined),
* style: ol.style.Style}}
* @api
*/
olx.interaction.DragBoxOptions;
/**
* A function that takes an {@link ol.MapBrowserEvent} and returns a boolean
* to indicate whether that event should be handled.
* Default is {@link ol.events.condition.always}.
* @type {ol.events.ConditionType|undefined}
* @api
*/
olx.interaction.DragBoxOptions.prototype.condition;
/**
* Style for the box.
* @type {ol.style.Style}
* @api
*/
olx.interaction.DragBoxOptions.prototype.style;
/**
* @typedef {{kinetic: (ol.Kinetic|undefined)}}
* @api
*/
olx.interaction.DragPanOptions;
/**
* Kinetic inertia to apply to the pan.
* @type {ol.Kinetic|undefined}
* @api
*/
olx.interaction.DragPanOptions.prototype.kinetic;
/**
* @typedef {{condition: (ol.events.ConditionType|undefined)}}
* @api
*/
olx.interaction.DragRotateAndZoomOptions;
/**
* A function that takes an {@link ol.MapBrowserEvent} and returns a boolean
* to indicate whether that event should be handled.
* Default is {@link ol.events.condition.shiftKeyOnly}.
* @type {ol.events.ConditionType|undefined}
* @api
*/
olx.interaction.DragRotateAndZoomOptions.prototype.condition;
/**
* @typedef {{condition: (ol.events.ConditionType|undefined)}}
* @api
*/
olx.interaction.DragRotateOptions;
/**
* A function that takes an {@link ol.MapBrowserEvent} and returns a boolean
* to indicate whether that event should be handled.
* Default is {@link ol.events.condition.altShiftKeysOnly}.
* @type {ol.events.ConditionType|undefined}
* @api
*/
olx.interaction.DragRotateOptions.prototype.condition;
/**
* @typedef {{condition: (ol.events.ConditionType|undefined),
* style: ol.style.Style}}
* @api
*/
olx.interaction.DragZoomOptions;
/**
* A function that takes an {@link ol.MapBrowserEvent} and returns a boolean
* to indicate whether that event should be handled.
* Default is {@link ol.events.condition.shiftKeyOnly}.
* @type {ol.events.ConditionType|undefined}
* @api
*/
olx.interaction.DragZoomOptions.prototype.condition;
/**
* Style for the box.
* @type {ol.style.Style}
* @api
*/
olx.interaction.DragZoomOptions.prototype.style;
/**
* @typedef {{features: (ol.Collection.<ol.Feature>|undefined),
* source: (ol.source.Vector|undefined),
* snapTolerance: (number|undefined),
* type: ol.geom.GeometryType,
* minPointsPerRing: (number|undefined),
* style: (ol.style.Style|Array.<ol.style.Style>|ol.style.StyleFunction|undefined),
* geometryName: (string|undefined),
* condition: (ol.events.ConditionType|undefined)}}
* @api
*/
olx.interactio