@igo2/geo 21.0.0-next.20 → 21.0.0-next.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,7 @@
1
1
  import * as _angular_core from '@angular/core';
2
- import { PipeTransform, Provider, EnvironmentProviders, AfterViewInit, OnInit, OnDestroy, AfterContentInit, EventEmitter, ModuleWithProviders, ElementRef, TemplateRef, AfterContentChecked, WritableSignal, InjectionToken } from '@angular/core';
3
- import { AuthInterceptor } from '@igo2/auth';
2
+ import { PipeTransform, Provider, EnvironmentProviders, InjectionToken, AfterViewInit, OnInit, OnDestroy, AfterContentInit, EventEmitter, ModuleWithProviders, ElementRef, TemplateRef, AfterContentChecked, WritableSignal } from '@angular/core';
3
+ import * as _igo2_core_auth from '@igo2/core/auth';
4
+ import { IXhrInterceptor } from '@igo2/core/auth';
4
5
  import { Message, MessageService } from '@igo2/core/message';
5
6
  import OlLayer from 'ol/layer/Layer';
6
7
  import { Source } from 'ol/source';
@@ -8,19 +9,19 @@ import * as rxjs from 'rxjs';
8
9
  import { Observable, Subscription, BehaviorSubject, Subject } from 'rxjs';
9
10
  import olSourceCluster from 'ol/source/Cluster';
10
11
  import olSource from 'ol/source/Source';
11
- import olSourceVector from 'ol/source/Vector';
12
+ import olSourceVector, { VectorSourceEvent } from 'ol/source/Vector';
12
13
  import { Units } from 'ol/control/ScaleLine';
13
14
  import * as _igo2_common_entity from '@igo2/common/entity';
14
15
  import { BaseEntityTableColumn, EntityKey, EntityStoreOptions, EntityStoreStrategyOptions, EntityStore, EntityStoreStrategy, EntityState, EntityTableTemplate, EntityTableComponent, EntityTableColumn, EntityStoreFilterCustomFuncStrategy, EntityTableColumnRenderer, EntityRecord } from '@igo2/common/entity';
15
16
  import OlGeometry, { Type } from 'ol/geom/Geometry';
16
17
  import { Preset, Tokenizer, Encoders } from 'flexsearch';
17
- import { SubjectStatus, Watcher, TimeFrame, resolveDate } from '@igo2/utils';
18
+ import { Watcher, SubjectStatus, TimeFrame, resolveDate } from '@igo2/utils';
18
19
  import * as olproj from 'ol/proj';
19
20
  import { ProjectionLike, Projection as Projection$1 } from 'ol/proj';
20
21
  import * as ol from 'ol';
21
22
  import { Map as Map$1 } from 'ol';
22
- import OlFeature from 'ol/Feature';
23
- import olFormatFeature from 'ol/format/Feature';
23
+ import OlFeature, { FeatureLike } from 'ol/Feature';
24
+ import olFormatFeature, { ReadOptions } from 'ol/format/Feature';
24
25
  import { Group } from 'ol/layer.js';
25
26
  import BaseLayer from 'ol/layer/Base';
26
27
  import olAttribution from 'ol/control/Attribution';
@@ -39,26 +40,27 @@ import olSourceTileArcGISRest from 'ol/source/TileArcGISRest';
39
40
  import TileDebug from 'ol/source/TileDebug';
40
41
  import olSourceWMTS from 'ol/source/WMTS';
41
42
  import olSourceXYZ from 'ol/source/XYZ';
42
- import * as olColor from 'ol/color';
43
+ import olLayerVectorTile from 'ol/layer/VectorTile';
44
+ import olSourceVectorTile from 'ol/source/VectorTile';
43
45
  import olLayerVector from 'ol/layer/Vector';
46
+ import Style, { StyleLike, StyleFunction } from 'ol/style/Style';
47
+ import { FlatStyleLike } from 'ol/style/flat';
48
+ import * as olColor from 'ol/color';
44
49
  import { HttpClient, HttpParameterCodec } from '@angular/common/http';
45
50
  import { Extent } from 'ol/extent';
51
+ import { FeatureUrlFunction, FeatureLoader } from 'ol/featureloader';
46
52
  import olProjection from 'ol/proj/Projection';
47
- import olLayerVectorTile from 'ol/layer/VectorTile';
48
- import Style, { StyleLike, StyleFunction } from 'ol/style/Style';
49
- import { FlatStyleLike } from 'ol/style/flat';
50
- import olSourceVectorTile from 'ol/source/VectorTile';
51
53
  import { UntypedFormGroup, UntypedFormControl, FormControl, ControlValueAccessor, NgControl } from '@angular/forms';
52
54
  import OlRenderFeature from 'ol/render/Feature';
53
55
  import { Position, Geometry, GeoJsonGeometryTypes } from 'geojson';
54
56
  import { ConfigService } from '@igo2/core/config';
55
57
  import { StorageService } from '@igo2/core/storage';
56
58
  import OlMap from 'ol/Map';
57
- import OlView from 'ol/View';
58
- import { EventsKey } from 'ol/events';
59
59
  import { ObjectEvent } from 'ol/Object';
60
60
  import olGeolocation from 'ol/Geolocation';
61
+ import { EventsKey } from 'ol/events';
61
62
  import { Coordinate } from 'ol/coordinate';
63
+ import OlView from 'ol/View';
62
64
  import * as _igo2_geo from '@igo2/geo';
63
65
  import { FloatLabelType, MatFormFieldAppearance } from '@angular/material/form-field';
64
66
  import { MatAutocompleteTrigger, MatAutocomplete, MatAutocompleteSelectedEvent } from '@angular/material/autocomplete';
