@pointr-tech/web-sdk 10.8.0-rc.3

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.
@@ -0,0 +1,3022 @@
1
+ import maplibregl from 'maplibre-gl';
2
+ import * as THREE from 'three';
3
+ import { GLTFLoader } from 'three/examples/jsm/loaders/GLTFLoader.js';
4
+
5
+ declare global {
6
+ interface Object {
7
+ can(methodName: string): boolean;
8
+ implement(intrface: new (...args: unknown[]) => unknown): void;
9
+ isDictionary(): boolean;
10
+ }
11
+ }
12
+
13
+ interface LatLngDict {
14
+ lat: number;
15
+ lng: number;
16
+ }
17
+ declare class LatLng {
18
+ lat?: number;
19
+ lng?: number;
20
+ constructor(dict: LatLngDict);
21
+ static isValid(dict: LatLngDict): boolean;
22
+ }
23
+
24
+ type JsonPrimitive = string | number | boolean | null | undefined;
25
+ type JsonValue = JsonPrimitive | JsonObject | JsonValue[];
26
+ type JsonObject = {
27
+ [key: string]: JsonValue;
28
+ };
29
+ interface ViewStatusOptions {
30
+ shouldEnable: boolean;
31
+ }
32
+ interface MapPointFeature {
33
+ id?: string | number;
34
+ geometry: {
35
+ coordinates: [number, number];
36
+ };
37
+ properties?: JsonObject;
38
+ }
39
+ interface RouteDataDirection {
40
+ buildingInternalIdentifier?: string | undefined;
41
+ message: string;
42
+ latLng: LatLng;
43
+ levelIndex?: number | undefined;
44
+ iconName: string;
45
+ iconType?: string;
46
+ }
47
+ interface RouteFeatureProperties {
48
+ type: string;
49
+ bid?: string;
50
+ lvl?: number;
51
+ distanceUntilMeters?: number;
52
+ distanceUntilFeet?: number;
53
+ transitionInfo?: {
54
+ mainType?: string;
55
+ subType?: string;
56
+ name?: string;
57
+ groupId?: string;
58
+ };
59
+ [key: string]: JsonValue;
60
+ }
61
+ interface RouteDataResponse {
62
+ timeSeconds?: number;
63
+ distanceMeters?: number;
64
+ distanceFeet?: number;
65
+ directions?: {
66
+ features?: Array<{
67
+ properties: RouteFeatureProperties;
68
+ geometry: {
69
+ coordinates: [number, number];
70
+ };
71
+ }>;
72
+ };
73
+ nodes?: {
74
+ features?: Array<{
75
+ properties: {
76
+ bid?: string;
77
+ lvl?: number;
78
+ transitionInfo?: {
79
+ mainType?: string;
80
+ subType?: string;
81
+ groupId?: string;
82
+ };
83
+ };
84
+ geometry: {
85
+ coordinates: [number, number];
86
+ };
87
+ }>;
88
+ };
89
+ }
90
+
91
+ interface SearchablePoi {
92
+ searchName(): string;
93
+ searchDescription(): string;
94
+ searchKeywords(): string;
95
+ properties: {
96
+ bid?: string;
97
+ name?: string;
98
+ lvl?: number | string;
99
+ [key: string]: JsonValue;
100
+ };
101
+ }
102
+ interface WorldModePoi {
103
+ properties: {
104
+ name?: string;
105
+ };
106
+ siteTitle: string;
107
+ }
108
+
109
+ declare class Language {
110
+ static _allCodes: Record<string, string>;
111
+ static _supportedCodes: string[];
112
+ private _code;
113
+ private _language;
114
+ private _locale;
115
+ private _title;
116
+ static mapChineseVariants(code: string | undefined | null): string;
117
+ static allRecognisedLanguages(): Language[];
118
+ static isRecognisedLanguageCode(code: string): boolean;
119
+ static isSupportedLanguageCode(code: string): boolean;
120
+ static fromCode(code: string): Language | undefined;
121
+ constructor(pCode: string);
122
+ toString(): string;
123
+ get code(): string;
124
+ get language(): string;
125
+ get locale(): string;
126
+ get title(): string;
127
+ }
128
+
129
+ interface PoiGeometry {
130
+ type?: string;
131
+ coordinates?: number[] | number[][][];
132
+ }
133
+ interface PoiProperties {
134
+ readonly fid?: number;
135
+ readonly sid?: string;
136
+ readonly bid?: string;
137
+ readonly lvl?: number | string;
138
+ eid?: string;
139
+ readonly mainType?: string;
140
+ readonly subType?: string;
141
+ readonly mapPersonas?: string[] | null;
142
+ name?: string;
143
+ description?: string;
144
+ keywords?: string | string[];
145
+ internalIdentifier?: string;
146
+ imageUrl?: string;
147
+ snapshotUrl?: string;
148
+ levelIndex?: number | string;
149
+ icon?: string;
150
+ color?: string;
151
+ outlineColor?: string;
152
+ extrusionHeight?: number;
153
+ opacity?: number;
154
+ searchName?: string;
155
+ searchDescription?: string;
156
+ searchKeywords?: string;
157
+ poiPosition?: number | string;
158
+ poiPositionIndex?: number;
159
+ readonly isFeatured?: boolean;
160
+ [key: string]: JsonValue;
161
+ }
162
+ interface PoiData {
163
+ type?: string;
164
+ properties?: PoiProperties;
165
+ geometry?: PoiGeometry;
166
+ }
167
+ interface PoiStyleObject {
168
+ icon?: string;
169
+ color?: string;
170
+ outlineColor?: string;
171
+ extrusionHeight?: number;
172
+ opacity?: number;
173
+ }
174
+ declare class Poi implements SearchablePoi {
175
+ #private;
176
+ protected _properties: PoiProperties;
177
+ protected readonly _geometry: Readonly<PoiGeometry> | undefined;
178
+ type?: string;
179
+ siteTitle?: string;
180
+ buildingInternalIdentifier?: string;
181
+ siteInternalIdentifier?: string;
182
+ constructor(data?: PoiData);
183
+ protected normalizeProperties(value: PoiProperties): PoiProperties;
184
+ protected lockImmutableProperty(target: PoiProperties, key: keyof PoiProperties, propertyValue: unknown): void;
185
+ protected warnIfImmutablePropertyChanged(current: PoiProperties, incoming: PoiProperties, key: keyof PoiProperties): void;
186
+ isValid(): boolean;
187
+ set properties(value: PoiProperties);
188
+ get properties(): PoiProperties;
189
+ get geometry(): Readonly<PoiGeometry> | undefined;
190
+ get identifier(): string | undefined;
191
+ get imageUrl(): string | undefined;
192
+ get levelIndex(): number | undefined;
193
+ name(language?: Language | null): string;
194
+ snapshotUrl(): string | undefined;
195
+ description(language?: Language | null): string;
196
+ keywords(language?: Language | null): string;
197
+ getTranslationOrDefault(propertyName: string, languageObj?: Language | null): string;
198
+ get lowerCaseKeywords(): string;
199
+ searchName(): string;
200
+ searchDescription(): string;
201
+ searchKeywords(): string;
202
+ setIcon(icon: string | undefined): void;
203
+ setColor(color: string | undefined): void;
204
+ setOutlineColor(outlineColor: string | undefined): void;
205
+ setExtrusionHeight(height: number | undefined): void;
206
+ setOpacity(opacity: number | undefined): void;
207
+ setStyle(styleObject: PoiStyleObject | null | undefined): void;
208
+ resetStyle(): void;
209
+ getProperties(): PoiProperties;
210
+ getGeometry(): PoiGeometry;
211
+ toGeoJSON(): GeoJSON.Feature;
212
+ }
213
+
214
+ interface FeatureGeometry {
215
+ type: string;
216
+ coordinates: number[] | number[][][];
217
+ }
218
+ declare class Feature {
219
+ id: string;
220
+ properties: JsonObject;
221
+ geometry: FeatureGeometry;
222
+ constructor(properties: JsonObject | undefined, geometry: FeatureGeometry, id?: string | number);
223
+ }
224
+
225
+ interface NetworkCoordinatorConfigureOptions {
226
+ baseUrl?: string | undefined;
227
+ clientIdentifier?: string | undefined;
228
+ licenseKey?: string | undefined;
229
+ }
230
+ interface SiteCDNVersions {
231
+ beacon?: number;
232
+ mapContent?: number;
233
+ mapObject?: number;
234
+ obstacle?: number;
235
+ path?: number;
236
+ poi?: number;
237
+ siteMeta?: number;
238
+ siteInternalIdentifier?: string;
239
+ [key: string]: number | string | undefined;
240
+ }
241
+ interface DecodedToken {
242
+ publishedContentServer?: string;
243
+ signedUrlParams?: string;
244
+ sasToken?: string;
245
+ cdnBaseUrl?: string;
246
+ }
247
+ declare class NetworkCoordinator {
248
+ static _instance: NetworkCoordinator;
249
+ static REQUEST_COUNTER: number;
250
+ static apiToken: string | undefined;
251
+ static baseUrl: string | undefined;
252
+ static clientIdentifier: string | undefined;
253
+ static licenseKey: string | undefined;
254
+ static grantType: string | undefined;
255
+ static sasToken: string | undefined;
256
+ static contentBaseUrl: string | undefined;
257
+ static contentVersions: unknown;
258
+ static siteCDNVersions: SiteCDNVersions | undefined;
259
+ static requestCounter: number;
260
+ static isCDNEnabled: boolean | undefined;
261
+ static decodedToken: DecodedToken | null;
262
+ shouldCache: Record<string, boolean>;
263
+ cachedPromises: Record<string, Promise<unknown>>;
264
+ constructor();
265
+ static singleton(): NetworkCoordinator;
266
+ static configure(options?: NetworkCoordinatorConfigureOptions): void;
267
+ get apiToken(): string | undefined;
268
+ get baseUrl(): string | undefined;
269
+ get clientIdentifier(): string | undefined;
270
+ get licenseKey(): string | undefined;
271
+ get grantType(): string | undefined;
272
+ get sasToken(): string | undefined;
273
+ get contentBaseUrl(): string | undefined;
274
+ get contentVersions(): unknown;
275
+ get requestCounter(): number;
276
+ set requestCounter(value: number);
277
+ set licenseKey(value: string | undefined);
278
+ set grantType(value: string | undefined);
279
+ set apiToken(value: string | undefined);
280
+ set sasToken(value: string | undefined);
281
+ set contentBaseUrl(value: string | undefined);
282
+ set contentVersions(value: unknown);
283
+ get siteCDNVersions(): SiteCDNVersions | undefined;
284
+ set siteCDNVersions(value: SiteCDNVersions | undefined);
285
+ set clientIdentifier(value: string | undefined);
286
+ set baseUrl(value: string | undefined);
287
+ get isCDNEnabled(): boolean | undefined;
288
+ set isCDNEnabled(value: boolean | undefined);
289
+ static decreaseRequestCounter(): void;
290
+ static setApiToken(pointrCloudToken?: string): Promise<boolean>;
291
+ static decodeAndProcessToken(accessToken: string): void;
292
+ static processSasToken(decodedToken: DecodedToken): void;
293
+ static processCdnUrl(decodedToken: DecodedToken): void;
294
+ getCDNVersions(): Promise<void>;
295
+ getSiteCDNVersions(siteInternalIdentifier: string): Promise<SiteCDNVersions>;
296
+ getConfigurations(): Promise<unknown>;
297
+ getClient(): Promise<unknown>;
298
+ getPersonas(): Promise<unknown>;
299
+ getTiles(): Promise<unknown>;
300
+ getSites(): Promise<unknown>;
301
+ getBuildings(): Promise<unknown>;
302
+ getFeatureTypes(): Promise<unknown>;
303
+ getPois(siteInternalIdentifier: string): Promise<Record<string, Poi>>;
304
+ fetchNavigation(startObject: Poi | Feature | unknown, destinationObject: Poi | Feature | unknown, navigationMode: string, personaIdentifier?: string): Promise<unknown> | undefined;
305
+ fetchStyleJson(styeJsonUrl: string): Promise<unknown>;
306
+ postEvent(analyticsEventUploadUrl: string, eventData: unknown, sasToken: string): Promise<unknown>;
307
+ cdnFetchHelper(cdnUrl: string, baseUrl: string): Promise<unknown>;
308
+ fetchHelper(url: string, isCDNRequest?: boolean): Promise<unknown>;
309
+ fetchData(url: string, isCDNRequest?: boolean, _block?: boolean): Promise<unknown>;
310
+ handleApiResponse(url: string, data: unknown, isCDNRequest: boolean | undefined, response: Response): Promise<unknown>;
311
+ handleApiError(url: string, error: {
312
+ code?: string;
313
+ message?: string;
314
+ } | undefined, isCDNRequest: boolean | undefined, response: Response): Promise<unknown>;
315
+ handleError(url: string, error: Error): string;
316
+ decreaseRequestCounter(): Promise<void>;
317
+ }
318
+
319
+ interface PointrOptions {
320
+ isSearchEnabled: boolean;
321
+ isPoiDetailsEnabled: boolean;
322
+ isZoomControlEnabled: boolean;
323
+ isLanguageSelectorEnabled: boolean;
324
+ isNavigationEnabled: boolean;
325
+ isAccessibilityEnabled: boolean;
326
+ isQuickAccessEnabled: boolean;
327
+ baseUrl: string | undefined;
328
+ clientIdentifier: string | undefined;
329
+ licenseKey: string | undefined;
330
+ siteInternalIdentifier: string | undefined;
331
+ buildingInternalIdentifier: string | undefined;
332
+ siteExternalIdentifier: string | undefined;
333
+ buildingExternalIdentifier: string | undefined;
334
+ levelExternalIdentifier: string | undefined;
335
+ levelIndex: number | undefined;
336
+ mapMinZoom: number;
337
+ mapMaxZoom: number;
338
+ initialZoomLevel: number | undefined;
339
+ latitude: number | undefined;
340
+ longitude: number | undefined;
341
+ bearing: number | undefined;
342
+ pitch: number | undefined;
343
+ navigationStartPoi: string | undefined;
344
+ startLevelIndex: number | undefined;
345
+ startPointLat: number | undefined;
346
+ startPointLng: number | undefined;
347
+ navigationDestinationPoi: string | undefined;
348
+ destinationLevelIndex: number | undefined;
349
+ destinationPointLat: number | undefined;
350
+ destinationPointLng: number | undefined;
351
+ highlightPoiIdentifier: string | undefined;
352
+ highlightPointLat: number | undefined;
353
+ highlightPointLng: number | undefined;
354
+ language: string;
355
+ languageList: string[];
356
+ container: string;
357
+ mode: string;
358
+ deviceIdentifierForAnalytics: string | undefined;
359
+ personaIdentifier: string | undefined;
360
+ analyticsCustomLaunchParams: JsonObject | undefined;
361
+ quickAccessSelectionZoomLevel: number | undefined;
362
+ isAppBannerEnabled: boolean;
363
+ pointrCloudToken: string | undefined;
364
+ }
365
+ type PointrOptionsInput = Partial<PointrOptions>;
366
+ interface OptionsValidationResult {
367
+ isValid: boolean;
368
+ errorMsg?: string | undefined;
369
+ }
370
+ interface SiteBuildingValidationResult {
371
+ isValid: boolean;
372
+ errorTitle?: string;
373
+ errorMsg?: string;
374
+ }
375
+ declare class Options {
376
+ defaultOptions: PointrOptions;
377
+ _mapMinZoom: number;
378
+ _mapMaxZoom: number;
379
+ _initialZoomLevel: number | undefined;
380
+ _latitude: number | undefined;
381
+ _longitude: number | undefined;
382
+ _bearing: number | undefined;
383
+ _pitch: number | undefined;
384
+ _startPointLat: number | undefined;
385
+ _startPointLng: number | undefined;
386
+ _destinationPointLat: number | undefined;
387
+ _destinationPointLng: number | undefined;
388
+ _isSearchEnabled: boolean;
389
+ _isPoiDetailsEnabled: boolean;
390
+ _isZoomControlEnabled: boolean;
391
+ _isLanguageSelectorEnabled: boolean;
392
+ _isNavigationEnabled: boolean;
393
+ _isAccessibilityEnabled: boolean;
394
+ _isQuickAccessEnabled: boolean;
395
+ _clientIdentifier: string | undefined;
396
+ _licenseKey: string | undefined;
397
+ _baseUrl: string | undefined;
398
+ _siteInternalIdentifier: string | undefined;
399
+ _buildingInternalIdentifier: string | undefined;
400
+ _siteExternalIdentifier: string | undefined;
401
+ _buildingExternalIdentifier: string | undefined;
402
+ _levelIndex: number | undefined;
403
+ _levelExternalIdentifier: string | undefined;
404
+ _startLevelIndex: number | undefined;
405
+ _destinationLevelIndex: number | undefined;
406
+ _navigationStartPoi: string | undefined;
407
+ _navigationDestinationPoi: string | undefined;
408
+ _highlightPoiIdentifier: string | undefined;
409
+ _highlightPointLat: number | undefined;
410
+ _highlightPointLng: number | undefined;
411
+ _language: string;
412
+ _languageList: string[];
413
+ _container: string;
414
+ _mode: string;
415
+ _deviceIdentifierForAnalytics: string | undefined;
416
+ _personaIdentifier: string | undefined;
417
+ _analyticsCustomLaunchParams: JsonObject | undefined;
418
+ _quickAccessSelectionZoomLevel: number | undefined;
419
+ _isAppBannerEnabled: boolean;
420
+ _pointrCloudToken: string | undefined;
421
+ constructor(options?: PointrOptionsInput | null);
422
+ validate(): OptionsValidationResult;
423
+ validateSite(sites: Array<{
424
+ siteInternalIdentifier: string;
425
+ }>): SiteBuildingValidationResult;
426
+ validateBuilding(buildings: Array<{
427
+ buildingInternalIdentifier: string;
428
+ levels?: Array<{
429
+ levelIndex: number;
430
+ externalIdentifier?: string;
431
+ }>;
432
+ }>): SiteBuildingValidationResult;
433
+ set mapMinZoom(value: number);
434
+ get mapMinZoom(): number;
435
+ set mapMaxZoom(value: number);
436
+ get mapMaxZoom(): number;
437
+ set initialZoomLevel(value: number | undefined);
438
+ get initialZoomLevel(): number | undefined;
439
+ set latitude(value: number | undefined);
440
+ get latitude(): number | undefined;
441
+ set longitude(value: number | undefined);
442
+ get longitude(): number | undefined;
443
+ set startPointLat(value: number | undefined);
444
+ get startPointLat(): number | undefined;
445
+ set startPointLng(value: number | undefined);
446
+ get startPointLng(): number | undefined;
447
+ set destinationPointLat(value: number | undefined);
448
+ get destinationPointLat(): number | undefined;
449
+ set destinationPointLng(value: number | undefined);
450
+ get destinationPointLng(): number | undefined;
451
+ set bearing(value: number | undefined);
452
+ get bearing(): number | undefined;
453
+ set pitch(value: number | undefined);
454
+ get pitch(): number | undefined;
455
+ set isSearchEnabled(value: boolean | undefined);
456
+ get isSearchEnabled(): boolean;
457
+ set isZoomControlEnabled(value: boolean | undefined);
458
+ get isZoomControlEnabled(): boolean;
459
+ set isLanguageSelectorEnabled(value: boolean | undefined);
460
+ get isLanguageSelectorEnabled(): boolean;
461
+ set isNavigationEnabled(value: boolean | undefined);
462
+ get isNavigationEnabled(): boolean;
463
+ set isAccessibilityEnabled(value: boolean | undefined);
464
+ get isAccessibilityEnabled(): boolean;
465
+ set isQuickAccessEnabled(value: boolean | undefined);
466
+ get isQuickAccessEnabled(): boolean;
467
+ set clientIdentifier(value: string | undefined);
468
+ get clientIdentifier(): string | undefined;
469
+ set licenseKey(value: string | undefined);
470
+ get licenseKey(): string | undefined;
471
+ set baseUrl(value: string | undefined);
472
+ get baseUrl(): string | undefined;
473
+ set isPoiDetailsEnabled(value: boolean | undefined);
474
+ get isPoiDetailsEnabled(): boolean;
475
+ set siteInternalIdentifier(value: string | undefined);
476
+ get siteInternalIdentifier(): string | undefined;
477
+ set buildingInternalIdentifier(value: string | undefined);
478
+ get buildingInternalIdentifier(): string | undefined;
479
+ set levelIndex(value: number | undefined);
480
+ get levelIndex(): number | undefined;
481
+ set levelExternalIdentifier(value: string | undefined);
482
+ get levelExternalIdentifier(): string | undefined;
483
+ set startLevelIndex(value: number | undefined);
484
+ get startLevelIndex(): number | undefined;
485
+ set destinationLevelIndex(value: number | undefined);
486
+ get destinationLevelIndex(): number | undefined;
487
+ set navigationStartPoi(value: string | undefined);
488
+ get navigationStartPoi(): string | undefined;
489
+ set siteExternalIdentifier(value: string | undefined);
490
+ get siteExternalIdentifier(): string | undefined;
491
+ set navigationDestinationPoi(value: string | undefined);
492
+ get navigationDestinationPoi(): string | undefined;
493
+ set buildingExternalIdentifier(value: string | undefined);
494
+ get buildingExternalIdentifier(): string | undefined;
495
+ set highlightPoiIdentifier(value: string | undefined);
496
+ get highlightPoiIdentifier(): string | undefined;
497
+ set highlightPointLng(value: number | undefined);
498
+ get highlightPointLng(): number | undefined;
499
+ set highlightPointLat(value: number | undefined);
500
+ get highlightPointLat(): number | undefined;
501
+ set language(value: string | undefined);
502
+ get language(): string;
503
+ set languageList(value: string[] | undefined);
504
+ get languageList(): string[];
505
+ set container(value: string | number | undefined);
506
+ get container(): string;
507
+ set mode(value: string | undefined);
508
+ get mode(): string;
509
+ set deviceIdentifierForAnalytics(value: string | undefined);
510
+ get deviceIdentifierForAnalytics(): string | undefined;
511
+ set personaIdentifier(value: string | undefined);
512
+ get analyticsCustomLaunchParams(): JsonObject | undefined;
513
+ set analyticsCustomLaunchParams(value: JsonObject | undefined);
514
+ get personaIdentifier(): string | undefined;
515
+ set quickAccessSelectionZoomLevel(value: number | undefined);
516
+ get quickAccessSelectionZoomLevel(): number | undefined;
517
+ set isAppBannerEnabled(value: boolean | undefined);
518
+ get isAppBannerEnabled(): boolean;
519
+ set pointrCloudToken(value: string | undefined);
520
+ get pointrCloudToken(): string | undefined;
521
+ isContainerNameValid(containerName: string): boolean;
522
+ }
523
+
524
+ type DataManagerOptions = Partial<Options> & {
525
+ validateSite?: Options["validateSite"];
526
+ validateBuilding?: Options["validateBuilding"];
527
+ };
528
+ interface RawConfigItem {
529
+ key?: string;
530
+ value: string;
531
+ }
532
+ interface BuildingConfiguration {
533
+ buildingInternalIdentifier: string;
534
+ buildingConfiguration: JsonObject;
535
+ }
536
+ interface SiteConfiguration {
537
+ siteInternalIdentifier: string;
538
+ siteConfiguration: JsonObject;
539
+ buildings: BuildingConfiguration[];
540
+ }
541
+ interface StyleSpriteItem {
542
+ id: string;
543
+ url: string;
544
+ }
545
+ declare class DataManager {
546
+ options: DataManagerOptions;
547
+ networkCoordinator: NetworkCoordinator;
548
+ constructor(options?: DataManagerOptions);
549
+ loadConfigAndSiteData(): Promise<unknown[]>;
550
+ loadData(siteInternalIdentifier?: string): Promise<unknown[]>;
551
+ downloadStyleJson(styleJsonUrl: string): Promise<unknown>;
552
+ loadConfigurations(): Promise<unknown>;
553
+ parseConfigurations(response: unknown): {
554
+ globalConfiguration: JsonObject;
555
+ sites: SiteConfiguration[];
556
+ };
557
+ parseGlobalConfiguration(clientConfig: RawConfigItem[] | undefined | null): JsonObject;
558
+ parseSitesConfiguration(sites: Array<{
559
+ siteIdentifier: string;
560
+ configurations?: RawConfigItem[];
561
+ buildings?: Array<{
562
+ buildingIdentifier: string;
563
+ configurations?: RawConfigItem[];
564
+ }>;
565
+ }> | undefined | null): SiteConfiguration[];
566
+ parseBuildingsConfiguration(buildings: Array<{
567
+ buildingIdentifier: string;
568
+ configurations?: RawConfigItem[];
569
+ }> | undefined | null): BuildingConfiguration[];
570
+ parseConfiguration(configs?: RawConfigItem[] | null): JsonObject;
571
+ processConfigurations(configurations: {
572
+ globalConfiguration: any;
573
+ sites: any[];
574
+ }): string;
575
+ setStorageAnalytics(globalConfig: any): void;
576
+ setStorageBanner(globalConfig: any): void;
577
+ setStorageUI(globalConfig: any): void;
578
+ setSiteConfiguration(sites: any[] | undefined): void;
579
+ processStyleJson(styleJson: unknown): void;
580
+ buildFeaturedPoiSpriteUrl(siteInternalIdentifier: string): string;
581
+ getDefaultSpriteUrl(): string | undefined;
582
+ buildSiteSprites(siteInternalIdentifier: string): StyleSpriteItem[];
583
+ updateSiteSprite(map: {
584
+ getSprite?: () => StyleSpriteItem[];
585
+ removeSprite?: (id: string) => void;
586
+ addSprite?: (id: string, url: string) => void;
587
+ } | undefined, siteInternalIdentifier: string): void;
588
+ validateStyleJsonUrl(styleJsonUrl: string | any): string;
589
+ handleConfigurationError(error: {
590
+ errorMsg?: string;
591
+ errorTitle?: string;
592
+ } | string): never;
593
+ loadClient(): Promise<unknown>;
594
+ loadPersonas(): Promise<unknown>;
595
+ loadSiteCDNVersion(siteInternalIdentifier: string): Promise<void>;
596
+ loadMapBaseUrl(): Promise<string>;
597
+ loadSites(): Promise<unknown>;
598
+ loadSitesWithBuildings(buildings: any): Promise<unknown>;
599
+ mapSitesResponse(response: any, buildings: any): any[];
600
+ mapBuildingsForSite(buildings: any, siteFeature: any): any[] | undefined;
601
+ mapLevelsForBuilding(buildings: any, buildingFeature: any, siteFeature: any): any[] | undefined;
602
+ processSites(sites: any[]): any[];
603
+ encodeSitesAndExtractBuildings(sites: any[]): any[];
604
+ validateAndStoreSites(sites: any[], buildings: any[]): void;
605
+ handleSitesError(errorMessage: {
606
+ errorMsg?: string;
607
+ } | string): never;
608
+ handleBuildingsError(errorMessage: {
609
+ errorMsg?: string;
610
+ } | string): never;
611
+ loadFeatureTypes(): Promise<unknown>;
612
+ loadPois(siteInternalIdentifier: string): Promise<Record<string, Poi>>;
613
+ isPoiVisibleForPersonaKey(poi: Poi, selectedPersonaKey: string): boolean;
614
+ loadNavigation(startObject: unknown, destinationObject: unknown, navigationMode: string, personaIdentifier?: string): Promise<RouteDataResponse>;
615
+ postEvent(analyticsEventUploadUrl: string, eventData: unknown, sasToken: string): Promise<unknown>;
616
+ setCategories(categoriesJSON?: string | null): void;
617
+ }
618
+
619
+ interface AnalyticsConfiguration {
620
+ analyticsEventSasPolicyName?: string;
621
+ analyticsEventSasPrimaryKey?: string;
622
+ analyticsEventUploadUrl?: string;
623
+ webSessionTimeout?: number;
624
+ webMapSessionTimeout?: number;
625
+ isEnabled?: string;
626
+ }
627
+ interface AnalyticsEventExtraData {
628
+ actionStatus?: string;
629
+ resultCount?: number | null;
630
+ searchTerm?: string | null;
631
+ sid?: string | null;
632
+ bid?: string | null;
633
+ originates?: string | null;
634
+ poiInteracted?: {
635
+ fid?: string;
636
+ } | null;
637
+ params?: JsonObject | null;
638
+ }
639
+ declare class AnalyticsManager {
640
+ options: Options;
641
+ optionsJson: JsonObject;
642
+ appId: string | null;
643
+ deviceId: string | null;
644
+ sessionId: string | null;
645
+ isFirstSession: boolean;
646
+ isSessionInProgress: boolean;
647
+ analyticsEventSasPolicyName: string | undefined;
648
+ analyticsEventSasPrimaryKey: string | undefined;
649
+ analyticsEventUploadUrl: string | undefined;
650
+ webSessionTimeout: number | undefined;
651
+ webMapSessionTimeout: number | undefined;
652
+ isAnalyticsEnabled: boolean;
653
+ isRatingPopupEnabled: boolean;
654
+ userIdleInterval: ReturnType<typeof setInterval> | undefined;
655
+ idleTimeInSeconds: number;
656
+ totalTimeInSeconds: number;
657
+ sasToken: string | undefined;
658
+ language: Language | null;
659
+ userAgent: string;
660
+ analyticsVersion: string;
661
+ osVersion: string | null;
662
+ dataManager: DataManager;
663
+ eventsToSendList: JsonObject;
664
+ minSecondsBeforeRatingPopup: number;
665
+ constructor(options: Options);
666
+ setAnalyticsConfiguration(configuration: AnalyticsConfiguration): Promise<void>;
667
+ postListToServer(): void;
668
+ createSharedAccessToken(): Promise<string | undefined>;
669
+ setSessionId(): void;
670
+ setDeviceId(): void;
671
+ setLanguage(language: Language | null): void;
672
+ userActivityTimer(): void;
673
+ checkSessionStart(): void;
674
+ registerSessionEvents(): void;
675
+ detectOS(): string | null;
676
+ getParams(eventType: string, actionStatus: string | null | undefined): JsonObject | undefined;
677
+ createDeepLinkParams(): string;
678
+ getActionStatus(action: string, actionStatus: string | undefined): string | null;
679
+ postEvent(eventType: string, extraData?: AnalyticsEventExtraData): void;
680
+ removeEmpty<T extends JsonObject>(obj: T): T;
681
+ prepareDataForEvent(eventType: string, actionStatus: string | null, extraData?: AnalyticsEventExtraData): JsonObject;
682
+ }
683
+
684
+ interface TranslationDictionary {
685
+ code: string;
686
+ [viewKey: string]: Record<string, string> | string;
687
+ }
688
+ declare class Translation {
689
+ private static _translations;
690
+ private readonly _language;
691
+ private readonly _primaryDictionary;
692
+ private readonly _defaultDictionary;
693
+ static getAvailableLanguages(): string[];
694
+ constructor(languageObj?: Language);
695
+ str(key: string, dynamicVariables?: Record<string, string>): string;
696
+ getTranslationTextWithKey(className: string, betterKey: string): string;
697
+ replaceDynamicVariablesWithValue(text: string | undefined, dynamicVariables: Record<string, string> | undefined): string;
698
+ get language(): Language;
699
+ availableLanguages(): Language[];
700
+ static getTranslations(code: string): TranslationDictionary | undefined;
701
+ private static loadTranslations;
702
+ }
703
+
704
+ interface LevelDict {
705
+ externalIdentifier?: string;
706
+ levelIndex: number;
707
+ levelLongTitle?: string;
708
+ levelShortTitle?: string;
709
+ properties?: JsonObject;
710
+ }
711
+ declare class Level {
712
+ levelIndex: number;
713
+ levelLongTitle: string;
714
+ levelShortTitle: string;
715
+ properties?: JsonObject;
716
+ externalIdentifier?: string;
717
+ constructor(dict: LevelDict);
718
+ static isValid(dict: LevelDict | undefined | null): boolean;
719
+ }
720
+
721
+ interface BuildingDict {
722
+ buildingTitle: string;
723
+ buildingExternalIdentifier: string;
724
+ buildingInternalIdentifier: string;
725
+ siteInternalIdentifier: string;
726
+ geometry?: GeoJSON.Geometry;
727
+ levels?: LevelDict[];
728
+ properties?: JsonObject;
729
+ }
730
+ declare class Building {
731
+ buildingTitle: string;
732
+ buildingExternalIdentifier: string;
733
+ buildingInternalIdentifier: string;
734
+ siteInternalIdentifier: string;
735
+ geometry?: GeoJSON.Geometry;
736
+ levels?: Level[];
737
+ properties?: JsonObject;
738
+ constructor(dict: BuildingDict);
739
+ static isValid(dict: Partial<BuildingDict> | undefined | null): boolean;
740
+ }
741
+
742
+ interface SiteDict {
743
+ siteTitle: string;
744
+ siteInternalIdentifier: string;
745
+ siteExternalIdentifier: string;
746
+ properties?: JsonObject;
747
+ geometry: GeoJSON.Geometry;
748
+ buildings: Building[];
749
+ }
750
+ declare class Site {
751
+ siteTitle: string;
752
+ siteInternalIdentifier: string;
753
+ siteExternalIdentifier: string;
754
+ properties: JsonObject;
755
+ geometry: GeoJSON.Geometry;
756
+ buildings: Building[];
757
+ constructor(dict: SiteDict);
758
+ static isValid(dict: Partial<SiteDict> | undefined | null): boolean;
759
+ }
760
+
761
+ declare class BaseView {
762
+ [key: string]: any;
763
+ events: {
764
+ viewShown: string;
765
+ viewHidden: string;
766
+ draggedUpwards: string;
767
+ };
768
+ isHidden: boolean;
769
+ isReadyToShow: boolean;
770
+ isDraggingInProgress: boolean;
771
+ isDragging: boolean;
772
+ constructor(options?: Options);
773
+ populate(...args: any[]): boolean;
774
+ createUi(): void;
775
+ applyShellAccessibilityLabels(): void;
776
+ applyAccessibilityLabels(): void;
777
+ touchStartHandler(event: any): void;
778
+ touchEndHandler(event: any): void;
779
+ createUiWrapper(): void;
780
+ show(): void;
781
+ hide(): boolean;
782
+ setTranslation(translation: Translation | undefined): void;
783
+ getLanguage(): any;
784
+ getLanguageCode(): any;
785
+ onDrag(): void;
786
+ }
787
+
788
+ declare class BaseViewController {
789
+ [key: string]: any;
790
+ get buildings(): Building[] | undefined;
791
+ get sites(): Site[] | undefined;
792
+ get currentSite(): Site | undefined;
793
+ set currentSite(site: Site | undefined);
794
+ get currentBuilding(): Building | undefined;
795
+ set currentBuilding(building: Building | undefined);
796
+ get currentLevel(): Level | undefined;
797
+ set currentLevel(level: Level | undefined);
798
+ populate(...args: any[]): boolean;
799
+ createUi(): void;
800
+ showView(): void;
801
+ hideView(): void;
802
+ getView(): BaseView;
803
+ setTranslation(translation: Translation | undefined): void;
804
+ }
805
+
806
+ type MarkerFeature = MapPointFeature;
807
+ interface MarkerOptions {
808
+ minzoom?: number;
809
+ maxzoom?: number;
810
+ element?: HTMLElement;
811
+ offset?: [number, number];
812
+ [key: string]: JsonValue | HTMLElement | [number, number] | undefined;
813
+ }
814
+ declare class Marker {
815
+ id: string;
816
+ feature: MarkerFeature;
817
+ options: MarkerOptions;
818
+ minzoom: number;
819
+ maxzoom: number;
820
+ isVisible: boolean;
821
+ marker: maplibregl.Marker;
822
+ constructor(feature: MarkerFeature, html: HTMLElement | null, options?: MarkerOptions);
823
+ addMarker(map: maplibregl.Map): void;
824
+ removeMarker(): void;
825
+ setVisibility(isVisible: boolean): void;
826
+ addPopupToMarker(popupObject: {
827
+ popup: maplibregl.Popup;
828
+ }, map: maplibregl.Map): void;
829
+ }
830
+
831
+ type PopupFeature = MapPointFeature;
832
+ interface PopupOptions {
833
+ closeButton?: boolean;
834
+ maxWidth?: string;
835
+ [key: string]: JsonValue;
836
+ }
837
+ declare class Popup {
838
+ feature: PopupFeature;
839
+ options: PopupOptions;
840
+ popup: maplibregl.Popup;
841
+ constructor(feature: PopupFeature, content: string, options?: PopupOptions);
842
+ addPopup(map: maplibregl.Map): void;
843
+ removePopup(): void;
844
+ }
845
+
846
+ type PoiDict = Record<string, Poi>;
847
+ declare class PoiManager {
848
+ dataManager: DataManager;
849
+ constructor(options?: Options);
850
+ get(poiId: string, site?: {
851
+ siteInternalIdentifier?: string;
852
+ } | null): Promise<Poi | undefined>;
853
+ getPoiByExternalId(poiEid: string, site?: {
854
+ siteInternalIdentifier?: string;
855
+ } | null): Promise<Poi | undefined>;
856
+ getPoisBySite(siteInternalIdentifier?: string): Promise<PoiDict | undefined>;
857
+ getPoisAsGeoJson(siteInternaldentifier: string): Promise<{
858
+ type: "FeatureCollection";
859
+ features: Array<{
860
+ type: "Feature";
861
+ properties: any;
862
+ geometry: any;
863
+ }>;
864
+ }>;
865
+ getPoisAsFeatures(siteInternaldentifier: string): Promise<Feature[]>;
866
+ setPoisForWorldMode(pois: WorldModePoi[]): void;
867
+ getPoisForWorldMode(): WorldModePoi[] | undefined;
868
+ includes(poi: {
869
+ properties: {
870
+ fid: string;
871
+ sid: string;
872
+ };
873
+ }): Promise<boolean>;
874
+ search(query: string, buildingId?: string, siteId?: string | number): Promise<WorldModePoi[] | Poi[]>;
875
+ }
876
+
877
+ interface BuildingModelDescriptor {
878
+ buildingInternalIdentifier: string;
879
+ siteInternalIdentifier?: string;
880
+ name?: string;
881
+ url: string;
882
+ latitude: number;
883
+ longitude: number;
884
+ rotation: number;
885
+ scale: number;
886
+ brightness: number;
887
+ }
888
+ interface ModelInstance {
889
+ buildingInternalIdentifier: string;
890
+ siteInternalIdentifier?: string | undefined;
891
+ url: string;
892
+ scene: THREE.Scene;
893
+ root: THREE.Object3D;
894
+ longitude: number;
895
+ latitude: number;
896
+ rotation: number;
897
+ scale: number;
898
+ translation: THREE.Matrix4;
899
+ local: THREE.Matrix4;
900
+ }
901
+ interface ModelTemplate {
902
+ scene: THREE.Group;
903
+ refCount: number;
904
+ }
905
+ interface BuildingModelsCustomLayer {
906
+ id: string;
907
+ type: "custom";
908
+ renderingMode: "3d";
909
+ map?: maplibregl.Map;
910
+ camera: THREE.Camera;
911
+ renderer?: THREE.WebGLRenderer;
912
+ antialias: boolean;
913
+ loader?: GLTFLoader;
914
+ loadedTemplates: Map<string, ModelTemplate>;
915
+ pendingTemplates: Map<string, Promise<THREE.Group>>;
916
+ loadedBuildingIds: Set<string>;
917
+ instances: ModelInstance[];
918
+ minZoom: number;
919
+ maxZoom: number;
920
+ hidden: boolean;
921
+ hiddenBuildingIds: Set<string>;
922
+ lastProjectionMatrix: THREE.Matrix4;
923
+ contextLost: boolean;
924
+ scratchMatrix: THREE.Matrix4;
925
+ onAdd(map: maplibregl.Map, gl: WebGLRenderingContext): void;
926
+ onRemove(map: maplibregl.Map, gl: WebGLRenderingContext): void;
927
+ render(gl: WebGLRenderingContext, args: {
928
+ defaultProjectionData: {
929
+ mainMatrix: number[];
930
+ };
931
+ }): void;
932
+ setHidden(hidden: boolean): void;
933
+ setHiddenBuildings(ids: Set<string>): void;
934
+ setZoomRange(minZoom: number, maxZoom: number): void;
935
+ isInstanceRenderable(instance: ModelInstance): boolean;
936
+ pickBuildingAt(screenX: number, screenY: number): string | undefined;
937
+ addModels(models: BuildingModelDescriptor[]): void;
938
+ removeModelsForSite(siteInternalIdentifier: string): void;
939
+ }
940
+
941
+ interface MapViewRoutePoint {
942
+ lon: number;
943
+ lat: number;
944
+ class?: string;
945
+ markerIconName?: string;
946
+ }
947
+ interface MapLibreMapMouseEvent {
948
+ point: {
949
+ x: number;
950
+ y: number;
951
+ };
952
+ lngLat: {
953
+ lng: number;
954
+ lat: number;
955
+ toFixed: (n: number) => string;
956
+ };
957
+ originalEvent?: {
958
+ clientX: number;
959
+ clientY: number;
960
+ which?: number;
961
+ };
962
+ }
963
+ declare class MapView extends BaseView {
964
+ options: Options;
965
+ poiManager: PoiManager | undefined;
966
+ analyticsManager: AnalyticsManager | undefined;
967
+ translation: Translation | undefined;
968
+ events: BaseView["events"] & {
969
+ levelChanged: string;
970
+ zoom: string;
971
+ zoomChanged: string;
972
+ mapIdle: string;
973
+ mapClicked: string;
974
+ mapLongClicked: string;
975
+ locationMarked: string;
976
+ poiClicked: string;
977
+ poiUnhighlighted: string;
978
+ poiHighlighted: string;
979
+ mapReady: string;
980
+ mapMoveStart: string;
981
+ mapMoveEnd: string;
982
+ currentSiteChanged: string;
983
+ currentBuildingChanged: string;
984
+ routesShown: string;
985
+ exitClicked: string;
986
+ infoClicked: string;
987
+ };
988
+ highlightedPois: Set<Poi>;
989
+ currentZoom: number;
990
+ animationInterval: ReturnType<typeof setInterval> | undefined;
991
+ isWheeling: boolean;
992
+ isZoomInteractionStarted: boolean;
993
+ isNavigationActive: boolean;
994
+ exitButtonId: string;
995
+ exitButtonEl: string;
996
+ infoButtonId: string;
997
+ infoButtonEl: string;
998
+ targetEl: string;
999
+ topRightEl: string;
1000
+ rootEl: string;
1001
+ map: maplibregl.Map | undefined;
1002
+ clickStartTime: number | undefined;
1003
+ clickEndTime: number | undefined;
1004
+ isLongPress: boolean;
1005
+ isMapMoving: boolean;
1006
+ isClickEventStartedOnMap: boolean;
1007
+ movingHumanMarker: maplibregl.Marker | null;
1008
+ startTransitionMarker: maplibregl.Marker | null;
1009
+ destinationTransitionMarker: maplibregl.Marker | null;
1010
+ destinationMarker: maplibregl.Marker | null;
1011
+ mapLevelIndex: number | undefined;
1012
+ buildingModelsLayer: BuildingModelsCustomLayer | undefined;
1013
+ onBuilding3DModelsWebGLUnavailable: (() => void) | undefined;
1014
+ private isMapReadyEmitted;
1015
+ constructor(options: Options, poiManager: PoiManager | undefined, translation: Translation, analyticsManager: AnalyticsManager | undefined);
1016
+ createUi(): void;
1017
+ applyAccessibilityLabels(): void;
1018
+ buildMapRegionAriaLabel(): string;
1019
+ updateMapRegionAriaLabel(): void;
1020
+ private resolveSiteNameForAria;
1021
+ private resolveBuildingNameForAria;
1022
+ private resolveLevelNameForAria;
1023
+ private resolveLevelForAria;
1024
+ populate(): boolean;
1025
+ onMapLoad(): void;
1026
+ private ensureMapReady;
1027
+ addBuildingModels(models: BuildingModelDescriptor[], minZoom?: number, maxZoom?: number): void;
1028
+ initBuildingModelsLayer(minZoom?: number, maxZoom?: number, onWebGLUnavailable?: () => void): void;
1029
+ removeBuildingModelsLayer(): void;
1030
+ addBuildingModelsForSite(models: BuildingModelDescriptor[]): void;
1031
+ setBuildingModelsHidden(hidden: boolean): void;
1032
+ setHiddenBuildingModels(buildingIds: Set<string>): void;
1033
+ pickBuildingModelAt(screenX: number, screenY: number): string | undefined;
1034
+ hideMapTilerAttribution(): void;
1035
+ handleZoomInteraction(): void;
1036
+ handleZoomEndInteraction(): void;
1037
+ handleMapClick(e: MapLibreMapMouseEvent): void;
1038
+ clickStartEventHandler: () => void;
1039
+ clickEndEventHandler: (e: MapLibreMapMouseEvent) => void;
1040
+ handleWheel(): void;
1041
+ handleMapMoveStart(e: any): void;
1042
+ handleMapMoveEnd(e: any): void;
1043
+ handleMapIdle(e: any): void;
1044
+ handleMapError(e: any): void;
1045
+ handleMapLongClick(e: MapLibreMapMouseEvent): void;
1046
+ setUserInteractionEnabled(isEnabled: boolean): void;
1047
+ scrollTo(latlng: [number, number] | LatLng, zoom?: number, offset?: [number, number]): void;
1048
+ fitBounds(latlngArr: LatLng[]): void;
1049
+ showLayer(layerId: string): void;
1050
+ hideLayer(layerId: string): void;
1051
+ setLayerZoomRange(layerId: string, minZoom: number, maxZoom: number): void;
1052
+ setPaintProperty(layerId: string, property: string, value: any): void;
1053
+ setLayoutProperty(layerId: string, property: string, value: any): void;
1054
+ setFilter(layerId: string, expression: any): void;
1055
+ getAllLayers(): any[];
1056
+ zoomTo(level: number): void;
1057
+ zoomIn(): void;
1058
+ zoomOut(): void;
1059
+ getZoom(): number | undefined;
1060
+ highlightFeatures(highlightedFeatures: Feature[]): void;
1061
+ unhighlightFeatures(highlightedFeatures: Feature[]): void;
1062
+ hideDestinationSymbol(destinationObject: Feature | null | undefined): void;
1063
+ showDestinationSymbol(destinationObject: Feature | null | undefined): void;
1064
+ setTranslationByLanguageCode(code: string | undefined, layerId: string): void;
1065
+ setMaxBounds(bounds: number[][]): void;
1066
+ addMarker(feature: any, htmlElement?: HTMLElement, options?: any): Marker;
1067
+ createMarker(feature: any, htmlElement?: HTMLElement, options?: any): Marker;
1068
+ addMarkerToMap(marker: Marker): void;
1069
+ addPopup(feature: any, content: string | HTMLElement, options?: any): Popup;
1070
+ createPopup(feature: any, content: string | HTMLElement, options?: any): Popup;
1071
+ setCursor(cursor: string): void;
1072
+ displayRoute(routeData: MapViewRoutePoint[] | undefined, type?: string): void;
1073
+ resize(): void;
1074
+ hideRoute(): void;
1075
+ setExitButtonText(text: string): void;
1076
+ setExitButtonStatus(shouldEnable: boolean): void;
1077
+ addSource(id: string, geojsonData: any, cluster?: boolean): any;
1078
+ getSource(sourceId: string): any;
1079
+ addLayer(layer: any, aboveLayerId?: string): any;
1080
+ getLayer(layerId: string): any;
1081
+ bringMainTypeLayerToFront(mainType: string): void;
1082
+ addImage(imageId: string, imageUrl: string): Promise<void>;
1083
+ removeLayer(layerId: string): void;
1084
+ removeSource(sourceId: string): void;
1085
+ updateSourceData(sourceId: string, data: any): void;
1086
+ getPitch(): number | undefined;
1087
+ getBearing(): number | undefined;
1088
+ setPitch(pitch: number): void;
1089
+ setBearing(bearing: number): void;
1090
+ setCenter(center: [number, number]): void;
1091
+ setZoom(zoom: number): void;
1092
+ hideInfoButton(): void;
1093
+ showInfoButton(): void;
1094
+ removeMarker(type: string): void;
1095
+ addTransitionMarker(point: MapViewRoutePoint, type: "start" | "destination"): void;
1096
+ addDestinationMarker(point: MapViewRoutePoint): void;
1097
+ moveLayer(layerId: string, beforeLayerId?: string): void;
1098
+ }
1099
+
1100
+ type MapLibreFilter = JsonValue[];
1101
+ interface LayerOptions {
1102
+ paint?: JsonObject;
1103
+ layout?: JsonObject;
1104
+ minzoom?: number;
1105
+ maxzoom?: number;
1106
+ [key: string]: JsonValue;
1107
+ }
1108
+ declare abstract class Layer {
1109
+ type: string;
1110
+ id: string;
1111
+ sourceId: string;
1112
+ filter: MapLibreFilter | null;
1113
+ maxzoom: number;
1114
+ minzoom: number;
1115
+ options: {
1116
+ paint: JsonObject;
1117
+ layout: JsonObject;
1118
+ };
1119
+ constructor(options?: LayerOptions, filter?: MapLibreFilter | null, layoutProperties?: string[], paintProperties?: string[]);
1120
+ convertToMapJson(): JsonObject;
1121
+ }
1122
+
1123
+ interface MapViewControllerClusterOptions {
1124
+ fonts?: string[];
1125
+ textSize?: number;
1126
+ circleColor?: any;
1127
+ circleRadius?: any;
1128
+ }
1129
+ interface MapViewControllerBuilding {
1130
+ buildingInternalIdentifier: string;
1131
+ buildingExternalIdentifier?: string;
1132
+ buildingTitle?: string;
1133
+ geometry?: any;
1134
+ properties?: JsonObject;
1135
+ }
1136
+ declare class MapViewController extends BaseViewController {
1137
+ options: Options;
1138
+ dataManager: DataManager;
1139
+ SITE_ZOOM_LEVEL: number;
1140
+ BUILDING_ZOOM_LEVEL: number;
1141
+ MIN_ZOOM_LEVEL: number;
1142
+ MAX_ZOOM_LEVEL: number;
1143
+ buildingOutlineLayers: string[];
1144
+ poiManager: PoiManager | undefined;
1145
+ analyticsManager: AnalyticsManager | undefined;
1146
+ translation: Translation;
1147
+ view: MapView;
1148
+ highlightedPoiObjects: Poi[];
1149
+ customPointMarkerList: Marker[];
1150
+ addedMarkerList: Marker[];
1151
+ isIdleCalculationDisabled: boolean;
1152
+ cachedHighlightedPoiObjects: Poi[];
1153
+ highlightedLevelIndex: number | undefined;
1154
+ highlightedBuildingInternalIdentifiers: string[];
1155
+ layersBeforeUpdatingMinZoom: any[];
1156
+ levelIndex: number | undefined;
1157
+ poiAttributeCache: Record<string, any>;
1158
+ filteredPoiSet: Set<string>;
1159
+ mapMainTypeToFeatureList: Record<string, any[]>;
1160
+ dynamicPois: any[];
1161
+ styledPoiObjects: Poi[];
1162
+ hiddenPoisByMainType: Map<string, Set<string>>;
1163
+ _originalLayerFilters: Map<string, any>;
1164
+ poisOfCategory: Poi[] | undefined;
1165
+ maxZoomOfOutline: number | undefined;
1166
+ highlightedSiteInternalIdentifier: string | undefined;
1167
+ buildingModelsBySite: Map<string, BuildingModelDescriptor[]>;
1168
+ shouldHideBuildingModels: boolean;
1169
+ building3DModelsActive: boolean;
1170
+ constructor(options: Options, poiManager: PoiManager, translation: Translation, analyticsManager: AnalyticsManager);
1171
+ populate(): boolean;
1172
+ setLevel(levelIndex: number | undefined): void;
1173
+ clearLevel(): void;
1174
+ filterExpressionReferencesProperty(expression: any, property: string): boolean;
1175
+ stripRuntimeFilters(originalFilter: any): any;
1176
+ buildLevelFilter(originalFilter: any, extraFilters: any[]): any[];
1177
+ updateLayersForCurrentLevel(levelIndex: number | undefined): void;
1178
+ addTransitionMessageLayer(transition: {
1179
+ lat: number;
1180
+ lon: number;
1181
+ }, isStartInsideBuildings: boolean, buildingToGo: MapViewControllerBuilding | undefined): void;
1182
+ removeTransitionMessageLayer(): void;
1183
+ addPoiOrderNumbers(poisOfCategory: Poi[]): void;
1184
+ removePoiOrderNumbers(): void;
1185
+ cacheOriginalLayerFilter(layerId: string): void;
1186
+ setSelectedPoiLayer(poi: Poi | undefined): void;
1187
+ zoomTo(level: number): void;
1188
+ setUserInteractionEnabled(isEnabled: boolean): void;
1189
+ scrollTo(latlng: LatLng, zoom: number | undefined, shouldDisableBuildingAndSiteUpdate?: boolean, offset?: [number, number]): void;
1190
+ scrollToSite(siteId: string): void;
1191
+ scrollToBuilding(buildingId: string): void;
1192
+ scrollToBuildingByPoi(poi: Poi, zoomToAddBuildingLevel?: number): void;
1193
+ getBottomMapObstructionHeight(): number;
1194
+ getMapPaddingForPoiCards(): {
1195
+ top: number;
1196
+ bottom: number;
1197
+ left: number;
1198
+ right: number;
1199
+ };
1200
+ resetMapPadding(): void;
1201
+ centerPoiInVisibleMapArea(poi: Poi, options?: {
1202
+ duration?: number;
1203
+ pitch?: number;
1204
+ zoom?: number;
1205
+ }): void;
1206
+ isPoiOnScreen(poi: Poi): boolean;
1207
+ scrollToPoi(poi: Poi, zoomToAddBuildingLevel?: number, offset?: [number, number], shouldKeepZoomLevel?: boolean): void;
1208
+ fitBounds(latlngArr: LatLng[]): void;
1209
+ zoomIn(): void;
1210
+ zoomOut(): void;
1211
+ highlightPoi(poi: Poi): void;
1212
+ showAlwaysFillLayers(): void;
1213
+ revertShowAlwaysFillLayers(): void;
1214
+ unhighlightPoi(id: string): void;
1215
+ unhighlightAllPois(): void;
1216
+ setPtrLayersZoomRangeForHighlight(minzoom?: number): void;
1217
+ highlightCachedPois(): void;
1218
+ clearCachedHighlightedPois(): void;
1219
+ removeFromCachedHighlightedPois(poi: Poi): void;
1220
+ addFiltersForZoomRanges(): void;
1221
+ removeFilterForZoomRange(): void;
1222
+ resetMarkersForLevel(): void;
1223
+ MapView_onMapReady: () => void;
1224
+ MapView_onCurrentSiteChangedForModels: (data: {
1225
+ oldSite?: {
1226
+ siteInternalIdentifier?: string;
1227
+ };
1228
+ newSite?: {
1229
+ siteInternalIdentifier?: string;
1230
+ };
1231
+ }) => void;
1232
+ areBuilding3DModelsActive(): boolean;
1233
+ fallbackToBuildingOutlinesFor3DModels(): void;
1234
+ removeInvalidBuilding3DModels(): void;
1235
+ collectBuildingModels(): BuildingModelDescriptor[];
1236
+ collectBuildingModelsBySite(): Map<string, BuildingModelDescriptor[]>;
1237
+ resolveBuildingModelUrl(url: string): string;
1238
+ MapView_onZoomChanged: (zoom: number) => void;
1239
+ initSiteBuildingOutlines(): void;
1240
+ hidePtrLayersExceptOutlines(): void;
1241
+ showLayer(layer: {
1242
+ id: string;
1243
+ }): void;
1244
+ hideLayer(layer: {
1245
+ id: string;
1246
+ }): void;
1247
+ updateBuildingIfOptionSet(): boolean;
1248
+ updateSiteIfOptionSet(): void;
1249
+ updateMapTiles(siteInternalIdentifier: string): Promise<void>;
1250
+ scrollToAllSites(): void;
1251
+ MapView_onPoiHighlighted: (poi: Poi) => void;
1252
+ updateHighlightedBuildingsForWholeSite(): void;
1253
+ MapView_onPoiUnhighlighted: () => void;
1254
+ MapView_onExitClicked: () => void;
1255
+ updateCurrentSiteAndBuilding(): void;
1256
+ handleSiteChange(zoom: number): void;
1257
+ handleWorldModeForSiteCalculation(): void;
1258
+ handleSiteModeForSiteCalculation(): void;
1259
+ isZoomWithinSiteMode(): boolean;
1260
+ setMaxBounds(bounds: [number, number, number, number] | null): void;
1261
+ restrictMapTo10x10Km(): void;
1262
+ unrestrictMap(): void;
1263
+ handleBuildingChange(zoom: number): void;
1264
+ resetCurrentBuildingOnSiteMode(): void;
1265
+ updateCurrentBuildingOnBuildingMode(): void;
1266
+ updateBuildingForNavigation(): void;
1267
+ getNewCurrentBuilding(buildings: MapViewControllerBuilding[]): MapViewControllerBuilding | undefined;
1268
+ setNewCurrentBuilding(newCurrentBuilding: MapViewControllerBuilding | undefined): void;
1269
+ updateCurrentBuilding(buildingId: string): void;
1270
+ updateCurrentSite(siteId: string): void;
1271
+ setTranslation(translation: Translation): void;
1272
+ displayRoute(routeData: any, type: string): void;
1273
+ makeAllSiteVisible(): void;
1274
+ revertShowAllSites(): void;
1275
+ applyBuildingModelsVisibilityState(): void;
1276
+ hideRoute(): void;
1277
+ hideDestinationSymbol(destinationObject: any): void;
1278
+ showDestinationSymbol(destinationObject: any): void;
1279
+ setExitButtonStatus(shouldEnable: boolean): void;
1280
+ updateExitButtonText(): void;
1281
+ resize(): void;
1282
+ clearCustomPointsList(): void;
1283
+ removeAllCustomPointMarkersFromMap(): void;
1284
+ addCustomPointsBackForLevel(levelIndex: number | undefined): void;
1285
+ addCustomPointMarker(feature: Feature | any, htmlElement?: HTMLElement): void;
1286
+ addMarker(feature: Feature, htmlElement?: HTMLElement, options?: JsonObject): Marker | undefined;
1287
+ removeMarkerFromLocation(feature: Feature | any): void;
1288
+ removeMarkerForLevel(marker: Marker): void;
1289
+ removeMarker(marker: Marker): void;
1290
+ deleteAllMarkers(): void;
1291
+ setVisibility(marker: Marker, isVisible: boolean): void;
1292
+ removeAllMarkers(): void;
1293
+ removeAllAddedMarkersFromMap(): void;
1294
+ addAddedMarkersBackForLevel(levelIndex: number | undefined): void;
1295
+ addPopup(feature: Feature, content: HTMLElement | string, options?: JsonObject): Popup | undefined;
1296
+ removePopup(popup: Popup): void;
1297
+ addPopupToMarker(marker: Marker, popup: Popup): void;
1298
+ addImage(imageId: string, imageUrl: string): Promise<void>;
1299
+ addLayer(layer: Layer, clusterOptions?: MapViewControllerClusterOptions, aboveLayerId?: string): Layer | Layer[];
1300
+ updateFeatures(layer: Layer, data?: Feature[] | any[]): void;
1301
+ makeSymbolLayersHiddenForQuickAccess(): void;
1302
+ makeSymbolLayersVisible(): void;
1303
+ removeLayer(layer: Layer): void;
1304
+ getPitch(): number | undefined;
1305
+ getBearing(): number | undefined;
1306
+ setPitch(pitch: number): void;
1307
+ setBearing(bearing: number): void;
1308
+ setCenter(center: [number, number]): void;
1309
+ setZoom(zoom: number): void;
1310
+ fitBoundsForRoute(data: {
1311
+ lat: number;
1312
+ lon: number;
1313
+ }[], maxZoom?: number): void;
1314
+ getPaddingForRoute(): {
1315
+ top: number;
1316
+ bottom: number;
1317
+ left: number;
1318
+ right: number;
1319
+ };
1320
+ hideBuildingOutlines(): void;
1321
+ showBuildingOutlines(): void;
1322
+ destroyMap(): void;
1323
+ hideInfoButton(): void;
1324
+ showInfoButton(): void;
1325
+ updatePoiStyles(poisArray: Poi[], dynamicExtrusionOpacity?: number): Promise<void>;
1326
+ _updatePoiStylesInternal(poisArray: Poi[], dynamicExtrusionOpacity?: number): Promise<void>;
1327
+ _convertPoisToFeatures(poisArray: Poi[]): any[];
1328
+ _cachePoiIcons(poisArray: Poi[], map: any): Promise<void>;
1329
+ _removeOldDynamicLayersAndSources(map: any, style: any): void;
1330
+ _createDynamicLayers(style: any, map: any, dynamicExtrusionOpacity?: number): any[];
1331
+ _createLayerForType(layerType: string, mainType: string, originalLayers: any[], style: any, map: any, dynamicExtrusionOpacity?: number): any;
1332
+ _buildRuntimePaintOverrideExpression(originalValue: any, propertyKey: string, emptyFallback: any): any;
1333
+ _configureLayerPaintAndLayout(newLayer: any, layerType: string, mainType: string, originalLayer: any, map: any, dynamicExtrusionOpacity?: number): void;
1334
+ _processPoiProperties(): void;
1335
+ _addPoiSources(map: any): void;
1336
+ _addDynamicLayersToMap(map: any, dynamicLayers: any[]): void;
1337
+ _hideOriginalPoisForDynamicStyling(): void;
1338
+ getPoiSourceId(mainType: string): string;
1339
+ getDynamicLayerId(layerId: string): string;
1340
+ resetPoiStyles(poisArray: Poi[] | Poi): Promise<void>;
1341
+ resetAllPoiStyles(): Promise<void>;
1342
+ getDynamicPois(): any[];
1343
+ hasDynamicStyling(poiId: string): boolean;
1344
+ _buildPoiHideFilter(poiId: string): any[];
1345
+ _isPoiHideFilter(filterItem: unknown, poiId?: string): boolean;
1346
+ _isLegacyPoiHideFilter(filterItem: unknown, poiIds?: Set<string>): boolean;
1347
+ _hasPoiHideFilterOnLayer(layer: any, poiId: string): boolean;
1348
+ _addPoiHideFilterToLayer(layerId: string, layer: any, poiId: string): void;
1349
+ _getOriginalPoiLayerIds(mainType: string): string[];
1350
+ _removePoiHideFiltersFromLayer(layerId: string, layer: any, poiIds: Set<string>): void;
1351
+ hidePois(poisArray: Poi[]): void;
1352
+ showAllHiddenPois(): void;
1353
+ reapplyHiddenPoiFilters(): void;
1354
+ showPois(poisArray?: Poi[] | null): void;
1355
+ getHiddenPoiIds(): Set<string>;
1356
+ updatePoiExtrusionOpacity(extrusionOpacity: number): void;
1357
+ updateMainTypeProperties(mainType: string, layerType: string, layoutProperties?: JsonObject, paintProperties?: JsonObject): void;
1358
+ setZoomRangeForMainType(mainType: string, minZoom: number, maxZoom: number): void;
1359
+ bringMainTypeLayerToFront(mainType: string): void;
1360
+ moveMainTypeLayer(mainType: string, beforeMainType?: string): void;
1361
+ }
1362
+
1363
+ interface SearchResultItem {
1364
+ mainText?: string;
1365
+ firstDescriptionText?: string;
1366
+ secondaryDescriptionText?: string;
1367
+ id?: string;
1368
+ bid?: string;
1369
+ mainType?: string;
1370
+ subType?: string;
1371
+ isFeatured?: boolean;
1372
+ logo?: string;
1373
+ [key: string]: JsonValue;
1374
+ }
1375
+ interface SearchResultGroup {
1376
+ mainText: string;
1377
+ items: SearchResultItem[];
1378
+ descriptionText?: string;
1379
+ mainType?: string;
1380
+ subType?: string;
1381
+ isFeatured?: boolean;
1382
+ [key: string]: JsonValue;
1383
+ }
1384
+ interface LocationFilterBuilding {
1385
+ buildingName: string;
1386
+ buildingInternalIdentifier: string;
1387
+ [key: string]: JsonValue;
1388
+ }
1389
+ interface CategoryFilterOption {
1390
+ name: string;
1391
+ [key: string]: JsonValue;
1392
+ }
1393
+ declare class SearchView extends BaseView {
1394
+ translation?: Translation;
1395
+ events: BaseView["events"] & {
1396
+ searchSelected: string;
1397
+ poiSelected: string;
1398
+ searchCleared: string;
1399
+ resultsPopulated: string;
1400
+ querySearched: string;
1401
+ routeButtonClicked: string;
1402
+ goBackButtonClicked: string;
1403
+ buildingFilterSelected: string;
1404
+ categoryFilterSelected: string;
1405
+ searchResultsShown: string;
1406
+ };
1407
+ options: Options;
1408
+ placeholderValue: string | undefined;
1409
+ searchViewId: string;
1410
+ searchOuterBoxId: string;
1411
+ searchInnerBoxId: string;
1412
+ listHeaderContainerId: string;
1413
+ inputId: string;
1414
+ clearId: string;
1415
+ searchIconId: string;
1416
+ resultId: string;
1417
+ searchResultsStatusId: string;
1418
+ loadingCircleId: string;
1419
+ goBackIconContainerId: string;
1420
+ listHeaderId: string;
1421
+ listHeaderIconId: string;
1422
+ filterContainerId: string;
1423
+ locationFilterId: string;
1424
+ categoryFilterId: string;
1425
+ keyboardPlaceHolderId: string;
1426
+ dropdownContainerClass: string;
1427
+ bottomUi: string;
1428
+ uiId: string;
1429
+ expanderClass: string;
1430
+ draggableBoxId: string;
1431
+ hoverableIconClass: string;
1432
+ searchResultLogoClass: string;
1433
+ clearEl: string;
1434
+ searchIconEl: string;
1435
+ inputEl: string;
1436
+ resultEl: string;
1437
+ searchResultsStatusEl: string;
1438
+ loadingCircleEl: string;
1439
+ listHeaderContainerEl: string;
1440
+ listHeaderEl: string;
1441
+ listHeaderIconEl: string;
1442
+ filterContainerEl: string;
1443
+ locationFilterEl: string;
1444
+ categoryFilterEl: string;
1445
+ searchOuterBoxEl: string;
1446
+ bottomUiEl: string;
1447
+ draggableBoxEl: string;
1448
+ keyboardPlaceHolderEl: string;
1449
+ uiEl: string;
1450
+ goBackIconContainerEl: string;
1451
+ expanderEl: string;
1452
+ arrowContainerEl: string;
1453
+ targetEl: string;
1454
+ rootEl: string;
1455
+ lang: {
1456
+ code?: string;
1457
+ title?: string;
1458
+ } | undefined;
1459
+ constructor(options?: Options, translation?: Translation);
1460
+ createUi(): void;
1461
+ initKeyboardNavigation(): void;
1462
+ applyAccessibilityLabels(): void;
1463
+ goBack(): void;
1464
+ show(shouldDisplayList?: boolean): void;
1465
+ showAllSearchView(shouldHideFilter?: boolean, shouldDisplayList?: boolean): void;
1466
+ populate(): boolean;
1467
+ populateQuery(query: string): void;
1468
+ showClearEl(): void;
1469
+ setQueryToInput(query?: string): void;
1470
+ normalizePoiId(poiId: string | number | undefined | null): string | undefined;
1471
+ itemMatchesPoiId(item: SearchResultItem, selectedPoiId: string | number): boolean;
1472
+ findSelectedItemInGroup(items: SearchResultItem[], selectedPoiId: string | number): SearchResultItem | undefined;
1473
+ expandSearchResultGroup(listItem: any, items: SearchResultItem[], expandableContent: any, expandableContainer: any, selectedPoiId?: string | number): void;
1474
+ scrollSearchResultIntoView(target: HTMLElement | undefined): void;
1475
+ populateResults(searchResults: SearchResultGroup[] | undefined, selectedPoiId?: string | number): void;
1476
+ populateCategoryFilter(filterList: CategoryFilterOption[] | null | undefined, selectedFilterList: number[]): void;
1477
+ populateLocationFilter(buildings: LocationFilterBuilding[], selectedBuildingId?: string): void;
1478
+ createListItem(items: SearchResultItem[], expandableContent: any, expandableContainer: any, mainText: string): any;
1479
+ removeExpandedClasses(): void;
1480
+ createResultSubItems(items: SearchResultItem[], currentExpandableElement: any): void;
1481
+ createFeaturedBadge(): any;
1482
+ createListItemContent(container: any, mainText: string, descriptionText: string, count?: number, options?: {
1483
+ isFeatured?: boolean;
1484
+ logo?: string;
1485
+ }): any;
1486
+ appendHoverableIcon(listItemContent: any, mainText: string): void;
1487
+ appendSearchResultLogo(listItemContent: any, logo: string, mainText: string, isFeatured?: boolean): void;
1488
+ onRouteClicked(): void;
1489
+ showResults(title?: string, icon?: string): void;
1490
+ hide(): boolean;
1491
+ clear(): void;
1492
+ clearResult(): void;
1493
+ emptyResults(): void;
1494
+ announceSearchStatus(message: string): void;
1495
+ clearFilters(): void;
1496
+ clearLocationFilter(): void;
1497
+ clearCategoryFilter(): void;
1498
+ setStatus(options: ViewStatusOptions): void;
1499
+ setHeader(headerText?: string, headerIcon?: string): void;
1500
+ setPlaceholderText(placeholderText: string): void;
1501
+ isLocationFilterVisible(): boolean;
1502
+ }
1503
+
1504
+ interface GroupedSearchItem {
1505
+ mainText: string;
1506
+ mainType?: string;
1507
+ subType?: string;
1508
+ firstDescriptionText?: string;
1509
+ secondaryDescriptionText?: string;
1510
+ levelIndex?: number;
1511
+ isFeatured?: boolean;
1512
+ [key: string]: JsonValue;
1513
+ }
1514
+ interface GroupedSearchGroup {
1515
+ mainText: string;
1516
+ buildings: (string | undefined)[];
1517
+ mainType?: string | undefined;
1518
+ subType?: string | undefined;
1519
+ items: GroupedSearchItem[];
1520
+ descriptionText?: string;
1521
+ isFeatured?: boolean;
1522
+ [key: string]: JsonValue;
1523
+ }
1524
+ declare class SearchViewController extends BaseViewController {
1525
+ options: Options;
1526
+ poiManager: any;
1527
+ translation: Translation;
1528
+ analyticsManager: any;
1529
+ view: SearchView;
1530
+ selectedPoi: Poi | undefined;
1531
+ enabled: boolean;
1532
+ selectedCategoryFilters: number[];
1533
+ selectedBuildingFilter: string | undefined;
1534
+ query: string | undefined;
1535
+ results: Poi[];
1536
+ filteredResults: Poi[];
1537
+ defaultPois: Poi[] | undefined;
1538
+ buildingObjects: {
1539
+ buildingName: string;
1540
+ buildingInternalIdentifier: string;
1541
+ }[];
1542
+ categoryFilter: unknown;
1543
+ eventTimeout: ReturnType<typeof setTimeout> | undefined;
1544
+ lastQueryTime: number | undefined;
1545
+ lang: {
1546
+ code?: string;
1547
+ title?: string;
1548
+ } | undefined;
1549
+ constructor(options: Options | undefined, poiManager: any, translation: Translation, analyticsManager: any);
1550
+ populate(): boolean;
1551
+ generateDefaultPois(): void;
1552
+ setQueryToInput(): void;
1553
+ populateQuery(query: string): void;
1554
+ populateResults(): boolean;
1555
+ populateLocationFilter(): void;
1556
+ hideView(): void;
1557
+ showView(): void;
1558
+ showAllSearchView(): void;
1559
+ hideResults(): void;
1560
+ clearSelectedPoi(): void;
1561
+ getSelectedPoi(): Poi | undefined;
1562
+ clearSearch(): void;
1563
+ SearchView_onPoiSelected: (poiId: string | number | undefined) => void;
1564
+ SearchView_onSearchCleared: () => Promise<void>;
1565
+ SearchView_onSearchSelected: (query: string) => void;
1566
+ SearchView_onQuerySearched: (query: string) => Promise<void>;
1567
+ SearchView_onBuildingFilterSelected: (selectedBuildingId: string | undefined) => void;
1568
+ SearchView_onGoBackButtonClicked: () => void;
1569
+ goBack(): void;
1570
+ shouldDisplayCategories: () => boolean;
1571
+ shouldDisplayList: () => boolean;
1572
+ applyFilter(): void;
1573
+ handleEmptyQuery(): Promise<void>;
1574
+ setStatus(options: ViewStatusOptions): void;
1575
+ updatePlaceholder(): void;
1576
+ setTranslation(translation: Translation): void;
1577
+ getItemDescriptionText(item?: GroupedSearchItem, includeBuilding?: boolean): string;
1578
+ getGroupedDescriptionText(group: GroupedSearchGroup): string;
1579
+ groupPoisByNameAndMainType(itemList: GroupedSearchItem[]): GroupedSearchGroup[];
1580
+ reset(): void;
1581
+ }
1582
+
1583
+ declare class CategoryListView extends BaseView {
1584
+ events: BaseView["events"] & {
1585
+ categorySelected: string;
1586
+ };
1587
+ categoryListViewId: string;
1588
+ pointrSearchId: string;
1589
+ draggableBoxId: string;
1590
+ categoryItemClass: string;
1591
+ categoryIconClass: string;
1592
+ categoryIconWrapperClass: string;
1593
+ categoryIconWrapperStyleClass: Record<number, string>;
1594
+ categoryNameWrapperClass: string;
1595
+ targetEl: string;
1596
+ rootEl: string;
1597
+ searchEl: string;
1598
+ draggableBoxEl: string;
1599
+ categoryListViewEl: string;
1600
+ maxHeightForMobile: number;
1601
+ options: Options;
1602
+ constructor(options?: Options, translation?: any);
1603
+ createUi(): void;
1604
+ initKeyboardNavigation(): void;
1605
+ private static isKeyboardFocusEvent;
1606
+ refreshCategoryListKeyboard(activeIndex?: number): void;
1607
+ applyAccessibilityLabels(): void;
1608
+ populate(): boolean;
1609
+ show(): void;
1610
+ hide(): boolean;
1611
+ setCategories(_categoryList: unknown[]): void;
1612
+ }
1613
+
1614
+ declare class CategoryListViewController extends BaseViewController {
1615
+ options: Options;
1616
+ dataManager: DataManager;
1617
+ view: CategoryListView;
1618
+ constructor(options?: Options, translation?: Translation);
1619
+ populate(): boolean;
1620
+ showView(): void;
1621
+ setCategories(categoryList: unknown[]): void;
1622
+ getCategories(): unknown[] | undefined;
1623
+ hideView(): void;
1624
+ setTranslation(translation: Translation): void;
1625
+ }
1626
+
1627
+ interface LevelSelectorLevelObj {
1628
+ title: string;
1629
+ hoverText: string;
1630
+ [key: string]: JsonValue;
1631
+ }
1632
+ interface LevelSelectorSizeOptions {
1633
+ shouldExpand: boolean;
1634
+ }
1635
+ type LevelSelectorStatusOptions = ViewStatusOptions;
1636
+ declare class LevelSelectorView extends BaseView {
1637
+ events: BaseView["events"] & {
1638
+ levelSelected: string;
1639
+ };
1640
+ levelClass: string;
1641
+ levelTitleClass: string;
1642
+ levelSelectorViewId: string;
1643
+ tooltipId: string;
1644
+ tooltipTextClass: string;
1645
+ activeClass: string;
1646
+ upArrowClass: string;
1647
+ downArrowClass: string;
1648
+ levelSelectorViewEl: string;
1649
+ levelEl: string;
1650
+ tooltipEl: string;
1651
+ activeEl: string;
1652
+ upArrowEl: string;
1653
+ downArrowEl: string;
1654
+ targetEl: string;
1655
+ rootEl: string;
1656
+ levelObjs: LevelSelectorLevelObj[];
1657
+ expanded: boolean;
1658
+ _currentViewLevel: number;
1659
+ constructor(options?: Options, translation?: Translation);
1660
+ get currentViewLevel(): number;
1661
+ set currentViewLevel(index: number | undefined);
1662
+ setArrows(index: number, shouldExpand: boolean): void;
1663
+ setLevelSelectorSize(options: LevelSelectorSizeOptions): void;
1664
+ private isLevelSelectorDisabled;
1665
+ activateLevel(index: number): void;
1666
+ clear(): void;
1667
+ createUi(): void;
1668
+ applyAccessibilityLabels(): void;
1669
+ populate(levelObjs?: LevelSelectorLevelObj[] | null): boolean;
1670
+ private refreshLevelTabStops;
1671
+ private wireExpandedLevelTabStop;
1672
+ private clearLevelTabStop;
1673
+ private updateExpandedLevelOptionState;
1674
+ setStatus(options: LevelSelectorStatusOptions): void;
1675
+ }
1676
+
1677
+ interface LevelObjLike {
1678
+ levelIndex: number;
1679
+ levelShortTitle?: string;
1680
+ levelLongTitle?: string;
1681
+ properties?: {
1682
+ name?: string;
1683
+ shortName?: string;
1684
+ [key: string]: JsonValue;
1685
+ };
1686
+ [key: string]: JsonValue;
1687
+ }
1688
+ declare class LevelSelectorViewController extends BaseViewController {
1689
+ view: LevelSelectorView;
1690
+ analyticsManager: AnalyticsManager | undefined;
1691
+ translation: Translation | undefined;
1692
+ enabled: boolean;
1693
+ levelObjs: LevelObjLike[];
1694
+ level: Level | undefined;
1695
+ previousLevel: Level | undefined;
1696
+ levelIndex: number | undefined;
1697
+ constructor(options?: Options, translation?: Translation, analyticsManager?: AnalyticsManager);
1698
+ populate(): boolean;
1699
+ setLevel(levelIndex: number | undefined): void;
1700
+ setTranslation(translation: Translation): void;
1701
+ getLevel(): Level | undefined;
1702
+ LevelSelectorView_onLevelSelected: (index: number) => void;
1703
+ findViewLevelFromLevelIndex(levelIndex: number): number;
1704
+ getLevelFromIndex(levelIndex: number): Level;
1705
+ getLevelFromExternalIdentifier(levelExternalIdentifier: string): Level;
1706
+ getLevelWithIndex(levelIndex: number): LevelObjLike | undefined;
1707
+ setStatus(options: LevelSelectorStatusOptions): void;
1708
+ setLevelSelectorSize(options: LevelSelectorSizeOptions): void;
1709
+ show(): void;
1710
+ hide(): void;
1711
+ }
1712
+
1713
+ interface OpenHoursEntry {
1714
+ day?: string | number;
1715
+ open?: string;
1716
+ close?: string;
1717
+ [key: string]: JsonValue;
1718
+ }
1719
+ interface PoiDetailsButton {
1720
+ title?: string;
1721
+ url?: string;
1722
+ iconUrl?: string;
1723
+ type?: string;
1724
+ [key: string]: JsonValue;
1725
+ }
1726
+ interface PoiDetailsDict {
1727
+ name?: string;
1728
+ levelTitle?: string;
1729
+ buildingDescription?: string;
1730
+ logo?: string;
1731
+ rating?: number;
1732
+ numberOfRatings?: number;
1733
+ ratingMax?: number;
1734
+ priceRange?: number;
1735
+ openHours?: OpenHoursEntry[] | JsonObject;
1736
+ images?: string[];
1737
+ tags?: string[] | string;
1738
+ description?: string;
1739
+ buttons?: PoiDetailsButton[] | string;
1740
+ isFeatured?: boolean;
1741
+ [key: string]: JsonValue;
1742
+ }
1743
+ declare class PoiDetailsView extends BaseView {
1744
+ options: Options;
1745
+ translation: Translation;
1746
+ events: BaseView["events"] & {
1747
+ closeClicked: string;
1748
+ routeButtonClicked: string;
1749
+ accessibilityButtonClicked: string;
1750
+ poiButtonClicked: string;
1751
+ expanded: string;
1752
+ minimized: string;
1753
+ };
1754
+ constructor(options?: Options, translation?: Translation);
1755
+ shouldHandleBottomSheetDrag(): boolean;
1756
+ attachSheetTouchMoveListener(): void;
1757
+ detachSheetTouchMoveListener(): void;
1758
+ handleSheetTouchMove(event: Event): void;
1759
+ attachSheetTouchEndListeners(): void;
1760
+ detachSheetTouchEndListeners(): void;
1761
+ lockBottomSheetExpanded(): void;
1762
+ handleSheetTouchEnd(event: Event): void;
1763
+ snapBottomSheetFromDrag(releaseClientY: number): void;
1764
+ createUi(): void;
1765
+ applyAccessibilityLabels(): void;
1766
+ applyAccessibilityRouteSwitch(translation?: Translation): void;
1767
+ dismissPoiDetails(): void;
1768
+ updateAccessibilityRouteLabel(): void;
1769
+ populate(dict: PoiDetailsDict | undefined): boolean;
1770
+ populatePoiName(name: string | undefined): void;
1771
+ populateRating(rating: any, numberOfRatings: any, ratingMax: any): void;
1772
+ isValidRating(rating: any): boolean;
1773
+ getLocalizedRatingValues(rating: any, ratingMax: any, numberOfRatings: any): {
1774
+ ratingLocale: any;
1775
+ ratingMaxLocale: any;
1776
+ numberOfRatingsLocale: any;
1777
+ };
1778
+ createRatingInfoElement(): any;
1779
+ createRatingElement(ratingLocale: any, ratingTextBoxEl: any): any;
1780
+ appendRatingMax(ratingEl: any, ratingMaxLocale: any, rating: any, ratingMax: any): void;
1781
+ appendNumberOfRatings(ratingTextBoxEl: any, numberOfRatings: any, numberOfRatingsLocale: any): void;
1782
+ simplifyNumberOfRatings(numberOfRatings: any): any;
1783
+ populatePriceInfo(priceRange: any): void;
1784
+ populateWorkingHourInfo(openHours: any): boolean;
1785
+ getStatus(currentDate: any): string;
1786
+ setRegionalTimeFormat(): void;
1787
+ populateNextOpenCloseInfo(workingHourExpanderEl: any, status: any, currentDate: any): void;
1788
+ ensureWorkingHoursTableStructure(): void;
1789
+ populateTimeTable(workingHourExpanderEl: any): void;
1790
+ populateImageCarousel(images: any): boolean;
1791
+ generateFullScreenViewer(images: any): void;
1792
+ handleFullScreenViewerOpen(images: any): void;
1793
+ handleErrorOnImageLoad(): void;
1794
+ getVisibleLoaderElement(): any;
1795
+ displayErrorContent(): void;
1796
+ populateThumbnailBullets(images: any): void;
1797
+ addEventHandlers(): void;
1798
+ removeEventHandlers(): void;
1799
+ documentPointerdownHandler(event: any): void;
1800
+ documentPointerupHandler(event: any): void;
1801
+ documentPointercancelHandler(event: any): void;
1802
+ documentPointermoveHandler(event: any): void;
1803
+ documentArrowPressHandler(event: any): void;
1804
+ pinchHandler(zoomRatio: any): void;
1805
+ swipeHandler(swipe: any): void;
1806
+ tapHandler(eventTarget: any): void;
1807
+ updateCurrentImageOnFullscreen(): void;
1808
+ resetFullscreenViewer(): void;
1809
+ setFullScreenViewerUI(shouldShow: any): void;
1810
+ populateTags(tags: any): boolean;
1811
+ populateDescription(description: any): boolean;
1812
+ isDescriptionOverflowing(): boolean;
1813
+ updateReadMoreButtonVisibility(): void;
1814
+ scheduleReadMoreButtonVisibilityUpdate(): void;
1815
+ setupDescriptionResizeObserver(): void;
1816
+ disconnectDescriptionResizeObserver(): void;
1817
+ populateButtons(buttons: any): boolean;
1818
+ show(): void;
1819
+ hide(): boolean;
1820
+ onRouteClicked(): void;
1821
+ onAccessibilityClicked(): void;
1822
+ setAccessibilityButtonStatus(status: any): void;
1823
+ handleAccessibilityStatus(isAnimationActive: any): void;
1824
+ isFsLightboxCloseTarget(target: EventTarget | null): boolean;
1825
+ isFsLightboxChromeTarget(target: EventTarget | null): boolean;
1826
+ setPoiDetailsInteractionBlocked(blocked: boolean): void;
1827
+ openFullscreenViewerAt(index: number): void;
1828
+ closeFullscreenViewer(): void;
1829
+ wireFullscreenViewerCloseButton(): void;
1830
+ setupSplideCarouselAccessibility(): void;
1831
+ clearContent(): void;
1832
+ formatTime(date: any): any;
1833
+ setCanExpand(): void;
1834
+ resetTouchDragState(): void;
1835
+ isInteractiveElement(element: any): boolean;
1836
+ }
1837
+
1838
+ declare class PoiDetailsViewController extends BaseViewController {
1839
+ options: Options;
1840
+ view: PoiDetailsView;
1841
+ currentPoi: Poi | undefined;
1842
+ translation: Translation;
1843
+ constructor(options?: Options, translation?: Translation);
1844
+ showView(): void;
1845
+ populate(poi: any): boolean;
1846
+ setTranslation(translation: Translation): void;
1847
+ getCurrentPoi(): any;
1848
+ PoiDetailsView_onCloseClicked: () => void;
1849
+ setAccessibilityButtonStatus(isAccessible: boolean): void;
1850
+ }
1851
+
1852
+ interface LoadingErrorLike {
1853
+ errorTitle?: string;
1854
+ errorMsg?: string;
1855
+ [key: string]: JsonValue;
1856
+ }
1857
+ declare class LoadingView extends BaseView {
1858
+ events: BaseView["events"] & {
1859
+ errorShown: string;
1860
+ errorHidden: string;
1861
+ errorClosed: string;
1862
+ };
1863
+ options: Options;
1864
+ error: LoadingErrorLike | undefined;
1865
+ isPopup: boolean;
1866
+ loadingViewId: string;
1867
+ loadingStatusId: string;
1868
+ errorId: string;
1869
+ contentClass: string;
1870
+ errorTitleId: string;
1871
+ errorDescriptionId: string;
1872
+ loadingId: string;
1873
+ tryAgainButtonId: string;
1874
+ splashScreenId: string;
1875
+ brandedLogoContentId: string;
1876
+ logoContainerId: string;
1877
+ splashScreenTextId: string;
1878
+ brandedLogoId: string;
1879
+ mapId: string;
1880
+ topLeftUiId: string;
1881
+ errorModalId: string;
1882
+ closeButtonId: string;
1883
+ clientTitleId: string;
1884
+ loadingStatusEl: string;
1885
+ errorEl: string;
1886
+ errorContentEl: string;
1887
+ errorTitleEl: string;
1888
+ targetEl: string;
1889
+ loadingEl: string;
1890
+ rootEl: string;
1891
+ mapEl: string;
1892
+ topLeftUiEl: string;
1893
+ errorModalEl: string;
1894
+ closeButtonEl: string;
1895
+ tryAgainButtonEl: string;
1896
+ splashScreenEl: string;
1897
+ splashScreenTextEl: string;
1898
+ brandedLogoEl: string;
1899
+ clientTitleEl: string;
1900
+ constructor(options?: Options, translation?: Translation);
1901
+ createUi(): void;
1902
+ applyAccessibilityLabels(): void;
1903
+ applyErrorModalAccessibility(): void;
1904
+ showSplashView(): void;
1905
+ showError(error: LoadingErrorLike, isPopup: boolean): boolean;
1906
+ hideError(): boolean;
1907
+ toggleFullError(): void;
1908
+ hideLoading(): boolean;
1909
+ showLoading(): boolean;
1910
+ hide(): boolean;
1911
+ setTranslation(translation: Translation): void;
1912
+ }
1913
+
1914
+ declare class LoadingViewController extends BaseViewController {
1915
+ view: LoadingView;
1916
+ constructor(options?: Options, translation?: Translation);
1917
+ showLoading(): void;
1918
+ hideLoading(): void;
1919
+ showSplashView(): void;
1920
+ showError(error: LoadingErrorLike, isPopup: boolean): void;
1921
+ hideError(): void;
1922
+ setTranslation(translation: Translation): void;
1923
+ }
1924
+
1925
+ interface CssStyleRecord {
1926
+ [key: string]: string;
1927
+ }
1928
+ declare class WatermarkView extends BaseView {
1929
+ events: BaseView["events"] & {
1930
+ visibilityChangeDetected: string;
1931
+ };
1932
+ watermarkId: string | undefined;
1933
+ bottomLeftUiEl: string;
1934
+ bottomUiEl: string;
1935
+ targetEl: string;
1936
+ mobileLogoEl: string;
1937
+ rootEl: string;
1938
+ observer: MutationObserver | null;
1939
+ targetNode: Element | null;
1940
+ watermarkNode: Element | null;
1941
+ attributionText: string;
1942
+ shouldHideText: boolean;
1943
+ constructor(options?: Options, translation?: Translation);
1944
+ createUi(): void;
1945
+ applyAccessibilityLabels(): void;
1946
+ show(): void;
1947
+ generateRandomId(): string;
1948
+ getWatermarkStyles(isMobile: boolean, shouldHideLogo: boolean): CssStyleRecord;
1949
+ getImageStyles(isMobile: boolean): CssStyleRecord;
1950
+ getDivStyles(): CssStyleRecord;
1951
+ observeWatermark(): void;
1952
+ private isNodeInsideWatermark;
1953
+ handleChildListMutation(mutation: MutationRecord): void;
1954
+ handleAttributeMutation(mutation: MutationRecord): void;
1955
+ handleCharacterDataMutation(mutation: MutationRecord): void;
1956
+ handleVisibilityChange(): void;
1957
+ isOutOfViewport(el: Element): boolean;
1958
+ getExpectedWidth(node: Element): number;
1959
+ getExpectedHeight(node: Element, isParent: boolean): number;
1960
+ }
1961
+
1962
+ declare class WatermarkViewController extends BaseViewController {
1963
+ view: WatermarkView;
1964
+ constructor(options?: Options, translation?: Translation);
1965
+ }
1966
+
1967
+ type LanguageDict = Language;
1968
+ interface LanguageSelectorStatusOption {
1969
+ shouldEnable: boolean;
1970
+ }
1971
+ declare class LanguageSelectorView extends BaseView {
1972
+ events: BaseView["events"] & {
1973
+ languageSelected: string;
1974
+ expanded: string;
1975
+ shrunk: string;
1976
+ };
1977
+ options: Options;
1978
+ langSelectorViewId: string;
1979
+ langSelectorBtnId: string;
1980
+ selectedLangId: string;
1981
+ languagesId: string;
1982
+ languageSelectorIconId: string;
1983
+ targetEl: string;
1984
+ languagesEl: string;
1985
+ langSelectorBtnEl: string;
1986
+ selectedLangEl: string;
1987
+ rootEl: string;
1988
+ languageSelectorIconEl: string;
1989
+ languages: Language[];
1990
+ constructor(options?: Options, translation?: Translation);
1991
+ createUi(): void;
1992
+ applyAccessibilityLabels(): void;
1993
+ show(): void;
1994
+ populate(dicts: Language[], selectedIndex: number): boolean;
1995
+ toggleLanguageSelector(): void;
1996
+ openLanguageSelector(): void;
1997
+ closeLanguageSelector(): void;
1998
+ clickLanguage(index: number): void;
1999
+ setStatus(options: LanguageSelectorStatusOption): void;
2000
+ }
2001
+
2002
+ declare class LanguageSelectorViewController extends BaseViewController {
2003
+ options: Options;
2004
+ view: LanguageSelectorView;
2005
+ selectedLanguage: LanguageDict;
2006
+ allLanguages: LanguageDict[];
2007
+ languageObjs: LanguageDict[];
2008
+ enabled: boolean | undefined;
2009
+ poiManager: PoiManager | undefined;
2010
+ constructor(options?: Options, translation?: Translation, poiManager?: PoiManager);
2011
+ populate(): boolean;
2012
+ getSelectedLanguage(): LanguageDict;
2013
+ setSelectedLanguage(languageCode: string): void;
2014
+ openLanguageSelector(): void;
2015
+ closeLanguageSelector(): void;
2016
+ LanguageSelectorView_onLanguageSelected: (languageObject: LanguageDict) => void;
2017
+ setStatus(options: LanguageSelectorStatusOption): void;
2018
+ }
2019
+
2020
+ declare class ZoomSelectorView extends BaseView {
2021
+ events: BaseView["events"] & {
2022
+ zoomIn: string;
2023
+ zoomOut: string;
2024
+ };
2025
+ options: Options;
2026
+ zoomSelectorViewId: string;
2027
+ zoomInButtonClass: string;
2028
+ zoomOutButtonClass: string;
2029
+ zoomSelectorViewEl: string;
2030
+ zoomInSelectorViewEl: string;
2031
+ zoomOutSelectorViewEl: string;
2032
+ targetEl: string;
2033
+ rootEl: string;
2034
+ constructor(options?: Options, translation?: Translation);
2035
+ applyAccessibilityLabels(): void;
2036
+ createUi(): void;
2037
+ show(): void;
2038
+ populate(): boolean;
2039
+ zoomIn(): void;
2040
+ zoomOut(): void;
2041
+ enableZoomIn(): void;
2042
+ disableZoomIn(): void;
2043
+ enableZoomOut(): void;
2044
+ disableZoomOut(): void;
2045
+ }
2046
+
2047
+ declare class ZoomSelectorViewController extends BaseViewController {
2048
+ options: Options;
2049
+ view: ZoomSelectorView;
2050
+ zoom: number | undefined;
2051
+ constructor(options?: Options, translation?: Translation);
2052
+ populate(zoom: number): boolean;
2053
+ getZoom(): number | undefined;
2054
+ ZoomSelectorView_onZoomIn: () => void;
2055
+ ZoomSelectorView_onZoomOut: () => void;
2056
+ handleZoomIn(zoom: number): void;
2057
+ handleZoomOut(zoom: number): void;
2058
+ }
2059
+
2060
+ interface NavigationSearchResult {
2061
+ identifier: string;
2062
+ name: (lang: Language | undefined) => string;
2063
+ buildingTitle?: string;
2064
+ levelTitle?: string;
2065
+ properties?: {
2066
+ bid?: string;
2067
+ lvl?: number;
2068
+ };
2069
+ }
2070
+ interface NavigationStepInfo {
2071
+ buildingInternalIdentifier?: string;
2072
+ message: string;
2073
+ latLng: {
2074
+ lat: number;
2075
+ lng: number;
2076
+ };
2077
+ iconName?: string;
2078
+ }
2079
+ interface NavigationRouteInfo {
2080
+ distance: string;
2081
+ minutes: string;
2082
+ estimatedArrivalTime: string;
2083
+ }
2084
+ interface NavigationDestinationObject {
2085
+ name?: (language?: Language | null) => string;
2086
+ properties?: JsonObject;
2087
+ }
2088
+ declare class NavigationView extends BaseView {
2089
+ options: Options;
2090
+ translation: Translation;
2091
+ events: BaseView["events"] & {
2092
+ startSelected: string;
2093
+ destinationSelected: string;
2094
+ navigationStarted: string;
2095
+ navigationFailed: string;
2096
+ navigateClicked: string;
2097
+ routeChanged: string;
2098
+ navigationCancelled: string;
2099
+ navigationClosed: string;
2100
+ previousStepSelected: string;
2101
+ nextStepSelected: string;
2102
+ inputsSwapped: string;
2103
+ queryChanged: string;
2104
+ startObjectCanceled: string;
2105
+ destinationObjectCanceled: string;
2106
+ stepSelected: string;
2107
+ };
2108
+ inputsEnum: {
2109
+ start: string;
2110
+ destination: string;
2111
+ };
2112
+ searchResultClicked: boolean;
2113
+ navigationViewId: string;
2114
+ navigationTitleContainerId: string;
2115
+ navigationTitleId: string;
2116
+ navigationDescriptionId: string;
2117
+ startingLocationId: string;
2118
+ destinationLocationId: string;
2119
+ swapLocationId: string;
2120
+ locationSelectorClass: string;
2121
+ closeIconClass: string;
2122
+ clearIconClass: string;
2123
+ navigationButtonId: string;
2124
+ cancelButtonId: string;
2125
+ stepChangeButtonsId: string;
2126
+ prevButtonId: string;
2127
+ nextButtonId: string;
2128
+ locationPointsClass: string;
2129
+ locationInputClass: string;
2130
+ locationInputWrapperClass: string;
2131
+ navigationWrapperId: string;
2132
+ navigationStepId: string;
2133
+ stepCircleClass: string;
2134
+ navigationProgressId: string;
2135
+ stepsContainerForMobileId: string;
2136
+ mobileExpanderIconId: string;
2137
+ stepListId: string;
2138
+ errorBoxId: string;
2139
+ newProgressBarId: string;
2140
+ currentStepId: string;
2141
+ toggleStepsId: string;
2142
+ routeInfoId: string;
2143
+ routeInfoDistanceId: string;
2144
+ routeInfoTimeId: string;
2145
+ routeInfoArrivalTimeId: string;
2146
+ spacerClass: string;
2147
+ locationWithSwapperId: string;
2148
+ loadingCircleId: string;
2149
+ editButtonClass: string;
2150
+ editStartButtonId: string;
2151
+ editDestinationButtonId: string;
2152
+ fromInputTextId: string;
2153
+ toInputTextId: string;
2154
+ draggableBoxId: string;
2155
+ navigationIconContainerId: string;
2156
+ targetEl: string;
2157
+ navigationTitleEl: string;
2158
+ navigationDescriptionEl: string;
2159
+ navigationViewEl: string;
2160
+ closeIconEl: string;
2161
+ startClearEl: string;
2162
+ destinationClearEl: string;
2163
+ navigationButtonEl: string;
2164
+ cancelButtonEl: string;
2165
+ stepChangeButtonsEl: string;
2166
+ prevButtonEl: string;
2167
+ nextButtonEl: string;
2168
+ startingLocationSelectorEl: string;
2169
+ destinationLocationSelectorEl: string;
2170
+ startingLocationInputEl: string;
2171
+ destinationLocationInputEl: string;
2172
+ swapLocationEl: string;
2173
+ navigationWrapperEl: string;
2174
+ navigationStepEl: string;
2175
+ navigationProgressEl: string;
2176
+ newProgressBarEl: string;
2177
+ stepListEl: string;
2178
+ errorBoxEl: string;
2179
+ currentStepEl: string;
2180
+ toggleStepsEl: string;
2181
+ startingLocationPointsEl: string;
2182
+ destinationLocationPointsEl: string;
2183
+ spacerEl: string;
2184
+ locationWithSwapperEl: string;
2185
+ fromInputTextEl: string;
2186
+ toInputTextEl: string;
2187
+ editStartButtonEl: string;
2188
+ editDestinationButtonEl: string;
2189
+ startingLocationInputWrapperEl: string;
2190
+ destinationLocationInputWrapperEl: string;
2191
+ navigationIconContainerEl: string;
2192
+ routeInfoEl: string;
2193
+ routeInfoDistanceEl: string;
2194
+ routeInfoTimeEl: string;
2195
+ routeInfoArrivalTimeEl: string;
2196
+ navigationTitleContainerEl: string;
2197
+ stepsContainerForMobileEl: string;
2198
+ mobileExpanderIconEl: string;
2199
+ topUiEl: string;
2200
+ rootEl: string;
2201
+ draggableBoxEl: string;
2202
+ objectToEdit: string | undefined;
2203
+ isEditingRouteFromNavigation: boolean;
2204
+ callToActionButtons: string[];
2205
+ stepListNavigationReady: boolean;
2206
+ isUserInteraction: boolean;
2207
+ isUserScrolling: boolean;
2208
+ stepPositions: number[][];
2209
+ currentStep: number;
2210
+ startPoiText: string | undefined;
2211
+ destinationPoiText: string | undefined;
2212
+ isRTL: boolean;
2213
+ ensureVisibleTimeout: ReturnType<typeof setTimeout> | undefined;
2214
+ startInputFocusOutTimeout: ReturnType<typeof setTimeout> | undefined;
2215
+ destinationInputFocusOutTimeout: ReturnType<typeof setTimeout> | undefined;
2216
+ locationResultsHideTimeout: ReturnType<typeof setTimeout> | undefined;
2217
+ locationSearchKeyboardReady: boolean;
2218
+ locationSearchResultCache: {
2219
+ start: NavigationSearchResult[];
2220
+ destination: NavigationSearchResult[];
2221
+ };
2222
+ scrollEndTimeout: ReturnType<typeof setTimeout> | undefined;
2223
+ windowScrollX: number;
2224
+ windowScrollY: number;
2225
+ markerEl: JQuery<HTMLElement> | undefined;
2226
+ expandedHeight: number;
2227
+ expanderTouchStartY: number;
2228
+ isDragging: boolean;
2229
+ draggedUpwards: boolean;
2230
+ uiEl: string;
2231
+ constructor(options: Options, translation: Translation);
2232
+ createUi(): void;
2233
+ applyAccessibilityLabels(): void;
2234
+ private onNavigateButtonActivate;
2235
+ private initLocationSearchKeyboard;
2236
+ private dismissLocationSearchResults;
2237
+ private isFocusWithinLocationGroup;
2238
+ private getLocationResultsListId;
2239
+ private initStepListNavigation;
2240
+ hide(): boolean;
2241
+ populate(startPoiText?: string, destinationPoiText?: string): boolean;
2242
+ show(): void;
2243
+ populateInputs(startPoiText?: string, destinationPoiText?: string): void;
2244
+ private findLocationSearchResult;
2245
+ private selectLocationSearchResultFromElement;
2246
+ private selectLocationSearchResult;
2247
+ populateSearchResults(results: NavigationSearchResult[], type: string): void;
2248
+ setDisabledStatus(isDisabled: boolean): void;
2249
+ setLoadingStatus(isLoading: boolean): void;
2250
+ startNavigation(currentStep: number, stepsInfo: NavigationStepInfo[], destinationObject: NavigationDestinationObject | null | undefined): void;
2251
+ setTitle(title: string | undefined): void;
2252
+ populateRouteInfo(routeInfo: NavigationRouteInfo): void;
2253
+ populateProgress(stepToGo: number, allSteps: NavigationStepInfo[]): void;
2254
+ populateNavigationSteps(currentStep: number, stepsInfo: NavigationStepInfo[]): void;
2255
+ updateNavigationStep(currentStep: number, stepsInfo: NavigationStepInfo[]): void;
2256
+ updateCancelButton(currentStep: number, stepsInfo: NavigationStepInfo[]): void;
2257
+ scollToNextDirectionItem(): void;
2258
+ scrollToCurrentDirectionItem(): void;
2259
+ scrollToCurrentDirectionItemInstant(): void;
2260
+ scaleTextToFit(element: Element | null, maxWidth: number): void;
2261
+ populateStep(step: NavigationStepInfo, index: number, currentStep: number, stepsInfo: NavigationStepInfo[]): void;
2262
+ private activateEditStart;
2263
+ private activateEditDestination;
2264
+ private focusLocationInput;
2265
+ private wireEditButtonsAccessibility;
2266
+ populateEditButtons(): void;
2267
+ setPrevButton(isEnabled: boolean): void;
2268
+ setNextButton(isEnabled: boolean): void;
2269
+ resetNavigation(): void;
2270
+ close(): void;
2271
+ private isLocationQueryMatchingCommitted;
2272
+ private isPartialEditOfCommittedLocation;
2273
+ private shouldClearCommittedLocation;
2274
+ private emitLocationSelectionCleared;
2275
+ searchLocation(query: string, type: string): void;
2276
+ focusOutLocationInput(event: Event, type: string): void;
2277
+ private scheduleHideLocationResults;
2278
+ toggleSteps(): void;
2279
+ setError(errorMsg: string): void;
2280
+ swapInputs(): void;
2281
+ isViewVisible(): boolean;
2282
+ setTranslation(translation: Translation): void;
2283
+ scrolling(count: number, self: NavigationView): void;
2284
+ ensureVisible(): void;
2285
+ handleUserScroll(): void;
2286
+ onUserInteraction(event: Event): void;
2287
+ highlightStartPointInput(): void;
2288
+ addEventListeners(): void;
2289
+ removeEventListeners(): void;
2290
+ expanderTouchStartHandler(event: {
2291
+ touches?: {
2292
+ clientY: number;
2293
+ }[];
2294
+ clientY?: number;
2295
+ }): void;
2296
+ expanderTouchEndHandler(event: {
2297
+ preventDefault?: () => void;
2298
+ changedTouches?: {
2299
+ clientY: number;
2300
+ }[];
2301
+ }): void;
2302
+ onDrag(): void;
2303
+ toggleExpandedState(): void;
2304
+ convertToArabicText(text: string | undefined, type: string): string | null | undefined;
2305
+ convertArrivalTimeToArabic(estimatedArrivalTime: string | Date): string | null | undefined;
2306
+ sendEvent(event: string, data?: JsonValue): void;
2307
+ }
2308
+
2309
+ declare class NavigationModes {
2310
+ static get NORMAL(): string;
2311
+ static get EASY(): string;
2312
+ static get ACCESSIBLE(): string;
2313
+ static isNavigationMode(mode: string): boolean;
2314
+ }
2315
+
2316
+ declare class NavigationViewController extends BaseViewController {
2317
+ options: Options;
2318
+ dataManager: DataManager;
2319
+ poiManager: PoiManager;
2320
+ translation: Translation;
2321
+ analyticsManager: AnalyticsManager;
2322
+ view: NavigationView;
2323
+ currentStep: number;
2324
+ currentRouteData: RouteDataDirection[][];
2325
+ levelBasedRouteData: RouteDataDirection[];
2326
+ stepsInfo: NavigationStepInfo[] | undefined;
2327
+ isNavigationActive: boolean | undefined;
2328
+ currentMode: NavigationModes;
2329
+ routeInfo: {
2330
+ minutes: string;
2331
+ distance: string;
2332
+ estimatedArrivalTime: string;
2333
+ };
2334
+ directions: RouteDataDirection[];
2335
+ startObject: Poi | Feature | undefined;
2336
+ destinationObject: Poi | Feature | undefined;
2337
+ constructor(options: Options, poiManager: PoiManager, translation: Translation, analyticsManager: any);
2338
+ populate(startObject: Poi | Feature | undefined, destinationObject: Poi | Feature | undefined): boolean;
2339
+ setStartObject(featureOrPoi: Poi | Feature | undefined): void;
2340
+ setDestinationObject(featureOrPoi: Poi | Feature | undefined): void;
2341
+ sameFeatureOrPoi(object1: any, object2: any): boolean;
2342
+ startNavigation(): void;
2343
+ handleRouteData(routeData: RouteDataResponse): void;
2344
+ extractDirections(routeData: RouteDataResponse): RouteDataDirection[];
2345
+ getObjectData(startOrDestinationObject: any): any;
2346
+ getTransitionName(direction: any): string;
2347
+ getMessageForInterBuildingTransition(index: number, displayedDirections: any[], direction: any, transitionName: string, transitionType: string, routeData: RouteDataResponse): string;
2348
+ getMessage(direction: any, displayedDirections: any[], index: number, transitionName: string): string;
2349
+ extractRouteData(routeData: RouteDataResponse): any[];
2350
+ startNavigationByStep(step: number): void;
2351
+ startNextStep(): void;
2352
+ startPreviousStep(): void;
2353
+ getCurrentRouteData(): any[] | undefined;
2354
+ getNextRouteData(): any[] | undefined;
2355
+ groupRouteData(routeData: any[]): any[][];
2356
+ NavigationView_onStartSelected: (featureOrPoi: any) => void;
2357
+ NavigationView_onDestinationSelected: (featureOrPoi: any) => void;
2358
+ NavigationView_onPreviousStepSelected: () => void;
2359
+ NavigationView_onNextStepSelected: () => void;
2360
+ NavigationView_onStepSelected: (stepIndex?: number) => void;
2361
+ NavigationView_onNavigateClicked: () => void;
2362
+ NavigationView_onInputsSwapped: () => void;
2363
+ NavigationView_onQueryChanged: (data: {
2364
+ query: string;
2365
+ type: string;
2366
+ }) => Promise<void>;
2367
+ NavigationView_onStartObjectCanceled: () => void;
2368
+ NavigationView_onDestinationObjectCanceled: () => void;
2369
+ viewOnHidden: () => void;
2370
+ setError(errorMsg: string): void;
2371
+ close(): void;
2372
+ resetNavigation(): void;
2373
+ setMode(mode: string): void;
2374
+ getEventData(routeData: RouteDataResponse | null | undefined, errorMsg?: string): any;
2375
+ setTranslation(translation: Translation): void;
2376
+ }
2377
+
2378
+ interface PoiCardSearchResult {
2379
+ name?: string;
2380
+ description?: string;
2381
+ iconUrl?: string;
2382
+ tags?: string[] | string;
2383
+ levelLongTitle?: string;
2384
+ buildingTitle?: string;
2385
+ fid?: string | number;
2386
+ isFeatured?: boolean;
2387
+ [key: string]: JsonValue;
2388
+ }
2389
+ declare class PoiCardsView extends BaseView {
2390
+ options: Options;
2391
+ poiManager: PoiManager | undefined;
2392
+ analyticsManager: AnalyticsManager | undefined;
2393
+ translation: Translation;
2394
+ events: BaseView["events"] & {
2395
+ poiSelected: string;
2396
+ resultsPopulated: string;
2397
+ routeButtonClicked: string;
2398
+ accessibilityButtonClicked: string;
2399
+ goBackButtonClicked: string;
2400
+ poiViewed: string;
2401
+ };
2402
+ poiCardsViewId: string;
2403
+ listHeaderContainerId: string;
2404
+ resultId: string;
2405
+ loadingCircleId: string;
2406
+ goBackIconContainerId: string;
2407
+ listHeaderId: string;
2408
+ listHeaderIconId: string;
2409
+ bottomUi: string;
2410
+ poiCardClass: string;
2411
+ draggableBoxId: string;
2412
+ resultEl: string;
2413
+ loadingCircleEl: string;
2414
+ listHeaderContainerEl: string;
2415
+ listHeaderEl: string;
2416
+ bottomUiEl: string;
2417
+ draggableBoxEl: string;
2418
+ goBackIconContainerEl: string;
2419
+ targetEl: string;
2420
+ rootEl: string;
2421
+ poisOfCategory: PoiCardSearchResult[];
2422
+ activeCardIndex: number;
2423
+ isAnyPoiCardButtonClicked: boolean;
2424
+ isNavigationAccessible: boolean;
2425
+ textColor: string | null;
2426
+ isRTL?: boolean;
2427
+ uiEl: string;
2428
+ constructor(options?: Options, poiManager?: PoiManager, analyticsManager?: AnalyticsManager, translation?: Translation);
2429
+ createUi(): void;
2430
+ applyAccessibilityLabels(): void;
2431
+ goBack(): void;
2432
+ highlightCardAtIndex(index: number, options?: {
2433
+ scrollIntoView?: boolean;
2434
+ }): void;
2435
+ focusPoiCardsList(index?: number): void;
2436
+ prepareBottomDrawerForPoiCardsView(): void;
2437
+ show(): void;
2438
+ populateResults(searchResults?: PoiCardSearchResult[]): void;
2439
+ createListItem(index: number, searchResults: PoiCardSearchResult[]): any;
2440
+ createFeaturedBadge(): any;
2441
+ createListItemContent(container: any, searchResult: PoiCardSearchResult, index: number): any;
2442
+ onRouteClicked(poiId?: string | number): void;
2443
+ onAccessibilityButtonClicked(): void;
2444
+ updateAccessibilityRouteLabels(): void;
2445
+ showResults(title?: string, icon?: string): void;
2446
+ hide(): boolean;
2447
+ clear(): void;
2448
+ clearResult(): void;
2449
+ emptyResults(): void;
2450
+ clearSelectedPoi(): void;
2451
+ setSelectedPoi(poi: any): void;
2452
+ setHeader(headerText?: string, _icon?: string): void;
2453
+ setAccessibilityButtonStatus(status: boolean): void;
2454
+ handleAccessibilityStatus(isAnimationActive: boolean): void;
2455
+ setTranslation(translation: Translation): void;
2456
+ }
2457
+
2458
+ declare class PoiCardsViewController extends BaseViewController {
2459
+ options: Options;
2460
+ view: PoiCardsView;
2461
+ poiManager: PoiManager | undefined;
2462
+ analyticsManager: AnalyticsManager | undefined;
2463
+ translation: Translation;
2464
+ lang: {
2465
+ code?: string;
2466
+ };
2467
+ selectedPoi: Poi | undefined;
2468
+ enabled: boolean;
2469
+ poisOfCategory: Poi[] | undefined;
2470
+ isNavigationAccessible: boolean;
2471
+ constructor(options?: Options, poiManager?: PoiManager, analyticsManager?: AnalyticsManager, translation?: Translation);
2472
+ populate(): boolean;
2473
+ displayPoisOfCategory(pois: any[], categoryName?: string, categoryIcon?: string): void;
2474
+ hideView(): void;
2475
+ showView(): void;
2476
+ clearSelectedPoi(): void;
2477
+ getSelectedPoi(): any;
2478
+ setSelectedPoi(poi: any): void;
2479
+ PoiCardsView_onPoiSelected: (poiId: string | number) => void;
2480
+ PoiCardsView_onGoBackButtonClicked: () => void;
2481
+ reset(): void;
2482
+ PoiCardsView_onRouteButtonClicked: (poiId: string | number) => void;
2483
+ PoiCardsView_onPoiViewed: (poiId: string | number) => void;
2484
+ goBack(): void;
2485
+ shouldShow(): boolean;
2486
+ PoiCardsView_onAccesssibilityButtonClicked: () => void;
2487
+ setAccessibilityButtonStatus(isAccessible: boolean): void;
2488
+ setTranslation(translation: Translation): void;
2489
+ }
2490
+
2491
+ interface BannerApp {
2492
+ promotionText?: string;
2493
+ appIcon?: string;
2494
+ downloadUrl?: string;
2495
+ appName?: string;
2496
+ appDescription?: string;
2497
+ buttonTitle?: string;
2498
+ intentLink?: string;
2499
+ webAndroidDeepLinkUrlScheme?: string;
2500
+ }
2501
+ declare class BannerView extends BaseView {
2502
+ translation: Translation;
2503
+ events: BaseView["events"] & {
2504
+ bannerDismissed: string;
2505
+ installClicked: string;
2506
+ };
2507
+ bannerOverlayId: string;
2508
+ bannerViewContentId: string;
2509
+ bannerId: string;
2510
+ popupContentClass: string;
2511
+ dismissButtonClass: string;
2512
+ alertIconId: string;
2513
+ bannerOverlayEl: string;
2514
+ bannerContainerEl: string;
2515
+ bannerEl: string;
2516
+ popupContentEl: string;
2517
+ dismissButtonEl: string;
2518
+ targetEl: string;
2519
+ rootEl: string;
2520
+ alertIconEl: string;
2521
+ touchStartX: number;
2522
+ constructor(options: Options, translation: Translation);
2523
+ private emitEvent;
2524
+ private resetBannerDomBeforePopulate;
2525
+ createUi(): void;
2526
+ applyAccessibilityLabels(): void;
2527
+ populate(isPopup: boolean, app: BannerApp): boolean;
2528
+ populateBanner(isPopup: boolean, app: BannerApp): void;
2529
+ convertToBanner(): void;
2530
+ dismissBanner(className: string): void;
2531
+ hide(): boolean;
2532
+ }
2533
+
2534
+ declare class BannerViewController extends BaseViewController {
2535
+ view: BannerView;
2536
+ constructor(options?: Options, translation?: Translation);
2537
+ populate(): boolean;
2538
+ }
2539
+
2540
+ declare class WelcomeView extends BaseView {
2541
+ events: BaseView["events"] & {
2542
+ closeClicked: string;
2543
+ };
2544
+ options: Options;
2545
+ welcomeOverlayId: string;
2546
+ welcomePopupId: string;
2547
+ welcomeLogoId: string;
2548
+ logoContainerId: string;
2549
+ welcomeHeaderId: string;
2550
+ welcomeDescriptionId: string;
2551
+ quickAccessContentId: string;
2552
+ quickAccessListId: string;
2553
+ quickAccessListItemClass: string;
2554
+ actionButtonId: string;
2555
+ closeIconClass: string;
2556
+ iconContainerClass: string;
2557
+ categoryIconWrapperStyleClass: Record<number, string>;
2558
+ welcomeHeaderEl: string;
2559
+ welcomeDescriptionEl: string;
2560
+ welcomeLogoEl: string;
2561
+ quickAccessContentEl: string;
2562
+ quickAccessListEl: string;
2563
+ targetEl: string;
2564
+ rootEl: string;
2565
+ closeIconEl: string;
2566
+ actionButtonEl: string;
2567
+ constructor(options?: Options, translation?: Translation);
2568
+ createUi(): void;
2569
+ applyAccessibilityLabels(): void;
2570
+ setTranslation(translation: Translation | undefined): void;
2571
+ populate(): boolean;
2572
+ }
2573
+
2574
+ declare class WelcomeViewController extends BaseViewController {
2575
+ view: WelcomeView;
2576
+ constructor(options?: Options, translation?: Translation);
2577
+ showView(): void;
2578
+ setTranslation(translation: Translation): void;
2579
+ }
2580
+
2581
+ declare class InfoView extends BaseView {
2582
+ options: Options;
2583
+ infoViewId: string;
2584
+ iframeId: string;
2585
+ closeIconId: string;
2586
+ closeIconEl: string;
2587
+ iframeEl: string;
2588
+ targetEl: string;
2589
+ rootEl: string;
2590
+ language: Language | undefined;
2591
+ constructor(options?: Options | null, translation?: Translation);
2592
+ dismissInfo(): void;
2593
+ createUi(): void;
2594
+ applyAccessibilityLabels(): void;
2595
+ show(): void;
2596
+ setLanguage(language: Language): void;
2597
+ setIframe(): void;
2598
+ }
2599
+
2600
+ declare class InfoViewController extends BaseViewController {
2601
+ view: InfoView;
2602
+ constructor(options?: Options, translation?: Translation);
2603
+ setLanguage(language: Language): void;
2604
+ }
2605
+
2606
+ declare class RatingView extends BaseView {
2607
+ events: BaseView["events"] & {
2608
+ feedbackSubmitted: string;
2609
+ dismissed: string;
2610
+ };
2611
+ options: Options;
2612
+ ratingOverlayId: string;
2613
+ ratingPopupId: string;
2614
+ titleId: string;
2615
+ buttonContainerId: string;
2616
+ positiveFeedbackButtonId: string;
2617
+ negativeFeedbackButtonId: string;
2618
+ actionButtonContainerClass: string;
2619
+ feedbackActionButtonContainerId: string;
2620
+ submitButtonId: string;
2621
+ dismissButtonId: string;
2622
+ footNoteId: string;
2623
+ textInputContainerId: string;
2624
+ inputLabelId: string;
2625
+ textInputId: string;
2626
+ charCountId: string;
2627
+ negativeFeedbackButtonContainerId: string;
2628
+ sendButtonId: string;
2629
+ goBackButtonId: string;
2630
+ successContentId: string;
2631
+ successImageId: string;
2632
+ closeButtonId: string;
2633
+ buttonClass: string;
2634
+ ratingOverlayEl: string;
2635
+ ratingPopupEl: string;
2636
+ titleEl: string;
2637
+ positiveFeedbackButtonEl: string;
2638
+ negativeFeedbackButtonEl: string;
2639
+ submitButtonEl: string;
2640
+ dismissButtonEl: string;
2641
+ textInputContainerEl: string;
2642
+ textInputEl: string;
2643
+ labelEl: string;
2644
+ charCountEl: string;
2645
+ feedbackButtonsContainerEl: string;
2646
+ feedbackActionButtonContainerEl: string;
2647
+ negativeFeedbackButtonContainerEl: string;
2648
+ sendButtonEl: string;
2649
+ goBackButtonEl: string;
2650
+ successContentEl: string;
2651
+ successImageEl: string;
2652
+ closeButtonEl: string;
2653
+ rootEl: string;
2654
+ selectedFeedback: "positive" | "negative" | undefined;
2655
+ minChars: number;
2656
+ maxChars: number;
2657
+ constructor(options?: Options, translation?: Translation);
2658
+ createUi(): void;
2659
+ applyAccessibilityLabels(): void;
2660
+ private syncRatingActionButtonStates;
2661
+ showNegativeFeedback(): void;
2662
+ showFeedbackPopup(): void;
2663
+ showSuccess(): void;
2664
+ }
2665
+
2666
+ declare class RatingViewController extends BaseViewController {
2667
+ view: RatingView;
2668
+ constructor(options?: Options, translation?: Translation);
2669
+ }
2670
+
2671
+ declare class SiteBuildingManager {
2672
+ getAllSites(): Site[];
2673
+ getAllBuildings(): Building[];
2674
+ getSiteWithInternalIdentifier(internalIdentifier?: string): Site | undefined;
2675
+ getBuildingWithInternalIdentifier(internalIdentifier?: string): Building | undefined;
2676
+ getSiteWithExternalIdentifier(externalIdentifier?: string): Site | undefined;
2677
+ getBuildingWithExternalIdentifier(externalIdentifier?: string): Building | undefined;
2678
+ getLevelWithExternalIdentifier(buildingExternalIdentifier?: string, levelExternalIdentifier?: string): Level | undefined;
2679
+ getLevelWithLevelIndexFromBuilding(buildingInternalIdentifier?: string, levelIndex?: number): Level | undefined;
2680
+ }
2681
+
2682
+ interface CategoryItem {
2683
+ title: string;
2684
+ iconUrl: string;
2685
+ match?: JsonObject[];
2686
+ [key: string]: JsonValue;
2687
+ }
2688
+
2689
+ declare class UiController {
2690
+ options: Options;
2691
+ translation: Translation;
2692
+ poiManager: PoiManager;
2693
+ siteBuildingManager: SiteBuildingManager;
2694
+ analyticsManager: AnalyticsManager;
2695
+ mapViewController: MapViewController;
2696
+ searchViewController: SearchViewController;
2697
+ poiCardsViewController: PoiCardsViewController;
2698
+ categoryListViewController: CategoryListViewController;
2699
+ levelSelectorViewController: LevelSelectorViewController;
2700
+ poiDetailsViewController: PoiDetailsViewController;
2701
+ loadingViewController: LoadingViewController;
2702
+ watermarkViewController: WatermarkViewController;
2703
+ languageSelectorViewController: LanguageSelectorViewController;
2704
+ zoomSelectorViewController: ZoomSelectorViewController;
2705
+ navigationViewController: NavigationViewController;
2706
+ bannerViewController: BannerViewController;
2707
+ welcomeViewController: WelcomeViewController;
2708
+ infoViewController: InfoViewController;
2709
+ ratingViewController: RatingViewController;
2710
+ handlingMapClick: boolean;
2711
+ selectedCategory: CategoryItem | undefined;
2712
+ isNavigationAccessible: boolean;
2713
+ isOnboardingCompleted: boolean;
2714
+ ratingPopupInterval: ReturnType<typeof setInterval> | null;
2715
+ shouldHideRatingPopup: boolean;
2716
+ sessionCount: number;
2717
+ isMapReady: boolean;
2718
+ isLevelOptionApplied: boolean | undefined;
2719
+ language: Language | undefined;
2720
+ poiCardsViewedTime: number | undefined;
2721
+ hasPostedPoiDetailsExpandAnalytics: boolean;
2722
+ constructor(options: Options, poiManager: PoiManager, siteBuildingManager: SiteBuildingManager, analyticsManager: AnalyticsManager, translation: Translation);
2723
+ getMapViewController(): MapViewController;
2724
+ getSearchViewController(): SearchViewController;
2725
+ getPoiCardsViewController(): PoiCardsViewController;
2726
+ getCategoryListViewController(): CategoryListViewController;
2727
+ getLanguageSelectorViewController(): LanguageSelectorViewController;
2728
+ getLevelSelectorViewController(): LevelSelectorViewController;
2729
+ getPoiDetailsViewController(): PoiDetailsViewController;
2730
+ getLoadingViewController(): LoadingViewController;
2731
+ getWatermarkViewController(): WatermarkViewController;
2732
+ getZoomSelectorViewController(): ZoomSelectorViewController;
2733
+ getNavigationViewController(): NavigationViewController;
2734
+ getBannerViewController(): BannerViewController;
2735
+ getWelcomeViewController(): WelcomeViewController;
2736
+ getInfoViewController(): InfoViewController;
2737
+ getRatingViewController(): RatingViewController;
2738
+ registerEvents(): void;
2739
+ registerMapViewEvents(): void;
2740
+ registerLevelSelectorViewEvents(): void;
2741
+ registerZoomSelectorViewEvents(): void;
2742
+ registerLanguageSelectorViewEvents(): void;
2743
+ registerSearchViewEvents(): void;
2744
+ registerPoiCardsViewEvents(): void;
2745
+ registerPoiDetailsEvents(): void;
2746
+ registerNavigationEvents(): void;
2747
+ registerCategoryListEvents(): void;
2748
+ registerLoadingViewEvents(): void;
2749
+ registerBannerEvents(): void;
2750
+ registerWatermarkEvents(): void;
2751
+ registerWelcomeEvents(): void;
2752
+ registerInfoEvents(): void;
2753
+ registerRatingEvents(): void;
2754
+ MapView_onMapClicked: (queryRenderedFeatures: any[], point: any) => Promise<void>;
2755
+ handleMapClickNotInNavigation(isNavigationVisible: boolean): void;
2756
+ extractClickedFeatureType(pointrRenderedFeatures: any[]): string;
2757
+ handlePoiClick(pointrRenderedFeatures: any[], isNavigationVisible: boolean, isPoiCardsViewVisible: boolean): Promise<{
2758
+ poiClicked: Poi | undefined;
2759
+ newCurrentPoi: Poi | undefined;
2760
+ }>;
2761
+ findPoiFeature(pointrRenderedFeatures: any[]): any;
2762
+ handleSiteClick(pointrRenderedFeatures: any[]): void;
2763
+ handleBuildingClick(pointrRenderedFeatures: any[]): void;
2764
+ handleDefaultClick(isNavigationVisible: boolean, shouldShowPoiCardsView: boolean, isPoiCardsViewVisible: boolean, isPoiDetailsVisible: boolean): void;
2765
+ navigationMapClickHandler(poi: Poi): void;
2766
+ poiDetailsMapClickHandler(poi: Poi | undefined, currentPoi: Poi | undefined): void;
2767
+ MapView_onMapLongClicked: (event: any) => void;
2768
+ MapView_onZoomChanged: (zoom: number) => void;
2769
+ MapView_onCurrentBuildingChanged: (data: {
2770
+ oldCurrentBuilding?: any;
2771
+ newCurrentBuilding?: any;
2772
+ }) => void;
2773
+ handleSameSiteLevel(oldLevel: Level | undefined, data: {
2774
+ newCurrentBuilding?: any;
2775
+ }): void;
2776
+ handleNoCurrentBuilding: (isNavigationVisible: boolean, isPoiDetailsVisible: boolean) => void;
2777
+ handleDifferentSiteLevel(data: {
2778
+ newCurrentBuilding?: any;
2779
+ }): void;
2780
+ handleNavigation(data: {
2781
+ oldCurrentBuilding?: any;
2782
+ newCurrentBuilding?: any;
2783
+ }, isNavigationVisible: boolean, isPoiCardsVisible?: boolean): void;
2784
+ MapView_onCurrentSiteChanged: (data: {
2785
+ newSite?: any;
2786
+ }) => Promise<void>;
2787
+ handleSiteChange(siteId: string, isPoiDetailsVisible: boolean, isNavigationVisible: boolean): Promise<void>;
2788
+ updateViewsForNewSite(siteId: string, isPoiDetailsVisible: boolean): void;
2789
+ handleNoSite(isPoiDetailsVisible: boolean): void;
2790
+ filterCategoriesWithMatchers(categories: any[], pois: Poi[]): any[];
2791
+ MapView_onMapReady: () => Promise<void>;
2792
+ handleMapReady(): Promise<void>;
2793
+ MapView_onMapIdle: () => void;
2794
+ MapView_onLevelChanged: (levelIndex: number | undefined) => void;
2795
+ MapView_onExitClicked: () => void;
2796
+ MapView_onInfoClicked: () => void;
2797
+ MapView_onDraggedUpwards: () => void;
2798
+ postPoiDetailsExpandedAnalytics(): void;
2799
+ LevelSelectorView_onLevelSelected: () => void;
2800
+ ZoomSelectorView_onZoomIn: () => void;
2801
+ ZoomSelectorView_onZoomOut: () => void;
2802
+ PoiDetailsView_onViewShown: () => void;
2803
+ PoiDetailsView_onViewHidden: () => void;
2804
+ PoiDetailsView_onCloseClicked: () => void;
2805
+ PoiDetailsView_onRouteButtonClicked: () => void;
2806
+ PoiDetailsView_onAccessibilityButtonClicked: (status: boolean) => void;
2807
+ PoiDetailsView_onExpanded: () => void;
2808
+ PoiDetailsView_onMinimized: () => void;
2809
+ NavigationView_onViewShown: () => void;
2810
+ NavigationView_onViewHidden: () => void;
2811
+ NavigationView_onStartSelected: (featureOrPoi?: Poi | Feature) => void;
2812
+ NavigationView_onStartObjectCanceled: (startObject: Poi | Feature) => void;
2813
+ NavigationView_onDestinationObjectCanceled: (destinationObject: Poi | Feature) => void;
2814
+ NavigationView_onDestinationSelected: (featureOrPoi?: Poi | Feature) => void;
2815
+ NavigationView_onNavigateClicked: () => void;
2816
+ NavigationView_onRouteChanged: (type: string) => void;
2817
+ NavigationView_onNavigationCancelled: () => void;
2818
+ NavigationView_onNextStepSelected: () => void;
2819
+ NavigationView_onPreviousStepSelected: () => void;
2820
+ NavigationView_onNavigationClosed: () => void;
2821
+ navigationHighlightHandler(): void;
2822
+ navigationCancelHandler(): void;
2823
+ SearchView_onPoiSelected: () => void;
2824
+ SearchView_onQuerySearched: () => void;
2825
+ SearchView_onRouteButtonClicked: () => void;
2826
+ SearchView_onGoBackButtonClicked: () => void;
2827
+ SearchView_onBuildingSelected: (buildingItem: any) => void;
2828
+ SearchView_onBuildingFilterSelected: () => void;
2829
+ SearchView_onSearchResultsShown: () => void;
2830
+ LanguageSelectorView_onLanguageSelected: () => void;
2831
+ CategoryListView_onCategorySelected: (categoryItem: any) => Promise<void>;
2832
+ LoadingView_onErrorClosed: () => void;
2833
+ BannerView_onBannerDismissed: (source: string) => void;
2834
+ BannerView_onInstallClicked: (source: string) => void;
2835
+ handleNavigationAccessibility: () => void;
2836
+ WatermarkView_onVisibilityChangeDetected: () => void;
2837
+ RatingView_onRatingSubmitted: (feedback: any) => void;
2838
+ RatingView_onViewHidden: () => void;
2839
+ RatingView_onViewShown: () => void;
2840
+ WelcomeView_onViewHidden: () => void;
2841
+ WelcomeView_onCloseClicked: () => void;
2842
+ InfoView_onViewHidden: () => void;
2843
+ highlightCategory: (categoryItem: CategoryItem) => Promise<void>;
2844
+ PoiCardsView_onViewShown: () => void;
2845
+ PoiCardsView_onViewHidden: () => void;
2846
+ PoiCardsView_onGoBackButtonClicked: () => void;
2847
+ PoiCardsView_onPoiSelected: () => void;
2848
+ PoiCardsView_onRouteButtonClicked: () => void;
2849
+ PoiCardsView_onPoiViewed: () => void;
2850
+ PoiCardsView_onAccessibilityButtonClicked: (status: boolean) => void;
2851
+ showLoadingView(): void;
2852
+ showSplashScreen(): void;
2853
+ hideLoadingView(): void;
2854
+ showError(error: string | {
2855
+ errorMsg?: string;
2856
+ errorTitle?: string;
2857
+ }, isPopup?: boolean): void;
2858
+ hideError(): void;
2859
+ show(): void;
2860
+ populate(): void;
2861
+ populateCategoryListView(): void;
2862
+ populateSearchView(): void;
2863
+ handlePoiDetailsConfiguration(): void;
2864
+ handleSiteExternalIdentifier(): void;
2865
+ handleHighlightPoiIdentifier(): void;
2866
+ populateZoomControls(): void;
2867
+ populateLanguageSelector(): void;
2868
+ populateMapAndLevelViews(): void;
2869
+ createFeatureFromOptions(siteId: string | undefined, buildingId: string | undefined, levelIndex: number | undefined, lat: number | undefined, lng: number | undefined): Feature | undefined;
2870
+ addNavigationFeaturesToMap(startPoi: Poi | undefined, destinationPoi: Poi | undefined, startPoint: Feature | undefined, destinationPoint: Feature | undefined): void;
2871
+ updateStartAndDestinationPois(): Promise<void>;
2872
+ setLanguage(language: Language): void;
2873
+ showPoiDetails(featureOrPoi: Poi | Feature): void;
2874
+ hidePoiDetails(): void;
2875
+ setLevel(level: Level | undefined): void;
2876
+ getLevel(): Level | undefined;
2877
+ highlightPoi(poi: Poi): void;
2878
+ unhighlightPoi(poiId: string): void;
2879
+ unhighlightAllPois(): void;
2880
+ focusSite(siteInternalIdentifier: string): void;
2881
+ focusBuilding(buildingInternalIdentifier: string): void;
2882
+ zoomTo(zoom: number): void;
2883
+ shouldScrollMapToPoi(poi: Poi): boolean;
2884
+ scrollMapToPoiIfNeeded(poi: Poi, offset?: [number, number]): void;
2885
+ showPoiOnMap(poi: Poi, offset?: [number, number]): void;
2886
+ getCurrentSite(): any;
2887
+ getCurrentBuilding(): any;
2888
+ routeButtonClickHandler(poi: Poi): void;
2889
+ setCategories(categoryList: any[]): void;
2890
+ centerSelectedPoiForPoiCardsView(poi: Poi): void;
2891
+ showPoiCardsView(): void;
2892
+ showBanner(): void;
2893
+ showBannerIfEligible(): void;
2894
+ shouldShowBanner(): boolean;
2895
+ fitBoundsForRoute(routeData: any[], startObject: Poi | Feature | undefined, destinationObject: Poi | Feature | undefined): void;
2896
+ handleTransitionMessageLayer(routeData: any[], startObject: Poi | Feature | undefined, destinationObject: Poi | Feature | undefined): void;
2897
+ displayRatingPopup(): void;
2898
+ setRatingPopupInterval(): void;
2899
+ canDisplayRatingPopup(): boolean;
2900
+ updatePoiStyles(poisArray: Poi[], dynamicExtrusionOpacity?: number): Promise<void>;
2901
+ resetPoiStyles(poisArray: Poi[] | Poi): void;
2902
+ resetAllPoiStyles(): void;
2903
+ getDynamicPois(): any[];
2904
+ hasDynamicStyling(poiId: string): boolean;
2905
+ hidePois(poisArray: Poi[]): void;
2906
+ showAllHiddenPois(): void;
2907
+ updateMainTypeProperties(mainType: string, layerType: string, layoutProperties?: JsonObject, paintProperties?: JsonObject): void;
2908
+ updatePoiExtrusionOpacity(extrusionOpacity: number): void;
2909
+ setZoomRangeForMainType(mainType: string, minZoom: number, maxZoom: number): void;
2910
+ bringMainTypeLayerToFront(mainType: string): void;
2911
+ moveMainTypeLayer(mainType: string, beforeMainType?: string): void;
2912
+ }
2913
+
2914
+ interface MapWidgetEvents {
2915
+ dataLoaded: string;
2916
+ }
2917
+ declare class MapWidget {
2918
+ private static instance;
2919
+ options: Options;
2920
+ isOptionsValid: boolean;
2921
+ events: MapWidgetEvents;
2922
+ isDataLoaded: boolean;
2923
+ isUiInitialized: boolean;
2924
+ protected uiController?: UiController | undefined;
2925
+ protected dataManager?: DataManager | undefined;
2926
+ protected poiManager?: PoiManager | undefined;
2927
+ protected siteBuildingManager?: SiteBuildingManager | undefined;
2928
+ protected analyticsManager?: AnalyticsManager | undefined;
2929
+ protected translation?: Translation | undefined;
2930
+ protected language: Language | undefined;
2931
+ constructor(options: Options);
2932
+ static getInstance(): MapWidget | undefined;
2933
+ start(): void | Promise<void>;
2934
+ initData(): void;
2935
+ initUi(): void;
2936
+ destroy(): void;
2937
+ initLanguageAndTranslation(): void;
2938
+ search(query: string, site?: Site, building?: Building): Promise<Poi[] | WorldModePoi[]>;
2939
+ showPoiDetails(poi: Poi): void;
2940
+ hidePoiDetails(): void;
2941
+ setLevel(level: Level): void;
2942
+ getCurrentLevel(): Level | undefined;
2943
+ highlightPoi(poi: Poi): void;
2944
+ unhighlight(): void;
2945
+ getCurrentSite(): Site | undefined;
2946
+ getCurrentBuilding(): Building | undefined;
2947
+ getUiController(): UiController | undefined;
2948
+ getDataManager(): DataManager | undefined;
2949
+ getPoiManager(): PoiManager | undefined;
2950
+ getSiteBuildingManager(): SiteBuildingManager | undefined;
2951
+ getConfigurations(): JsonObject;
2952
+ setLanguage(language: Language): void;
2953
+ zoomTo(zoom: number): void;
2954
+ focusMap(object?: Site | Building | Level, levelObj?: Level): void;
2955
+ validateBuildingObject(object: Building): boolean;
2956
+ validateSiteObject(object: Site): boolean;
2957
+ validateLevelObject(object: Level): boolean;
2958
+ handleLevelObject(levelObj: Level): void;
2959
+ startNavigation(startObject: Poi | Feature, destinationObject: Poi | Feature): void;
2960
+ updatePoiStyles(poisArray: Poi[], dynamicExtrusionOpacity?: number): Promise<void>;
2961
+ resetPoiStyles(poisArray: Poi[] | Poi): void;
2962
+ resetAllPoiStyles(): void;
2963
+ hidePois(poisArray: Poi[]): void;
2964
+ showAllHiddenPois(): void;
2965
+ setZoomRangeForMainType(mainType: string, minZoom: number, maxZoom: number): void;
2966
+ updatePoiExtrusionOpacity(extrusionOpacity: number): void;
2967
+ setFillExtrusionLayerOpacityForMainType(mainType: string, opacity: number): void;
2968
+ updateMainTypeProperties(mainType: string, layerType: "symbol" | "fill" | "fill-extrusion", layoutProperties?: JsonObject, paintProperties?: JsonObject): void;
2969
+ moveMainTypeLayer(mainType: string, beforeMainType?: string): void;
2970
+ setPointrCloudToken(accessToken: string): void;
2971
+ private _ui;
2972
+ emit: (event: string, ...data: JsonValue[]) => void;
2973
+ on: (event: string, handler: (...data: JsonValue[]) => void) => void;
2974
+ }
2975
+
2976
+ declare class CircleLayer extends Layer {
2977
+ constructor(options?: JsonObject, filter?: MapLibreFilter);
2978
+ }
2979
+
2980
+ declare class FillExtrusionLayer extends Layer {
2981
+ constructor(options?: JsonObject, filter?: MapLibreFilter);
2982
+ }
2983
+
2984
+ declare class FillLayer extends Layer {
2985
+ constructor(options?: JsonObject, filter?: MapLibreFilter);
2986
+ }
2987
+
2988
+ declare class SymbolLayer extends Layer {
2989
+ constructor(options?: JsonObject, filter?: MapLibreFilter);
2990
+ }
2991
+
2992
+ type SnapshotClickCallback = (poi: Poi) => void;
2993
+ declare class SnapshotImage {
2994
+ poi?: Poi;
2995
+ clickCallback?: SnapshotClickCallback;
2996
+ constructor(poi: unknown, clickCallback: unknown);
2997
+ onClick(): void;
2998
+ toElement(): HTMLImageElement;
2999
+ getPoiId(): string;
3000
+ }
3001
+
3002
+ declare const PointrWebSDK: {
3003
+ MapWidget: typeof MapWidget;
3004
+ Options: typeof Options;
3005
+ LatLng: typeof LatLng;
3006
+ Level: typeof Level;
3007
+ Site: typeof Site;
3008
+ Building: typeof Building;
3009
+ NavigationModes: typeof NavigationModes;
3010
+ CircleLayer: typeof CircleLayer;
3011
+ Feature: typeof Feature;
3012
+ FillExtrusionLayer: typeof FillExtrusionLayer;
3013
+ FillLayer: typeof FillLayer;
3014
+ SymbolLayer: typeof SymbolLayer;
3015
+ Popup: typeof Popup;
3016
+ Poi: typeof Poi;
3017
+ SnapshotImage: typeof SnapshotImage;
3018
+ Language: typeof Language;
3019
+ };
3020
+
3021
+ export { Building, CircleLayer, Feature, FillExtrusionLayer, FillLayer, Language, LatLng, Level, MapWidget, NavigationModes, Options, Poi, Popup, Site, SnapshotImage, SymbolLayer, PointrWebSDK as default };
3022
+ export type { CategoryItem };