@mappedin/react-native-sdk 5.2.1 → 5.3.0

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.
Files changed (3) hide show
  1. package/dist/index.d.ts +188 -136
  2. package/dist/index.js +202 -202
  3. package/package.json +2 -2
package/dist/index.d.ts CHANGED
@@ -1203,6 +1203,13 @@ declare module '@mappedin/react-native-sdk/core/packages/get-venue' {
1203
1203
  export { MappedinRankings } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinRankings';
1204
1204
  export { MappedinDestinationSet } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinDestinationSet';
1205
1205
  export { MappedinNavigatable } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinNavigatable';
1206
+ /**
1207
+ * @internal
1208
+ * @hidden
1209
+ *
1210
+ * Export this only so our internal pre-built products can use it. We don't want to document it for external developers.
1211
+ */
1212
+ export { default as CustomerAnalytics } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin.CustomerAnalytics';
1206
1213
  export type { TTHINGS } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin';
1207
1214
  export type { TMappedinDirective } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinDirections';
1208
1215
  export type { IDirectionsResult } from '@mappedin/react-native-sdk/core/packages/navigator';
@@ -1305,6 +1312,13 @@ declare module '@mappedin/react-native-sdk/core/packages/get-venue' {
1305
1312
  * and may be determental to smaller ones, hence it is off by default
1306
1313
  */
1307
1314
  useWorker?: boolean): Promise<unknown>;
1315
+ /**
1316
+ * Returns a {@link Mappedin} object hydrated with JSON data.
1317
+ * @param {string|Object} mappedinSerializableData A JSON string or object representing a venue.
1318
+ * @param {boolean} shouldPopulateBundledImagesAsBlobs
1319
+ * @returns {Mappedin} A new Mappedin object with data from the mappedinSerializableData parameter.
1320
+ */
1321
+ export function hydrateVenue(mappedinSerializableData: any, shouldPopulateBundledImagesAsBlobs?: boolean): Promise<Mappedin>;
1308
1322
  }
1309
1323
 
1310
1324
  declare module '@mappedin/react-native-sdk/core/common/random-id' {
@@ -2352,6 +2366,10 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/Core.interface
2352
2366
  * @internal
2353
2367
  */
2354
2368
  currentScale: number;
2369
+ /**
2370
+ * @internal
2371
+ */
2372
+ USE_SCENE_MANAGER: boolean;
2355
2373
  referenceMap: MappedinMap;
2356
2374
  taskScheduler: TaskScheduler;
2357
2375
  sceneManager: SceneManager;
@@ -3478,7 +3496,7 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
3478
3496
  };
3479
3497
  export type TLatLonProps = [number, number];
3480
3498
  const BlueDot: {
3481
- ({ data, mapView, core }: TBlueDotProps): IBlueDotCore;
3499
+ ({ data, mapView, core, manager }: TBlueDotProps): IBlueDotCore;
3482
3500
  FakeGeolocation: typeof FakeGeolocation;
3483
3501
  };
3484
3502
  export default BlueDot;
@@ -3936,6 +3954,9 @@ declare module '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin' {
3936
3954
  imageBinaries?: Map<string, Uint8Array>;
3937
3955
  scenes: any;
3938
3956
  fetch(): Promise<void>;
3957
+ /**
3958
+ * @deprecated Use {@link hydrateVenue} instead
3959
+ */
3939
3960
  constructor(options: TGetVenueOptionsInternal & TGetVenueOptions);
3940
3961
  analytics: IAnalytics;
3941
3962
  /**
@@ -3962,6 +3983,8 @@ declare module '@mappedin/react-native-sdk/core/packages/get-venue/MappedinLocat
3962
3983
  import type { MappedinPolygon } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinPolygon';
3963
3984
  import type { MappedinCategory } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinCategory';
3964
3985
  import { MappedinNavigatable, TDirectionToOptions } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinNavigatable';
3986
+ import { MappedinDestinationSet } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinDestinationSet';
3987
+ import { MappedinDirections } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinDirections';
3965
3988
  export function getCurrentLocationState(location: MappedinLocation, states: MappedinLocationState[], date?: Date): MappedinLocationState | undefined;
3966
3989
  export type TOperationHoursMap = {
3967
3990
  [key in string]: TOpeningHours[];
@@ -4050,8 +4073,8 @@ declare module '@mappedin/react-native-sdk/core/packages/get-venue/MappedinLocat
4050
4073
  *
4051
4074
  * Get Directions to a node, polygon, or location
4052
4075
  */
4053
- directionsTo(destination: any, options?: TDirectionToOptions): any;
4054
- directionsTo(destination: any, options?: TDirectionToOptions): any;
4076
+ directionsTo(destination: MappedinNode | MappedinLocation | MappedinPolygon, options?: TDirectionToOptions): MappedinDirections;
4077
+ directionsTo(destination: MappedinDestinationSet, options?: TDirectionToOptions): MappedinDirections[];
4055
4078
  distanceTo(destination: any, options: any): number;
4056
4079
  toJSON(): any;
4057
4080
  }