@@ -391,6 +393,7 @@ declare abstract class DataSource {
391
393
  id: string;
392
394
  ol: olSource | olSourceVector | olSourceCluster;
393
395
  private legend;
396
+ private destroyed;
394
397
  get saveableOptions(): Partial<DataSourceOptions>;
395
398
  protected events: Map<"refresh", Subscription>;
396
399
  properties: DatasourceProperties;
@@ -404,7 +407,7 @@ declare abstract class DataSource {
404
407
  removeEvents(): void;
405
408
  private addEvent;
406
409
  destroy(): void;
407
- protected abstract onUnwatch(): void;
410
+ abstract onUnwatch(): void;
408
411
  }
409
412
  declare class DatasourceProperties {
410
413
  /** General object to store general properties */
@@ -424,14 +427,9 @@ interface FeatureDataSourceOptions extends DataSourceOptions {
424
427
  format?: olFormatFeature;
425
428
  url?: string;
426
429
  pathOffline?: string;
427
- preload?: PreloadOptions;
428
430
  excludeAttribute?: string[];
429
431
  excludeAttributeOffline?: string[];
430
432
  }
431
- interface PreloadOptions {
432
- bypassVisible?: boolean;
433
- bypassResolution?: boolean;
434
- }
435
433
 
436
434
  declare class FeatureDataSource extends DataSource {
437
435
  options: FeatureDataSourceOptions;
@@ -819,6 +817,34 @@ interface SpatialFilterOptions {
819
817
  url?: string;
820
818
  }
821
819
 
820
+ interface LayerExtensionInstance {
821
+ destroy(): void;
822
+ }
823
+ interface LayerExtension<TOptions, TContext, TInstance extends LayerExtensionInstance = LayerExtensionInstance> {
824
+ readonly id: string;
825
+ readonly priority?: number;
826
+ supports(options: TOptions): boolean;
827
+ attach(context: TContext): TInstance;
828
+ }
829
+
830
+ declare class LayerExtensionManager<TOptions, TContext, TInstance extends LayerExtensionInstance> {
831
+ private _instances;
832
+ private _instancesByExtension;
833
+ private _attached;
834
+ attach(extensions: readonly LayerExtension<TOptions, TContext, TInstance>[], options: TOptions, context: TContext): void;
835
+ getInstances(): readonly TInstance[];
836
+ getInstance<TSelectedInstance extends TInstance>(extension: LayerExtension<TOptions, TContext, TSelectedInstance>): TSelectedInstance | undefined;
837
+ destroy(): void;
838
+ }
839
+
840
+ declare const FEATURE = "Feature";
841
+ declare enum FeatureMotion {
842
+ None = 0,
843
+ Move = 1,
844
+ Zoom = 2,
845
+ Default = 3
846
+ }
847
+
822
848
  interface ArcGISRestDataSourceOptions extends FeatureDataSourceOptions {
823
849
  layer: string;
824
850
  legendInfo?: any;
@@ -894,14 +920,6 @@ declare class WebSocketDataSource extends FeatureDataSource {
894
920
  onUnwatch(): void;
895
921
  }
896
922
 
897
- declare const FEATURE = "Feature";
898
- declare enum FeatureMotion {
899
- None = 0,
900
- Move = 1,
901
- Zoom = 2,
902
- Default = 3
903
- }
904
-
905
923
  declare class EsriStyleGenerator {
906
924
  _converters: any;
907
925
  _renderers: any;
@@ -936,9 +954,9 @@ interface StyleEngineFeature<KindT extends StyleEngineKind> {
936
954
  providers: (Provider | EnvironmentProviders)[];
937
955
  }
938
956
  interface ConfigurableStylesOptions {
939
- base?: AnyOlStyle;
940
- selection?: AnyOlStyle;
941
- focus?: AnyOlStyle;
957
+ base?: AnyStyle;
958
+ selection?: AnyStyle;
959
+ focus?: AnyStyle;
942
960
  }
943
961
  interface StyleEngine<T extends EngineLayerStyle = EngineLayerStyle> {
944
962
  readonly type: StyleEngineKind;
@@ -1219,81 +1237,49 @@ declare function isEngineLayerStyle(value: unknown): value is EngineLayerStyle;
1219
1237
  declare function isOlFlatStyleLike(value: unknown): value is FlatStyleLike;
1220
1238
  declare function isAnyOlStyle(value: unknown): value is AnyOlStyle;
1221
1239
 
1222
- /**
1223
- * This class is simply a shortcut for adding features to a map.
1224
- * It does nothing more than a standard layer but it's shipped with
1225
- * a defautl style based on the geometry type of the features it contains.
1226
- * @todo Enhance that by using a FeatureStore and strategies.
1227
- */
1228
- declare class Overlay<T extends MapBase = MapBase> {
1229
- /**
1230
- * The map to add the layer to
1231
- */
1232
- private map;
1233
- /**
1234
- * Overlay layer
1235
- */
1236
- layer: VectorLayer;
1237
- /**
1238
- * Overlay layer's data source
1239
- */
1240
- get dataSource(): FeatureDataSource;
1241
- constructor(map: T, style?: AnyOlStyle);
1242
- /**
1243
- * Bind this to a map and add the overlay layer to that map
1244
- * @param map Map
1245
- */
1246
- setMap(map: T): void;
1247
- /**
1248
- * Set the overlay features and, optionally, move to them
1249
- * @param features Features
1250
- * @param motion Optional: Apply this motion to the map view
1251
- * @param sourceId Optional: Remove features of certain sourceId (ex: 'Map' for query features)
1252
- */
1253
- setFeatures(features: Feature[], motion?: FeatureMotion, sourceId?: string): void;
1254
- /**
1255
- * Add a feature to the overlay and, optionally, move to it
1256
- * @param feature Feature
1257
- * @param motion Optional: Apply this motion to the map view (default on FeatureMotion.Default)
1258
- */
1259
- addFeature(feature: Feature, motion?: FeatureMotion): void;
1260
- /**
1261
- * Add features to the overlay and, optionally, move to them
1262
- * @param features Features
1263
- * @param motion Optional: Apply this motion to the map view
1264
- */
1265
- addFeatures(features: Feature[], motion?: FeatureMotion): void;
1266
- /**
1267
- * Add a OpenLayers feature to the overlay and, optionally, move to it
1268
- * @param olFeature OpenLayers Feature
1269
- * @param motion Optional: Apply this motion to the map view
1270
- */
1271
- addOlFeature(olFeature: OlFeature<OlGeometry>, motion?: FeatureMotion): void;
1272
- /**
1273
- * Add OpenLayers features to the overlay and, optionally, move to them
1274
- * @param olFeatures OpenLayers Features
1275
- * @param motion Optional: Apply this motion to the map view
1276
- */
1277
- addOlFeatures(olFeatures: OlFeature<OlGeometry>[], motion?: FeatureMotion): void;
1278
- /**
1279
- * Remove a feature from the overlay
1280
- * @param feature Feature
1281
- */
1282
- removeFeature(feature: Feature): void;
1283
- /**
1284
- * Remove features from the overlay
1285
- * @param features Features
1286
- */
1287
- removeFeatures(features: Feature[]): void;
1288
- /**
1289
- * Remove an OpenLayers feature from the overlay
1290
- * @param olFeature OpenLayers Feature
1291
- */
1292
- removeOlFeature(olFeature: OlFeature<OlGeometry>): void;
1293
- /**
1294
- * Clear the overlay
1295
- */
1296
- clear(): void;
1240
+ declare class OverlayService {
1241
+ private layerService;
1242
+ create<T extends MapBase>(map: T, style?: AnyStyle): Overlay<T>;
1243
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<OverlayService, never>;
1244
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<OverlayService>;
1245
+ }
1246
+
1247
+ declare const LAYER = "Layer";
1248
+
1249
+ interface LayerPersistence {
1250
+ isPersistent(layer: AnyLayer): boolean;
1251
+ removePersistedData(layer: AnyLayer): void;
1252
+ }
1253
+ declare const LAYER_PERSISTENCE: InjectionToken<LayerPersistence>;
1254
+
1255
+ interface OfflineLayerRestore {
1256
+ createAsyncLayers(contextUri?: string): Observable<Layer[]>;
1257
+ }
1258
+ declare const OFFLINE_LAYER_RESTORE: InjectionToken<OfflineLayerRestore>;
1259
+
1260
+ interface LayerWatcherChange {
1261
+ event: LayerWatcherEvent;
1262
+ layer: Layer;
1263
+ }
1264
+ type LayerWatcherEvent = Pick<ObjectEvent, 'key' | 'oldValue'> & {
1265
+ value: unknown;
1266
+ };
1267
+ declare class LayerWatcher extends Watcher {
1268
+ propertyChange$: BehaviorSubject<LayerWatcherChange | undefined>;
1269
+ private loaded;
1270
+ private loading;
1271
+ private layers;
1272
+ private subscriptionsByLayerId;
1273
+ private subscriptions;
1274
+ constructor();
1275
+ watch(): void;
1276
+ unwatch(): void;
1277
+ setPropertyChange(change: LayerWatcherChange): void;
1278
+ watchLayer(layer: AnyLayer): void;
1279
+ private _watchLayer;
1280
+ private createOlEventObservable;
1281
+ unwatchLayer(layer: AnyLayer): void;
1282
+ private _unwatchLayer;
1297
1283
  }
1298
1284
 
1299
1285
  interface GeolocationOptions {
@@ -1391,7 +1377,7 @@ declare class MapGeolocationController extends MapController {
1391
1377
  set followPosition(value: boolean);
1392
1378
  get followPosition(): boolean;
1393
1379
  private _followPosition;
1394
- constructor(map: MapBase, options?: MapGeolocationControllerOptions | undefined, storageService?: StorageService | undefined, configService?: ConfigService | undefined);
1380
+ constructor(map: MapBase, overlayService: OverlayService, options?: MapGeolocationControllerOptions | undefined, storageService?: StorageService | undefined, configService?: ConfigService | undefined);
1395
1381
  /**
1396
1382
  * Add or remove this controller to/from a map.
1397
1383
  * @param map OL Map
@@ -1422,66 +1408,396 @@ declare class MapGeolocationController extends MapController {
1422
1408
  handleViewFromFeatures(position: MapGeolocationState, zoomTo?: boolean): void;
1423
1409
  }
1424
1410
 
1425
- type AnyPropertyOptions = ZindexPropertyOptions | BasePropertyOptions;
1426
- interface ZindexPropertyOptions extends BasePropertyOptions {
1427
- initialOrder: AnyLayer[];
1428
- }
1429
- interface BasePropertyOptions {
1430
- layers: Layer[];
1431
- }
1432
- interface LayersLink {
1433
- linkId: LayerId;
1434
- /** Default value is true */
1435
- showInMiniBaseMap?: boolean;
1436
- links?: LayersLinkProperties[];
1411
+ declare class IgoMap implements MapBase {
1412
+ private storageService?;
1413
+ private configService?;
1414
+ ol: OlMap;
1415
+ forcedOffline$: BehaviorSubject<boolean>;
1416
+ layersAddedByClick$: BehaviorSubject<AnyLayer[] | undefined>;
1417
+ status$: Subject<SubjectStatus>;
1418
+ propertyChange$: Subject<LayerWatcherChange | undefined>;
1419
+ overlay: Overlay;
1420
+ viewController: MapViewController;
1421
+ layerController: LayerController;
1422
+ geolocationController: MapGeolocationController;
1423
+ swipeEnabled$: BehaviorSubject<boolean>;
1424
+ mapCenter$: BehaviorSubject<boolean>;
1425
+ selectedFeatures$: BehaviorSubject<Layer[] | null>;
1426
+ bufferDataSource: FeatureDataSource;
1427
+ layerWatcher: LayerWatcher;
1428
+ readonly options: MapOptions;
1429
+ private mapViewOptions;
1430
+ private overlayService?;
1431
+ private defaultOptions;
1432
+ get viewProjection(): olproj.Projection;
1433
+ get projectionCode(): string;
1434
+ constructor(options?: MapOptions, storageService?: StorageService | undefined, configService?: ConfigService | undefined);
1435
+ init(): void;
1436
+ initializeOverlays(overlayService: OverlayService): void;
1437
+ setTarget(id: string | undefined): void;
1438
+ updateView(options: MapViewOptions): void;
1439
+ /**
1440
+ * Set the map view
1441
+ * @param options Map view options
1442
+ */
1443
+ setView(options: MapViewOptions): void;
1444
+ updateControls(value: MapControlsOptions): void;
1445
+ /** @deprecated find a way to remove this method. For now we discourage to use it until we find the way to remove it */
1446
+ getLayerByOlUId(olUId: string): AnyLayer | undefined;
1437
1447
  }
1438
- interface LayersLinkProperties {
1439
- bidirectionnal?: boolean;
1440
- linkedIds: LayerId[];
1441
- syncedDelete: boolean;
1442
- properties: LinkedProperties[];
1448
+
1449
+ declare enum MapViewAction {
1450
+ Move = 0,
1451
+ Zoom = 1
1443
1452
  }
1444
- declare enum LinkedProperties {
1445
- OPACITY = "opacity",
1446
- VISIBLE = "visible",
1447
- DISPLAYED = "displayed",
1448
- OGCFILTERS = "ogcFilters",
1449
- MINRESOLUTION = "minResolution",
1450
- MAXRESOLUTION = "maxResolution",
1451
- ZINDEX = "zIndex",
1452
- TIMEFILTER = "timeFilter",
1453
- REFRESH = "refresh"
1453
+
1454
+ /**
1455
+ * MapService
1456
+ *
1457
+ * This service tracks the IgoMap instance, if any.
1458
+ * Currently, only one map instance is supported
1459
+ * but support for multiple maps may be added in the future.
1460
+ * This will impact other services such as the OverlayService
1461
+ * because these maps won't be sharing overlayed features.
1462
+ */
1463
+ declare class MapService {
1464
+ private map?;
1465
+ getMap(): IgoMap | undefined;
1466
+ setMap(map: IgoMap): void;
1467
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<MapService, never>;
1468
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<MapService>;
1454
1469
  }
1455
1470
 
1456
- interface LayerOptions extends LayerOptionsBase {
1457
- isIgoInternalLayer?: boolean;
1458
- source?: DataSource;
1459
- sourceOptions?: AnyDataSourceOptions;
1471
+ interface Projection {
1460
1472
  alias?: string;
1461
- security?: LayerSecurityOptions;
1462
- baseLayer?: boolean;
1463
- messages?: Message[];
1464
- minScaleDenom?: number;
1465
- maxScaleDenom?: number;
1466
- removable?: boolean;
1467
- workspace?: GeoWorkspaceOptions;
1468
- legendOptions?: LegendOptions;
1469
- ol?: OlLayer<olSource>;
1470
- tooltip?: TooltipContent;
1471
- _internal?: Record<string, string>;
1472
- linkedLayers?: LayersLink;
1473
- showButtonZoomToExtent?: boolean;
1473
+ code: string;
1474
+ def?: string;
1475
+ extent?: [number, number, number, number];
1474
1476
  }
1475
- type LayerId = string | number;
1476
- interface LayerOptionsBase {
1477
- id?: LayerId;
1478
- /**
1479
- * An unique identifier calculated client side
1480
- * The name prop provide a way to have a unique identifier between all layers
1481
- **/
1482
- name?: string;
1483
- title?: string;
1484
- opacity?: number;
1477
+ interface InputProjections extends Projection {
1478
+ translateKey?: string;
1479
+ translatedValue?: string;
1480
+ zone: string;
1481
+ }
1482
+ interface ProjectionsLimitationsOptions {
1483
+ projFromConfig?: boolean;
1484
+ nad83?: boolean;
1485
+ wgs84?: boolean;
1486
+ webMercator?: boolean;
1487
+ utm?: boolean;
1488
+ mtm?: boolean;
1489
+ utmZone?: {
1490
+ minZone?: number;
1491
+ maxZone?: number;
1492
+ };
1493
+ mtmZone?: {
1494
+ minZone?: number;
1495
+ maxZone?: number;
1496
+ };
1497
+ }
1498
+
1499
+ /**
1500
+ * This method extracts a coordinate tuple from a string.
1501
+ * @param str Any string
1502
+ * @param mapProjection string Map Projection
1503
+ * @param opts.forceNA boolean Force North America Zone
1504
+ * @returns object:
1505
+ * lonLat: Coordinate,
1506
+ * message: Message of error,
1507
+ * radius: radius of the confience of coordinate,
1508
+ * conf: confidence of the coordinate}
1509
+ */
1510
+ declare function stringToLonLat(str: string, mapProjection: string, opts?: {
1511
+ forceNA?: boolean;
1512
+ }): {
1513
+ lonLat: [number, number] | undefined;
1514
+ message: string;
1515
+ radius: number | undefined;
1516
+ conf: number | undefined;
1517
+ };
1518
+ /**
1519
+ * Convert dd to degrees minutes seconds
1520
+ * @param lonLatDD longitude and latitude in dd
1521
+ * @param decimal number of decimals for seconds
1522
+ * @returns longitude and latitude in dms
1523
+ */
1524
+ declare function convertDDToDMS(lonLatDD: Coordinate, decimal?: number): string[];
1525
+ /**
1526
+ * Return true of two view states are equal.
1527
+ * @param state1 View state
1528
+ * @param state2 View state
1529
+ * @returns True if the view states are equal
1530
+ */
1531
+ declare function viewStatesAreEqual(state1: MapViewState, state2: MapViewState): boolean;
1532
+ /**
1533
+ * Format the scale to a human readable text
1534
+ * @param Scale of the map
1535
+ * @returns Human readable scale text
1536
+ */
1537
+ declare function formatScale(scale: number): string;
1538
+ /**
1539
+ * Return the resolution from a scale denom
1540
+ * @param scale Scale denom
1541
+ * @param dpi DPI
1542
+ * @returns Resolution
1543
+ */
1544
+ declare function getResolutionFromScale(scale: number, dpi?: number): number;
1545
+ /**
1546
+ * Return the resolution from a scale denom
1547
+ * @param Scale denom
1548
+ * @returns Resolution
1549
+ */
1550
+ declare function getScaleFromResolution(resolution: number, unit?: string, dpi?: number): number;
1551
+ /**
1552
+ * Returns true if the CTRL key is pushed during an Ol MapBrowserPointerEvent
1553
+ * @param event OL MapBrowserPointerEvent
1554
+ * @returns Whether the CTRL key is pushed
1555
+ */
1556
+ declare function ctrlKeyDown(event: MapBrowserPointerEvent<any>): boolean;
1557
+ declare function roundCoordTo(coord: [number, number] | Position | Coordinate, decimal?: number): Coordinate;
1558
+ declare function roundCoordToString(coord: [number, number] | Position | Coordinate, decimal?: number): [string, string];
1559
+ /**
1560
+ * Returns an array of converted coordinates.
1561
+ * Conversion is done for every configured projections
1562
+ * and for the current UTM zone and MTM zone.
1563
+ * @param lonLat [number, number] array of the coordinate to transform.
1564
+ * @param projections Projection[] Array of destination projection.
1565
+ * @param reverseCoords To reverse coords from latLon to lonLat (search option)
1566
+ * @returns Returns an array of converted coordinates.
1567
+ */
1568
+ declare function lonLatConversion(lonLat: [number, number], projections: Projection[]): {
1569
+ code: string;
1570
+ alias: string;
1571
+ coord: [number, number];
1572
+ igo2CoordFormat: string;
1573
+ }[];
1574
+ /**
1575
+ * Detect the current utm zone of the lon/lat coordinate.
1576
+ * @param lonLat [number, number] array of the coordinate to detect the UTM zone.
1577
+ * @returns number The UTM zone.
1578
+ */
1579
+ declare function utmZoneFromLonLat(lonLat: [number, number]): number;
1580
+ /**
1581
+ * Detect the current mtm zone of the lon/lat coordinate.
1582
+ * @param lonLat [number, number] array of the coordinate to detect the MTM zone.
1583
+ * @returns number The MTM zone. Undefined if outside of the mtm application zone.
1584
+ */
1585
+ declare function mtmZoneFromLonLat(lonLat: [number, number]): number | undefined;
1586
+
1587
+ declare class MapOfflineDirective implements AfterViewInit {
1588
+ private networkService;
1589
+ private messageService;
1590
+ private component;
1591
+ get map(): IgoMap;
1592
+ private previousMessageId?;
1593
+ constructor();
1594
+ ngAfterViewInit(): void;
1595
+ private handleNonOfflinableLayerResolution;
1596
+ private handleLayersOnlineState;
1597
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<MapOfflineDirective, never>;
1598
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<MapOfflineDirective, "[igoMapOffline]", never, {}, {}, never, never, true, never>;
1599
+ }
1600
+
1601
+ /**
1602
+ * This directive return the pointer coordinate (on click or pointermove)
1603
+ * in [longitude, latitude], delayed by in input (pointerMoveDelay)
1604
+ * to avoid too many emitted values.
1605
+ */
1606
+ declare class PointerPositionDirective implements OnInit, OnDestroy {
1607
+ private component;
1608
+ private mediaService;
1609
+ private lastTimeoutRequest?;
1610
+ /**
1611
+ * Listener to the pointer move event
1612
+ */
1613
+ private pointerMoveListener?;
1614
+ /**
1615
+ * Listener to the map click event
1616
+ */
1617
+ private mapClickListener?;
1618
+ /**
1619
+ * Delay before emitting an event
1620
+ */
1621
+ readonly pointerPositionDelay: _angular_core.InputSignal<number>;
1622
+ /**
1623
+ * Event emitted when the pointer move, delayed by pointerMoveDelay
1624
+ */
1625
+ readonly pointerPositionCoord: _angular_core.OutputEmitterRef<[number, number]>;
1626
+ /**
1627
+ * IGO map
1628
+ * @internal
1629
+ */
1630
+ get map(): IgoMap;
1631
+ get mapProjection(): string;
1632
+ /**
1633
+ * Start listening to pointermove
1634
+ * @internal
1635
+ */
1636
+ ngOnInit(): void;
1637
+ /**
1638
+ * Stop listening to pointermove
1639
+ * @internal
1640
+ */
1641
+ ngOnDestroy(): void;
1642
+ /**
1643
+ * On map pointermove
1644
+ */
1645
+ private listenToMapPointerMove;
1646
+ /**
1647
+ * On map click
1648
+ */
1649
+ private listenToMapClick;
1650
+ /**
1651
+ * Stop listening for map pointermove
1652
+ */
1653
+ private unlistenToMapPointerMove;
1654
+ /**
1655
+ * Stop listening for map clicks
1656
+ */
1657
+ private unlistenToMapClick;
1658
+ /**
1659
+ * emit delayed coordinate (longitude, latitude array) based on pointerMoveDelay or on click
1660
+ * @param event OL map browser pointer event
1661
+ */
1662
+ private onPointerEvent;
1663
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<PointerPositionDirective, never>;
1664
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<PointerPositionDirective, "[igoPointerPosition]", never, { "pointerPositionDelay": { "alias": "pointerPositionDelay"; "required": false; "isSignal": true; }; }, { "pointerPositionCoord": "pointerPositionCoord"; }, never, never, true, never>;
1665
+ }
1666
+
1667
+ /**
1668
+ * HoverFeatureDirective
1669
+ *
1670
+ * Debounces map pointer move events and highlights the top-most processable
1671
+ * feature under the pointer. The hovered feature is copied to an internal
1672
+ * overlay layer and marked with `_hovered` so layer styles can render hover
1673
+ * symbolizers and labels.
1674
+ */
1675
+ declare class HoverFeatureDirective implements OnInit, OnDestroy {
1676
+ private component;
1677
+ private layerService;
1678
+ private mediaService;
1679
+ private store;
1680
+ private pointerMoveSubscription$$;
1681
+ private readonly hoverLayerId;
1682
+ /**
1683
+ * Delay (ms) before applying hover once the pointer is motionless.
1684
+ */
1685
+ readonly igoHoverFeatureDelay: _angular_core.InputSignal<number>;
1686
+ readonly igoHoverFeatureTolerance: _angular_core.InputSignal<number>;
1687
+ /**
1688
+ * If the user has enabled or not the directive
1689
+ */
1690
+ readonly igoHoverFeatureEnabled: _angular_core.InputSignal<boolean>;
1691
+ mouseout(): void;
1692
+ /**
1693
+ * IGO map
1694
+ * @internal
1695
+ */
1696
+ get map(): IgoMap;
1697
+ ngOnInit(): void;
1698
+ /**
1699
+ * Initialize the hover store
1700
+ * @internal
1701
+ */
1702
+ private initStore;
1703
+ ngOnDestroy(): void;
1704
+ /**
1705
+ * Listen to pointer move events and debounce hover processing.
1706
+ */
1707
+ private listenToMapPointerMove;
1708
+ /**
1709
+ * Apply hover rendering for the top-most processable feature at the pointer.
1710
+ * @param event OL map browser pointer event
1711
+ */
1712
+ private onMapEvent;
1713
+ private getTopMostHitAtPixel;
1714
+ private getProcessableLayer;
1715
+ private handleRenderFeature;
1716
+ private getGeometry;
1717
+ /**
1718
+ * Clear the hover store features
1719
+ */
1720
+ private clearLayer;
1721
+ private removeHoverLayer;
1722
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<HoverFeatureDirective, never>;
1723
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<HoverFeatureDirective, "[igoHoverFeature]", never, { "igoHoverFeatureDelay": { "alias": "igoHoverFeatureDelay"; "required": false; "isSignal": true; }; "igoHoverFeatureTolerance": { "alias": "igoHoverFeatureTolerance"; "required": false; "isSignal": true; }; "igoHoverFeatureEnabled": { "alias": "igoHoverFeatureEnabled"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
1724
+ }
1725
+
1726
+ /**
1727
+ * When injected, this service automatically registers and
1728
+ * projection defined in the application config. A custom projection
1729
+ * needs to be registered to be usable by OL.
1730
+ */
1731
+ declare class ProjectionService {
1732
+ private config;
1733
+ constructor();
1734
+ /**
1735
+ * Define a proj4 projection and register it in OL
1736
+ * @param projection Projection
1737
+ */
1738
+ registerProjection(projection: Projection): void;
1739
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ProjectionService, never>;
1740
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<ProjectionService>;
1741
+ }
1742
+
1743
+ /**
1744
+ * Return a number of zone MTM for a longitude for province of Quebec only
1745
+ * @param lon number
1746
+ * @returns zone
1747
+ */
1748
+ declare function zoneMtm(lon: number): number;
1749
+ /**
1750
+ * Return a number of zone UTM for a longitude
1751
+ * @param lon number
1752
+ * @returns zone
1753
+ */
1754
+ declare function zoneUtm(lon: number): number;
1755
+ /**
1756
+ * Compute the contraints of projections
1757
+ * @param projectionsLimitations: ProjectionsLimitationsOptions
1758
+ * @returns projectionsContraints: ProjectionsLimitationsOptions
1759
+ */
1760
+ declare function computeProjectionsConstraints(projectionsLimitations: ProjectionsLimitationsOptions): ProjectionsLimitationsOptions;
1761
+ /**
1762
+ * Method allowing to read the file and try to detect projection/Coord system
1763
+ * Only geojson/json/gml could be detected at this moment.
1764
+ * @param options A file and an optional number of line to read the EPSG Code. Used only for GML files
1765
+ * @returns Observable string, epsgNotDefined if the EPSG is not detected or a EPSG string ex: EPSG:3857
1766
+ */
1767
+ declare function detectFileEPSG(options: {
1768
+ file: File;
1769
+ nbLines?: number;
1770
+ }): Observable<string | undefined>;
1771
+
1772
+ interface LayerOptions extends LayerOptionsBase {
1773
+ isIgoInternalLayer?: boolean;
1774
+ source?: DataSource;
1775
+ sourceOptions?: AnyDataSourceOptions;
1776
+ alias?: string;
1777
+ security?: LayerSecurityOptions;
1778
+ baseLayer?: boolean;
1779
+ messages?: Message[];
1780
+ minScaleDenom?: number;
1781
+ maxScaleDenom?: number;
1782
+ removable?: boolean;
1783
+ workspace?: GeoWorkspaceOptions;
1784
+ legendOptions?: LegendOptions;
1785
+ ol?: OlLayer<olSource>;
1786
+ tooltip?: TooltipContent;
1787
+ _internal?: Record<string, string>;
1788
+ linkedLayers?: LayersLink;
1789
+ showButtonZoomToExtent?: boolean;
1790
+ }
1791
+ type LayerId = string | number;
1792
+ interface LayerOptionsBase {
1793
+ id?: LayerId;
1794
+ /**
1795
+ * An unique identifier calculated client side
1796
+ * The name prop provide a way to have a unique identifier between all layers
1797
+ **/
1798
+ name?: string;
1799
+ title?: string;
1800
+ opacity?: number;
1485
1801
  visible?: boolean;
1486
1802
  extent?: MapExtent;
1487
1803
  zIndex?: number;
@@ -1514,174 +1830,52 @@ interface TooltipContent {
1514
1830
  text?: string;
1515
1831
  }
1516
1832
  declare enum TooltipType {
1517
- TITLE = "title",
1518
- ABSTRACT = "abstract",
1519
- CUSTOM = "custom"
1520
- }
1521
- type LayerType = 'vector' | 'raster' | 'group';
1522
-
1523
- interface ILayerBase {
1524
- ol: BaseLayer;
1525
- id: LayerId | undefined;
1526
- isInResolutionsRange$: Observable<boolean>;
1527
- visible$: Observable<boolean>;
1528
- displayed$: Observable<boolean>;
1529
- addParent(parent?: ILayerGroup): void;
1530
- }
1531
- interface ILayerGroup extends ILayerBase {
1532
- map?: MapBase;
1533
- addChild(layer: ILayerBase): void;
1534
- removeChild(layer: ILayerBase): void;
1535
- }
1536
- type AnyLayerBase = LayerBase<ILayerGroup> | LayerGroupBase<ILayerGroup>;
1537
- declare abstract class LayerBase<G extends ILayerGroup = ILayerGroup> implements ILayerBase {
1538
- options: LayerOptions;
1539
- abstract type: LayerType;
1540
- abstract ol: BaseLayer;
1541
- protected abstract createOlLayer(): BaseLayer;
1542
- collapsed: boolean;
1543
- firstLoadComponent: boolean;
1544
- map?: MapBase;
1545
- olLoadingProblem: boolean;
1546
- status$: Subject<SubjectStatus>;
1547
- dataSource?: DataSource;
1548
- /**
1549
- * Define if a layer is generated by code OR defined by layer/context user layer.
1550
- * Useful for filtering layers list in mapOffline.directive or in the sharemap...
1551
- * return false by default.
1552
- */
1553
- get isIgoInternalLayer(): boolean;
1554
- get id(): LayerId | undefined;
1555
- set id(value: LayerId | undefined);
1556
- get parentId(): LayerId | undefined;
1557
- get alias(): string | undefined;
1558
- get title(): string | undefined;
1559
- set title(title: string | undefined);
1560
- get zIndex(): number | undefined;
1561
- set zIndex(zIndex: number);
1562
- get baseLayer(): boolean | undefined;
1563
- set baseLayer(baseLayer: boolean | undefined);
1564
- get opacity(): number;
1565
- set opacity(opacity: number);
1566
- set isInResolutionsRange(value: boolean);
1567
- get isInResolutionsRange(): boolean;
1568
- readonly isInResolutionsRange$: BehaviorSubject<boolean>;
1569
- set maxResolution(value: number);
1570
- get maxResolution(): number;
1571
- set minResolution(value: number);
1572
- get minResolution(): number;
1573
- set visible(value: boolean);
1574
- get visible(): boolean;
1575
- private _visible$;
1576
- readonly visible$: Observable<boolean>;
1577
- get parent(): G | undefined;
1578
- set parent(parent: G | undefined);
1579
- readonly parent$: BehaviorSubject<G | undefined>;
1580
- get displayed(): boolean;
1581
- set displayed(value: boolean);
1582
- private _displayed$;
1583
- displayed$: Observable<boolean>;
1584
- private displayed$$;
1585
- get showInLayerList(): boolean;
1586
- get saveableOptions(): Partial<LayerOptions>;
1587
- constructor(options: LayerOptions);
1588
- afterCreated(): void;
1589
- init(map: MapBase): void;
1590
- add(parent?: G): void;
1591
- private _add;
1592
- addParent(parent?: G): void;
1593
- remove(): void;
1594
- private _remove;
1595
- reset(parent?: G): void;
1596
- moveTo(parent?: G): void;
1597
- clone(): LayerBase;
1598
- private initDisplayed$$;
1599
- }
1600
- declare abstract class LayerGroupBase<G extends ILayerGroup = ILayerGroup> extends LayerBase<G> implements ILayerGroup {
1601
- type: LayerType;
1602
- children: LayerBase<G>[];
1603
- abstract get descendants(): LayerBase<G>[];
1604
- abstract addChild(layer: LayerBase<G>): void;
1605
- abstract removeChild(layer: LayerBase<G>): void;
1606
- abstract isDescendant(layer: LayerBase<G>): boolean;
1607
- }
1608
-
1609
- interface ImageLayerOptions extends LayerOptions {
1610
- source?: WMSDataSource | ImageArcGISRestDataSource;
1611
- sourceOptions?: WMSDataSourceOptions | ArcGISRestImageDataSourceOptions;
1612
- tokenKey?: string;
1613
- ol?: olLayerImage<olSourceImage>;
1614
- metadata?: {
1615
- url?: string;
1616
- extern?: boolean;
1617
- abstract?: string;
1618
- keywordList?: string[];
1619
- };
1620
- }
1621
-
1622
- interface CartoDataSourceOptions extends DataSourceOptions {
1623
- account: string;
1624
- mapId?: string;
1625
- params?: any;
1626
- queryPrecision?: string;
1627
- crossOrigin?: string;
1628
- projection?: string;
1629
- config?: any;
1630
- map?: string;
1631
- }
1632
-
1633
- declare class CartoDataSource extends DataSource {
1634
- ol: olSourceCarto;
1635
- options: CartoDataSourceOptions;
1636
- get params(): any;
1637
- get queryTitle(): string;
1638
- get mapLabel(): string;
1639
- get queryHtmlTarget(): string;
1640
- get saveableOptions(): Partial<CartoDataSourceOptions>;
1641
- protected createOlSource(): olSourceCarto;
1642
- getLegend(): Legend[];
1643
- onUnwatch(): void;
1833
+ TITLE = "title",
1834
+ ABSTRACT = "abstract",
1835
+ CUSTOM = "custom"
1644
1836
  }
1837
+ type LayerType = 'vector' | 'raster' | 'group';
1645
1838
 
1646
- interface TileDebugDataSourceOptions extends DataSourceOptions {
1647
- projection?: string;
1648
- wrapX?: boolean;
1649
- zDirection?: number;
1650
- tileGrid?: TileGridOptions;
1839
+ type AnyPropertyOptions = ZindexPropertyOptions | BasePropertyOptions;
1840
+ interface ZindexPropertyOptions extends BasePropertyOptions {
1841
+ initialOrder: AnyLayer[];
1651
1842
  }
1652
-
1653
- declare class TileDebugDataSource extends DataSource {
1654
- options: TileDebugDataSourceOptions;
1655
- ol: TileDebug;
1656
- protected createOlSource(): TileDebug;
1657
- onUnwatch(): void;
1843
+ interface BasePropertyOptions {
1844
+ layers: Layer[];
1658
1845
  }
1659
-
1660
- interface WMTSDataSourceOptions extends DataSourceOptions {
1661
- projection?: string;
1662
- layer: string;
1663
- style?: string;
1664
- version?: string;
1665
- format?: string;
1666
- matrixSet?: string;
1667
- url?: string;
1668
- urls?: string[];
1846
+ interface LayersLink {
1847
+ linkId: LayerId;
1848
+ /** Default value is true */
1849
+ showInMiniBaseMap?: boolean;
1850
+ links?: LayersLinkProperties[];
1669
1851
  }
1670
-
1671
- declare class WMTSDataSource extends DataSource {
1672
- options: WMTSDataSourceOptions;
1673
- ol: olSourceWMTS;
1674
- constructor(options: WMTSDataSourceOptions);
1675
- protected createOlSource(): olSourceWMTS;
1676
- onUnwatch(): void;
1852
+ interface LayersLinkProperties {
1853
+ bidirectionnal?: boolean;
1854
+ linkedIds: LayerId[];
1855
+ syncedDelete: boolean;
1856
+ properties: LinkedProperties[];
1677
1857
  }
1678
-
1679
- interface TileLayerOptions extends LayerOptions {
1680
- source?: OSMDataSource | WMTSDataSource | XYZDataSource | TileDebugDataSource | CartoDataSource | TileArcGISRestDataSource;
1681
- sourceOptions?: OSMDataSourceOptions | WMTSDataSourceOptions | XYZDataSourceOptions | TileDebugDataSourceOptions | CartoDataSourceOptions | TileArcGISRestDataSourceOptions;
1682
- ol?: olLayerTile<olSourceTile>;
1858
+ declare enum LinkedProperties {
1859
+ OPACITY = "opacity",
1860
+ VISIBLE = "visible",
1861
+ DISPLAYED = "displayed",
1862
+ OGCFILTERS = "ogcFilters",
1863
+ MINRESOLUTION = "minResolution",
1864
+ MAXRESOLUTION = "maxResolution",
1865
+ ZINDEX = "zIndex",
1866
+ TIMEFILTER = "timeFilter",
1867
+ REFRESH = "refresh"
1683
1868
  }
1684
1869
 
1870
+ declare function getRootParentByProperty(layers: AnyLayer[], layer: Layer, property: LinkedProperties): Layer | undefined;
1871
+ declare function getAllChildLayersByProperty(layers: AnyLayer[], layer: Layer, knownChildLayers: AnyLayer[], property: LinkedProperties): AnyLayer[];
1872
+ declare function getRootParentByDeletion(layer: Layer, layers: AnyLayer[]): Layer | undefined;
1873
+ declare function getAllChildLayersByDeletion(layers: Layer[], layer: Layer, knownChildLayers: Layer[]): Layer[];
1874
+ declare function getLinkedLayersOptions(layer: Layer): _igo2_geo.LayersLink;
1875
+ declare function findLayerByLinkId(layers: Layer[], id: LayerId): Layer | undefined;
1876
+ declare function getLayersByDeletion(layers: Layer[], links: LayersLinkProperties[]): Layer[];
1877
+ declare function handleLayerPropertyChange(layers: AnyLayer[], change: LayerWatcherChange, viewController: MapViewController): void;
1878
+
1685
1879
  interface VectorLayerOptions extends LayerOptions {
1686
1880
  source?: FeatureDataSource | WFSDataSource | ArcGISRestDataSource | WebSocketDataSource | ClusterDataSource;
1687
1881
  sourceOptions?: FeatureDataSourceOptions | WFSDataSourceOptions | ArcGISRestDataSourceOptions | WebSocketDataSourceOptions | ClusterDataSourceOptions;
@@ -1692,134 +1886,168 @@ interface VectorLayerOptions extends LayerOptions {
1692
1886
  animation?: VectorAnimation;
1693
1887
  clusterParam?: ClusterParam;
1694
1888
  trackFeature?: string | number;
1695
- idbInfo?: IdbInfo;
1889
+ preload?: VectorLayerPreloadOptions;
1890
+ offline?: VectorLayerOfflineOptions;
1891
+ }
1892
+ interface VectorLayerPreloadOptions {
1893
+ bypass: 'visibility' | 'resolution' | 'all';
1696
1894
  }
1697
- interface IdbInfo {
1698
- storeToIdb: boolean;
1895
+ interface VectorLayerOfflineOptions {
1896
+ enabled: boolean;
1699
1897
  contextUri?: string;
1700
- /** Interfaces restricted for system usage*/
1701
- _firstLoad?: boolean;
1702
- _deleteFromIdb?: boolean;
1703
1898
  }
1704
1899
  interface VectorAnimation {
1705
1900
  duration?: number;
1706
1901
  color?: olColor.Color;
1707
1902
  }
1708
1903
 
1709
- interface MVTDataSourceOptions extends DataSourceOptions {
1710
- projection?: string;
1711
- attributions?: string | string[];
1712
- format?: any;
1713
- url?: string;
1714
- pathOffline?: string;
1715
- excludeAttribute?: string[];
1716
- excludeAttributeOffline?: string[];
1717
- featureClass?: string;
1718
- }
1719
-
1720
- declare class MVTDataSource extends DataSource {
1721
- options: MVTDataSourceOptions;
1722
- ol: olSourceVectorTile;
1723
- get saveableOptions(): Partial<MVTDataSourceOptions>;
1724
- protected createOlSource(): olSourceVectorTile;
1725
- protected generateId(): string;
1726
- onUnwatch(): void;
1727
- }
1728
-
1729
- interface VectorTileLayerOptions extends LayerOptions {
1730
- style?: AnyStyle;
1731
- source?: MVTDataSource;
1732
- sourceOptions?: MVTDataSourceOptions;
1733
- ol?: olLayerVectorTile;
1734
- declutter?: boolean;
1735
- }
1736
-
1737
- type AnyLayerOptions = AnyLayerItemOptions | LayerGroupOptions;
1738
- type AnyLayerItemOptions = LayerOptions | ImageLayerOptions | TileLayerOptions | VectorLayerOptions | VectorTileLayerOptions;
1739
-
1740
- interface LayerGroupOptions extends Omit<LayerOptionsBase, 'title'> {
1741
- type: 'group';
1742
- title: string;
1743
- expanded?: boolean;
1744
- children?: AnyLayerOptions[];
1745
- }
1746
-
1747
- declare const ID_GROUP_PREFIX = "local-group_";
1748
- declare class LayerGroup extends LayerGroupBase<LayerGroup> {
1749
- children: AnyLayer[];
1750
- options: LayerGroupOptions;
1751
- ol: Group;
1752
- expanded: boolean;
1753
- private isInResolutionsRange$$;
1754
- readonly isInResolutionsRange$: BehaviorSubject<boolean>;
1755
- get saveableOptions(): Partial<LayerGroupOptions>;
1756
- get descendants(): AnyLayer[];
1757
- get descendantsLevel(): number;
1758
- constructor(children: AnyLayer[], options: LayerGroupOptions);
1759
- init(map: MapBase): void;
1760
- add(parent?: LayerGroup): void;
1761
- addChild(...layers: AnyLayer[]): void;
1904
+ declare class VectorLayer extends Layer {
1905
+ type: LayerType;
1906
+ dataSource: FeatureDataSource | WFSDataSource | ArcGISRestDataSource | WebSocketDataSource | ClusterDataSource;
1907
+ options: VectorLayerOptions;
1908
+ ol: olLayerVector<olSourceVector>;
1909
+ private watcher;
1910
+ private trackFeatureListenerKey;
1911
+ private extensionManager;
1912
+ private sourceLoader;
1913
+ private styleRevision;
1914
+ private preloadState?;
1915
+ private preloadListenerKey?;
1916
+ get browsable(): boolean;
1917
+ get exportable(): boolean;
1918
+ get saveableOptions(): Partial<VectorLayerOptions>;
1919
+ get style(): AnyStyle | undefined;
1920
+ set style(value: AnyStyle | undefined);
1921
+ private _style$;
1922
+ readonly style$: rxjs.Observable<AnyStyle | undefined>;
1923
+ constructor(options: VectorLayerOptions);
1924
+ getLegend(value: AnyStyle): Promise<Legend[] | undefined>;
1925
+ protected createOlLayer(): olLayerVector<olSourceVector>;
1926
+ private configureVectorSourceLoader;
1927
+ private createSourceLoader;
1928
+ private createGenericSourceLoader;
1929
+ private setStyle;
1930
+ private configurePreload;
1762
1931
  remove(): void;
1763
- removeChild(layer: AnyLayer): void;
1764
- isDescendant(layer: AnyLayer): boolean;
1765
- private setChildrenObserver;
1766
- protected createOlLayer(): Group;
1767
- private hasChildren;
1768
- /** recursive */
1769
- private _getDescendants;
1770
- /** recursive */
1771
- private _getDescendantsLevel;
1772
- }
1773
-
1774
- declare class LayerService {
1775
- private dataSourceService;
1776
- private messageService;
1777
- private geoNetworkService;
1778
- private authInterceptor;
1779
- private styleService;
1780
- unavailableLayers: AnyLayerItemOptions[];
1781
- createLayers(layersOption: AnyLayerOptions[], contextUri?: string): Observable<(AnyLayer | undefined)[]>;
1782
- createLayer(layerOptions: AnyLayerItemOptions): Layer;
1783
- createAsyncLayer(options: AnyLayerItemOptions, detailedContextUri?: string): Observable<Layer | undefined>;
1784
- createAsyncGroup(options: LayerGroupOptions, detailedContextUri?: string): Observable<LayerGroup>;
1785
- private createGroup;
1786
- private createImageLayer;
1787
- private createTileLayer;
1788
- private createVectorLayer;
1789
- private createVectorTileLayer;
1790
- createAsyncIdbLayers(contextUri?: string): Observable<Layer[]>;
1791
- deleteUnavailableLayers(anyLayerOptions: AnyLayerItemOptions): void;
1792
- sourceOptionsWithParams(sourceOptions: AnyDataSourceOptions): sourceOptions is AnyDataSourceOptionsWithParams;
1793
- sourceOptionsWithLayer(sourceOptions: AnyDataSourceOptions): sourceOptions is ArcGISRestDataSourceOptions | WMTSDataSourceOptions;
1794
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<LayerService, never>;
1795
- static ɵprov: _angular_core.ɵɵInjectableDeclaration<LayerService>;
1796
- }
1797
-
1798
- declare const LAYER = "Layer";
1932
+ private cleanupVectorLifecycle;
1933
+ init(map: MapBase | undefined): void;
1934
+ setExtent(extent: MapExtent): void;
1935
+ onUnwatch(): void;
1936
+ stopAnimation(): void;
1937
+ enableTrackFeature(id: string | number): void;
1938
+ centerMapOnFeature(id: string | number): void;
1939
+ trackFeature(id: string | number, event: VectorSourceEvent): void;
1940
+ disableTrackFeature(): void;
1941
+ private attachExtensions;
1942
+ private getRegisteredExtensions;
1943
+ private createCompletionSafeLoader;
1944
+ private executeLoadExtensions;
1945
+ private getSourceLoader;
1946
+ }
1947
+
1948
+ interface VectorLayerExtensionStateSnapshot {
1949
+ readonly mapAttached: boolean;
1950
+ readonly visible: boolean;
1951
+ }
1952
+ interface VectorLayerLoadRequest {
1953
+ readonly source: olSourceVector;
1954
+ readonly url: string | FeatureUrlFunction;
1955
+ readonly extent: Extent;
1956
+ readonly resolution: number;
1957
+ readonly projection: olProjection;
1958
+ success(features: FeatureLike[]): void;
1959
+ failure(): void;
1960
+ }
1961
+ type VectorLayerLoadHandler = (request: VectorLayerLoadRequest) => void;
1962
+ interface VectorLayerExtensionContext {
1963
+ readonly id: LayerId | undefined;
1964
+ readonly options: VectorLayerOptions;
1965
+ readonly layer: olLayerVector<olSourceVector>;
1966
+ readonly source: olSourceVector;
1967
+ requestRender(): void;
1968
+ getStateSnapshot(): VectorLayerExtensionStateSnapshot;
1969
+ }
1970
+ interface VectorLayerExtensionInstance extends LayerExtensionInstance {
1971
+ interceptLoad?(request: VectorLayerLoadRequest, next: VectorLayerLoadHandler): void;
1972
+ }
1973
+ type VectorLayerExtension = LayerExtension<VectorLayerOptions, VectorLayerExtensionContext, VectorLayerExtensionInstance>;
1974
+ declare const VECTOR_LAYER_EXTENSIONS: InjectionToken<readonly VectorLayerExtension[]>;
1799
1975
 
1800
- interface LayerWatcherChange {
1801
- event: LayerWatcherEvent;
1802
- layer: Layer;
1803
- }
1804
- type LayerWatcherEvent = Pick<ObjectEvent, 'key' | 'oldValue'> & {
1805
- value: unknown;
1806
- };
1807
- declare class LayerWatcher extends Watcher {
1808
- propertyChange$: BehaviorSubject<LayerWatcherChange | undefined>;
1809
- private loaded;
1810
- private loading;
1811
- private layers;
1812
- private subscriptionsByLayerId;
1813
- private subscriptions;
1814
- constructor();
1815
- watch(): void;
1816
- unwatch(): void;
1817
- setPropertyChange(change: LayerWatcherChange): void;
1818
- watchLayer(layer: AnyLayer): void;
1819
- private _watchLayer;
1820
- private createOlEventObservable;
1821
- unwatchLayer(layer: AnyLayer): void;
1822
- private _unwatchLayer;
1976
+ /**
1977
+ * This class is simply a shortcut for adding features to a map.
1978
+ * It does nothing more than a standard layer but it's shipped with
1979
+ * a defautl style based on the geometry type of the features it contains.
1980
+ * @todo Enhance that by using a FeatureStore and strategies.
1981
+ */
1982
+ declare class Overlay<T extends MapBase = MapBase> {
1983
+ /**
1984
+ * The map to add the layer to
1985
+ */
1986
+ private map;
1987
+ /**
1988
+ * Overlay layer
1989
+ */
1990
+ layer: VectorLayer;
1991
+ /**
1992
+ * Overlay layer's data source
1993
+ */
1994
+ get dataSource(): FeatureDataSource;
1995
+ constructor(map: T, layer: VectorLayer);
1996
+ /**
1997
+ * Bind this to a map and add the overlay layer to that map
1998
+ * @param map Map
1999
+ */
2000
+ setMap(map: T): void;
2001
+ /**
2002
+ * Set the overlay features and, optionally, move to them
2003
+ * @param features Features
2004
+ * @param motion Optional: Apply this motion to the map view
2005
+ * @param sourceId Optional: Remove features of certain sourceId (ex: 'Map' for query features)
2006
+ */
2007
+ setFeatures(features: Feature[], motion?: FeatureMotion, sourceId?: string): void;
2008
+ /**
2009
+ * Add a feature to the overlay and, optionally, move to it
2010
+ * @param feature Feature
2011
+ * @param motion Optional: Apply this motion to the map view (default on FeatureMotion.Default)
2012
+ */
2013
+ addFeature(feature: Feature, motion?: FeatureMotion): void;
2014
+ /**
2015
+ * Add features to the overlay and, optionally, move to them
2016
+ * @param features Features
2017
+ * @param motion Optional: Apply this motion to the map view
2018
+ */
2019
+ addFeatures(features: Feature[], motion?: FeatureMotion): void;
2020
+ /**
2021
+ * Add a OpenLayers feature to the overlay and, optionally, move to it
2022
+ * @param olFeature OpenLayers Feature
2023
+ * @param motion Optional: Apply this motion to the map view
2024
+ */
2025
+ addOlFeature(olFeature: OlFeature<OlGeometry>, motion?: FeatureMotion): void;
2026
+ /**
2027
+ * Add OpenLayers features to the overlay and, optionally, move to them
2028
+ * @param olFeatures OpenLayers Features
2029
+ * @param motion Optional: Apply this motion to the map view
2030
+ */
2031
+ addOlFeatures(olFeatures: OlFeature<OlGeometry>[], motion?: FeatureMotion): void;
2032
+ /**
2033
+ * Remove a feature from the overlay
2034
+ * @param feature Feature
2035
+ */
2036
+ removeFeature(feature: Feature): void;
2037
+ /**
2038
+ * Remove features from the overlay
2039
+ * @param features Features
2040
+ */
2041
+ removeFeatures(features: Feature[]): void;
2042
+ /**
2043
+ * Remove an OpenLayers feature from the overlay
2044
+ * @param olFeature OpenLayers Feature
2045
+ */
2046
+ removeOlFeature(olFeature: OlFeature<OlGeometry>): void;
2047
+ /**
2048
+ * Clear the overlay
2049
+ */
2050
+ clear(): void;
1823
2051
  }
1824
2052
 
1825
2053
  declare abstract class MapBase {
@@ -1862,686 +2090,452 @@ declare class LayerSelectionModel {
1862
2090
  private getDescendants;
1863
2091
  }
1864
2092
 
1865
- /**
1866
- * We got four kind of layers
1867
- * TreeLayer: all layers to show in the layer manager
1868
- * Baselayer: Layer dedicated for the basemap
1869
- * SystemLayer: Every layer dedicated to good function of the map (Selection, hovering)
1870
- * OtherLayer: all remaining layer that is linked to another layer or simply not a systemLayer that need to be cleaned on map reset
1871
- */
1872
- declare class LayerController extends LayerSelectionModel {
1873
- private _map;
1874
- private tree;
1875
- /** Selection, Hovering, every internalLayer not in the tree is here */
1876
- private _systemLayers;
1877
- /** LinkedLayer and other layer that are not in the previous category and not visible in tree */
1878
- private _otherLayers;
1879
- layersFlattened: AnyLayer[];
1880
- private _layers$;
1881
- layers$: Observable<AnyLayer[]>;
1882
- layersFlattened$: Observable<AnyLayer[]>;
1883
- private _baseLayers;
1884
- private _baseLayers$;
1885
- baseLayers$: Observable<Layer[]>;
1886
- baseLayerSelection: Layer;
1887
- /** All layers with the tree flattened */
1888
- all$: Observable<AnyLayer[]>;
1889
- constructor(_map: MapBase, layers: AnyLayer[]);
1890
- get all(): AnyLayer[];
1891
- get baseLayers(): readonly Layer[];
1892
- get baseLayer(): Layer | undefined;
1893
- get treeLayers(): readonly AnyLayer[];
1894
- add(...layers: AnyLayer[]): void;
1895
- selectBaseLayer(layer: Layer): void;
1896
- remove(...layers: AnyLayer[]): void;
1897
- /**
1898
- * Move a layer into the tree
1899
- * @param layer Layer to move
1900
- * @param beforeTo The index position to move inside a tree
1901
- */
1902
- moveTo(beforeTo: number[], ...layers: AnyLayer[]): AnyLayer[];
1903
- moveBelow(layerRef: AnyLayer | undefined, ...layers: AnyLayer[]): void;
1904
- moveAbove(layerRef: AnyLayer | undefined, ...layers: AnyLayer[]): void;
1905
- moveInside(layerRef: LayerGroup, ...layers: AnyLayer[]): void;
1906
- raise(...layers: AnyLayer[]): void;
1907
- lower(...layers: AnyLayer[]): void;
1908
- /** Reset all except SystemLayer */
1909
- reset(): void;
1910
- getById(id: LayerId): AnyLayer | undefined;
1911
- getByTitle(title: string): AnyLayer | undefined;
1912
- getBySourceId(id: LayerId): AnyLayer | undefined;
1913
- getPosition(layer: AnyLayer, type?: 'below' | 'above'): number[];
1914
- getLayerRecipient(layer: AnyLayer): AnyLayer[];
1915
- /**
1916
- * We got non visible layer in the tree like LinkedLayer. We want the next visible layer in tree
1917
- */
1918
- private findLowestVisiblePostion;
1919
- private handleMove;
1920
- private _internalMove;
1921
- /** Recursive */
1922
- private recalculateZindex;
1923
- private handleAdd;
1924
- private _remove;
1925
- private removeBaselayer;
1926
- private removeSystemLayer;
1927
- private removeOtherLayer;
1928
- private removeIn;
1929
- private isSystemLayer;
1930
- private isOtherLayer;
1931
- private clearBaselayers;
1932
- private clearTree;
1933
- private clearOther;
1934
- private getZindexOffset;
1935
- private setZindex;
1936
- private notify;
1937
- }
1938
-
1939
- declare class Linked {
1940
- layer: Layer;
1941
- readonly children: Layer[];
1942
- private watcher;
1943
- private bidirectionnalChildren;
1944
- private childrenByProperty;
1945
- private disabledProperties;
1946
- constructor(layer: Layer);
1947
- get options(): _igo2_geo.LayerOptions;
1948
- get links(): LayersLinkProperties[];
1949
- get map(): _igo2_geo.MapBase | undefined;
1950
- init(): void;
1951
- private initZIndexLinkOptions;
1952
- destroy(): void;
1953
- add(layer: Layer): void;
1954
- hasSyncDeletion(layer: Layer): boolean;
1955
- remove(layer: Layer): void;
1956
- deleteChildren(controller: LayerController): void;
1957
- move(layer: Layer, parent?: LayerGroup): void;
1958
- display(): void;
1959
- private disable;
1960
- private enable;
1961
- private getByProperty;
1962
- private propertyIsDisabled;
1963
- private getLayerLinks;
1964
- private removeArrayItem;
1965
- private getLinkedLayersOnZindex;
1966
- private unwatch;
1967
- private handleChange;
1968
- private handleDisplayChange;
1969
- private findChildren;
1970
- private handleRefreshChanges;
1971
- }
1972
-
1973
- declare function isLayerLinked(layer: AnyLayer): layer is Layer;
1974
- declare function isLinkMaster(layer: Layer): boolean;
1975
- declare function isLayerLinkedTogether(layerA: AnyLayer, layerB: AnyLayer, layers: AnyLayer[], property?: LinkedProperties): boolean;
1976
- declare function isLayerLinkedOptions(options: AnyLayerOptions): options is AnyLayerItemOptions;
1977
- declare function isBaseLayerLinked(layer: AnyLayer, allLayers: AnyLayer[]): layer is Layer;
1978
-
1979
- interface ArcGISRestImageDataSourceOptions extends DataSourceOptions {
1980
- queryPrecision?: number;
1981
- layer?: string;
1982
- legendInfo?: any;
1983
- params?: any;
1984
- attributions?: olAttribution;
1985
- projection?: string;
1986
- url?: string;
1987
- idColumn?: string;
1988
- options?: any;
1989
- }
1990
-
1991
- declare class ImageArcGISRestDataSource extends DataSource {
1992
- ol: ImageArcGISRest;
1993
- options: ArcGISRestImageDataSourceOptions;
1994
- get params(): any;
1995
- get queryTitle(): string;
1996
- get mapLabel(): string;
1997
- get queryHtmlTarget(): string;
1998
- get saveableOptions(): Partial<ArcGISRestImageDataSourceOptions>;
1999
- protected createOlSource(): ImageArcGISRest;
2000
- getLegend(): Legend[];
2001
- onUnwatch(): void;
2093
+ interface ILayerBase {
2094
+ ol: BaseLayer;
2095
+ id: LayerId | undefined;
2096
+ isInResolutionsRange$: Observable<boolean>;
2097
+ visible$: Observable<boolean>;
2098
+ displayed$: Observable<boolean>;
2099
+ addParent(parent?: ILayerGroup): void;
2002
2100
  }
2003
-
2004
- declare class ImageLayer extends Layer {
2005
- messageService?: MessageService | undefined;
2006
- authInterceptor?: AuthInterceptor | undefined;
2007
- type: LayerType;
2008
- dataSource: WMSDataSource | ImageArcGISRestDataSource;
2009
- options: ImageLayerOptions;
2010
- ol: olLayerImage<olSourceImage>;
2011
- private watcher;
2012
- constructor(options: ImageLayerOptions, messageService?: MessageService | undefined, authInterceptor?: AuthInterceptor | undefined);
2013
- protected createOlLayer(): olLayerImage<olSourceImage>;
2014
- init(map: MapBase | undefined): void;
2015
- remove(): void;
2016
- private customLoader;
2101
+ interface ILayerGroup extends ILayerBase {
2102
+ map?: MapBase;
2103
+ addChild(layer: ILayerBase): void;
2104
+ removeChild(layer: ILayerBase): void;
2017
2105
  }
2018
-
2019
- declare class TileLayer extends Layer {
2020
- messageService?: MessageService | undefined;
2021
- authInterceptor?: AuthInterceptor | undefined;
2022
- type: LayerType;
2023
- dataSource: OSMDataSource | WMTSDataSource | XYZDataSource | TileDebugDataSource | CartoDataSource | TileArcGISRestDataSource;
2024
- options: TileLayerOptions;
2025
- ol: olLayerTile<olSourceTile>;
2026
- private watcher;
2027
- constructor(options: TileLayerOptions, messageService?: MessageService | undefined, authInterceptor?: AuthInterceptor | undefined);
2028
- protected createOlLayer(): olLayerTile<olSourceTile>;
2106
+ type AnyLayerBase = LayerBase<ILayerGroup> | LayerGroupBase<ILayerGroup>;
2107
+ declare abstract class LayerBase<G extends ILayerGroup = ILayerGroup> implements ILayerBase {
2108
+ options: LayerOptions;
2109
+ abstract type: LayerType;
2110
+ abstract ol: BaseLayer;
2111
+ protected abstract createOlLayer(): BaseLayer;
2112
+ collapsed: boolean;
2113
+ firstLoadComponent: boolean;
2114
+ map?: MapBase;
2115
+ olLoadingProblem: boolean;
2116
+ status$: Subject<SubjectStatus>;
2117
+ dataSource?: DataSource;
2029
2118
  /**
2030
- * Custom loader for tile layer.
2031
- * @internal
2032
- * @param tile the current tile
2033
- * @param url the url string or function to retrieve the data
2119
+ * Define if a layer is generated by code OR defined by layer/context user layer.
2120
+ * Useful for filtering layers list in mapOffline.directive or in the sharemap...
2121
+ * return false by default.
2034
2122
  */
2035
- customLoader(tile: any, url: string, interceptor: AuthInterceptor): void;
2036
- init(map: MapBase | undefined): void;
2037
- remove(): void;
2038
- }
2039
-
2040
- declare class StyleService {
2041
- private readonly engines;
2042
- getStyle(options: AnyStyle, ol: olLayerVector | olLayerVectorTile): Promise<AnyOlStyle>;
2043
- getLegend(options: AnyStyle): Promise<string | undefined>;
2044
- private findEngine;
2045
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<StyleService, never>;
2046
- static ɵprov: _angular_core.ɵɵInjectableDeclaration<StyleService>;
2123
+ get isIgoInternalLayer(): boolean;
2124
+ get id(): LayerId | undefined;
2125
+ set id(value: LayerId | undefined);
2126
+ get parentId(): LayerId | undefined;
2127
+ get alias(): string | undefined;
2128
+ get title(): string | undefined;
2129
+ set title(title: string | undefined);
2130
+ get zIndex(): number | undefined;
2131
+ set zIndex(zIndex: number);
2132
+ get baseLayer(): boolean | undefined;
2133
+ set baseLayer(baseLayer: boolean | undefined);
2134
+ get opacity(): number;
2135
+ set opacity(opacity: number);
2136
+ set isInResolutionsRange(value: boolean);
2137
+ get isInResolutionsRange(): boolean;
2138
+ readonly isInResolutionsRange$: BehaviorSubject<boolean>;
2139
+ set maxResolution(value: number);
2140
+ get maxResolution(): number;
2141
+ set minResolution(value: number);
2142
+ get minResolution(): number;
2143
+ set visible(value: boolean);
2144
+ get visible(): boolean;
2145
+ private _visible$;
2146
+ readonly visible$: Observable<boolean>;
2147
+ get parent(): G | undefined;
2148
+ set parent(parent: G | undefined);
2149
+ readonly parent$: BehaviorSubject<G | undefined>;
2150
+ get displayed(): boolean;
2151
+ set displayed(value: boolean);
2152
+ private _displayed$;
2153
+ displayed$: Observable<boolean>;
2154
+ private displayed$$;
2155
+ get showInLayerList(): boolean;
2156
+ get saveableOptions(): Partial<LayerOptions>;
2157
+ constructor(options: LayerOptions);
2158
+ afterCreated(): void;
2159
+ init(map: MapBase): void;
2160
+ add(parent?: G): void;
2161
+ private _add;
2162
+ addParent(parent?: G): void;
2163
+ remove(): void;
2164
+ private _remove;
2165
+ reset(parent?: G): void;
2166
+ moveTo(parent?: G): void;
2167
+ clone(): LayerBase;
2168
+ private initDisplayed$$;
2047
2169
  }
2048
-
2049
- declare class VectorTileLayer extends Layer {
2050
- messageService?: MessageService | undefined;
2051
- authInterceptor?: AuthInterceptor | undefined;
2052
- styleService?: StyleService | undefined;
2170
+ declare abstract class LayerGroupBase<G extends ILayerGroup = ILayerGroup> extends LayerBase<G> implements ILayerGroup {
2053
2171
  type: LayerType;
2054
- dataSource: MVTDataSource;
2055
- options: VectorTileLayerOptions;
2056
- ol: olLayerVectorTile;
2057
- private watcher;
2058
- get style(): AnyStyle | undefined;
2059
- set style(value: AnyStyle | undefined);
2060
- private _style$;
2061
- readonly style$: rxjs.Observable<AnyStyle | undefined>;
2062
- constructor(options: VectorTileLayerOptions, messageService?: MessageService | undefined, authInterceptor?: AuthInterceptor | undefined, styleService?: StyleService | undefined);
2063
- getLegend(value: AnyStyle): Promise<Legend[] | undefined>;
2064
- protected createOlLayer(): olLayerVectorTile;
2065
- private setStyle;
2066
- /**
2067
- * Custom loader for vector tile layer. Modified from the loadFeaturesXhr function in ol\featureloader.js
2068
- * @internal
2069
- * @param url the url string or function to retrieve the data
2070
- * @param format the format of the tile
2071
- * @param interceptor the interceptor of the data
2072
- * @param success On success event action to trigger
2073
- * @param failure On failure event action to trigger TODO
2074
- */
2075
- customLoader(url: any, format: any, interceptor: any, success: any, failure?: any): (extent: any, resolution: any, projection: any) => void;
2076
- init(map: MapBase | undefined): void;
2077
- remove(): void;
2172
+ children: LayerBase<G>[];
2173
+ abstract get descendants(): LayerBase<G>[];
2174
+ abstract addChild(layer: LayerBase<G>): void;
2175
+ abstract removeChild(layer: LayerBase<G>): void;
2176
+ abstract isDescendant(layer: LayerBase<G>): boolean;
2078
2177
  }
2079
2178
 
2080
- declare class IgoMap implements MapBase {
2081
- private storageService?;
2082
- private configService?;
2083
- ol: OlMap;
2084
- forcedOffline$: BehaviorSubject<boolean>;
2085
- layersAddedByClick$: BehaviorSubject<AnyLayer[] | undefined>;
2086
- status$: Subject<SubjectStatus>;
2087
- propertyChange$: Subject<LayerWatcherChange | undefined>;
2088
- overlay: Overlay;
2089
- viewController: MapViewController;
2090
- layerController: LayerController;
2091
- geolocationController: MapGeolocationController;
2092
- swipeEnabled$: BehaviorSubject<boolean>;
2093
- mapCenter$: BehaviorSubject<boolean>;
2094
- selectedFeatures$: BehaviorSubject<Layer[] | null>;
2095
- bufferDataSource: FeatureDataSource;
2096
- layerWatcher: LayerWatcher;
2097
- readonly options: MapOptions;
2098
- private mapViewOptions;
2099
- private defaultOptions;
2100
- get viewProjection(): olproj.Projection;
2101
- get projectionCode(): string;
2102
- constructor(options?: MapOptions, storageService?: StorageService | undefined, configService?: ConfigService | undefined);
2103
- init(): void;
2104
- setTarget(id: string | undefined): void;
2105
- updateView(options: MapViewOptions): void;
2106
- /**
2107
- * Set the map view
2108
- * @param options Map view options
2109
- */
2110
- setView(options: MapViewOptions): void;
2111
- updateControls(value: MapControlsOptions): void;
2112
- /** @deprecated find a way to remove this method. For now we discourage to use it until we find the way to remove it */
2113
- getLayerByOlUId(olUId: string): AnyLayer | undefined;
2179
+ interface ImageLayerOptions extends LayerOptions {
2180
+ source?: WMSDataSource | ImageArcGISRestDataSource;
2181
+ sourceOptions?: WMSDataSourceOptions | ArcGISRestImageDataSourceOptions;
2182
+ tokenKey?: string;
2183
+ ol?: olLayerImage<olSourceImage>;
2184
+ metadata?: {
2185
+ url?: string;
2186
+ extern?: boolean;
2187
+ abstract?: string;
2188
+ keywordList?: string[];
2189
+ };
2114
2190
  }
2115
2191
 
2116
- declare enum MapViewAction {
2117
- Move = 0,
2118
- Zoom = 1
2192
+ interface CartoDataSourceOptions extends DataSourceOptions {
2193
+ account: string;
2194
+ mapId?: string;
2195
+ params?: any;
2196
+ queryPrecision?: string;
2197
+ crossOrigin?: string;
2198
+ projection?: string;
2199
+ config?: any;
2200
+ map?: string;
2119
2201
  }
2120
2202
 
2121
- /**
2122
- * MapService
2123
- *
2124
- * This service tracks the IgoMap instance, if any.
2125
- * Currently, only one map instance is supported
2126
- * but support for multiple maps may be added in the future.
2127
- * This will impact other services such as the OverlayService
2128
- * because these maps won't be sharing overlayed features.
2129
- */
2130
- declare class MapService {
2131
- private map?;
2132
- getMap(): IgoMap | undefined;
2133
- setMap(map: IgoMap): void;
2134
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<MapService, never>;
2135
- static ɵprov: _angular_core.ɵɵInjectableDeclaration<MapService>;
2203
+ declare class CartoDataSource extends DataSource {
2204
+ ol: olSourceCarto;
2205
+ options: CartoDataSourceOptions;
2206
+ get params(): any;
2207
+ get queryTitle(): string;
2208
+ get mapLabel(): string;
2209
+ get queryHtmlTarget(): string;
2210
+ get saveableOptions(): Partial<CartoDataSourceOptions>;
2211
+ protected createOlSource(): olSourceCarto;
2212
+ getLegend(): Legend[];
2213
+ onUnwatch(): void;
2136
2214
  }
2137
2215
 
2138
- interface Projection {
2139
- alias?: string;
2140
- code: string;
2141
- def?: string;
2142
- extent?: [number, number, number, number];
2216
+ interface TileDebugDataSourceOptions extends DataSourceOptions {
2217
+ projection?: string;
2218
+ wrapX?: boolean;
2219
+ zDirection?: number;
2220
+ tileGrid?: TileGridOptions;
2143
2221
  }
2144
- interface InputProjections extends Projection {
2145
- translateKey?: string;
2146
- translatedValue?: string;
2147
- zone: string;
2222
+
2223
+ declare class TileDebugDataSource extends DataSource {
2224
+ options: TileDebugDataSourceOptions;
2225
+ ol: TileDebug;
2226
+ protected createOlSource(): TileDebug;
2227
+ onUnwatch(): void;
2148
2228
  }
2149
- interface ProjectionsLimitationsOptions {
2150
- projFromConfig?: boolean;
2151
- nad83?: boolean;
2152
- wgs84?: boolean;
2153
- webMercator?: boolean;
2154
- utm?: boolean;
2155
- mtm?: boolean;
2156
- utmZone?: {
2157
- minZone?: number;
2158
- maxZone?: number;
2159
- };
2160
- mtmZone?: {
2161
- minZone?: number;
2162
- maxZone?: number;
2163
- };
2229
+
2230
+ interface WMTSDataSourceOptions extends DataSourceOptions {
2231
+ projection?: string;
2232
+ layer: string;
2233
+ style?: string;
2234
+ version?: string;
2235
+ format?: string;
2236
+ matrixSet?: string;
2237
+ url?: string;
2238
+ urls?: string[];
2164
2239
  }
2165
2240
 
2166
- /**
2167
- * This method extracts a coordinate tuple from a string.
2168
- * @param str Any string
2169
- * @param mapProjection string Map Projection
2170
- * @param opts.forceNA boolean Force North America Zone
2171
- * @returns object:
2172
- * lonLat: Coordinate,
2173
- * message: Message of error,
2174
- * radius: radius of the confience of coordinate,
2175
- * conf: confidence of the coordinate}
2176
- */
2177
- declare function stringToLonLat(str: string, mapProjection: string, opts?: {
2178
- forceNA?: boolean;
2179
- }): {
2180
- lonLat: [number, number] | undefined;
2181
- message: string;
2182
- radius: number | undefined;
2183
- conf: number | undefined;
2184
- };
2185
- /**
2186
- * Convert dd to degrees minutes seconds
2187
- * @param lonLatDD longitude and latitude in dd
2188
- * @param decimal number of decimals for seconds
2189
- * @returns longitude and latitude in dms
2190
- */
2191
- declare function convertDDToDMS(lonLatDD: Coordinate, decimal?: number): string[];
2192
- /**
2193
- * Return true of two view states are equal.
2194
- * @param state1 View state
2195
- * @param state2 View state
2196
- * @returns True if the view states are equal
2197
- */
2198
- declare function viewStatesAreEqual(state1: MapViewState, state2: MapViewState): boolean;
2199
- /**
2200
- * Format the scale to a human readable text
2201
- * @param Scale of the map
2202
- * @returns Human readable scale text
2203
- */
2204
- declare function formatScale(scale: number): string;
2205
- /**
2206
- * Return the resolution from a scale denom
2207
- * @param scale Scale denom
2208
- * @param dpi DPI
2209
- * @returns Resolution
2210
- */
2211
- declare function getResolutionFromScale(scale: number, dpi?: number): number;
2212
- /**
2213
- * Return the resolution from a scale denom
2214
- * @param Scale denom
2215
- * @returns Resolution
2216
- */
2217
- declare function getScaleFromResolution(resolution: number, unit?: string, dpi?: number): number;
2218
- /**
2219
- * Returns true if the CTRL key is pushed during an Ol MapBrowserPointerEvent
2220
- * @param event OL MapBrowserPointerEvent
2221
- * @returns Whether the CTRL key is pushed
2222
- */
2223
- declare function ctrlKeyDown(event: MapBrowserPointerEvent<any>): boolean;
2224
- declare function roundCoordTo(coord: [number, number] | Position | Coordinate, decimal?: number): Coordinate;
2225
- declare function roundCoordToString(coord: [number, number] | Position | Coordinate, decimal?: number): [string, string];
2226
- /**
2227
- * Returns an array of converted coordinates.
2228
- * Conversion is done for every configured projections
2229
- * and for the current UTM zone and MTM zone.
2230
- * @param lonLat [number, number] array of the coordinate to transform.
2231
- * @param projections Projection[] Array of destination projection.
2232
- * @param reverseCoords To reverse coords from latLon to lonLat (search option)
2233
- * @returns Returns an array of converted coordinates.
2234
- */
2235
- declare function lonLatConversion(lonLat: [number, number], projections: Projection[]): {
2236
- code: string;
2237
- alias: string;
2238
- coord: [number, number];
2239
- igo2CoordFormat: string;
2240
- }[];
2241
- /**
2242
- * Detect the current utm zone of the lon/lat coordinate.
2243
- * @param lonLat [number, number] array of the coordinate to detect the UTM zone.
2244
- * @returns number The UTM zone.
2245
- */
2246
- declare function utmZoneFromLonLat(lonLat: [number, number]): number;
2247
- /**
2248
- * Detect the current mtm zone of the lon/lat coordinate.
2249
- * @param lonLat [number, number] array of the coordinate to detect the MTM zone.
2250
- * @returns number The MTM zone. Undefined if outside of the mtm application zone.
2251
- */
2252
- declare function mtmZoneFromLonLat(lonLat: [number, number]): number | undefined;
2241
+ declare class WMTSDataSource extends DataSource {
2242
+ options: WMTSDataSourceOptions;
2243
+ ol: olSourceWMTS;
2244
+ constructor(options: WMTSDataSourceOptions);
2245
+ protected createOlSource(): olSourceWMTS;
2246
+ onUnwatch(): void;
2247
+ }
2253
2248
 
2254
- declare class MapOfflineDirective implements AfterViewInit {
2255
- private networkService;
2256
- private messageService;
2257
- private component;
2258
- get map(): IgoMap;
2259
- private previousMessageId?;
2260
- constructor();
2261
- ngAfterViewInit(): void;
2262
- private handleNonOfflinableLayerResolution;
2263
- private handleLayersOnlineState;
2264
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<MapOfflineDirective, never>;
2265
- static ɵdir: _angular_core.ɵɵDirectiveDeclaration<MapOfflineDirective, "[igoMapOffline]", never, {}, {}, never, never, true, never>;
2249
+ interface TileLayerOptions extends LayerOptions {
2250
+ source?: OSMDataSource | WMTSDataSource | XYZDataSource | TileDebugDataSource | CartoDataSource | TileArcGISRestDataSource;
2251
+ sourceOptions?: OSMDataSourceOptions | WMTSDataSourceOptions | XYZDataSourceOptions | TileDebugDataSourceOptions | CartoDataSourceOptions | TileArcGISRestDataSourceOptions;
2252
+ ol?: olLayerTile<olSourceTile>;
2266
2253
  }
2267
2254
 
2268
- /**
2269
- * This directive return the pointer coordinate (on click or pointermove)
2270
- * in [longitude, latitude], delayed by in input (pointerMoveDelay)
2271
- * to avoid too many emitted values.
2272
- */
2273
- declare class PointerPositionDirective implements OnInit, OnDestroy {
2274
- private component;
2275
- private mediaService;
2276
- private lastTimeoutRequest?;
2277
- /**
2278
- * Listener to the pointer move event
2279
- */
2280
- private pointerMoveListener?;
2281
- /**
2282
- * Listener to the map click event
2283
- */
2284
- private mapClickListener?;
2285
- /**
2286
- * Delay before emitting an event
2287
- */
2288
- readonly pointerPositionDelay: _angular_core.InputSignal<number>;
2289
- /**
2290
- * Event emitted when the pointer move, delayed by pointerMoveDelay
2291
- */
2292
- readonly pointerPositionCoord: _angular_core.OutputEmitterRef<[number, number]>;
2293
- /**
2294
- * IGO map
2295
- * @internal
2296
- */
2297
- get map(): IgoMap;
2298
- get mapProjection(): string;
2299
- /**
2300
- * Start listening to pointermove
2301
- * @internal
2302
- */
2303
- ngOnInit(): void;
2304
- /**
2305
- * Stop listening to pointermove
2306
- * @internal
2307
- */
2308
- ngOnDestroy(): void;
2309
- /**
2310
- * On map pointermove
2311
- */
2312
- private listenToMapPointerMove;
2313
- /**
2314
- * On map click
2315
- */
2316
- private listenToMapClick;
2317
- /**
2318
- * Stop listening for map pointermove
2319
- */
2320
- private unlistenToMapPointerMove;
2321
- /**
2322
- * Stop listening for map clicks
2323
- */
2324
- private unlistenToMapClick;
2325
- /**
2326
- * emit delayed coordinate (longitude, latitude array) based on pointerMoveDelay or on click
2327
- * @param event OL map browser pointer event
2328
- */
2329
- private onPointerEvent;
2330
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<PointerPositionDirective, never>;
2331
- static ɵdir: _angular_core.ɵɵDirectiveDeclaration<PointerPositionDirective, "[igoPointerPosition]", never, { "pointerPositionDelay": { "alias": "pointerPositionDelay"; "required": false; "isSignal": true; }; }, { "pointerPositionCoord": "pointerPositionCoord"; }, never, never, true, never>;
2255
+ interface MVTDataSourceOptions extends DataSourceOptions {
2256
+ projection?: string;
2257
+ attributions?: string | string[];
2258
+ format?: any;
2259
+ url?: string;
2260
+ pathOffline?: string;
2261
+ excludeAttribute?: string[];
2262
+ excludeAttributeOffline?: string[];
2263
+ featureClass?: string;
2264
+ }
2265
+
2266
+ declare class MVTDataSource extends DataSource {
2267
+ options: MVTDataSourceOptions;
2268
+ ol: olSourceVectorTile;
2269
+ get saveableOptions(): Partial<MVTDataSourceOptions>;
2270
+ protected createOlSource(): olSourceVectorTile;
2271
+ protected generateId(): string;
2272
+ onUnwatch(): void;
2273
+ }
2274
+
2275
+ interface VectorTileLayerOptions extends LayerOptions {
2276
+ style?: AnyStyle;
2277
+ source?: MVTDataSource;
2278
+ sourceOptions?: MVTDataSourceOptions;
2279
+ ol?: olLayerVectorTile;
2280
+ declutter?: boolean;
2281
+ }
2282
+
2283
+ type AnyLayerOptions = AnyLayerItemOptions | LayerGroupOptions;
2284
+ type AnyLayerItemOptions = LayerOptions | ImageLayerOptions | TileLayerOptions | VectorLayerOptions | VectorTileLayerOptions;
2285
+
2286
+ interface LayerGroupOptions extends Omit<LayerOptionsBase, 'title'> {
2287
+ type: 'group';
2288
+ title: string;
2289
+ expanded?: boolean;
2290
+ children?: AnyLayerOptions[];
2291
+ }
2292
+
2293
+ declare const ID_GROUP_PREFIX = "local-group_";
2294
+ declare class LayerGroup extends LayerGroupBase<LayerGroup> {
2295
+ children: AnyLayer[];
2296
+ options: LayerGroupOptions;
2297
+ ol: Group;
2298
+ expanded: boolean;
2299
+ private isInResolutionsRange$$;
2300
+ readonly isInResolutionsRange$: BehaviorSubject<boolean>;
2301
+ get saveableOptions(): Partial<LayerGroupOptions>;
2302
+ get descendants(): AnyLayer[];
2303
+ get descendantsLevel(): number;
2304
+ constructor(children: AnyLayer[], options: LayerGroupOptions);
2305
+ init(map: MapBase): void;
2306
+ add(parent?: LayerGroup): void;
2307
+ addChild(...layers: AnyLayer[]): void;
2308
+ remove(): void;
2309
+ removeChild(layer: AnyLayer): void;
2310
+ isDescendant(layer: AnyLayer): boolean;
2311
+ private setChildrenObserver;
2312
+ protected createOlLayer(): Group;
2313
+ private hasChildren;
2314
+ /** recursive */
2315
+ private _getDescendants;
2316
+ /** recursive */
2317
+ private _getDescendantsLevel;
2332
2318
  }
2333
2319
 
2334
2320
  /**
2335
- * HoverFeatureDirective
2336
- *
2337
- * Debounces map pointer move events and highlights the top-most processable
2338
- * feature under the pointer. The hovered feature is copied to an internal
2339
- * overlay layer and marked with `_hovered` so layer styles can render hover
2340
- * symbolizers and labels.
2321
+ * We got four kind of layers
2322
+ * TreeLayer: all layers to show in the layer manager
2323
+ * Baselayer: Layer dedicated for the basemap
2324
+ * SystemLayer: Every layer dedicated to good function of the map (Selection, hovering)
2325
+ * OtherLayer: all remaining layer that is linked to another layer or simply not a systemLayer that need to be cleaned on map reset
2341
2326
  */
2342
- declare class HoverFeatureDirective implements OnInit, OnDestroy {
2343
- private component;
2344
- private layerService;
2345
- private mediaService;
2346
- private store;
2347
- private pointerMoveSubscription$$;
2348
- private readonly hoverLayerId;
2349
- /**
2350
- * Delay (ms) before applying hover once the pointer is motionless.
2351
- */
2352
- readonly igoHoverFeatureDelay: _angular_core.InputSignal<number>;
2353
- readonly igoHoverFeatureTolerance: _angular_core.InputSignal<number>;
2354
- /**
2355
- * If the user has enabled or not the directive
2356
- */
2357
- readonly igoHoverFeatureEnabled: _angular_core.InputSignal<boolean>;
2358
- mouseout(): void;
2359
- /**
2360
- * IGO map
2361
- * @internal
2362
- */
2363
- get map(): IgoMap;
2364
- ngOnInit(): void;
2365
- /**
2366
- * Initialize the hover store
2367
- * @internal
2368
- */
2369
- private initStore;
2370
- ngOnDestroy(): void;
2371
- /**
2372
- * Listen to pointer move events and debounce hover processing.
2373
- */
2374
- private listenToMapPointerMove;
2327
+ declare class LayerController extends LayerSelectionModel {
2328
+ private _map;
2329
+ private tree;
2330
+ /** Selection, Hovering, every internalLayer not in the tree is here */
2331
+ private _systemLayers;
2332
+ /** LinkedLayer and other layer that are not in the previous category and not visible in tree */
2333
+ private _otherLayers;
2334
+ layersFlattened: AnyLayer[];
2335
+ private _layers$;
2336
+ layers$: Observable<AnyLayer[]>;
2337
+ layersFlattened$: Observable<AnyLayer[]>;
2338
+ private _baseLayers;
2339
+ private _baseLayers$;
2340
+ baseLayers$: Observable<Layer[]>;
2341
+ baseLayerSelection: Layer;
2342
+ /** All layers with the tree flattened */
2343
+ all$: Observable<AnyLayer[]>;
2344
+ constructor(_map: MapBase, layers: AnyLayer[]);
2345
+ get all(): AnyLayer[];
2346
+ get baseLayers(): readonly Layer[];
2347
+ get baseLayer(): Layer | undefined;
2348
+ get treeLayers(): readonly AnyLayer[];
2349
+ add(...layers: AnyLayer[]): void;
2350
+ selectBaseLayer(layer: Layer): void;
2351
+ remove(...layers: AnyLayer[]): void;
2375
2352
  /**
2376
- * Apply hover rendering for the top-most processable feature at the pointer.
2377
- * @param event OL map browser pointer event
2353
+ * Move a layer into the tree
2354
+ * @param layer Layer to move
2355
+ * @param beforeTo The index position to move inside a tree
2378
2356
  */
2379
- private onMapEvent;
2380
- private getTopMostHitAtPixel;
2381
- private getProcessableLayer;
2382
- private handleRenderFeature;
2383
- private getGeometry;
2357
+ moveTo(beforeTo: number[], ...layers: AnyLayer[]): AnyLayer[];
2358
+ moveBelow(layerRef: AnyLayer | undefined, ...layers: AnyLayer[]): void;
2359
+ moveAbove(layerRef: AnyLayer | undefined, ...layers: AnyLayer[]): void;
2360
+ moveInside(layerRef: LayerGroup, ...layers: AnyLayer[]): void;
2361
+ raise(...layers: AnyLayer[]): void;
2362
+ lower(...layers: AnyLayer[]): void;
2363
+ /** Reset all except SystemLayer */
2364
+ reset(): void;
2365
+ getById(id: LayerId): AnyLayer | undefined;
2366
+ getByTitle(title: string): AnyLayer | undefined;
2367
+ getBySourceId(id: LayerId): AnyLayer | undefined;
2368
+ getPosition(layer: AnyLayer, type?: 'below' | 'above'): number[];
2369
+ getLayerRecipient(layer: AnyLayer): AnyLayer[];
2384
2370
  /**
2385
- * Clear the hover store features
2371
+ * We got non visible layer in the tree like LinkedLayer. We want the next visible layer in tree
2386
2372
  */
2387
- private clearLayer;
2388
- private removeHoverLayer;
2389
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<HoverFeatureDirective, never>;
2390
- static ɵdir: _angular_core.ɵɵDirectiveDeclaration<HoverFeatureDirective, "[igoHoverFeature]", never, { "igoHoverFeatureDelay": { "alias": "igoHoverFeatureDelay"; "required": false; "isSignal": true; }; "igoHoverFeatureTolerance": { "alias": "igoHoverFeatureTolerance"; "required": false; "isSignal": true; }; "igoHoverFeatureEnabled": { "alias": "igoHoverFeatureEnabled"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
2373
+ private findLowestVisiblePostion;
2374
+ private handleMove;
2375
+ private _internalMove;
2376
+ /** Recursive */
2377
+ private recalculateZindex;
2378
+ private handleAdd;
2379
+ private _remove;
2380
+ private removeBaselayer;
2381
+ private removeSystemLayer;
2382
+ private removeOtherLayer;
2383
+ private removeIn;
2384
+ private isSystemLayer;
2385
+ private isOtherLayer;
2386
+ private clearBaselayers;
2387
+ private clearTree;
2388
+ private clearOther;
2389
+ private getZindexOffset;
2390
+ private setZindex;
2391
+ private notify;
2391
2392
  }
2392
2393
 
2393
- /**
2394
- * When injected, this service automatically registers and
2395
- * projection defined in the application config. A custom projection
2396
- * needs to be registered to be usable by OL.
2397
- */
2398
- declare class ProjectionService {
2399
- private config;
2400
- constructor();
2401
- /**
2402
- * Define a proj4 projection and register it in OL
2403
- * @param projection Projection
2404
- */
2405
- registerProjection(projection: Projection): void;
2406
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ProjectionService, never>;
2407
- static ɵprov: _angular_core.ɵɵInjectableDeclaration<ProjectionService>;
2394
+ declare class Linked {
2395
+ layer: Layer;
2396
+ readonly children: Layer[];
2397
+ private watcher;
2398
+ private bidirectionnalChildren;
2399
+ private childrenByProperty;
2400
+ private disabledProperties;
2401
+ constructor(layer: Layer);
2402
+ get options(): _igo2_geo.LayerOptions;
2403
+ get links(): LayersLinkProperties[];
2404
+ get map(): _igo2_geo.MapBase | undefined;
2405
+ init(): void;
2406
+ private initZIndexLinkOptions;
2407
+ destroy(): void;
2408
+ add(layer: Layer): void;
2409
+ hasSyncDeletion(layer: Layer): boolean;
2410
+ remove(layer: Layer): void;
2411
+ deleteChildren(controller: LayerController): void;
2412
+ move(layer: Layer, parent?: LayerGroup): void;
2413
+ display(): void;
2414
+ private disable;
2415
+ private enable;
2416
+ private getByProperty;
2417
+ private propertyIsDisabled;
2418
+ private getLayerLinks;
2419
+ private removeArrayItem;
2420
+ private getLinkedLayersOnZindex;
2421
+ private unwatch;
2422
+ private handleChange;
2423
+ private handleDisplayChange;
2424
+ private findChildren;
2425
+ private handleRefreshChanges;
2408
2426
  }
2409
2427
 
2410
- /**
2411
- * Return a number of zone MTM for a longitude for province of Quebec only
2412
- * @param lon number
2413
- * @returns zone
2414
- */
2415
- declare function zoneMtm(lon: number): number;
2416
- /**
2417
- * Return a number of zone UTM for a longitude
2418
- * @param lon number
2419
- * @returns zone
2420
- */
2421
- declare function zoneUtm(lon: number): number;
2422
- /**
2423
- * Compute the contraints of projections
2424
- * @param projectionsLimitations: ProjectionsLimitationsOptions
2425
- * @returns projectionsContraints: ProjectionsLimitationsOptions
2426
- */
2427
- declare function computeProjectionsConstraints(projectionsLimitations: ProjectionsLimitationsOptions): ProjectionsLimitationsOptions;
2428
- /**
2429
- * Method allowing to read the file and try to detect projection/Coord system
2430
- * Only geojson/json/gml could be detected at this moment.
2431
- * @param options A file and an optional number of line to read the EPSG Code. Used only for GML files
2432
- * @returns Observable string, epsgNotDefined if the EPSG is not detected or a EPSG string ex: EPSG:3857
2433
- */
2434
- declare function detectFileEPSG(options: {
2435
- file: File;
2436
- nbLines?: number;
2437
- }): Observable<string | undefined>;
2428
+ declare function isLayerLinked(layer: AnyLayer): layer is Layer;
2429
+ declare function isLinkMaster(layer: Layer): boolean;
2430
+ declare function isLayerLinkedTogether(layerA: AnyLayer, layerB: AnyLayer, layers: AnyLayer[], property?: LinkedProperties): boolean;
2431
+ declare function isLayerLinkedOptions(options: AnyLayerOptions): options is AnyLayerItemOptions;
2432
+ declare function isBaseLayerLinked(layer: AnyLayer, allLayers: AnyLayer[]): layer is Layer;
2438
2433
 
2439
- declare function getRootParentByProperty(layers: AnyLayer[], layer: Layer, property: LinkedProperties): Layer | undefined;
2440
- declare function getAllChildLayersByProperty(layers: AnyLayer[], layer: Layer, knownChildLayers: AnyLayer[], property: LinkedProperties): AnyLayer[];
2441
- declare function getRootParentByDeletion(layer: Layer, layers: AnyLayer[]): Layer | undefined;
2442
- declare function getAllChildLayersByDeletion(layers: Layer[], layer: Layer, knownChildLayers: Layer[]): Layer[];
2443
- declare function getLinkedLayersOptions(layer: Layer): _igo2_geo.LayersLink;
2444
- declare function findLayerByLinkId(layers: Layer[], id: LayerId): Layer | undefined;
2445
- declare function getLayersByDeletion(layers: Layer[], links: LayersLinkProperties[]): Layer[];
2446
- declare function handleLayerPropertyChange(layers: AnyLayer[], change: LayerWatcherChange, viewController: MapViewController): void;
2434
+ interface ArcGISRestImageDataSourceOptions extends DataSourceOptions {
2435
+ queryPrecision?: number;
2436
+ layer?: string;
2437
+ legendInfo?: any;
2438
+ params?: any;
2439
+ attributions?: olAttribution;
2440
+ projection?: string;
2441
+ url?: string;
2442
+ idColumn?: string;
2443
+ options?: any;
2444
+ }
2447
2445
 
2448
- type ResponseType = 'arraybuffer' | 'json' | 'text' | 'xml' | 'blob';
2449
- interface SimpleGetOptions {
2450
- responseType: ResponseType;
2451
- withCredentials?: boolean;
2446
+ declare class ImageArcGISRestDataSource extends DataSource {
2447
+ ol: ImageArcGISRest;
2448
+ options: ArcGISRestImageDataSourceOptions;
2449
+ get params(): any;
2450
+ get queryTitle(): string;
2451
+ get mapLabel(): string;
2452
+ get queryHtmlTarget(): string;
2453
+ get saveableOptions(): Partial<ArcGISRestImageDataSourceOptions>;
2454
+ protected createOlSource(): ImageArcGISRest;
2455
+ getLegend(): Legend[];
2456
+ onUnwatch(): void;
2452
2457
  }
2453
- declare class GeoNetworkService {
2454
- private http;
2455
- private networkService;
2456
- private networkOnline;
2457
- constructor();
2458
- get(url: string, simpleGetOptions: SimpleGetOptions): Observable<any>;
2459
- private getOnline;
2460
- private getOffline;
2461
- isOnline(): boolean;
2462
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<GeoNetworkService, never>;
2463
- static ɵprov: _angular_core.ɵɵInjectableDeclaration<GeoNetworkService>;
2458
+
2459
+ declare class ImageLayer extends Layer {
2460
+ type: LayerType;
2461
+ dataSource: WMSDataSource | ImageArcGISRestDataSource;
2462
+ options: ImageLayerOptions;
2463
+ ol: olLayerImage<olSourceImage>;
2464
+ private watcher;
2465
+ constructor(options: ImageLayerOptions);
2466
+ protected createOlLayer(): olLayerImage<olSourceImage>;
2467
+ init(map: MapBase | undefined): void;
2468
+ remove(): void;
2469
+ private customLoader;
2464
2470
  }
2465
2471
 
2466
- declare class VectorLayer extends Layer {
2467
- messageService?: MessageService | undefined;
2468
- authInterceptor?: AuthInterceptor | undefined;
2469
- private geoNetworkService?;
2470
- styleService?: StyleService | undefined;
2472
+ declare class TileLayer extends Layer {
2471
2473
  type: LayerType;
2472
- private lastRequest?;
2473
- private ongoingRequests;
2474
- dataSource: FeatureDataSource | WFSDataSource | ArcGISRestDataSource | WebSocketDataSource | ClusterDataSource;
2475
- options: VectorLayerOptions;
2476
- ol: olLayerVector<olSourceVector>;
2474
+ dataSource: OSMDataSource | WMTSDataSource | XYZDataSource | TileDebugDataSource | CartoDataSource | TileArcGISRestDataSource;
2475
+ options: TileLayerOptions;
2476
+ ol: olLayerTile<olSourceTile>;
2477
+ private watcher;
2478
+ constructor(options: TileLayerOptions);
2479
+ protected createOlLayer(): olLayerTile<olSourceTile>;
2480
+ /**
2481
+ * Custom loader for tile layer.
2482
+ * @internal
2483
+ * @param tile the current tile
2484
+ * @param url the url string or function to retrieve the data
2485
+ */
2486
+ customLoader(tile: any, url: string, interceptor?: IXhrInterceptor | null): void;
2487
+ init(map: MapBase | undefined): void;
2488
+ remove(): void;
2489
+ }
2490
+
2491
+ declare class VectorTileLayer extends Layer {
2492
+ type: LayerType;
2493
+ dataSource: MVTDataSource;
2494
+ options: VectorTileLayerOptions;
2495
+ ol: olLayerVectorTile;
2477
2496
  private watcher;
2478
- private trackFeatureListenerId;
2479
- get browsable(): boolean;
2480
- get exportable(): boolean;
2481
2497
  get style(): AnyStyle | undefined;
2482
2498
  set style(value: AnyStyle | undefined);
2483
2499
  private _style$;
2484
2500
  readonly style$: rxjs.Observable<AnyStyle | undefined>;
2485
- constructor(options: VectorLayerOptions, messageService?: MessageService | undefined, authInterceptor?: AuthInterceptor | undefined, geoNetworkService?: GeoNetworkService | undefined, styleService?: StyleService | undefined);
2501
+ constructor(options: VectorTileLayerOptions);
2486
2502
  getLegend(value: AnyStyle): Promise<Legend[] | undefined>;
2487
- protected createOlLayer(): olLayerVector<olSourceVector>;
2503
+ protected createOlLayer(): olLayerVectorTile;
2488
2504
  private setStyle;
2489
- private handleIdbStorage;
2490
- private handlePreload;
2491
- remove(): void;
2492
- private removeLayerFromIDB;
2493
- private maintainOptionsInIdb;
2494
- private maintainFeaturesInIdb;
2495
- protected flash(feature: OlFeature): void;
2496
- init(map: MapBase | undefined): void;
2497
- setExtent(extent: MapExtent): void;
2498
- onUnwatch(): void;
2499
- stopAnimation(): void;
2500
- enableTrackFeature(id: string | number): void;
2501
- centerMapOnFeature(id: string | number): void;
2502
- trackFeature(id: string | number, feat: {
2503
- feature: OlFeature;
2504
- }): void;
2505
- disableTrackFeature(): void;
2506
- /**
2507
- * Custom loader for a WFS datasource
2508
- * @internal
2509
- * @param vectorSource the vector source to be created
2510
- * @param options olOptions from source
2511
- * @param extent the extent of the requested data
2512
- * @param resolution the current resolution
2513
- * @param proj the projection to retrieve the data
2514
- * @param success success callback
2515
- * @param failure failure callback
2516
- * @param randomParam random parameter to ensure cache is not causing problems in retrieving new data
2517
- */
2518
- customWFSLoader(vectorSource: olSourceVector, options: WFSDataSourceOptions, extent: Extent, resolution: number, proj: olProjection, success: (features: OlFeature[]) => void, failure: () => void, randomParam?: boolean): void;
2519
- private abortRequests;
2520
- private getProjection;
2521
- private batchGetFeatures;
2522
- /**
2523
- * Custom loader to get feature from a WFS datasource
2524
- * @internal
2525
- * @param vectorSource the vector source to be created
2526
- * @param extent the extent of the requested data
2527
- * @param dataProjection the projection of the retrieved data
2528
- * @param featureProjection the projection of the created features
2529
- * @param url the url string to retrieve the data
2530
- * @param success success callback
2531
- * @param failure failure callback
2532
- */
2533
- private getFeatures;
2534
- private removeRequest;
2535
- private handleOnLoad;
2536
2505
  /**
2537
- * Custom loader for vector layer.
2506
+ * Custom loader for vector tile layer. Modified from the loadFeaturesXhr function in ol\featureloader.js
2538
2507
  * @internal
2539
- * @param vectorSource the vector source to be created
2540
2508
  * @param url the url string or function to retrieve the data
2541
- * @param extent the extent of the requested data
2542
- * @param projection the projection to retrieve the data
2509
+ * @param format the format of the tile
2510
+ * @param interceptor the interceptor of the data
2511
+ * @param success On success event action to trigger
2512
+ * @param failure On failure event action to trigger TODO
2543
2513
  */
2544
- private customLoader;
2514
+ customLoader(url: string | ((extent: Extent, resolution: number, projection: Projection$1) => string), format: olFormatFeature, interceptor: IXhrInterceptor | null, success: any, failure?: any): (extent: Extent, resolution: number, projection: Projection$1) => void;
2515
+ init(map: MapBase | undefined): void;
2516
+ remove(): void;
2517
+ }
2518
+
2519
+ declare class LayerService {
2520
+ private dataSourceService;
2521
+ private injector;
2522
+ private offlineLayerRestore;
2523
+ unavailableLayers: AnyLayerItemOptions[];
2524
+ createLayers(layersOption: AnyLayerOptions[], contextUri?: string): Observable<(AnyLayer | undefined)[]>;
2525
+ createLayer(layerOptions: AnyLayerItemOptions): Layer;
2526
+ createAsyncLayer(options: AnyLayerItemOptions, detailedContextUri?: string): Observable<Layer | undefined>;
2527
+ createAsyncGroup(options: LayerGroupOptions, detailedContextUri?: string): Observable<LayerGroup>;
2528
+ private createGroup;
2529
+ private createImageLayer;
2530
+ private createTileLayer;
2531
+ private createVectorLayer;
2532
+ private createVectorTileLayer;
2533
+ createAsyncOfflineLayers(contextUri?: string): Observable<Layer[]>;
2534
+ deleteUnavailableLayers(anyLayerOptions: AnyLayerItemOptions): void;
2535
+ sourceOptionsWithParams(sourceOptions: AnyDataSourceOptions): sourceOptions is AnyDataSourceOptionsWithParams;
2536
+ sourceOptionsWithLayer(sourceOptions: AnyDataSourceOptions): sourceOptions is ArcGISRestDataSourceOptions | WMTSDataSourceOptions;
2537
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<LayerService, never>;
2538
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<LayerService>;
2545
2539
  }
2546
2540
 
2547
2541
  interface Feature<P = Record<string, any>> {
@@ -2595,15 +2589,21 @@ interface FeatureStoreSearchIndexStrategyOptions extends EntityStoreStrategyOpti
2595
2589
  sourceFields?: SourceFieldsOptionsParams[];
2596
2590
  percentDistinctValueRatio?: number;
2597
2591
  }
2598
- interface FeatureStoreSelectionStrategyOptions extends FeatureStoreStrategyOptions {
2592
+ interface FeatureStoreSelectionStrategyBaseOptions extends FeatureStoreStrategyOptions {
2599
2593
  map: IgoMap;
2600
2594
  getFeatureId?: (feature: Feature) => EntityKey;
2601
2595
  motion?: FeatureMotion;
2602
- layer?: VectorLayer;
2603
2596
  many?: boolean;
2604
2597
  hitTolerance?: number;
2605
2598
  dragBox?: boolean;
2606
2599
  }
2600
+ type FeatureStoreSelectionStrategyOptions = FeatureStoreSelectionStrategyBaseOptions & ({
2601
+ layerService: LayerService;
2602
+ layer?: never;
2603
+ } | {
2604
+ layer: VectorLayer;
2605
+ layerService?: never;
2606
+ });
2607
2607
  interface FeatureFormSubmitEvent {
2608
2608
  form: UntypedFormGroup;
2609
2609
  feature: Feature | undefined;
@@ -2665,6 +2665,7 @@ declare class SpatialFilterService {
2665
2665
 
2666
2666
  declare class MapBrowserComponent implements OnInit, AfterViewInit, OnDestroy {
2667
2667
  private activityService;
2668
+ private overlayService;
2668
2669
  private activityId?;
2669
2670
  private status$$;
2670
2671
  readonly map: _angular_core.InputSignal<IgoMap>;
@@ -3742,7 +3743,7 @@ declare function computeOlFeaturesDiff(source: OlFeature<OlGeometry>[], target:
3742
3743
  * @param store The store to bind the layer
3743
3744
  * @param layer An optional VectorLayer
3744
3745
  */
3745
- declare function tryBindStoreLayer(store: FeatureStore, layer?: VectorLayer): VectorLayer;
3746
+ declare function tryBindStoreLayer(store: FeatureStore, layer?: VectorLayer, layerService?: LayerService): VectorLayer;
3746
3747
 
3747
3748
  /**
3748
3749
  * This strategy maintain the store features updated while the map is moved.
@@ -4570,7 +4571,7 @@ declare function tryAddLoadingStrategy(store: FeatureStore, strategy?: FeatureSt
4570
4571
  * @param store The store to bind the selection strategy
4571
4572
  * @param [strategy] An optional selection strategy
4572
4573
  */
4573
- declare function tryAddSelectionStrategy(store: FeatureStore, strategy?: FeatureStoreSelectionStrategy): void;
4574
+ declare function tryAddSelectionStrategy(store: FeatureStore, strategy: FeatureStoreSelectionStrategy): void;
4574
4575
 
4575
4576
  /**
4576
4577
  * A configurable form, optionnally bound to a feature.
@@ -4856,6 +4857,7 @@ declare class DrawComponent implements OnInit, OnDestroy {
4856
4857
  private drawStyleService;
4857
4858
  private dialog;
4858
4859
  private drawIconService;
4860
+ private layerService;
4859
4861
  /**
4860
4862
  * Table template
4861
4863
  * @internal
@@ -5289,6 +5291,7 @@ declare class MeasurerComponent implements OnInit, OnDestroy {
5289
5291
  private dialog;
5290
5292
  private storageService;
5291
5293
  private document;
5294
+ private layerService;
5292
5295
  /**
5293
5296
  * Table template
5294
5297
  * @internal
@@ -5682,6 +5685,7 @@ declare class SpatialFilterItemComponent implements OnDestroy, OnInit {
5682
5685
  private spatialFilterService;
5683
5686
  private messageService;
5684
5687
  private languageService;
5688
+ private layerService;
5685
5689
  readonly map: _angular_core.InputSignal<IgoMap>;
5686
5690
  get type(): SpatialFilterType;
5687
5691
  set type(type: SpatialFilterType);
@@ -6144,29 +6148,54 @@ declare class OGCFilterService {
6144
6148
  static ɵprov: _angular_core.ɵɵInjectableDeclaration<OGCFilterService>;
6145
6149
  }
6146
6150
 
6151
+ interface VectorSourceLoadRequest {
6152
+ readonly source: olSourceVector;
6153
+ readonly url: string | FeatureUrlFunction;
6154
+ readonly extent: Extent;
6155
+ readonly resolution: number;
6156
+ readonly projection: olProjection;
6157
+ readonly readOptions: ReadOptions;
6158
+ readonly resolveUrls?: (url: string) => readonly string[];
6159
+ success(features: FeatureLike[]): void;
6160
+ failure(): void;
6161
+ }
6162
+ interface VectorSourceLoaderHost {
6163
+ execute(request: VectorSourceLoadRequest): void;
6164
+ }
6165
+
6147
6166
  interface FetchFeatureOptions {
6148
6167
  extent: Extent | undefined;
6149
6168
  projection: olProjection;
6150
6169
  httpClient: HttpClient;
6151
6170
  }
6171
+ interface WfsRequestContext {
6172
+ baseUrl: string;
6173
+ paramsWFS: WFSDataSourceOptionsParams;
6174
+ wfsProjection: olProjection;
6175
+ transformedExtent: Extent | undefined;
6176
+ }
6152
6177
  declare class WFSDataSource extends DataSource {
6153
6178
  options: WFSDataSourceOptions;
6154
6179
  protected wfsService: WFSService;
6155
6180
  private ogcFilterService;
6156
- private authInterceptor?;
6157
6181
  ol: olSourceVector;
6158
6182
  set ogcFilters(value: OgcFiltersOptions);
6159
6183
  get ogcFilters(): OgcFiltersOptions | undefined;
6160
6184
  get saveableOptions(): Partial<WFSDataSourceOptions>;
6161
- constructor(options: WFSDataSourceOptions, wfsService: WFSService, ogcFilterService: OGCFilterService, authInterceptor?: AuthInterceptor | undefined);
6185
+ constructor(options: WFSDataSourceOptions, wfsService: WFSService, ogcFilterService: OGCFilterService);
6162
6186
  protected createOlSource(): olSourceVector;
6163
6187
  setOgcFilters(ogcFilters: OgcFiltersOptions, triggerEvent?: boolean): void;
6164
6188
  onUnwatch(): void;
6165
6189
  refresh(): void;
6166
6190
  fetchFeatures({ extent, projection, httpClient }: FetchFeatureOptions): Observable<OlFeature<OlGeometry>[]>;
6191
+ private createRequestContext;
6192
+ private buildRequestUrls;
6193
+ private shouldBatchWfsRequest;
6194
+ createVectorSourceLoader(host: VectorSourceLoaderHost, options?: WFSDataSourceOptions, randomParam?: boolean): FeatureLoader;
6167
6195
  private _fetchFeatures;
6168
6196
  private _parseXmlFeatures;
6169
6197
  }
6198
+ declare function buildWfsBatchUrls(url: string, maxFeatures: number, batchSize?: number): string[];
6170
6199
 
6171
6200
  type AnyDataSourceOptions = DataSourceOptions | OSMDataSourceOptions | FeatureDataSourceOptions | WFSDataSourceOptions | XYZDataSourceOptions | TileDebugDataSourceOptions | WMTSDataSourceOptions | WMSDataSourceOptions | CartoDataSourceOptions | ArcGISRestDataSourceOptions | ArcGISRestImageDataSourceOptions | TileArcGISRestDataSourceOptions | MVTDataSourceOptions | ClusterDataSourceOptions;
6172
6201
  type AnyDataSourceOptionsWithParams = FeatureDataSourceOptions | WFSDataSourceOptions | WMSDataSourceOptions | CartoDataSourceOptions | ArcGISRestDataSourceOptions | ArcGISRestImageDataSourceOptions | TileArcGISRestDataSourceOptions;
@@ -6215,11 +6244,17 @@ declare function getFilterBadge(dataSourceOptions: AnyDataSourceOptions): number
6215
6244
 
6216
6245
  type AnyDataSource = DataSource | OSMDataSource | FeatureDataSource | WFSDataSource | XYZDataSource | TileDebugDataSource | WMTSDataSource | WMSDataSource | CartoDataSource | ArcGISRestDataSource | ImageArcGISRestDataSource | TileArcGISRestDataSource | WebSocketDataSource | MVTDataSource | ClusterDataSource;
6217
6246
 
6247
+ declare class StyleService {
6248
+ private readonly engines;
6249
+ getStyle(options: AnyStyle, ol: olLayerVector | olLayerVectorTile): Promise<AnyOlStyle>;
6250
+ getLegend(options: AnyStyle): Promise<string | undefined>;
6251
+ private findEngine;
6252
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<StyleService, never>;
6253
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<StyleService>;
6254
+ }
6255
+
6218
6256
  declare abstract class Layer extends LayerBase<LayerGroup> {
6219
6257
  options: LayerOptions;
6220
- protected messageService?: MessageService | undefined;
6221
- protected authInterceptor?: AuthInterceptor | undefined;
6222
- protected styleService?: StyleService | undefined;
6223
6258
  dataSource: DataSource;
6224
6259
  ol: OlLayer<Source>;
6225
6260
  hasBeenVisible$: BehaviorSubject<boolean>;
@@ -6228,6 +6263,10 @@ declare abstract class Layer extends LayerBase<LayerGroup> {
6228
6263
  link?: Linked;
6229
6264
  linkMaster?: Linked;
6230
6265
  private resolution$$?;
6266
+ /** Do not remove those injections, they are needed in the other layer class. Without that they are not injected. */
6267
+ protected messageService: MessageService | null;
6268
+ protected xhrInterceptor: _igo2_core_auth.IXhrInterceptor | null;
6269
+ protected styleService: StyleService | null;
6231
6270
  get visible(): boolean;
6232
6271
  set visible(value: boolean);
6233
6272
  get maxResolution(): number;
@@ -6235,8 +6274,9 @@ declare abstract class Layer extends LayerBase<LayerGroup> {
6235
6274
  get minResolution(): number;
6236
6275
  set minResolution(value: number);
6237
6276
  get saveableOptions(): Partial<LayerOptions>;
6238
- constructor(options: LayerOptions, messageService?: MessageService | undefined, authInterceptor?: AuthInterceptor | undefined, styleService?: StyleService | undefined);
6277
+ constructor(options: LayerOptions);
6239
6278
  protected abstract createOlLayer(): OlLayer<Source>;
6279
+ refresh(): void;
6240
6280
  init(map: MapBase): void;
6241
6281
  createLink(): void;
6242
6282
  remove(): void;
@@ -6388,10 +6428,13 @@ declare class VectorWatcher extends Watcher {
6388
6428
  private id;
6389
6429
  private loaded;
6390
6430
  private loading;
6431
+ private onFeatureLoadStart;
6432
+ private onFeatureLoadEnd;
6391
6433
  private layer;
6392
6434
  constructor(layer: VectorLayer);
6393
6435
  protected watch(): void;
6394
6436
  protected unwatch(): void;
6437
+ private getWatchableSource;
6395
6438
  private handleLoadStart;
6396
6439
  private handleLoadEnd;
6397
6440
  }
@@ -6595,6 +6638,7 @@ declare class LayerUnavailableListComponent {
6595
6638
 
6596
6639
  declare class LayerViewerBottomActionsComponent {
6597
6640
  private layerListToolService;
6641
+ private layerPersistence;
6598
6642
  orderable: boolean;
6599
6643
  readonly map: _angular_core.InputSignal<MapBase>;
6600
6644
  readonly controller: _angular_core.InputSignal<LayerController>;
@@ -8582,7 +8626,6 @@ declare class SearchResultsComponent implements OnInit, OnDestroy {
8582
8626
  declare class SearchResultAddButtonComponent implements OnInit, OnDestroy {
8583
8627
  private layerService;
8584
8628
  private dialog;
8585
- private dataSourceService;
8586
8629
  private mediaService;
8587
8630
  tooltip$: BehaviorSubject<string>;
8588
8631
  addFeatureToLayerTooltip$: BehaviorSubject<string>;
@@ -8950,6 +8993,7 @@ declare class DirectionsComponent implements OnInit, OnDestroy {
8950
8993
  private directionsSourceService;
8951
8994
  private searchService;
8952
8995
  private queryService;
8996
+ private layerService;
8953
8997
  projection: string;
8954
8998
  private storeEmpty$$;
8955
8999
  private storeChange$$;
@@ -9349,7 +9393,7 @@ declare class WorkspaceSelectorDirective implements OnInit, OnDestroy {
9349
9393
  readonly map: _angular_core.InputSignal<IgoMap | undefined>;
9350
9394
  readonly changeWorkspace: _angular_core.OutputEmitterRef<string>;
9351
9395
  readonly disableSwitch: _angular_core.OutputEmitterRef<boolean>;
9352
- readonly relationLayers: _angular_core.OutputEmitterRef<VectorLayer[] | ImageLayer[]>;
9396
+ readonly relationLayers: _angular_core.OutputEmitterRef<ImageLayer[] | VectorLayer[]>;
9353
9397
  readonly rowsInMapExtentCheckCondition: _angular_core.OutputEmitterRef<boolean>;
9354
9398
  get workspaceStore(): WorkspaceStore;
9355
9399
  ngOnInit(): void;
@@ -10622,7 +10666,7 @@ declare class DataSourceService {
10622
10666
  private ogcFilterService;
10623
10667
  private languageService;
10624
10668
  private messageService;
10625
- private authInterceptor;
10669
+ private xhrInterceptor;
10626
10670
  createAsyncDataSource(options: AnyDataSourceOptions, detailedContextUri?: string): Observable<DataSource>;
10627
10671
  private createOSMDataSource;
10628
10672
  private createFeatureDataSource;
@@ -10779,20 +10823,20 @@ declare function directionsStyle(feature: OlFeature<OlGeometry> | OlRenderFeatur
10779
10823
  * @param {StopsFeatureStore} stopsFeatureStore - The stops feature store to initialize.
10780
10824
  * @param {LanguageService} languageService - The language service used for translations.
10781
10825
  */
10782
- declare function initStopsFeatureStore(stopsFeatureStore: StopsFeatureStore, languageService: LanguageService): void;
10826
+ declare function initStopsFeatureStore(stopsFeatureStore: StopsFeatureStore, languageService: LanguageService, layerService: LayerService): void;
10783
10827
  /**
10784
10828
  * Initializes the routes feature store with the provided language service.
10785
10829
  *
10786
10830
  * @param {StopsFeatureStore} routesFeatureStore - The routes feature store to initialize.
10787
10831
  * @param {LanguageService} languageService - The language service used for translations.
10788
10832
  */
10789
- declare function initRoutesFeatureStore(routesFeatureStore: RoutesFeatureStore, languageService: LanguageService): void;
10833
+ declare function initRoutesFeatureStore(routesFeatureStore: RoutesFeatureStore, languageService: LanguageService, layerService: LayerService): void;
10790
10834
  /**
10791
10835
  * Initializes the routes feature store.
10792
10836
  *
10793
10837
  * @param {StopsFeatureStore} stepsFeatureStore - The steps feature store to initialize.
10794
10838
  */
10795
- declare function initStepsFeatureStore(stepsFeatureStore: StepsFeatureStore): void;
10839
+ declare function initStepsFeatureStore(stepsFeatureStore: StepsFeatureStore, layerService: LayerService): void;
10796
10840
  /**
10797
10841
  * Adds a stop to the stopsFeatureStore.
10798
10842
  *
@@ -11081,7 +11125,6 @@ declare class ImportService {
11081
11125
  static ɵprov: _angular_core.ɵɵInjectableDeclaration<ImportService>;
11082
11126
  }
11083
11127
 
11084
- declare function addLayerAndFeaturesToMap(features: Feature[], map: IgoMap, contextUri: string, layerTitle: string, layerService: LayerService, storeToIdb?: boolean): VectorLayer;
11085
11128
  declare function handleFileImportSuccess(file: File, features: Feature[], map: IgoMap, contextUri: string, messageService: MessageService, layerService: LayerService, confirmDialogService?: ConfirmDialogService): void;
11086
11129
  declare function handleFileImportError(file: File, error: Error, messageService: MessageService, sizeMb?: number): void;
11087
11130
  declare function handleInvalidFileImportError(file: File, error: Error, messageService: MessageService): void;
@@ -11099,118 +11142,6 @@ declare class MetadataService {
11099
11142
  static ɵprov: _angular_core.ɵɵInjectableDeclaration<MetadataService>;
11100
11143
  }
11101
11144
 
11102
- declare enum InsertSourceInsertDBEnum {
11103
- System = "system",
11104
- User = "user"
11105
- }
11106
-
11107
- interface GeoDBData {
11108
- url: string;
11109
- regionID: any;
11110
- object: any;
11111
- compressed: boolean;
11112
- insertSource: InsertSourceInsertDBEnum;
11113
- insertEvent: string;
11114
- }
11115
- interface GeoDataToIDB {
11116
- triggerDate: Date | string;
11117
- action: 'delete' | 'update';
11118
- urls: string[];
11119
- source?: string;
11120
- zippedBaseUrl?: string;
11121
- }
11122
- interface DatasToIDB {
11123
- geoDatas: GeoDataToIDB[];
11124
- }
11125
-
11126
- declare class GeoDB {
11127
- private db$;
11128
- private compression;
11129
- collisionsMap: Map<string | number, string[]>;
11130
- _newData: number;
11131
- private revertObservablesSubscription;
11132
- constructor();
11133
- /**
11134
- * Only blob can be compressed
11135
- * @param url
11136
- * @param regionID
11137
- * @param object object to handle
11138
- * @param insertSource type of event user or system
11139
- * @param insertEvent Name of the event where the insert has been triggered
11140
- * @returns
11141
- */
11142
- update(url: string, regionID: number | string, object: object | Blob, insertSource: InsertSourceInsertDBEnum, insertEvent: string): Observable<GeoDBData>;
11143
- private customUpdate;
11144
- add(geoDBData: GeoDBData): Observable<GeoDBData>;
11145
- put(geoDBData: GeoDBData): Observable<GeoDBData>;
11146
- getGeoDBData(url: string): Observable<GeoDBData | undefined>;
11147
- get(url: string): Observable<object | Blob>;
11148
- delete(key: string): Observable<object>;
11149
- getRegionCountByID(id: number): Observable<number>;
11150
- getRegionByID(id: number): Observable<GeoDBData[]>;
11151
- deleteByRegionID(id: number): Observable<void[]>;
11152
- resetCounters(): void;
11153
- resetCollisionsMap(): void;
11154
- revertCollisions(): void;
11155
- get newData(): number;
11156
- }
11157
-
11158
- declare class ConfigFileToGeoDBService {
11159
- private http;
11160
- private messageService;
11161
- load(urlFile: string): void;
11162
- private isZip;
11163
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ConfigFileToGeoDBService, never>;
11164
- static ɵprov: _angular_core.ɵɵInjectableDeclaration<ConfigFileToGeoDBService>;
11165
- }
11166
-
11167
- interface LayerDBData {
11168
- layerId: string;
11169
- layerOptions: any;
11170
- sourceOptions: any;
11171
- insertEvent: string;
11172
- detailedContextUri: string;
11173
- }
11174
-
11175
- declare class LayerDB {
11176
- private db$;
11177
- constructor();
11178
- /**
11179
- * This method allow to update the stored layer into the indexeddb (layerData)
11180
- * @param layerDBData
11181
- * @returns
11182
- */
11183
- update(layerDBData: LayerDBData): Observable<LayerDBData>;
11184
- private customUpdate;
11185
- add(layerDBData: LayerDBData): Observable<LayerDBData>;
11186
- /**
11187
- * This method retrieve an idb layer definition
11188
- * @param layerId
11189
- * @returns
11190
- */
11191
- getByID(layerId: LayerId): Observable<LayerDBData | undefined>;
11192
- /**
11193
- * This method delete an idb layer definition
11194
- * @param key
11195
- * @returns
11196
- */
11197
- delete(key: string): Observable<object>;
11198
- /**
11199
- * This method retrive all idb layer definition
11200
- * @param layerId
11201
- * @returns
11202
- */
11203
- getAll(): Observable<LayerDBData[]>;
11204
- }
11205
-
11206
- interface IOfflineOptions {
11207
- enable: boolean;
11208
- }
11209
-
11210
- /** Ensure to create the indexDB on app initialisation and provide
11211
- * GeoNetworkService, ConfigFileToGeoDBService */
11212
- declare function provideOffline(options: IOfflineOptions): EnvironmentProviders;
11213
-
11214
11145
  declare enum OverlayAction {
11215
11146
  None = 0,
11216
11147
  Move = 1,
@@ -11725,6 +11656,7 @@ interface EditionWorkspaceMeta {
11725
11656
  declare class EditionWorkspace extends Workspace {
11726
11657
  private configService;
11727
11658
  private adding$;
11659
+ private layerService;
11728
11660
  protected options: EditionWorkspaceOptions;
11729
11661
  readonly inResolutionRange$: BehaviorSubject<boolean>;
11730
11662
  get layer(): ImageLayer | VectorLayer;
@@ -11742,7 +11674,7 @@ declare class EditionWorkspace extends Workspace {
11742
11674
  fillColor: string;
11743
11675
  strokeColor: string;
11744
11676
  strokeWidth: number;
11745
- constructor(configService: ConfigService, adding$: BehaviorSubject<boolean>, options: EditionWorkspaceOptions);
11677
+ constructor(configService: ConfigService, adding$: BehaviorSubject<boolean>, layerService: LayerService, options: EditionWorkspaceOptions);
11746
11678
  getDeleteUrl(feature: Feature): string;
11747
11679
  editFeature(feature: EditionFeature): void;
11748
11680
  private findFeatureId;
@@ -11796,10 +11728,9 @@ declare class EditionWorkspaceService {
11796
11728
  private messageService;
11797
11729
  private http;
11798
11730
  private dialog;
11799
- authInterceptor?: AuthInterceptor | undefined;
11800
11731
  ws$: BehaviorSubject<string | undefined>;
11801
11732
  adding$: BehaviorSubject<boolean>;
11802
- relationLayers$: BehaviorSubject<VectorLayer[] | ImageLayer[] | undefined>;
11733
+ relationLayers$: BehaviorSubject<ImageLayer[] | VectorLayer[] | undefined>;
11803
11734
  rowsInMapExtentCheckCondition$: BehaviorSubject<boolean>;
11804
11735
  loading: boolean;
11805
11736
  wktFormat: WKT;
@@ -11920,5 +11851,5 @@ declare function provideInteractiveSelectionFormWidget(): {
11920
11851
  deps: (typeof WidgetService)[];
11921
11852
  };
11922
11853
 
11923
- export { AddCatalogDialogComponent, ArcGISRestCapabilitiesLayerTypes, ArcGISRestDataSource, BaseLayersSwitcherComponent, CADASTRE_SEARCH_SOURCE_OPTIONS, CATALOG_DIRECTIVES, CATALOG_LIBRARY_DIRECTIVES, COORDINATES_REVERSE_SEARCH_SOURCE_OPTIONS, COORDINATES_REVERSE_SEARCH_SOURCE_PROJECTIONS, CadastreSearchSource, CapabilitiesService, CartoDataSource, Catalog, CatalogBrowserComponent, CatalogItemType, CatalogLibraryComponent, CatalogService, ClusterDataSource, ConfigFileToGeoDBService, ConfirmationPopupComponent, CoordinatesReverseSearchSource, CoordinatesReverseSearchSourceFactory, CoordinatesSearchResultFormatter, CoordinatesUnit, CsvSeparator, DDtoDMS, DataService, DataSource, DataSourceService, DirectionRelativePositionType, DirectionSourceKind, DirectionsButtonsComponent, DirectionsComponent, DirectionsFormat, DirectionsInputsComponent, DirectionsResultsComponent, DirectionsService, DirectionsSource, DirectionsType, DownloadButtonComponent, DownloadService, DrawComponent, DrawControl, DrawIconService, DrawStyleService, DropGeoFileDirective, EditionWorkspace, EditionWorkspaceService, EpsgSelectorModalComponent, EsriStyleGenerator, EventRefresh, ExportButtonComponent, ExportError, ExportFormat, ExportFormatLegacy, ExportInvalidFileError, ExportNothingToExportError, ExportService, FEATURE, FEATURE_DETAILS_DIRECTIVES, FEATURE_DIRECTIVES, FILTER_DIRECTIVES, FeatureDataSource, FeatureDetailsComponent, FeatureDetailsDirective, FeatureDetailsPanelComponent, FeatureFormComponent, FeatureMotion, FeatureStore, FeatureStoreInMapExtentStrategy, FeatureStoreInMapResolutionStrategy, FeatureStoreLoadingLayerStrategy, FeatureStoreLoadingStrategy, FeatureStoreSearchIndexStrategy, FeatureStoreSelectionStrategy, FeatureWorkspace, FeatureWorkspaceService, FilterableDataSourcePipe, FontType, GEOMETRY_FORM_FIELD_DIRECTIVES, GeoDB, GeoNetworkService, GeoPropertiesStrategy, GeolocateButtonComponent, GeolocationOverlayType, GeometryFormFieldComponent, GeometryFormFieldInputComponent, GeometrySliceError, GeometrySliceLineStringError, GeometrySliceMultiPolygonError, GeometrySliceTooManyIntersectionError, GeometryType, GeostylerService, GetCapabilitiesParams, GoogleLinks, HomeExtentButtonComponent, HoverFeatureDirective, ICHERCHE_REVERSE_SEARCH_SOURCE_OPTIONS, ICHERCHE_SEARCH_SOURCE_OPTIONS, IChercheReverseSearchSource, IChercheSearchResultFormatter, IChercheSearchSource, ID_GROUP_PREFIX, ILAYER_SEARCH_SOURCE_OPTIONS, ILayerSearchResultFormatter, ILayerSearchSource, IMPORT_EXPORT_DIRECTIVES, IgoCatalogBrowserModule, IgoCatalogLibraryModule, IgoCatalogModule, IgoConfirmationPopupModule, IgoDirectionsModule, IgoDownloadModule, IgoDrawModule, IgoDrawingToolModule, IgoFeatureDetailsModule, IgoFeatureFormModule, IgoFeatureModule, IgoFilterModule, IgoGeoModule, IgoGeoWorkspaceModule, IgoGeometryFormFieldModule, IgoGeometryModule, IgoHttpParameterCodec, IgoImportExportModule, IgoLayerModule, IgoMap, IgoMapModule, IgoMeasureModule, IgoMeasurerModule, IgoMetadataModule, IgoOgcFilterModule, IgoPrintModule, IgoQueryModule, IgoSearchBarModule, IgoSearchModule, IgoSearchResultsModule, IgoSearchSelectorModule, IgoSearchSettingsModule, IgoStyleModule, IgoToastModule, IgoWktModule, IgoWorkspaceSelectorModule, IgoWorkspaceUpdatorModule, ImageArcGISRestDataSource, ImageLayer, ImageWatcher, ImportError, ImportExportComponent, ImportInvalidFileError, ImportNothingToImportError, ImportOgreServerError, ImportSRSError, ImportService, ImportSizeError, ImportUnreadableFileError, InfoSectionComponent, InsertSourceInsertDBEnum, InteractiveSelectionFormWidget, LAYER, LAYER_DIRECTIVES, LabelType, LaneType, Layer, LayerBase, LayerController, LayerDB, LayerGroup, LayerGroupBase, LayerGroupComponent, LayerItemComponent, LayerLegendComponent, LayerLegendItemComponent, LayerLegendListBindingDirective, LayerLegendListComponent, LayerListComponent, LayerListControlsEnum, LayerListToolComponent, LayerListToolService, LayerSearchComponent, LayerService, LayerUnavailableComponent, LayerUnavailableListComponent, LayerViewerBottomActionsComponent, LayerViewerComponent, LayerVisibilityButtonComponent, Linked, LinkedProperties, MAP_DIRECTIVES, MEASURER_DIRECTIVES, MEASURE_UNIT_AUTO, METADATA_DIRECTIVES, MVTDataSource, ManeuverModifier, ManeuverType, MapBase, MapBrowserComponent, MapCenterComponent, MapController, MapGeolocationController, MapOfflineDirective, MapService, MapViewAction, MapViewController, MapboxService, MeasureAreaUnit, MeasureAreaUnitAbbreviation, MeasureFormatPipe, MeasureLengthUnit, MeasureLengthUnitAbbreviation, MeasureType, MeasurerComponent, MenuButtonComponent, MetadataAbstractComponent, MetadataButtonComponent, MetadataService, MiniBaseMapComponent, ModifyControl, NOMINATIM_SEARCH_SOURCE_OPTIONS, NominatimSearchSource, OGCFilterService, OSMDataSource, OfflineButtonComponent, OgcFilterButtonComponent, OgcFilterComponent, OgcFilterFormComponent, OgcFilterOperator, OgcFilterOperatorType, OgcFilterSelectionComponent, OgcFilterTimeComponent, OgcFilterTimeSliderComponent, OgcFilterWidget, OgcFilterWriter, OgcFilterableFormComponent, OgcFilterableItemComponent, OgcFilterableListBindingDirective, OgcFilterableListComponent, OgcSelectorFields, OlDragSelectInteraction, OptionsApiService, OptionsService, OsmLinks, OsrmDirectionsSource, Overlay, OverlayAction, PointerPositionDirective, PrintComponent, PrintFormComponent, PrintLegendPosition, PrintOrientation, PrintOutputFormat, PrintPaperFormat, PrintResolution, PrintSaveImageFormat, PrintService, ProjectionService, PropertyTypeDetectorService, ProposalType, QueryDirective, QueryFormat, QueryFormatMimeType, QueryHtmlTarget, QuerySearchSource, QueryService, RADIUS_NAME, RotationButtonComponent, RoutesFeatureStore, SEARCH_DIRECTIVES, SEARCH_RESULTS_DIRECTIVES, SEARCH_TYPES, STORED_QUERIES_REVERSE_SEARCH_SOURCE_OPTIONS, STORED_QUERIES_SEARCH_SOURCE_OPTIONS, STYLE_ENGINES, SearchBarComponent, SearchPointerSummaryDirective, SearchResultAddButtonComponent, SearchResultMode, SearchResultsComponent, SearchSelectorComponent, SearchService, SearchSettingsComponent, SearchSource, SearchSourceKind, SearchSourceService, SliceControl, SourceDirectionsType, SpatialFilterItemComponent, SpatialFilterItemType, SpatialFilterListComponent, SpatialFilterQueryType, SpatialFilterService, SpatialFilterType, SpatialFilterTypeComponent, StepsFeatureStore, StopsFeatureStore, StopsStore, StoredQueriesReverseSearchSource, StoredQueriesSearchSource, StyleEngineKind, StyleModalDrawingComponent, StyleModalLayerButtonComponent, StyleModalLayerComponent, StyleService, SwipeControlComponent, TileArcGISRestDataSource, TileDebugDataSource, TileLayer, TileWatcher, TimeFilterButtonComponent, TimeFilterFormComponent, TimeFilterItemComponent, TimeFilterListBindingDirective, TimeFilterListComponent, TimeFilterService, TimeFilterStyle, TimeFilterType, TooltipType, TrackFeatureButtonComponent, TypeCapabilities, TypeCatalog, VectorLayer, VectorTileLayer, VectorWatcher, WFSDataSource, WFSService, WMSDataSource, WMTSDataSource, WORKSPACE_SEARCH_SOURCE_OPTIONS, WakeLockButtonComponent, WebSocketDataSource, WfsWorkspace, WfsWorkspaceService, WktService, WorkspaceSearchSource, WorkspaceSelectorDirective, WorkspaceUpdatorDirective, XYZDataSource, ZoomButtonComponent, addLayerAndFeaturesToMap, addLinearRingToOlPolygon, addOrRemoveLayer, addRouteToRoutesFeatureStore, addStopToStopsFeatureStore, addStopToStore, baseOlStyle, bufferOlGeometry, buildUrl, cadastreSearchSourceFactory, checkWfsParams, clearOlGeometryMidpoints, clusterOlStyleFunction, computeBestAreaUnit, computeBestLengthUnit, computeLayerTitleFromFile, computeOlFeatureExtent, computeOlFeaturesDiff, computeOlFeaturesExtent, computeProjectionsConstraints, computeRelativePosition, computeStopsPosition, computeTermSimilarity, convertDDToDMS, createDefaultTileGrid, createDrawHoleInteractionStyle, createDrawInteractionStyle, createFilterInMapExtentOrResolutionStrategy, createInteractionStyle, createMeasureInteractionStyle, createMeasureLayerStyle, createOlTooltipAtPoint, createOlTooltipDrawAtPoint, createTableTemplate, ctrlKeyDown, defaultCoordinatesSearchResultFormatterFactory, defaultEpsg, defaultFieldNameGeometry, defaultIChercheSearchResultFormatterFactory, defaultMaxFeatures, defaultWfsVersion, detectFileEPSG, directionsStyle, doesOlGeometryIntersects, entitiesToRowData, exportToCSV, featureFromOl, featureToOl, featureToSearchResult, featuresAreOutOfView, featuresAreTooDeepInView, findDiff, findLayerByLinkId, findParentId, formatDistance, formatDuration, formatMeasure, formatScale, formatStep, formatWFSQueryString, generateArcgisRestIdFromSourceOptions, generateFeatureIdFromSourceOptions, generateId, generateIdFromSourceOptions, generateWMSIdFromSourceOptions, generateWMTSIdFromSourceOptions, generateWfsIdFromSourceOptions, generateXYZIdFromSourceOptions, getAllChildLayersByDeletion, getAllChildLayersByProperty, getFileExtension, getFilterBadge, getFormatFromOptions, getGeoServiceAction, getLayerOptionIdentifier, getLayersByDeletion, getLayersLegends, getLinkedLayersOptions, getMousePositionFromOlGeometryEvent, getOlTooltipAtCenter, getOlTooltipsAtMidpoints, getResolutionFromScale, getRootParentByDeletion, getRootParentByProperty, getRowsInMapExtent, getSaveableOgcParams, getScaleFromResolution, getSelectedOnly, getTooltipsOfOlGeometry, gmlRegex, handleFileExportError, handleFileExportSuccess, handleFileImportError, handleFileImportSuccess, handleInvalidFileImportError, handleLayerPropertyChange, handleNothingToExportError, handleNothingToImportError, handleOgreServerImportError, handleSRSImportError, handleSizeFileImportError, handleUnreadbleFileImportError, hideOlFeature, ichercheReverseSearchSourceFactory, ichercheSearchSourceFactory, ilayerSearchResultFormatterFactory, ilayerSearchSourceFactory, initRoutesFeatureStore, initStepsFeatureStore, initStopsFeatureStore, interactiveSelectionFormWidgetFactory, isAnyOlStyle, isBaseLayer, isBaseLayerLinked, isCsvExport, isEngineLayerStyle, isLayerGroup, isLayerGroupOptions, isLayerItem, isLayerItemOptions, isLayerLinked, isLayerLinkedOptions, isLayerLinkedTogether, isLinkMaster, isOlFlatStyleLike, isSaveableLayer, jsonRegex, layerFeatureIsQueryable, layerIsQueryable, lonLatConversion, mapExtentStrategyActiveToolTip, markerOlStyle, measureOlGeometry, measureOlGeometryArea, measureOlGeometryLength, mergeLayersOptions, metersToFeet, metersToKilometers, metersToMiles, metersToUnit, moveToOlFeatures, mtmZoneFromLonLat, nearTransparentOlStyle, noElementSelected, nominatimSearchSourceFactory, ogcFilterWidgetFactory, olLayerFeatureIsQueryable, olLayerIsQueryable, optionsApiFactory, osrmDirectionsSourcesFactory, provideCadastreSearchSource, provideCoordinatesReverseSearchSource, provideDefaultCoordinatesSearchResultFormatter, provideDefaultIChercheSearchResultFormatter, provideDirection, provideIChercheReverseSearchSource, provideIChercheSearchSource, provideILayerSearchResultFormatter, provideILayerSearchSource, provideInteractiveSelectionFormWidget, provideNominatimSearchSource, provideOffline, provideOgcFilterWidget, provideOptionsApi, provideOsrmDirectionsSource, provideQuerySearchSource, provideSearch, provideSearchSourceService, provideStoredQueriesReverseSearchSource, provideStoredQueriesSearchSource, provideStyle, provideWorkspaceSearchSource, querySearchSourceFactory, randomOlFlatStyle, removeStopFromStore, renderFeatureFromOl, roundCoordTo, roundCoordToString, scaleExtent, searchSourceServiceFactory, selectionOlStyle, setRowsInMapExtent, setSelectedOnly, sliceOlGeometry, sliceOlPolygon, sortLayersByZindex, sourceCanReverseSearch, sourceCanReverseSearchAsSummary, sourceCanSearch, squareMetersToAcres, squareMetersToHectares, squareMetersToSquareFeet, squareMetersToSquareKilometers, squareMetersToSquareMiles, squareMetersToUnit, standardizeUrl, storedqueriesReverseSearchSourceFactory, storedqueriesSearchSourceFactory, stringToLonLat, styleVariant, translateManeuverBearing, translateManeuverModifier, tryAddLoadingStrategy, tryAddSelectionStrategy, tryBindStoreLayer, updateOlGeometryCenter, updateOlGeometryMidpoints, updateOlTooltipAtCenter, updateOlTooltipDrawAtCenter, updateOlTooltipsAtMidpoints, updateOlTooltipsDrawAtMidpoints, updateStoreSorting, utmZoneFromLonLat, viewStatesAreEqual, withCadastreSource, withCoordinatesReverseSource, withGeostyler, withIChercheReverseSource, withIChercheSource, withILayerSource, withMapbox, withNominatimSource, withOsrmSource, withStoredQueriesReverseSource, withStoredQueriesSource, withWorkspaceSource, workspaceSearchSourceFactory, zoneMtm, zoneUtm };
11924
- export type { AddedChangeEmitter, AddedChangeGroupEmitter, AnyBaseOgcFilterOptions, AnyDataSource, AnyDataSourceOptions, AnyDataSourceOptionsWithParams, AnyEventName, AnyExportFormat, AnyLayer, AnyLayerBase, AnyLayerItemOptions, AnyLayerOptions, AnyOlStyle, AnyPropertyOptions, AnyStyle, AnyWorkspace, ArcGISRestCapabilitiesLayer, ArcGISRestDataSourceOptions, ArcGISRestDataSourceOptionsParams, ArcGISRestImageDataSourceOptions, ArcGISSymbol, BaseDirectionsSourceOptions, BaseDirectionsSourceOptionsProfile, BaseDirectionsSourceOptionsProfileAuthorization, Buffer, CartoDataSourceOptions, CatalogItem, CatalogItemGroup, CatalogItemLayer, CatalogItemState, CatalogQueryFormatTypes, CatalogServiceOptions, ClusterDataSourceOptions, ClusterParam, ClusterRange, CollectCatalogItemsFn, ConfigurableStylesOptions, CoordinatesData, CoordinatesResponse, CoordinatesReverseData, CoordinatesReverseResponse, DataSourceOptions, DatasToIDB, DatasourceEvent, DialogData, DirectionOptions, DirectionSourceFeature, Directions, DirectionsGeometry, DirectionsSourceOptions, DownloadDataSourceOptions, DownloadOptions, Draw, DrawControlOptions, DrawOptions, DrawingMatDialogData, DrawingStyle, EditionOptions, EditionWorkspaceOptions, EngineLayerStyle, EnvironmentOptions, ExportOgreFormat, ExportOptions, Feature, FeatureDataSourceOptions, FeatureFormSubmitEvent, FeatureGeometry, FeatureMeta, FeatureStoreDrawStrategyOptions, FeatureStoreInMapExtentStrategyOptions, FeatureStoreInMapResolutionStrategyOptions, FeatureStoreLoadingLayerStrategyOptions, FeatureStoreLoadingStrategyOptions, FeatureStoreMeasureStrategyOptions, FeatureStoreOptions, FeatureStorePropertyTypeStrategyOptions, FeatureStoreSearchIndexStrategyOptions, FeatureStoreSelectionStrategyOptions, FeatureStoreStrategyOptions, FeatureWithDirections, FeatureWithDirectionsProperties, FeatureWithDraw, FeatureWithDrawProperties, FeatureWithMeasure, FeatureWithMeasureProperties, FeatureWithStep, FeatureWithStepProperties, FeatureWithStop, FeatureWithStopProperties, FeatureWorkspaceOptions, ForcedProperty, FormattedStep, GeoDBData, GeoDataToIDB, GeoJSONGeometry, GeoServiceDefinition, GeoWorkspaceOptions, GeoWorkspaceQueryOptions, GeolocationBuffer, GeolocationOptions, GeometryCollection, GeometryFormFieldInputs, GeostylerLayerStyle, HomeExtentButtonOptions, IArcgisVectorTileServerCapabilities, ICatalog, IChercheData, IChercheResponse, IChercheReverseData, IChercheReverseResponse, ICompositeCatalog, ILayerData, ILayerDataHighlight, ILayerDataSource, ILayerItemResponse, ILayerSearchSourceOptions, ILayerServiceResponse, IOfflineOptions, IOgcFiltersOptionSaveable, IOgcInterfaceFilterOptions, ISearchSourceParams, IdbInfo, IgoDomSelector, IgoLogicalArrayOptions, IgoOgcFilterObject, IgoOgcSelector, IgoStep, ImageLayerOptions, ImportExportServiceOptions, InputProjections, ItemStyleOptions, LayerConfig, LayerDBData, LayerGroupOptions, LayerId, LayerListControlsOptions, LayerMatDialogData, LayerOptions, LayerOptionsBase, LayerSecurityOptions, LayerToolMode, LayerType, LayerViewerOptions, LayersLink, LayersLinkProperties, Legend, LegendMapViewOptions, LegendOptions, MVTDataSourceOptions, MapAttributionOptions, MapControlsOptions, MapExtent, MapGeolocationControllerOptions, MapGeolocationState, MapOptions, MapScaleLineOptions, MapViewControllerOptions, MapViewOptions, MapViewState, MapboxLayerStyle, MapboxUrlResponse, Measure, MeasurerDialogData, MetadataLayerOptions, MetadataOptions, ModifyControlOptions, NominatimData, OSMDataSourceOptions, OgcAutocomplete, OgcCheckbox, OgcFilter, OgcFilterAttributeOptions, OgcFilterConditionsArrayOptions, OgcFilterDuringOptions, OgcFilterEqualToOptions, OgcFilterGreaterLessOptions, OgcFilterIsBetweenOptions, OgcFilterIsLikeOptions, OgcFilterIsNullOptions, OgcFilterSpatialOptions, OgcFilterableDataSource, OgcFilterableDataSourceOptions, OgcFiltersOptions, OgcInterfaceFilterOptions, OgcPushButton, OgcRadioButton, OgcSelect, OgcSelectorBundle, OptionsApiOptions, OsrmApiResponse, OsrmDirectionsSourceOptions, OsrmIntersection, OsrmLane, OsrmRawRoute, OsrmRouteLeg, OsrmRouteStep, OsrmStepManeuver, OsrmWaypoint, OutputLayerLegend, PreloadOptions, PrintOptions, Projection, ProjectionsLimitationsOptions, QueryOptions, QueryUrlData, QueryableDataSource, QueryableDataSourceOptions, RelationOptions, Research, ResponseType, ReverseSearch, ReverseSearchOptions, SearchIndexOptions, SearchMeta, SearchResult, SearchSourceFeature, SearchSourceOptions, SearchSourceSettings, SelectorGroup, SettingOptions, SimpleGetOptions, SliceControlOptions, SliderOptionsInterface, SourceFieldsOptionsParams, SourceFieldsValidationParams, SourceProposal, SpatialFilterOptions, SpatialFilterThematic, Stop, StoreAndDrawControl, StoredQueriesData, StoredQueriesFields, StoredQueriesResponse, StoredQueriesReverseData, StoredQueriesReverseResponse, StoredQueriesReverseSearchSourceOptions, StoredQueriesSearchSourceOptions, StyleEngine, StyleEngineFeature, StyleModalData, StyleModalLayerData, TextPdfSizeAndMargin, TextSearch, TextSearchOptions, TileArcGISRestDataSourceOptions, TileDebugDataSourceOptions, TileGridOptions, TileLayerOptions, TimeFilterOptions, TimeFilterableDataSource, TimeFilterableDataSourceOptions, TooltipContent, TypeCapabilitiesStrings, TypeCatalogStrings, VectorAnimation, VectorLayerOptions, VectorTileLayerOptions, ViewerLegendOptions, WFSDataSourceOptions, WFSDataSourceOptionsParams, WFSWriteGetFeatureOptions, WMSDataSourceOptions, WMSDataSourceOptionsParams, WMTSDataSourceOptions, WebSocketDataSourceOptions, WfsWorkspaceOptions, WmsCapabilityLayer, WmsDimension, WmsStyle, WmtsCapabilities, WmtsCapabilityLayer, WorkspaceData, XYZDataSourceOptions, ZindexPropertyOptions };
11854
+ export { AddCatalogDialogComponent, ArcGISRestCapabilitiesLayerTypes, ArcGISRestDataSource, BaseLayersSwitcherComponent, CADASTRE_SEARCH_SOURCE_OPTIONS, CATALOG_DIRECTIVES, CATALOG_LIBRARY_DIRECTIVES, COORDINATES_REVERSE_SEARCH_SOURCE_OPTIONS, COORDINATES_REVERSE_SEARCH_SOURCE_PROJECTIONS, CadastreSearchSource, CapabilitiesService, CartoDataSource, Catalog, CatalogBrowserComponent, CatalogItemType, CatalogLibraryComponent, CatalogService, ClusterDataSource, ConfirmationPopupComponent, CoordinatesReverseSearchSource, CoordinatesReverseSearchSourceFactory, CoordinatesSearchResultFormatter, CoordinatesUnit, CsvSeparator, DDtoDMS, DataService, DataSource, DataSourceService, DirectionRelativePositionType, DirectionSourceKind, DirectionsButtonsComponent, DirectionsComponent, DirectionsFormat, DirectionsInputsComponent, DirectionsResultsComponent, DirectionsService, DirectionsSource, DirectionsType, DownloadButtonComponent, DownloadService, DrawComponent, DrawControl, DrawIconService, DrawStyleService, DropGeoFileDirective, EditionWorkspace, EditionWorkspaceService, EpsgSelectorModalComponent, EsriStyleGenerator, EventRefresh, ExportButtonComponent, ExportError, ExportFormat, ExportFormatLegacy, ExportInvalidFileError, ExportNothingToExportError, ExportService, FEATURE, FEATURE_DETAILS_DIRECTIVES, FEATURE_DIRECTIVES, FILTER_DIRECTIVES, FeatureDataSource, FeatureDetailsComponent, FeatureDetailsDirective, FeatureDetailsPanelComponent, FeatureFormComponent, FeatureMotion, FeatureStore, FeatureStoreInMapExtentStrategy, FeatureStoreInMapResolutionStrategy, FeatureStoreLoadingLayerStrategy, FeatureStoreLoadingStrategy, FeatureStoreSearchIndexStrategy, FeatureStoreSelectionStrategy, FeatureWorkspace, FeatureWorkspaceService, FilterableDataSourcePipe, FontType, GEOMETRY_FORM_FIELD_DIRECTIVES, GeoPropertiesStrategy, GeolocateButtonComponent, GeolocationOverlayType, GeometryFormFieldComponent, GeometryFormFieldInputComponent, GeometrySliceError, GeometrySliceLineStringError, GeometrySliceMultiPolygonError, GeometrySliceTooManyIntersectionError, GeometryType, GeostylerService, GetCapabilitiesParams, GoogleLinks, HomeExtentButtonComponent, HoverFeatureDirective, ICHERCHE_REVERSE_SEARCH_SOURCE_OPTIONS, ICHERCHE_SEARCH_SOURCE_OPTIONS, IChercheReverseSearchSource, IChercheSearchResultFormatter, IChercheSearchSource, ID_GROUP_PREFIX, ILAYER_SEARCH_SOURCE_OPTIONS, ILayerSearchResultFormatter, ILayerSearchSource, IMPORT_EXPORT_DIRECTIVES, IgoCatalogBrowserModule, IgoCatalogLibraryModule, IgoCatalogModule, IgoConfirmationPopupModule, IgoDirectionsModule, IgoDownloadModule, IgoDrawModule, IgoDrawingToolModule, IgoFeatureDetailsModule, IgoFeatureFormModule, IgoFeatureModule, IgoFilterModule, IgoGeoModule, IgoGeoWorkspaceModule, IgoGeometryFormFieldModule, IgoGeometryModule, IgoHttpParameterCodec, IgoImportExportModule, IgoLayerModule, IgoMap, IgoMapModule, IgoMeasureModule, IgoMeasurerModule, IgoMetadataModule, IgoOgcFilterModule, IgoPrintModule, IgoQueryModule, IgoSearchBarModule, IgoSearchModule, IgoSearchResultsModule, IgoSearchSelectorModule, IgoSearchSettingsModule, IgoStyleModule, IgoToastModule, IgoWktModule, IgoWorkspaceSelectorModule, IgoWorkspaceUpdatorModule, ImageArcGISRestDataSource, ImageLayer, ImageWatcher, ImportError, ImportExportComponent, ImportInvalidFileError, ImportNothingToImportError, ImportOgreServerError, ImportSRSError, ImportService, ImportSizeError, ImportUnreadableFileError, InfoSectionComponent, InteractiveSelectionFormWidget, LAYER, LAYER_DIRECTIVES, LAYER_PERSISTENCE, LabelType, LaneType, Layer, LayerBase, LayerController, LayerExtensionManager, LayerGroup, LayerGroupBase, LayerGroupComponent, LayerItemComponent, LayerLegendComponent, LayerLegendItemComponent, LayerLegendListBindingDirective, LayerLegendListComponent, LayerListComponent, LayerListControlsEnum, LayerListToolComponent, LayerListToolService, LayerSearchComponent, LayerService, LayerUnavailableComponent, LayerUnavailableListComponent, LayerViewerBottomActionsComponent, LayerViewerComponent, LayerVisibilityButtonComponent, Linked, LinkedProperties, MAP_DIRECTIVES, MEASURER_DIRECTIVES, MEASURE_UNIT_AUTO, METADATA_DIRECTIVES, MVTDataSource, ManeuverModifier, ManeuverType, MapBase, MapBrowserComponent, MapCenterComponent, MapController, MapGeolocationController, MapOfflineDirective, MapService, MapViewAction, MapViewController, MapboxService, MeasureAreaUnit, MeasureAreaUnitAbbreviation, MeasureFormatPipe, MeasureLengthUnit, MeasureLengthUnitAbbreviation, MeasureType, MeasurerComponent, MenuButtonComponent, MetadataAbstractComponent, MetadataButtonComponent, MetadataService, MiniBaseMapComponent, ModifyControl, NOMINATIM_SEARCH_SOURCE_OPTIONS, NominatimSearchSource, OFFLINE_LAYER_RESTORE, OGCFilterService, OSMDataSource, OfflineButtonComponent, OgcFilterButtonComponent, OgcFilterComponent, OgcFilterFormComponent, OgcFilterOperator, OgcFilterOperatorType, OgcFilterSelectionComponent, OgcFilterTimeComponent, OgcFilterTimeSliderComponent, OgcFilterWidget, OgcFilterWriter, OgcFilterableFormComponent, OgcFilterableItemComponent, OgcFilterableListBindingDirective, OgcFilterableListComponent, OgcSelectorFields, OlDragSelectInteraction, OptionsApiService, OptionsService, OsmLinks, OsrmDirectionsSource, Overlay, OverlayAction, OverlayService, PointerPositionDirective, PrintComponent, PrintFormComponent, PrintLegendPosition, PrintOrientation, PrintOutputFormat, PrintPaperFormat, PrintResolution, PrintSaveImageFormat, PrintService, ProjectionService, PropertyTypeDetectorService, ProposalType, QueryDirective, QueryFormat, QueryFormatMimeType, QueryHtmlTarget, QuerySearchSource, QueryService, RADIUS_NAME, RotationButtonComponent, RoutesFeatureStore, SEARCH_DIRECTIVES, SEARCH_RESULTS_DIRECTIVES, SEARCH_TYPES, STORED_QUERIES_REVERSE_SEARCH_SOURCE_OPTIONS, STORED_QUERIES_SEARCH_SOURCE_OPTIONS, STYLE_ENGINES, SearchBarComponent, SearchPointerSummaryDirective, SearchResultAddButtonComponent, SearchResultMode, SearchResultsComponent, SearchSelectorComponent, SearchService, SearchSettingsComponent, SearchSource, SearchSourceKind, SearchSourceService, SliceControl, SourceDirectionsType, SpatialFilterItemComponent, SpatialFilterItemType, SpatialFilterListComponent, SpatialFilterQueryType, SpatialFilterService, SpatialFilterType, SpatialFilterTypeComponent, StepsFeatureStore, StopsFeatureStore, StopsStore, StoredQueriesReverseSearchSource, StoredQueriesSearchSource, StyleEngineKind, StyleModalDrawingComponent, StyleModalLayerButtonComponent, StyleModalLayerComponent, StyleService, SwipeControlComponent, TileArcGISRestDataSource, TileDebugDataSource, TileLayer, TileWatcher, TimeFilterButtonComponent, TimeFilterFormComponent, TimeFilterItemComponent, TimeFilterListBindingDirective, TimeFilterListComponent, TimeFilterService, TimeFilterStyle, TimeFilterType, TooltipType, TrackFeatureButtonComponent, TypeCapabilities, TypeCatalog, VECTOR_LAYER_EXTENSIONS, VectorLayer, VectorTileLayer, VectorWatcher, WFSDataSource, WFSService, WMSDataSource, WMTSDataSource, WORKSPACE_SEARCH_SOURCE_OPTIONS, WakeLockButtonComponent, WebSocketDataSource, WfsWorkspace, WfsWorkspaceService, WktService, WorkspaceSearchSource, WorkspaceSelectorDirective, WorkspaceUpdatorDirective, XYZDataSource, ZoomButtonComponent, addLinearRingToOlPolygon, addOrRemoveLayer, addRouteToRoutesFeatureStore, addStopToStopsFeatureStore, addStopToStore, baseOlStyle, bufferOlGeometry, buildUrl, buildWfsBatchUrls, cadastreSearchSourceFactory, checkWfsParams, clearOlGeometryMidpoints, clusterOlStyleFunction, computeBestAreaUnit, computeBestLengthUnit, computeLayerTitleFromFile, computeOlFeatureExtent, computeOlFeaturesDiff, computeOlFeaturesExtent, computeProjectionsConstraints, computeRelativePosition, computeStopsPosition, computeTermSimilarity, convertDDToDMS, createDefaultTileGrid, createDrawHoleInteractionStyle, createDrawInteractionStyle, createFilterInMapExtentOrResolutionStrategy, createInteractionStyle, createMeasureInteractionStyle, createMeasureLayerStyle, createOlTooltipAtPoint, createOlTooltipDrawAtPoint, createTableTemplate, ctrlKeyDown, defaultCoordinatesSearchResultFormatterFactory, defaultEpsg, defaultFieldNameGeometry, defaultIChercheSearchResultFormatterFactory, defaultMaxFeatures, defaultWfsVersion, detectFileEPSG, directionsStyle, doesOlGeometryIntersects, entitiesToRowData, exportToCSV, featureFromOl, featureToOl, featureToSearchResult, featuresAreOutOfView, featuresAreTooDeepInView, findDiff, findLayerByLinkId, findParentId, formatDistance, formatDuration, formatMeasure, formatScale, formatStep, formatWFSQueryString, generateArcgisRestIdFromSourceOptions, generateFeatureIdFromSourceOptions, generateId, generateIdFromSourceOptions, generateWMSIdFromSourceOptions, generateWMTSIdFromSourceOptions, generateWfsIdFromSourceOptions, generateXYZIdFromSourceOptions, getAllChildLayersByDeletion, getAllChildLayersByProperty, getFileExtension, getFilterBadge, getFormatFromOptions, getGeoServiceAction, getLayerOptionIdentifier, getLayersByDeletion, getLayersLegends, getLinkedLayersOptions, getMousePositionFromOlGeometryEvent, getOlTooltipAtCenter, getOlTooltipsAtMidpoints, getResolutionFromScale, getRootParentByDeletion, getRootParentByProperty, getRowsInMapExtent, getSaveableOgcParams, getScaleFromResolution, getSelectedOnly, getTooltipsOfOlGeometry, gmlRegex, handleFileExportError, handleFileExportSuccess, handleFileImportError, handleFileImportSuccess, handleInvalidFileImportError, handleLayerPropertyChange, handleNothingToExportError, handleNothingToImportError, handleOgreServerImportError, handleSRSImportError, handleSizeFileImportError, handleUnreadbleFileImportError, hideOlFeature, ichercheReverseSearchSourceFactory, ichercheSearchSourceFactory, ilayerSearchResultFormatterFactory, ilayerSearchSourceFactory, initRoutesFeatureStore, initStepsFeatureStore, initStopsFeatureStore, interactiveSelectionFormWidgetFactory, isAnyOlStyle, isBaseLayer, isBaseLayerLinked, isCsvExport, isEngineLayerStyle, isLayerGroup, isLayerGroupOptions, isLayerItem, isLayerItemOptions, isLayerLinked, isLayerLinkedOptions, isLayerLinkedTogether, isLinkMaster, isOlFlatStyleLike, isSaveableLayer, jsonRegex, layerFeatureIsQueryable, layerIsQueryable, lonLatConversion, mapExtentStrategyActiveToolTip, markerOlStyle, measureOlGeometry, measureOlGeometryArea, measureOlGeometryLength, mergeLayersOptions, metersToFeet, metersToKilometers, metersToMiles, metersToUnit, moveToOlFeatures, mtmZoneFromLonLat, nearTransparentOlStyle, noElementSelected, nominatimSearchSourceFactory, ogcFilterWidgetFactory, olLayerFeatureIsQueryable, olLayerIsQueryable, optionsApiFactory, osrmDirectionsSourcesFactory, provideCadastreSearchSource, provideCoordinatesReverseSearchSource, provideDefaultCoordinatesSearchResultFormatter, provideDefaultIChercheSearchResultFormatter, provideDirection, provideIChercheReverseSearchSource, provideIChercheSearchSource, provideILayerSearchResultFormatter, provideILayerSearchSource, provideInteractiveSelectionFormWidget, provideNominatimSearchSource, provideOgcFilterWidget, provideOptionsApi, provideOsrmDirectionsSource, provideQuerySearchSource, provideSearch, provideSearchSourceService, provideStoredQueriesReverseSearchSource, provideStoredQueriesSearchSource, provideStyle, provideWorkspaceSearchSource, querySearchSourceFactory, randomOlFlatStyle, removeStopFromStore, renderFeatureFromOl, roundCoordTo, roundCoordToString, scaleExtent, searchSourceServiceFactory, selectionOlStyle, setRowsInMapExtent, setSelectedOnly, sliceOlGeometry, sliceOlPolygon, sortLayersByZindex, sourceCanReverseSearch, sourceCanReverseSearchAsSummary, sourceCanSearch, squareMetersToAcres, squareMetersToHectares, squareMetersToSquareFeet, squareMetersToSquareKilometers, squareMetersToSquareMiles, squareMetersToUnit, standardizeUrl, storedqueriesReverseSearchSourceFactory, storedqueriesSearchSourceFactory, stringToLonLat, styleVariant, translateManeuverBearing, translateManeuverModifier, tryAddLoadingStrategy, tryAddSelectionStrategy, tryBindStoreLayer, updateOlGeometryCenter, updateOlGeometryMidpoints, updateOlTooltipAtCenter, updateOlTooltipDrawAtCenter, updateOlTooltipsAtMidpoints, updateOlTooltipsDrawAtMidpoints, updateStoreSorting, utmZoneFromLonLat, viewStatesAreEqual, withCadastreSource, withCoordinatesReverseSource, withGeostyler, withIChercheReverseSource, withIChercheSource, withILayerSource, withMapbox, withNominatimSource, withOsrmSource, withStoredQueriesReverseSource, withStoredQueriesSource, withWorkspaceSource, workspaceSearchSourceFactory, zoneMtm, zoneUtm };
11855
+ export type { AddedChangeEmitter, AddedChangeGroupEmitter, AnyBaseOgcFilterOptions, AnyDataSource, AnyDataSourceOptions, AnyDataSourceOptionsWithParams, AnyEventName, AnyExportFormat, AnyLayer, AnyLayerBase, AnyLayerItemOptions, AnyLayerOptions, AnyOlStyle, AnyPropertyOptions, AnyStyle, AnyWorkspace, ArcGISRestCapabilitiesLayer, ArcGISRestDataSourceOptions, ArcGISRestDataSourceOptionsParams, ArcGISRestImageDataSourceOptions, ArcGISSymbol, BaseDirectionsSourceOptions, BaseDirectionsSourceOptionsProfile, BaseDirectionsSourceOptionsProfileAuthorization, Buffer, CartoDataSourceOptions, CatalogItem, CatalogItemGroup, CatalogItemLayer, CatalogItemState, CatalogQueryFormatTypes, CatalogServiceOptions, ClusterDataSourceOptions, ClusterParam, ClusterRange, CollectCatalogItemsFn, ConfigurableStylesOptions, CoordinatesData, CoordinatesResponse, CoordinatesReverseData, CoordinatesReverseResponse, DataSourceOptions, DatasourceEvent, DialogData, DirectionOptions, DirectionSourceFeature, Directions, DirectionsGeometry, DirectionsSourceOptions, DownloadDataSourceOptions, DownloadOptions, Draw, DrawControlOptions, DrawOptions, DrawingMatDialogData, DrawingStyle, EditionOptions, EditionWorkspaceOptions, EngineLayerStyle, EnvironmentOptions, ExportOgreFormat, ExportOptions, Feature, FeatureDataSourceOptions, FeatureFormSubmitEvent, FeatureGeometry, FeatureMeta, FeatureStoreDrawStrategyOptions, FeatureStoreInMapExtentStrategyOptions, FeatureStoreInMapResolutionStrategyOptions, FeatureStoreLoadingLayerStrategyOptions, FeatureStoreLoadingStrategyOptions, FeatureStoreMeasureStrategyOptions, FeatureStoreOptions, FeatureStorePropertyTypeStrategyOptions, FeatureStoreSearchIndexStrategyOptions, FeatureStoreSelectionStrategyOptions, FeatureStoreStrategyOptions, FeatureWithDirections, FeatureWithDirectionsProperties, FeatureWithDraw, FeatureWithDrawProperties, FeatureWithMeasure, FeatureWithMeasureProperties, FeatureWithStep, FeatureWithStepProperties, FeatureWithStop, FeatureWithStopProperties, FeatureWorkspaceOptions, ForcedProperty, FormattedStep, GeoJSONGeometry, GeoServiceDefinition, GeoWorkspaceOptions, GeoWorkspaceQueryOptions, GeolocationBuffer, GeolocationOptions, GeometryCollection, GeometryFormFieldInputs, GeostylerLayerStyle, HomeExtentButtonOptions, IArcgisVectorTileServerCapabilities, ICatalog, IChercheData, IChercheResponse, IChercheReverseData, IChercheReverseResponse, ICompositeCatalog, ILayerData, ILayerDataHighlight, ILayerDataSource, ILayerItemResponse, ILayerSearchSourceOptions, ILayerServiceResponse, IOgcFiltersOptionSaveable, IOgcInterfaceFilterOptions, ISearchSourceParams, IgoDomSelector, IgoLogicalArrayOptions, IgoOgcFilterObject, IgoOgcSelector, IgoStep, ImageLayerOptions, ImportExportServiceOptions, InputProjections, ItemStyleOptions, LayerConfig, LayerExtension, LayerExtensionInstance, LayerGroupOptions, LayerId, LayerListControlsOptions, LayerMatDialogData, LayerOptions, LayerOptionsBase, LayerPersistence, LayerSecurityOptions, LayerToolMode, LayerType, LayerViewerOptions, LayersLink, LayersLinkProperties, Legend, LegendMapViewOptions, LegendOptions, MVTDataSourceOptions, MapAttributionOptions, MapControlsOptions, MapExtent, MapGeolocationControllerOptions, MapGeolocationState, MapOptions, MapScaleLineOptions, MapViewControllerOptions, MapViewOptions, MapViewState, MapboxLayerStyle, MapboxUrlResponse, Measure, MeasurerDialogData, MetadataLayerOptions, MetadataOptions, ModifyControlOptions, NominatimData, OSMDataSourceOptions, OfflineLayerRestore, OgcAutocomplete, OgcCheckbox, OgcFilter, OgcFilterAttributeOptions, OgcFilterConditionsArrayOptions, OgcFilterDuringOptions, OgcFilterEqualToOptions, OgcFilterGreaterLessOptions, OgcFilterIsBetweenOptions, OgcFilterIsLikeOptions, OgcFilterIsNullOptions, OgcFilterSpatialOptions, OgcFilterableDataSource, OgcFilterableDataSourceOptions, OgcFiltersOptions, OgcInterfaceFilterOptions, OgcPushButton, OgcRadioButton, OgcSelect, OgcSelectorBundle, OptionsApiOptions, OsrmApiResponse, OsrmDirectionsSourceOptions, OsrmIntersection, OsrmLane, OsrmRawRoute, OsrmRouteLeg, OsrmRouteStep, OsrmStepManeuver, OsrmWaypoint, OutputLayerLegend, PrintOptions, Projection, ProjectionsLimitationsOptions, QueryOptions, QueryUrlData, QueryableDataSource, QueryableDataSourceOptions, RelationOptions, Research, ReverseSearch, ReverseSearchOptions, SearchIndexOptions, SearchMeta, SearchResult, SearchSourceFeature, SearchSourceOptions, SearchSourceSettings, SelectorGroup, SettingOptions, SliceControlOptions, SliderOptionsInterface, SourceFieldsOptionsParams, SourceFieldsValidationParams, SourceProposal, SpatialFilterOptions, SpatialFilterThematic, Stop, StoreAndDrawControl, StoredQueriesData, StoredQueriesFields, StoredQueriesResponse, StoredQueriesReverseData, StoredQueriesReverseResponse, StoredQueriesReverseSearchSourceOptions, StoredQueriesSearchSourceOptions, StyleEngine, StyleEngineFeature, StyleModalData, StyleModalLayerData, TextPdfSizeAndMargin, TextSearch, TextSearchOptions, TileArcGISRestDataSourceOptions, TileDebugDataSourceOptions, TileGridOptions, TileLayerOptions, TimeFilterOptions, TimeFilterableDataSource, TimeFilterableDataSourceOptions, TooltipContent, TypeCapabilitiesStrings, TypeCatalogStrings, VectorAnimation, VectorLayerExtension, VectorLayerExtensionContext, VectorLayerExtensionInstance, VectorLayerExtensionStateSnapshot, VectorLayerLoadHandler, VectorLayerLoadRequest, VectorLayerOfflineOptions, VectorLayerOptions, VectorLayerPreloadOptions, VectorTileLayerOptions, ViewerLegendOptions, WFSDataSourceOptions, WFSDataSourceOptionsParams, WFSWriteGetFeatureOptions, WMSDataSourceOptions, WMSDataSourceOptionsParams, WMTSDataSourceOptions, WebSocketDataSourceOptions, WfsRequestContext, WfsWorkspaceOptions, WmsCapabilityLayer, WmsDimension, WmsStyle, WmtsCapabilities, WmtsCapabilityLayer, WorkspaceData, XYZDataSourceOptions, ZindexPropertyOptions };