@@ -4063,6 +4086,8 @@ declare module '@mappedin/react-native-sdk/core/packages/get-venue/MappedinPolyg
4063
4086
  import type { MappedinNode } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinNode';
4064
4087
  import { MappedinNavigatable, TDirectionToOptions } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinNavigatable';
4065
4088
  import { MappedinMap } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinMap';
4089
+ import { MappedinDestinationSet } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinDestinationSet';
4090
+ import { MappedinDirections } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinDirections';
4066
4091
  /**
4067
4092
  * The {@link MappedinPolygon} class represents the 3D shape of a {@link MappedinLocation} on a {{@link MappedinMap}. Polygons have access to Locations they belong to, and any entrances to the Polygon.
4068
4093
  *
@@ -4183,8 +4208,8 @@ declare module '@mappedin/react-native-sdk/core/packages/get-venue/MappedinPolyg
4183
4208
  *
4184
4209
  * Get Directions to a node, polygon, or location
4185
4210
  */
4186
- directionsTo(destination: any, options?: TDirectionToOptions): any;
4187
- directionsTo(destination: any, options?: TDirectionToOptions): any;
4211
+ directionsTo(destination: MappedinNode | MappedinLocation | MappedinPolygon, options?: TDirectionToOptions): MappedinDirections;
4212
+ directionsTo(destination: MappedinDestinationSet, options?: TDirectionToOptions): MappedinDirections[];
4188
4213
  distanceTo(destination: any, options: any): number;
4189
4214
  toJSON(): any;
4190
4215
  }
@@ -4197,6 +4222,8 @@ declare module '@mappedin/react-native-sdk/core/packages/get-venue/MappedinNode'
4197
4222
  import type { TOpeningHours } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin.API.types';
4198
4223
  import { MappedinNavigatable, TDirectionToOptions } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinNavigatable';
4199
4224
  import { MappedinMap } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinMap';
4225
+ import { MappedinDestinationSet } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinDestinationSet';
4226
+ import { MappedinDirections } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinDirections';
4200
4227
  /**
4201
4228
  * A {@link MappedinNode} represents a position, anchored to a specific {@link MappedinMap}.
4202
4229
  *
@@ -4266,8 +4293,8 @@ declare module '@mappedin/react-native-sdk/core/packages/get-venue/MappedinNode'
4266
4293
  *
4267
4294
  * Get Directions to a node, polygon, or location
4268
4295
  */
4269
- directionsTo(destination: any, options?: TDirectionToOptions): any;
4270
- directionsTo(destination: any, options?: TDirectionToOptions): any;
4296
+ directionsTo(destination: MappedinNode | MappedinLocation | MappedinPolygon, options?: TDirectionToOptions): MappedinDirections;
4297
+ directionsTo(destination: MappedinDestinationSet, options?: TDirectionToOptions): MappedinDirections[];
4271
4298
  distanceTo(destination: any, options: any): number;
4272
4299
  toJSON(): any;
4273
4300
  }
@@ -4780,6 +4807,121 @@ declare module '@mappedin/react-native-sdk/core/packages/get-venue/MappedinNavig
4780
4807
  }
4781
4808
  }
4782
4809
 
4810
+ declare module '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin.CustomerAnalytics' {
4811
+ import { MappedinCategory, MappedinLocation } from '@mappedin/react-native-sdk/core/packages/get-venue';
4812
+ type AnalyticsOptions = {
4813
+ clientId?: string;
4814
+ clientSecret?: string;
4815
+ accessToken?: string;
4816
+ noAuth?: boolean;
4817
+ venue: string;
4818
+ testMode?: boolean | string;
4819
+ context?: string;
4820
+ platformString?: string;
4821
+ };
4822
+ interface IAnalytics {
4823
+ locationSelected(location: MappedinLocation): void;
4824
+ categorySelected(category: MappedinCategory): void;
4825
+ getDirections(start: MappedinLocation, end: MappedinLocation): void;
4826
+ }
4827
+ interface IInternalAnalytics extends IAnalytics {
4828
+ track(target: string, query: any): void;
4829
+ mapViewLoaded(type: '2d' | '3d', forced: boolean, benchmark: number, reason: string): void;
4830
+ getSessionID(): string;
4831
+ getDeviceID(): string;
4832
+ setGeolocationMode(mode: boolean): void;
4833
+ trackBlueDotEvent(blueDotEvent: Record<string, unknown>): void;
4834
+ trackSearch(searchAnalyticsObject: Record<string, unknown>): void;
4835
+ trackSearchSuggest(searchAnalyticsObject: Record<string, unknown>): void;
4836
+ }
4837
+ /**
4838
+ * A class to access the Mappedin Analytics platform. Correct usage will improve Smart Search results, and lead to more accurate insights.
4839
+ * This will be created for you as part of Mappedin.{{#crossLink "Mappedin/initialize:method"}}{{/crossLink}}, but you can also create one manually. You are mostly going to use `locationSelected`.
4840
+ *
4841
+ * @type {any}
4842
+ *
4843
+ * @class Analytics
4844
+ * @param options {Object} A list of configuration options for the Analytics API.
4845
+ * @param [options.clientId] {String} The same key you are using for getVenue. Handled automatically in Mapview.initialize()
4846
+ * @param [options.clientSecret] {String} The same secret you are using for getVenue. Handled automatically in Mapview.initialize()
4847
+ * @param [options.venue] {String} The same venue slug you are using for getVenue. Handled automatically in MapView.initialize()
4848
+ * @param [options.context] {String} The context to pass with the analytics request. Defaults to "websdk".
4849
+ * @param [options.noAuth] {Boolean} Whether authentication should not be sent with analytics requests.
4850
+ * @param [options.testMode] {Boolean} Whether analytics events should be dropped because this is running in a test environment.
4851
+ */
4852
+ class Analytics implements IInternalAnalytics {
4853
+ #private;
4854
+ constructor(options: AnalyticsOptions);
4855
+ track(target: any, query: any): void;
4856
+ /**
4857
+ * Whenever a location is selected, you should fire this event. What "selected" means can vary by venue,
4858
+ * but a good rule of thumb is that you fire the event whenever you would show the location's details.
4859
+ * Typically this is when the user taps it's polygon on the map, picks it from search results or a category list.
4860
+ * or deep links directly into the map.
4861
+ * @method locationSelected
4862
+ * @param location {MappedinLocation} The location the user selected.
4863
+ */
4864
+ locationSelected(location: any): void;
4865
+ /**
4866
+ * Whenever a category is selected, you should fire this event.
4867
+ * @method categorySelected
4868
+ * @param category {MappedinCategory} The category the user selected.
4869
+ */
4870
+ categorySelected(category: any): void;
4871
+ mapViewLoaded(type: any, forced: any, benchmark: any, reason: any): void;
4872
+ /**
4873
+ * Whenever a user requests directions, you should fire this event.
4874
+ * @method getDirections
4875
+ * @param start {MappedinLocation} The start location for wayfinding.
4876
+ * @param end {MappedinLocation} The end location for wayfinding.
4877
+ */
4878
+ getDirections(start: any, end: any): void;
4879
+ getSessionID(): string;
4880
+ getDeviceID(): string;
4881
+ /**
4882
+ * @param mode {Boolean} Indicates whether the user's geolocation is enabled.
4883
+ */
4884
+ setGeolocationMode(mode: any): void;
4885
+ /**
4886
+ * Track an event.
4887
+ * @method trackBlueDotEvent
4888
+ * @param event {String}
4889
+ * event param should be a property of the {{#crossLink "Analytics/BLUEDOT_EVENT:property"}}{{/crossLink}} property.
4890
+ */
4891
+ trackBlueDotEvent(blueDotEvent: any): void;
4892
+ trackSearch(searchAnalyticsObject: any): void;
4893
+ trackSearchSuggest(searchAnalyticsObject: any): void;
4894
+ /**
4895
+ * Sets the current global context of the Analytics class.
4896
+ * @method setContext
4897
+ * @param context {String} The Analytics context to be set.
4898
+ * @hidden
4899
+ */
4900
+ static setContext(context: any): void;
4901
+ /**
4902
+ * Sets the current global context of the Analytics class to undefined.
4903
+ * @method clearContext
4904
+ * @hidden
4905
+ */
4906
+ static clearContext(): void;
4907
+ /**
4908
+ * Enum of valid bluedot events.
4909
+ * Pass a property of this into the {{#crossLink "Analytics/trackBlueDotEvent:method"}}{{/crossLink}} method.
4910
+ * Valid properties are: ATTEMPT_BLUEDOT, FOUND_POSITION, FOUND_FLOOR.
4911
+ * @property BLUEDOT_EVENT {Object}
4912
+ * @example
4913
+ * Analytics.trackBlueDotEvent(Analytics.BLUEDOT_EVENT.ATTEMPT_BLUEDOT)
4914
+ */
4915
+ static BLUEDOT_EVENT: {
4916
+ ATTEMPT_BLUEDOT: string;
4917
+ FOUND_POSITION: string;
4918
+ FOUND_FLOOR: string;
4919
+ };
4920
+ }
4921
+ export type { IAnalytics };
4922
+ export default Analytics;
4923
+ }
4924
+
4783
4925
  declare module '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin.OfflineSearch' {
4784
4926
  import { Mappedin } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin';
4785
4927
  import type { SearchOptions } from 'minisearch';
@@ -5506,7 +5648,18 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer' {
5506
5648
  export type { TSafeAreaInsets, TCameraTargets, TFocusOnCameraOptions, TCameraTransform, TCameraAnimationOptions, default as Camera } from '@mappedin/react-native-sdk/core/packages/renderer/Camera';
5507
5649
  export type { TGetVenueOptions, TShowVenueOptions, TMappedinOfflineSearchOptions, TMappedinOfflineSearchResult, TMappedinOfflineSearchSuggestions, TMappedinOfflineAllSearchMatch, TMappedinOfflineSearchAllOptions } from '@mappedin/react-native-sdk/core/packages/get-venue';
5508
5650
  export { Mappedin, MappedinDirections, MappedinLocation, MappedinPolygon, MappedinNode, MappedinCategory, MappedinMap, MappedinEvent, MappedinMapGroup, MappedinVenue, MappedinVortex, MappedinNavigatable, MappedinCoordinate, OfflineSearch, MAP_RENDER_MODE, setFetchFn, MappedinCollectionType } from '@mappedin/react-native-sdk/core/packages/get-venue';
5651
+ /**
5652
+ * @internal
5653
+ * @hidden
5654
+ *
5655
+ * Export this only so our internal pre-built products can use it. We don't want to document it for external developers.
5656
+ */
5657
+ export { CustomerAnalytics } from '@mappedin/react-native-sdk/core/packages/get-venue';
5509
5658
  export { BundleAssetManager } from '@mappedin/react-native-sdk/core/packages/renderer/bundle-asset-manager';
5659
+ /**
5660
+ * @internal
5661
+ */
5662
+ export function __useSceneManager(value: boolean): void;
5510
5663
  }
5511
5664
 
5512
5665
  declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.RenderTasks' {
@@ -5696,17 +5849,28 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/MapView' {
5696
5849
  */
5697
5850
  removeAllTooltips(): void;
5698
5851
  /**
5852
+ * Create a tooltip with default styling that the MapView will attempt to position in 3D space. The tooltip will be anchored
5853
+ * to a specified node or coordinate in one of eight anchor orientations.
5699
5854
  *
5700
- * This creates a tooltip that allows you to pass dynamic content which will attempt
5701
- * to position around an anchor in 3D space. The tooltip will be positioned based on one of four
5702
- * AnchorTypes (top, bottom, left, right).
5855
+ * The possible anchor types are `top`, `bottom`, `left`, `right`, `topLeft`, `topRight`, `bottomLeft`, and `bottomRight`. This
5856
+ * describes the position of the tooltip relative to the node or coordinate to which it is attached.
5703
5857
  *
5704
- *`options.defaultAnchorType` and `options.enabledAnchorTypes` should be one of the constants from Mappedin.Tooltip.ANCHOR
5858
+ * The tooltip is rendered into the DOM with the following structure.
5705
5859
  *
5706
- * `options.defaultAnchorType` will override `options.enabledAnchorTypes` if that anchor was disabled it will be automatically re-enabled
5860
+ * ```jsx
5861
+ * <div class="mappedin-tooltip tooltip--anchor-bottom-left">
5862
+ * <div class="mappedin-tooltip__content">
5863
+ * {contentHtml}
5864
+ * </ div>
5865
+ * </ div>
5866
+ * ```
5707
5867
  *
5868
+ * The `.mappedin-tooltip` element controls the position and has a class in the form of `.tooltip--anchor-{type}` that indicates
5869
+ * the current anchor type.
5708
5870
  *
5709
- * @return The Tooltip you created, which has already been added to the scene.
5871
+ * @param nodeOrCoordinate A {@link MappedinNode} or {@link MappedinCoordinate} the tooltip is attached to.
5872
+ * @param contentHtml Stringified HTML content to render within the tooltip.
5873
+ * @param options {@link TCreateTooltipOptions} for rendering the tooltip
5710
5874
  */
5711
5875
  createTooltip(
5712
5876
  /**
@@ -5714,17 +5878,20 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/MapView' {
5714
5878
  */
5715
5879
  nodeOrCoordinate: MappedinNode | MappedinCoordinate, contentHtml: string, options?: TCreateTooltipOptions): SmartTooltip;
5716
5880
  /**
5881
+ * Create a tooltip with no default styling that the MapView will attempt to position in 3D space. The tooltip will be anchored
5882
+ * to a specified node or coordinate in one of eight anchor orientations.
5717
5883
  *
5718
- * This creates a tooltip that allows you to pass dynamic content which will attempt
5719
- * to position around an anchor in 3D space. The tooltip will be positioned based on one of four
5720
- * AnchorTypes (top, bottom, left, right).
5721
- *
5722
- *`options.defaultAnchorType` and `options.enabledAnchorTypes` should be one of the constants from Mappedin.Tooltip.ANCHOR
5884
+ * The possible anchor types are `top`, `bottom`, `left`, `right`, `topLeft`, `topRight`, `bottomLeft`, and `bottomRight`. This
5885
+ * describes the position of the tooltip relative to the node or coordinate to which it is attached.
5723
5886
  *
5724
- * `options.defaultAnchorType` will override `options.enabledAnchorTypes` if that anchor was disabled it will be automatically re-enabled
5887
+ * Unlike {@link createTooltip}, a custom tooltip is rendered without any additional wrappers, leaving styling entirely up to the
5888
+ * external developer. The top-most element will be injected with a class in the form of `.tooltip--anchor-{type}` that indicates
5889
+ * the current anchor type.
5725
5890
  *
5726
- *
5727
- * @return The Tooltip you created, which has already been added to the scene.
5891
+ * @param nodeOrCoordinate A {@link MappedinNode} or {@link MappedinCoordinate} the tooltip is attached to.
5892
+ * @param contentHtml Stringified HTML content to render within the tooltip. The contents must be `position: absolute` in order to interact with the collision engine.
5893
+ * @param selector A CSS selector string that allows the SDK to target the tooltip. This is required because we do not inject any default styling.
5894
+ * @param options {@link TCreateTooltipCommonOptions} for rendering the tooltip
5728
5895
  */
5729
5896
  createCustomTooltip(
5730
5897
  /**
@@ -7111,121 +7278,6 @@ declare module '@mappedin/react-native-sdk/core/packages/get-venue/MappedinTheme
7111
7278
  }
7112
7279
  }
7113
7280
 
7114
- declare module '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin.CustomerAnalytics' {
7115
- import { MappedinCategory, MappedinLocation } from '@mappedin/react-native-sdk/core/packages/get-venue';
7116
- type AnalyticsOptions = {
7117
- clientId?: string;
7118
- clientSecret?: string;
7119
- accessToken?: string;
7120
- noAuth?: boolean;
7121
- venue: string;
7122
- testMode?: boolean | string;
7123
- context?: string;
7124
- platformString?: string;
7125
- };
7126
- interface IAnalytics {
7127
- locationSelected(location: MappedinLocation): void;
7128
- categorySelected(category: MappedinCategory): void;
7129
- getDirections(start: MappedinLocation, end: MappedinLocation): void;
7130
- }
7131
- interface IInternalAnalytics extends IAnalytics {
7132
- track(target: string, query: any): void;
7133
- mapViewLoaded(type: '2d' | '3d', forced: boolean, benchmark: number, reason: string): void;
7134
- getSessionID(): string;
7135
- getDeviceID(): string;
7136
- setGeolocationMode(mode: boolean): void;
7137
- trackBlueDotEvent(blueDotEvent: Record<string, unknown>): void;
7138
- trackSearch(searchAnalyticsObject: Record<string, unknown>): void;
7139
- trackSearchSuggest(searchAnalyticsObject: Record<string, unknown>): void;
7140
- }
7141
- /**
7142
- * A class to access the Mappedin Analytics platform. Correct usage will improve Smart Search results, and lead to more accurate insights.
7143
- * This will be created for you as part of Mappedin.{{#crossLink "Mappedin/initialize:method"}}{{/crossLink}}, but you can also create one manually. You are mostly going to use `locationSelected`.
7144
- *
7145
- * @type {any}
7146
- *
7147
- * @class Analytics
7148
- * @param options {Object} A list of configuration options for the Analytics API.
7149
- * @param [options.clientId] {String} The same key you are using for getVenue. Handled automatically in Mapview.initialize()
7150
- * @param [options.clientSecret] {String} The same secret you are using for getVenue. Handled automatically in Mapview.initialize()
7151
- * @param [options.venue] {String} The same venue slug you are using for getVenue. Handled automatically in MapView.initialize()
7152
- * @param [options.context] {String} The context to pass with the analytics request. Defaults to "websdk".
7153
- * @param [options.noAuth] {Boolean} Whether authentication should not be sent with analytics requests.
7154
- * @param [options.testMode] {Boolean} Whether analytics events should be dropped because this is running in a test environment.
7155
- */
7156
- class Analytics implements IInternalAnalytics {
7157
- #private;
7158
- constructor(options: AnalyticsOptions);
7159
- track(target: any, query: any): void;
7160
- /**
7161
- * Whenever a location is selected, you should fire this event. What "selected" means can vary by venue,
7162
- * but a good rule of thumb is that you fire the event whenever you would show the location's details.
7163
- * Typically this is when the user taps it's polygon on the map, picks it from search results or a category list.
7164
- * or deep links directly into the map.
7165
- * @method locationSelected
7166
- * @param location {MappedinLocation} The location the user selected.
7167
- */
7168
- locationSelected(location: any): void;
7169
- /**
7170
- * Whenever a category is selected, you should fire this event.
7171
- * @method categorySelected
7172
- * @param category {MappedinCategory} The category the user selected.
7173
- */
7174
- categorySelected(category: any): void;
7175
- mapViewLoaded(type: any, forced: any, benchmark: any, reason: any): void;
7176
- /**
7177
- * Whenever a user requests directions, you should fire this event.
7178
- * @method getDirections
7179
- * @param start {MappedinLocation} The start location for wayfinding.
7180
- * @param end {MappedinLocation} The end location for wayfinding.
7181
- */
7182
- getDirections(start: any, end: any): void;
7183
- getSessionID(): string;
7184
- getDeviceID(): string;
7185
- /**
7186
- * @param mode {Boolean} Indicates whether the user's geolocation is enabled.
7187
- */
7188
- setGeolocationMode(mode: any): void;
7189
- /**
7190
- * Track an event.
7191
- * @method trackBlueDotEvent
7192
- * @param event {String}
7193
- * event param should be a property of the {{#crossLink "Analytics/BLUEDOT_EVENT:property"}}{{/crossLink}} property.
7194
- */
7195
- trackBlueDotEvent(blueDotEvent: any): void;
7196
- trackSearch(searchAnalyticsObject: any): void;
7197
- trackSearchSuggest(searchAnalyticsObject: any): void;
7198
- /**
7199
- * Sets the current global context of the Analytics class.
7200
- * @method setContext
7201
- * @param context {String} The Analytics context to be set.
7202
- * @hidden
7203
- */
7204
- static setContext(context: any): void;
7205
- /**
7206
- * Sets the current global context of the Analytics class to undefined.
7207
- * @method clearContext
7208
- * @hidden
7209
- */
7210
- static clearContext(): void;
7211
- /**
7212
- * Enum of valid bluedot events.
7213
- * Pass a property of this into the {{#crossLink "Analytics/trackBlueDotEvent:method"}}{{/crossLink}} method.
7214
- * Valid properties are: ATTEMPT_BLUEDOT, FOUND_POSITION, FOUND_FLOOR.
7215
- * @property BLUEDOT_EVENT {Object}
7216
- * @example
7217
- * Analytics.trackBlueDotEvent(Analytics.BLUEDOT_EVENT.ATTEMPT_BLUEDOT)
7218
- */
7219
- static BLUEDOT_EVENT: {
7220
- ATTEMPT_BLUEDOT: string;
7221
- FOUND_POSITION: string;
7222
- FOUND_FLOOR: string;
7223
- };
7224
- }
7225
- export type { IAnalytics };
7226
- export default Analytics;
7227
- }
7228
-
7229
7281
  declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.LabelAtlas' {
7230
7282
  export namespace DEFAULT_LABEL_SIZING {
7231
7283
  const MARGIN: number;