@mappedin/mappedin-js 6.0.1-alpha.23 → 6.0.1-alpha.25

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,15 +1,13 @@
1
1
  // Generated by dts-bundle v0.7.3
2
2
  // Dependencies for this module:
3
3
  // ../maker/@mappedin/mvf
4
- // ../maker/geojson
5
4
  // ../maker/@mappedin/core-sdk
5
+ // ../maker/geojson
6
6
  // ../maker/@mappedin/core-sdk/src/camera
7
7
  // ../maker/three
8
8
  // ../maker/minisearch
9
9
  // ../maker/@turf/turf
10
10
  // ../maker/@tweenjs/tween.js
11
- // ../maker/lil-gui
12
- // ../maker/@packages/internal/common
13
11
  // ../maker/n8ao
14
12
  // ../maker/postprocessing
15
13
 
@@ -23,6 +21,7 @@ declare module '@mappedin/mappedin-js' {
23
21
  import type { ParsedMVF as TMVF } from '@mappedin/mvf';
24
22
  import { TShowWatermarkOptions } from '@mappedin/mappedin-js/packages/legacy-renderer/private/controllers/WatermarkController';
25
23
  import { MapViewGeoJson } from '@mappedin/mappedin-js/maker/src/map-view-geojson';
24
+ import { enableTestMode } from '@mappedin/core-sdk';
26
25
  /**
27
26
  * Represents all the available antialiasing options.
28
27
  */
@@ -132,12 +131,31 @@ declare module '@mappedin/mappedin-js' {
132
131
  * @experimental
133
132
  */
134
133
  type TShow3DMapOptions = {
134
+ /**
135
+ * The outdoor view options.
136
+ */
137
+ outdoorView?: {
138
+ /**
139
+ * The token is used to fetch outdoor tiles, which will then be rendered.
140
+ */
141
+ token?: string;
142
+ /**
143
+ * A url to a style specification conforming to the [Maplibre Style Spec](https://maplibre.org/maplibre-style-spec/).
144
+ */
145
+ style?: string;
146
+ };
135
147
  /**
136
148
  * The token is used to fetch outdoor tiles, which will then be rendered.
149
+ *
150
+ * @deprecated Use `outdoorView.token` instead.
151
+ * @hidden
137
152
  */
138
153
  outdoorViewToken?: string;
139
154
  /**
140
155
  * A url to a style specification conforming to the [Maplibre Style Spec](https://maplibre.org/maplibre-style-spec/).
156
+ *
157
+ * @deprecated Use `outdoorView.style` instead.
158
+ * @hidden
141
159
  */
142
160
  outdoorViewStyle?: string;
143
161
  /**
@@ -191,6 +209,18 @@ declare module '@mappedin/mappedin-js' {
191
209
  * @hidden
192
210
  */
193
211
  watermark?: TShowWatermarkOptions;
212
+ /**
213
+ * Options for the attribution control.
214
+ *
215
+ * @hidden
216
+ */
217
+ attribution?: {
218
+ /**
219
+ * Attribution position.
220
+ * @default 'bottom-right'
221
+ */
222
+ position: 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right';
223
+ };
194
224
  /**
195
225
  * First floor to be rendered.
196
226
  * By default, floor with the elevation that's closest to 0 is rendered. All floors will be sorted by elevation in ascending order.
@@ -232,12 +262,12 @@ declare module '@mappedin/mappedin-js' {
232
262
  * const map = await show3dMap(mapContainer, mapData, { auto: true });
233
263
  */
234
264
  export const show3dMapCms: (el: HTMLElement, mapData: MapData, options?: TShow3DMapOptions) => Promise<MapView>;
235
- export const show3dMapGeojson: (el: HTMLElement, mapData: MapData) => Promise<MapViewGeoJson>;
265
+ export const show3dMapGeojson: (el: HTMLElement, mapData: MapData, options?: TShow3DMapOptions) => Promise<MapViewGeoJson>;
236
266
  export const show3dMap: (el: HTMLElement, mapData: MapData, options?: TShow3DMapOptions) => Promise<MapView>;
237
- export { parseMVF, unzipMVF };
267
+ export { parseMVF, unzipMVF, enableTestMode };
238
268
  export type { MapView, MapData, TEvents, TShow3DMapOptions, TGetMapDataOptions, TAmbientOcclusionOptions, TAntialiasingOptions, TMVF, };
239
- export type { ILabels, IPaths, IMarkers, ICamera, TUpdateState, TLabelState, TGeometryState, TCameraAnimationOptions, TFocusOnOptions, TEasingFunction, TCameraTarget, TNavigationTarget, TCameraFocusOnTarget, TAddMarkerOptions, TAddPathOptions, TLabelAppearance, TAddLabelOptions, TDrawNavigationOptions, TGetDirectionsOptions, TNavigationConnection, TCollisionRankingTier, TMarkerAnchor, } from '@mappedin/mappedin-js/maker/src/map-view-interface';
240
- export type { Directions, Label, Marker, Path, TDirectionInstruction, TDirectionInstructionAction, CameraTransform, } from '@mappedin/mappedin-js/maker/src/map-view-objects';
269
+ export type { ILabels, IPaths, IMarkers, ICamera, TUpdateState, TLabelState, TGeometryState, TCameraAnimationOptions, TFocusOnOptions, TEasingFunction, TCameraTarget, TNavigationTarget, TCameraFocusOnTarget, TAddMarkerOptions, TAddPathOptions, TLabelAppearance, TAddLabelOptions, TDrawNavigationOptions, TGetDirectionsOptions, TNavigationConnection, TCollisionRankingTier, TMarkerAnchor, TDirectionInstruction, TDirectionInstructionAction, Directions, } from '@mappedin/mappedin-js/maker/src/map-view-interface';
270
+ export type { Label, Marker, Path, CameraTransform } from '@mappedin/mappedin-js/maker/src/map-view-objects';
241
271
  export type { Navigation, TNavigationOptions } from '@mappedin/mappedin-js/maker/src/navigation';
242
272
  export type { TSpaceType } from '@mappedin/mappedin-js/maker/src/map-data-objects';
243
273
  export { Coordinate, Annotation, Connection, Door, Floor, MapObject, PointOfInterest, Space, Image, Hyperlink, } from '@mappedin/mappedin-js/maker/src/map-data-objects';
@@ -249,8 +279,8 @@ declare module '@mappedin/mappedin-js/maker/src/map-view' {
249
279
  import { TEvents } from '@mappedin/mappedin-js/maker/src/events';
250
280
  import { Coordinate, Floor, MapObject, Space } from '@mappedin/mappedin-js/maker/src/map-data-objects';
251
281
  import MapData from '@mappedin/mappedin-js/maker/src/map-data';
252
- import { ICamera, ILabels, IMapView, IMarkers, IPaths, TUpdateState, TNavigationTarget, TGetDirectionsOptions, INavigation } from '@mappedin/mappedin-js/maker/src/map-view-interface';
253
- import { Directions, Label } from '@mappedin/mappedin-js/maker/src/map-view-objects';
282
+ import { ICamera, ILabels, IMapView, IMarkers, IPaths, TUpdateState, TNavigationTarget, TGetDirectionsOptions, INavigation, Directions } from '@mappedin/mappedin-js/maker/src/map-view-interface';
283
+ import { Label } from '@mappedin/mappedin-js/maker/src/map-view-objects';
254
284
  import { Exporter } from '@mappedin/mappedin-js/packages/legacy-renderer/public/api/Exporter';
255
285
  /**
256
286
  * Represents a map with all the interactive features, controls, and actions.
@@ -1047,13 +1077,21 @@ declare module '@mappedin/mappedin-js/packages/legacy-renderer/private/controlle
1047
1077
  declare module '@mappedin/mappedin-js/maker/src/map-view-geojson' {
1048
1078
  import { PubSub } from '@mappedin/mappedin-js/packages/legacy-renderer/internal';
1049
1079
  import { GeoJSONTEvents as TEvents } from '@mappedin/mappedin-js/maker/src/events';
1050
- import { Floor, MapObject, Space } from '@mappedin/mappedin-js/maker/src/map-data-objects';
1080
+ import { Coordinate, Floor, MapObject, Space } from '@mappedin/mappedin-js/maker/src/map-data-objects';
1051
1081
  import MapData from '@mappedin/mappedin-js/maker/src/map-data';
1052
- import { ICamera, IMapView, IMarkers, IPaths, TUpdateState, INavigation, TNavigationTarget, TGetDirectionsOptions, TGeometryState, TLabelState, TMarkerState } from '@mappedin/mappedin-js/maker/src/map-view-interface';
1053
- import { Directions, Label, Marker } from '@mappedin/mappedin-js/maker/src/map-view-objects';
1082
+ import { Directions, ICamera, IMapView, IMarkers, IPaths, TUpdateState, INavigation, TNavigationTarget, TGetDirectionsOptions, TGeometryState, TLabelState, TMarkerState } from '@mappedin/mappedin-js/maker/src/map-view-interface';
1083
+ import { Label, Marker } from '@mappedin/mappedin-js/maker/src/map-view-objects';
1054
1084
  import type { RendererCore } from '@mappedin/core-sdk';
1055
1085
  import { LabelsApi } from '@mappedin/mappedin-js/maker/src/api-geojson/labels';
1056
- import { Inspector } from '@mappedin/mappedin-js/maker/src/api-geojson';
1086
+ import { ExporterApi } from '@mappedin/mappedin-js/maker/src/api-geojson/exporter';
1087
+ class Inspector {
1088
+ constructor(_a: any, _b: any);
1089
+ enable(): void;
1090
+ disable(): void;
1091
+ enabled: boolean;
1092
+ setMapData(_a: any): void;
1093
+ storeState(_a: any, _b: any): void;
1094
+ }
1057
1095
  /**
1058
1096
  * Represents a map with all the interactive features, controls, and actions.
1059
1097
  */
@@ -1083,6 +1121,10 @@ declare module '@mappedin/mappedin-js/maker/src/map-view-geojson' {
1083
1121
  * @type {INavigation}
1084
1122
  */
1085
1123
  Navigation: INavigation;
1124
+ /**
1125
+ * Export controller for the map.
1126
+ */
1127
+ Exporter: ExporterApi;
1086
1128
  Inspector: Inspector;
1087
1129
  /**
1088
1130
  * Constructs a {@link MapView} instance
@@ -1120,9 +1162,22 @@ declare module '@mappedin/mappedin-js/maker/src/map-view-geojson' {
1120
1162
  */
1121
1163
  updateState<T extends Space | MapObject | Label | Marker | string>(target: T, state: TUpdateState<T>): void;
1122
1164
  setHoverColor(c: string): void;
1123
- getHoverColor(): any;
1165
+ getHoverColor(): string | undefined;
1124
1166
  getState(id: string): TGeometryState | TLabelState | undefined;
1125
1167
  getState(target: Space | Label | Marker | MapObject): TGeometryState | TLabelState | TMarkerState;
1168
+ /**
1169
+ * Creates a {@link Coordinate} on the map.
1170
+ *
1171
+ * @param latitude The latitude of the coordinate.
1172
+ * @param longitude The longitude of the coordinate.
1173
+ * @param floor Optional floor information if applicable.
1174
+ * @returns The created coordinate object.
1175
+ * @example
1176
+ * // Create a coordinate at the CN Tower.
1177
+ * const coord = map.createCoordinate(43.642567, -79.387054);
1178
+ */
1179
+ createCoordinate(latitude: number, longitude: number, floor?: Floor | undefined): Coordinate;
1180
+ createCoordinateFromScreenCoordinate(x: number, y: number, floor?: Floor | undefined): Coordinate | undefined;
1126
1181
  /**
1127
1182
  * Retrieves the current floor of the map.
1128
1183
  *
@@ -1156,13 +1211,18 @@ declare module '@mappedin/mappedin-js/maker/src/map-view-geojson' {
1156
1211
  setStyle: (style: any) => void;
1157
1212
  };
1158
1213
  }
1214
+ export {};
1159
1215
  }
1160
1216
 
1161
1217
  declare module '@mappedin/mappedin-js/maker/src/map-view-interface' {
1162
1218
  import type { Coordinate, Floor, Door, Space, MapObject, PointOfInterest, Connection } from '@mappedin/mappedin-js/maker/src/map-data-objects';
1163
- import { Label, Marker, Path, Directions } from '@mappedin/mappedin-js/maker/src/map-view-objects';
1219
+ import { Label, Marker, Path } from '@mappedin/mappedin-js/maker/src/map-view-objects';
1164
1220
  import type { MapData, TNavigationOptions } from '@mappedin/mappedin-js/maker/src';
1165
1221
  import { EasingCurve } from '@mappedin/core-sdk/src/camera';
1222
+ /**
1223
+ * @hidden
1224
+ */
1225
+ export type { GLTFExportOptions } from '@mappedin/core-sdk';
1166
1226
  /**
1167
1227
  * Interface defining the controls and actions for a label on the map.
1168
1228
  */
@@ -1191,6 +1251,79 @@ declare module '@mappedin/mappedin-js/maker/src/map-view-interface' {
1191
1251
  */
1192
1252
  readonly __type: 'Marker';
1193
1253
  }
1254
+ /**
1255
+ * Represents an action within a direction instruction.
1256
+ */
1257
+ export type TDirectionInstructionAction = {
1258
+ /**
1259
+ * Type of action required at this step (e.g., 'Departure', 'Arrival', 'Turn').
1260
+ */
1261
+ type: 'Departure' | 'TakeConnection' | 'ExitConnection' | 'Turn' | 'Arrival';
1262
+ /**
1263
+ * Bearing direction for this action (e.g., 'Straight', 'Right', 'Left').
1264
+ */
1265
+ bearing?: 'Straight' | 'Right' | 'SlightRight' | 'Left' | 'SlightLeft';
1266
+ /**
1267
+ * A reference position for the action.
1268
+ *
1269
+ * @internal
1270
+ */
1271
+ referencePosition?: string;
1272
+ /**
1273
+ * The {@link Floor} from which this action starts.
1274
+ */
1275
+ fromFloor?: Floor;
1276
+ /**
1277
+ * The target {@link Floor} for this action.
1278
+ */
1279
+ toFloor?: Floor;
1280
+ connection?: Connection;
1281
+ /**
1282
+ * The direction of the connection (e.g., 'up', 'down').
1283
+ */
1284
+ direction?: 'up' | 'down' | 'none';
1285
+ /**
1286
+ * The type of the connection (e.g., 'elevator', 'escalator').
1287
+ */
1288
+ connectionType?: string;
1289
+ };
1290
+ /**
1291
+ * Represents a single instruction in a set of directions between two points.
1292
+ */
1293
+ export type TDirectionInstruction = {
1294
+ /**
1295
+ * The action ({@link TDirectionInstructionAction}) to be taken for this instruction.
1296
+ */
1297
+ action: TDirectionInstructionAction;
1298
+ /**
1299
+ * Distance in meters covered in this instruction step.
1300
+ */
1301
+ distance: number;
1302
+ /**
1303
+ * The {@link Coordinate} at which this instruction applies.
1304
+ */
1305
+ coordinate: Coordinate;
1306
+ };
1307
+ /**
1308
+ * Represents a set of directions between two points.
1309
+ *
1310
+ * Directions are used to represent the path between two points on the map,
1311
+ * as well as the instructions to follow the path.
1312
+ */
1313
+ export interface Directions {
1314
+ /**
1315
+ * All the coordinates ({@link Coordinate}) of the path.
1316
+ */
1317
+ coordinates: Coordinate[];
1318
+ /**
1319
+ * The total distance of the path in meters.
1320
+ */
1321
+ distance: number;
1322
+ /**
1323
+ * The array of instructions ({@link TDirectionInstruction}).
1324
+ */
1325
+ instructions: TDirectionInstruction[];
1326
+ }
1194
1327
  /**
1195
1328
  * Interface defining the controls and actions for labels ({@link Label}) on the map.
1196
1329
  */
@@ -1264,6 +1397,25 @@ declare module '@mappedin/mappedin-js/maker/src/map-view-interface' {
1264
1397
  * map.Markers.removeAll();
1265
1398
  */
1266
1399
  removeAll: () => Marker[];
1400
+ /**
1401
+ * Update the position of a marker.
1402
+ * @param marker The {@link Marker} which should be removed.
1403
+ * @param target The new target object ({@link Space}, {@link Door}, or {@link Coordinate}) for the marker.
1404
+ * @example
1405
+ * const marker = map.Markers.add(coordinate, '<div>Marker Content</div>');
1406
+ * mapView.Markers.setPosition(marker, newCoordinate);
1407
+ */
1408
+ setPosition: (marker: Marker, target: Space | Door | Coordinate) => void;
1409
+ /**
1410
+ * Update the position of a marker with an animation.
1411
+ * @param marker The {@link Marker} which should be removed.
1412
+ * @param target The new target object ({@link Space}, {@link Door}, or {@link Coordinate}) for the marker.
1413
+ * @returns {Promise<void>} A promise that resolves when the animation is complete.
1414
+ * @example
1415
+ * const marker = map.Markers.add(coordinate, '<div>Marker Content</div>');
1416
+ * mapView.Markers.animateTo(marker, newCoordinate, { duration: 1000 });
1417
+ */
1418
+ animateTo: (marker: Marker, target: Space | Door | Coordinate, options?: TAnimationOptions) => Promise<void>;
1267
1419
  }
1268
1420
  /**
1269
1421
  * Interface defining the controls and actions for paths ({@link Path}) on the map.
@@ -1320,8 +1472,15 @@ declare module '@mappedin/mappedin-js/maker/src/map-view-interface' {
1320
1472
  /**
1321
1473
  * Priority level of the label, used for determining display order.
1322
1474
  */
1323
- priority: number | 'initial';
1475
+ rank: number | 'initial' | TCollisionRankingTier;
1476
+ /**
1477
+ * Whether the label is interactive.
1478
+ */
1324
1479
  interactive: boolean;
1480
+ /**
1481
+ * Whether the label is enabled.
1482
+ */
1483
+ enabled: boolean;
1325
1484
  };
1326
1485
  export type TMarkerState = {
1327
1486
  type: 'marker';
@@ -1332,8 +1491,19 @@ declare module '@mappedin/mappedin-js/maker/src/map-view-interface' {
1332
1491
  /**
1333
1492
  * Priority level of the marker, used for determining display order.
1334
1493
  */
1335
- priority: number | 'initial';
1494
+ rank: number | 'initial' | TCollisionRankingTier;
1495
+ /**
1496
+ * Whether the marker is interactive.
1497
+ */
1336
1498
  interactive: boolean;
1499
+ /**
1500
+ * Whether the marker is enabled.
1501
+ */
1502
+ enabled: boolean;
1503
+ /**
1504
+ * The current coordinate of the marker.
1505
+ */
1506
+ coordinate: Coordinate;
1337
1507
  };
1338
1508
  /**
1339
1509
  * Defines the state for geometry elements like {@link Space} when updated.
@@ -1347,7 +1517,7 @@ declare module '@mappedin/mappedin-js/maker/src/map-view-interface' {
1347
1517
  /**
1348
1518
  * Color of the geometry element when hovered over. Color can be set using CSS colors names `DarkGoldenRod`, as Hex strings `#0000FF` or the rgb values `rgb(255,0,0)`.
1349
1519
  */
1350
- hoverColor: string | 'initial';
1520
+ hoverColor?: string | 'initial';
1351
1521
  /**
1352
1522
  * Indicates if the geometry element is interactive. Color can be set using CSS colors names `DarkGoldenRod`, as Hex strings `#0000FF` or the rgb values `rgb(255,0,0)`.
1353
1523
  */
@@ -1371,6 +1541,21 @@ declare module '@mappedin/mappedin-js/maker/src/map-view-interface' {
1371
1541
  */
1372
1542
  easing?: EasingCurve;
1373
1543
  };
1544
+ /**
1545
+ * Options for controlling animations on the map.
1546
+ */
1547
+ export type TAnimationOptions = {
1548
+ /**
1549
+ * Duration of the animation in milliseconds.
1550
+ * @default 1000
1551
+ */
1552
+ duration?: number;
1553
+ /**
1554
+ * Easing function to use for the animation.
1555
+ * @default 'ease-in-out'
1556
+ */
1557
+ easing?: EasingCurve;
1558
+ };
1374
1559
  /**
1375
1560
  * Types of easing for animations.
1376
1561
  *
@@ -1567,7 +1752,7 @@ declare module '@mappedin/mappedin-js/maker/src/map-view-interface' {
1567
1752
  * const coord = map.createCoordinate(43.642567, -79.387054);
1568
1753
  */
1569
1754
  createCoordinate: (latitude: number, longitude: number, floor?: Floor) => Coordinate;
1570
- createCoordinateFromScreenCoordinate: (x: number, y: number, floor?: Floor) => Coordinate;
1755
+ createCoordinateFromScreenCoordinate: (x: number, y: number, floor?: Floor) => Coordinate | undefined;
1571
1756
  /**
1572
1757
  * Updates the state {@link TUpdateState} of a given target on the map.
1573
1758
  *
@@ -1907,6 +2092,10 @@ declare module '@mappedin/mappedin-js/maker/src/map-view-interface' {
1907
2092
  * @internal
1908
2093
  */
1909
2094
  id?: string;
2095
+ /**
2096
+ * Dynamic resize of the marker. If set to true, the marker will resize based on the content.
2097
+ */
2098
+ dynamicResize?: boolean;
1910
2099
  };
1911
2100
  /**
1912
2101
  * Options for creating a new {@link Label} with {@link ILabels.add}.
@@ -2022,10 +2211,8 @@ declare module '@mappedin/mappedin-js/maker/src/map-view-interface' {
2022
2211
  declare module '@mappedin/mappedin-js/maker/src/map-view-objects' {
2023
2212
  export { Label } from '@mappedin/mappedin-js/maker/src/map-view-objects/label';
2024
2213
  export { Marker } from '@mappedin/mappedin-js/maker/src/map-view-objects/marker';
2025
- export { Directions } from '@mappedin/mappedin-js/maker/src/map-view-objects/directions';
2026
2214
  export { Path } from '@mappedin/mappedin-js/maker/src/map-view-objects/path';
2027
2215
  export { CameraTransform } from '@mappedin/mappedin-js/maker/src/map-view-objects/camera-transform';
2028
- export type { TDirectionInstruction, TDirectionInstructionAction } from '@mappedin/mappedin-js/maker/src/map-view-objects/directions';
2029
2216
  }
2030
2217
 
2031
2218
  declare module '@mappedin/mappedin-js/maker/src/navigation' {
@@ -2089,6 +2276,7 @@ declare module '@mappedin/mappedin-js/maker/src' {
2089
2276
  import type { ParsedMVF as TMVF } from '@mappedin/mvf';
2090
2277
  import { TShowWatermarkOptions } from '@mappedin/mappedin-js/packages/legacy-renderer/private/controllers/WatermarkController';
2091
2278
  import { MapViewGeoJson } from '@mappedin/mappedin-js/maker/src/map-view-geojson';
2279
+ import { enableTestMode } from '@mappedin/core-sdk';
2092
2280
  /**
2093
2281
  * Represents all the available antialiasing options.
2094
2282
  */
@@ -2198,12 +2386,31 @@ declare module '@mappedin/mappedin-js/maker/src' {
2198
2386
  * @experimental
2199
2387
  */
2200
2388
  type TShow3DMapOptions = {
2389
+ /**
2390
+ * The outdoor view options.
2391
+ */
2392
+ outdoorView?: {
2393
+ /**
2394
+ * The token is used to fetch outdoor tiles, which will then be rendered.
2395
+ */
2396
+ token?: string;
2397
+ /**
2398
+ * A url to a style specification conforming to the [Maplibre Style Spec](https://maplibre.org/maplibre-style-spec/).
2399
+ */
2400
+ style?: string;
2401
+ };
2201
2402
  /**
2202
2403
  * The token is used to fetch outdoor tiles, which will then be rendered.
2404
+ *
2405
+ * @deprecated Use `outdoorView.token` instead.
2406
+ * @hidden
2203
2407
  */
2204
2408
  outdoorViewToken?: string;
2205
2409
  /**
2206
2410
  * A url to a style specification conforming to the [Maplibre Style Spec](https://maplibre.org/maplibre-style-spec/).
2411
+ *
2412
+ * @deprecated Use `outdoorView.style` instead.
2413
+ * @hidden
2207
2414
  */
2208
2415
  outdoorViewStyle?: string;
2209
2416
  /**
@@ -2257,6 +2464,18 @@ declare module '@mappedin/mappedin-js/maker/src' {
2257
2464
  * @hidden
2258
2465
  */
2259
2466
  watermark?: TShowWatermarkOptions;
2467
+ /**
2468
+ * Options for the attribution control.
2469
+ *
2470
+ * @hidden
2471
+ */
2472
+ attribution?: {
2473
+ /**
2474
+ * Attribution position.
2475
+ * @default 'bottom-right'
2476
+ */
2477
+ position: 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right';
2478
+ };
2260
2479
  /**
2261
2480
  * First floor to be rendered.
2262
2481
  * By default, floor with the elevation that's closest to 0 is rendered. All floors will be sorted by elevation in ascending order.
@@ -2298,12 +2517,12 @@ declare module '@mappedin/mappedin-js/maker/src' {
2298
2517
  * const map = await show3dMap(mapContainer, mapData, { auto: true });
2299
2518
  */
2300
2519
  export const show3dMapCms: (el: HTMLElement, mapData: MapData, options?: TShow3DMapOptions) => Promise<MapView>;
2301
- export const show3dMapGeojson: (el: HTMLElement, mapData: MapData) => Promise<MapViewGeoJson>;
2520
+ export const show3dMapGeojson: (el: HTMLElement, mapData: MapData, options?: TShow3DMapOptions) => Promise<MapViewGeoJson>;
2302
2521
  export const show3dMap: (el: HTMLElement, mapData: MapData, options?: TShow3DMapOptions) => Promise<MapView>;
2303
- export { parseMVF, unzipMVF };
2522
+ export { parseMVF, unzipMVF, enableTestMode };
2304
2523
  export type { MapView, MapData, TEvents, TShow3DMapOptions, TGetMapDataOptions, TAmbientOcclusionOptions, TAntialiasingOptions, TMVF, };
2305
- export type { ILabels, IPaths, IMarkers, ICamera, TUpdateState, TLabelState, TGeometryState, TCameraAnimationOptions, TFocusOnOptions, TEasingFunction, TCameraTarget, TNavigationTarget, TCameraFocusOnTarget, TAddMarkerOptions, TAddPathOptions, TLabelAppearance, TAddLabelOptions, TDrawNavigationOptions, TGetDirectionsOptions, TNavigationConnection, TCollisionRankingTier, TMarkerAnchor, } from '@mappedin/mappedin-js/maker/src/map-view-interface';
2306
- export type { Directions, Label, Marker, Path, TDirectionInstruction, TDirectionInstructionAction, CameraTransform, } from '@mappedin/mappedin-js/maker/src/map-view-objects';
2524
+ export type { ILabels, IPaths, IMarkers, ICamera, TUpdateState, TLabelState, TGeometryState, TCameraAnimationOptions, TFocusOnOptions, TEasingFunction, TCameraTarget, TNavigationTarget, TCameraFocusOnTarget, TAddMarkerOptions, TAddPathOptions, TLabelAppearance, TAddLabelOptions, TDrawNavigationOptions, TGetDirectionsOptions, TNavigationConnection, TCollisionRankingTier, TMarkerAnchor, TDirectionInstruction, TDirectionInstructionAction, Directions, } from '@mappedin/mappedin-js/maker/src/map-view-interface';
2525
+ export type { Label, Marker, Path, CameraTransform } from '@mappedin/mappedin-js/maker/src/map-view-objects';
2307
2526
  export type { Navigation, TNavigationOptions } from '@mappedin/mappedin-js/maker/src/navigation';
2308
2527
  export type { TSpaceType } from '@mappedin/mappedin-js/maker/src/map-data-objects';
2309
2528
  export { Coordinate, Annotation, Connection, Door, Floor, MapObject, PointOfInterest, Space, Image, Hyperlink, } from '@mappedin/mappedin-js/maker/src/map-data-objects';
@@ -2505,6 +2724,7 @@ declare module '@mappedin/mappedin-js/packages/legacy-renderer/public/api/Export
2505
2724
  onlyVisible?: boolean;
2506
2725
  binary?: boolean;
2507
2726
  scale?: number;
2727
+ light?: boolean;
2508
2728
  };
2509
2729
  /**
2510
2730
  * API to export the scene.
@@ -5341,10 +5561,28 @@ declare module '@mappedin/mappedin-js/maker/src/api-geojson/labels' {
5341
5561
  export {};
5342
5562
  }
5343
5563
 
5344
- declare module '@mappedin/mappedin-js/maker/src/api-geojson' {
5345
- export { GeoJsonApi } from '@mappedin/mappedin-js/maker/src/api-geojson/api';
5346
- export { convertPriorityToCollisionTier } from '@mappedin/mappedin-js/maker/src/api-geojson/utils';
5347
- export { Inspector } from '@mappedin/mappedin-js/maker/src/api-geojson/inspector';
5564
+ declare module '@mappedin/mappedin-js/maker/src/api-geojson/exporter' {
5565
+ import { GeojsonApiMapObject } from '@mappedin/mappedin-js/maker/src/api-geojson/map-object';
5566
+ import { GLTFExportOptions } from '@mappedin/mappedin-js/maker/src/map-view-interface';
5567
+ /**
5568
+ * API to export the scene.
5569
+ *
5570
+ * @hidden
5571
+ */
5572
+ export class ExporterApi {
5573
+ get currentMap(): GeojsonApiMapObject | undefined;
5574
+ constructor({ currentMapGetter }: {
5575
+ currentMapGetter: CurrentMapGetter;
5576
+ });
5577
+ /**
5578
+ * Exports the current scene as a GLTF file.
5579
+ *
5580
+ * @hidden
5581
+ */
5582
+ getCurrentSceneGLTF(userOptions: GLTFExportOptions): Promise<Blob>;
5583
+ }
5584
+ type CurrentMapGetter = () => GeojsonApiMapObject | undefined;
5585
+ export {};
5348
5586
  }
5349
5587
 
5350
5588
  declare module '@mappedin/mappedin-js/maker/src/map-view-objects/label' {
@@ -5400,7 +5638,7 @@ declare module '@mappedin/mappedin-js/maker/src/map-view-objects/marker' {
5400
5638
  */
5401
5639
  readonly contentEl: HTMLElement;
5402
5640
  /**
5403
- * Updates the marker's position on the map.
5641
+ * Forces the marker to update its collider.
5404
5642
  */
5405
5643
  readonly update: () => void;
5406
5644
  /**
@@ -5417,98 +5655,6 @@ declare module '@mappedin/mappedin-js/maker/src/map-view-objects/marker' {
5417
5655
  }
5418
5656
  }
5419
5657
 
5420
- declare module '@mappedin/mappedin-js/maker/src/map-view-objects/directions' {
5421
- import { IDirectionsResult } from '@mappedin/mappedin-js/packages/get-venue';
5422
- import { CMSAPI } from '@mappedin/mappedin-js/maker/src/api-cms/api-cms';
5423
- import { Connection, Coordinate, Floor } from '@mappedin/mappedin-js/maker/src/map-data-objects';
5424
- /**
5425
- * Represents an action within a direction instruction.
5426
- */
5427
- export type TDirectionInstructionAction = {
5428
- /**
5429
- * Type of action required at this step (e.g., 'Departure', 'Arrival', 'Turn').
5430
- */
5431
- type: 'Departure' | 'TakeConnection' | 'ExitConnection' | 'Turn' | 'Arrival';
5432
- /**
5433
- * Bearing direction for this action (e.g., 'Straight', 'Right', 'Left').
5434
- */
5435
- bearing?: 'Straight' | 'Right' | 'SlightRight' | 'Left' | 'SlightLeft';
5436
- /**
5437
- * A reference position for the action.
5438
- *
5439
- * @internal
5440
- */
5441
- referencePosition?: string;
5442
- /**
5443
- * The {@link Floor} from which this action starts.
5444
- */
5445
- fromFloor?: Floor;
5446
- /**
5447
- * The target {@link Floor} for this action.
5448
- */
5449
- toFloor?: Floor;
5450
- connection?: Connection;
5451
- /**
5452
- * The direction of the connection (e.g., 'up', 'down').
5453
- */
5454
- direction?: 'up' | 'down';
5455
- /**
5456
- * The type of the connection (e.g., 'elevator', 'escalator').
5457
- */
5458
- connectionType?: string;
5459
- };
5460
- /**
5461
- * Represents a single instruction in a set of directions between two points.
5462
- */
5463
- export type TDirectionInstruction = {
5464
- /**
5465
- * The action ({@link TDirectionInstructionAction}) to be taken for this instruction.
5466
- */
5467
- action: TDirectionInstructionAction;
5468
- /**
5469
- * Distance in meters covered in this instruction step.
5470
- */
5471
- distance: number;
5472
- /**
5473
- * The {@link Coordinate} at which this instruction applies.
5474
- */
5475
- coordinate: Coordinate;
5476
- };
5477
- /**
5478
- * Represents a set of directions between two points on the {@link MapView}.
5479
- *
5480
- * Directions are used to represent the path between two points on the map,
5481
- * as well as the instructions to follow the path.
5482
- */
5483
- export class Directions {
5484
- #private;
5485
- /**
5486
- * @internal
5487
- */
5488
- constructor(core: CMSAPI, directions: IDirectionsResult);
5489
- /**
5490
- * Gets all the coordinates ({@link Coordinate}) of the path.
5491
- *
5492
- * @returns Array of Coordinates.
5493
- */
5494
- get coordinates(): Coordinate[];
5495
- /**
5496
- * Gets the total distance of the path.
5497
- *
5498
- * This property returns the total distance of the path in meters.
5499
- *
5500
- * @returns {number} Total distance in meters.
5501
- */
5502
- get distance(): number;
5503
- /**
5504
- * Gets the array of instructions ({@link TDirectionInstruction}).
5505
- *
5506
- * @returns Array of instructions.
5507
- */
5508
- get instructions(): TDirectionInstruction[];
5509
- }
5510
- }
5511
-
5512
5658
  declare module '@mappedin/mappedin-js/maker/src/map-view-objects/path' {
5513
5659
  /**
5514
5660
  * Class representing a path on the {@link MapView}.
@@ -13101,9 +13247,11 @@ declare module '@mappedin/mappedin-js/maker/src/api-geojson/map-object' {
13101
13247
  import { ParsedMVF } from '@mappedin/mvf';
13102
13248
  import { FloorObject } from '@mappedin/mappedin-js/maker/src/api-geojson/floor-object';
13103
13249
  import { Position } from '@mappedin/core-sdk';
13104
- import { Coordinate, TAddMarkerOptions } from '@mappedin/mappedin-js/maker/src';
13105
- import { AddLabelOptions, Geometry2D, RendererCore } from '@mappedin/core-sdk';
13106
- import { Path } from '@mappedin/core-sdk';
13250
+ import { Coordinate, TAddMarkerOptions, TAddPathOptions } from '@mappedin/mappedin-js/maker/src';
13251
+ import { AddLabelOptions, RendererCore } from '@mappedin/core-sdk';
13252
+ import { GLTFExportOptions, TAnimationOptions } from '@mappedin/mappedin-js/maker/src/map-view-interface';
13253
+ import { AggregatedStyleMap } from '@mappedin/mappedin-js/maker/src/api-geojson/utils';
13254
+ import { MarkerState } from '@mappedin/core-sdk';
13107
13255
  export class GeojsonApiMapObject {
13108
13256
  floors: FloorObject[];
13109
13257
  currentFloorId: string;
@@ -13114,13 +13262,15 @@ declare module '@mappedin/mappedin-js/maker/src/api-geojson/map-object' {
13114
13262
  Markers: {
13115
13263
  add: (coordinate: Position, html: string, opts?: TAddMarkerOptions & {
13116
13264
  floorId?: string;
13117
- }) => import("@mappedin/core-sdk").Marker;
13265
+ }) => import("@mappedin/core-sdk").EntityId<MarkerState>;
13118
13266
  remove: (_id: string) => void;
13119
- getContentEl: (id: string) => any;
13267
+ getContentEl: (id: string) => HTMLElement | undefined;
13120
13268
  removeAll: () => void;
13121
- all({ onCreate }: {
13122
- onCreate: (entity: Geometry2D) => void;
13123
- }): void;
13269
+ setPosition: (id: string, coordinate: Position, targetFloorId: string) => void;
13270
+ animateTo: (id: string, coordinate: Position, targetFloorId: string, options?: TAnimationOptions) => Promise<void>;
13271
+ };
13272
+ Exporter: {
13273
+ getCurrentSceneGLTF: (options: GLTFExportOptions) => Promise<Blob>;
13124
13274
  };
13125
13275
  Labels: {
13126
13276
  all: ({ onCreate }: {
@@ -13130,146 +13280,17 @@ declare module '@mappedin/mappedin-js/maker/src/api-geojson/map-object' {
13130
13280
  floorId?: string;
13131
13281
  }) => {
13132
13282
  id: string | number;
13133
- type: 'label';
13134
13283
  };
13135
13284
  remove: (targetId: string) => void;
13136
13285
  removeAll: () => void;
13137
13286
  };
13138
13287
  Paths: {
13139
- add: (coordinates: Coordinate[]) => Path[];
13288
+ add: (coordinates: Coordinate[], options?: TAddPathOptions) => {
13289
+ id: string | number;
13290
+ }[];
13140
13291
  remove: (entityIds: string[]) => void;
13141
13292
  };
13142
- constructor(id: string, mvf: any, renderer: RendererCore);
13143
- }
13144
- }
13145
-
13146
- declare module '@mappedin/mappedin-js/maker/src/api-geojson/api' {
13147
- /**
13148
- * integrating V6 api
13149
- * Note:
13150
- * - We are not handling multi-building yet
13151
- */
13152
- import MapData from '@mappedin/mappedin-js/maker/src/map-data';
13153
- import { Coordinate, Floor, MapDataInternal, Space, MapObject } from '@mappedin/mappedin-js/maker/src/map-data-objects';
13154
- import { ICamera, IMapView, INavigation, TGetState, TUpdateState } from '@mappedin/mappedin-js/maker/src/map-view-interface';
13155
- import { CameraTransform, Label, Marker } from '@mappedin/mappedin-js/maker/src/map-view-objects';
13156
- import { RendererCore, InteractionPayload } from '@mappedin/core-sdk';
13157
- import { GeojsonApiMapObject } from '@mappedin/mappedin-js/maker/src/api-geojson/map-object';
13158
- import GUI from 'lil-gui';
13159
- import { PubSub } from '@packages/internal/common';
13160
- import { LabelsApi } from '@mappedin/mappedin-js/maker/src/api-geojson/labels';
13161
- import { MarkersApi } from '@mappedin/mappedin-js/maker/src/api-geojson/markers';
13162
- import { PathsApi } from '@mappedin/mappedin-js/maker/src/api-geojson/paths';
13163
- import { MapViewGeoJson } from '@mappedin/mappedin-js/maker/src/map-view-geojson';
13164
- export class GeoJsonApi extends PubSub<{
13165
- 'camera-change': CameraTransform;
13166
- hover: InteractionPayload;
13167
- click: InteractionPayload;
13168
- }> implements IMapView {
13169
- #private;
13170
- outdoors: GeojsonApiMapObject;
13171
- id: string;
13172
- mapDataExternal: {
13173
- [key in string]: MapData;
13174
- };
13175
- currentMap?: GeojsonApiMapObject;
13176
- Camera: ICamera;
13177
- Labels: LabelsApi;
13178
- Markers: MarkersApi;
13179
- Paths: PathsApi;
13180
- constructor(rendererCore: RendererCore, mapView: MapViewGeoJson, _options?: any);
13181
- updateStackState: RendererCore['updateStackState'];
13182
- updateState<T extends Space | MapObject | Label | Marker | string>(target: T, state: TUpdateState<T>): void;
13183
- update: () => void;
13184
- getMapData(): MapDataInternal | undefined;
13185
- addMap(mapData: MapData): Promise<MapData>;
13186
- setFloor(floor: Floor | string): void;
13187
- get currentFloor(): Floor;
13188
- getState<T extends Space | MapObject | Label | Marker | string>(target: T): TGetState<T> | undefined;
13189
- setHoverColor(c: string): void;
13190
- getHoverColor(): any;
13191
- getDirections: IMapView['getDirections'];
13192
- Navigation: INavigation;
13193
- createCoordinate(latitude: number, longitude: number, floor?: Floor): Coordinate;
13194
- createCoordinateFromScreenCoordinate(): Coordinate;
13195
- auto(): void;
13196
- Outdoor: {
13197
- setStyle: (style: any) => void;
13198
- };
13199
- debug(gui: GUI): void;
13200
- /**
13201
- * @internal
13202
- */
13203
- get __core(): RendererCore;
13204
- }
13205
- }
13206
-
13207
- declare module '@mappedin/mappedin-js/maker/src/api-geojson/utils' {
13208
- import { Coordinate } from '@mappedin/mappedin-js/maker/src/map-data-objects';
13209
- import type { Position, EntranceCollection, LineString, ObstructionProperties } from '@mappedin/mvf';
13210
- import { FeatureCollection } from '@turf/turf';
13211
- import { Feature, MultiLineString } from 'geojson';
13212
- import { CollisionRankingTier, LabelState, MarkerState } from '@mappedin/core-sdk';
13213
- import { TGeometryState, TLabelState } from '@mappedin/mappedin-js/maker/src';
13214
- import { GeometryState } from '@mappedin/core-sdk';
13215
- import { TMarkerState } from '@mappedin/mappedin-js/maker/src/map-view-interface';
13216
- export function convertCoordinateToPosition(coord: Coordinate): Position;
13217
- export function convertPositionToCoordinate(coord: Position): Coordinate;
13218
- export const cutEntracesFromLineStrings: (lineStrings: FeatureCollection<LineString, ObstructionProperties>['features'], entranceCollection: EntranceCollection['features']) => Feature<MultiLineString, any>;
13219
- export function convertPriorityToCollisionTier(priority: TLabelState['priority']): CollisionRankingTier;
13220
- export function translateLabelStateToGeojsonCore(state: Partial<TLabelState>): Partial<LabelState>;
13221
- export function translateMarkerStateToGeojsonCore(state: Partial<TMarkerState>): Partial<MarkerState>;
13222
- export function translateSpaceStateToGeojsonCore(state: Partial<TGeometryState>): Partial<GeometryState>;
13223
- }
13224
-
13225
- declare module '@mappedin/mappedin-js/maker/src/api-geojson/inspector' {
13226
- export { Inspector } from '@mappedin/mappedin-js/maker/src/api-geojson/inspector/debug';
13227
- }
13228
-
13229
- declare module '@mappedin/mappedin-js/maker/src/api-cms/api-cms' {
13230
- import { MapData, TShow3DMapOptions } from '@mappedin/mappedin-js/maker/src';
13231
- import { IDirectionsResult, MappedinMap } from '@mappedin/mappedin-js/packages/get-venue';
13232
- import { FloatingLabel, Marker as LegacyMarker } from '@mappedin/mappedin-js/cms/src';
13233
- import { ExportController, JourneyController } from '@mappedin/mappedin-js/packages/legacy-renderer/internal';
13234
- import Core from '@mappedin/mappedin-js/packages/legacy-renderer/private/Core';
13235
- import { Coordinate, Floor, MapDataInternal, MapObject, Space } from '@mappedin/mappedin-js/maker/src/map-data-objects';
13236
- import { MapView } from '@mappedin/mappedin-js/maker/src/map-view';
13237
- import { IMapView, ILabels, TUpdateState, IMarkers, ICamera, TNavigationTarget, IPaths, TGetDirectionsOptions } from '@mappedin/mappedin-js/maker/src/map-view-interface';
13238
- import { Marker, Directions, Label } from '@mappedin/mappedin-js/maker/src/map-view-objects';
13239
- import { DefaultTheme } from '@mappedin/mappedin-js/maker/src/themes/default';
13240
- import { Navigation } from '@mappedin/mappedin-js/maker/src/navigation';
13241
- export function getMappedinCoordinate(coordinate: Coordinate, mvCore: Core): import("@packages/internal/get-venue/MappedinCoordinate").MappedinCoordinate;
13242
- export class CMSAPI implements IMapView {
13243
- mvCore: Core;
13244
- el: HTMLElement;
13245
- mapData: MapDataInternal;
13246
- mapDataExternal: {
13247
- [key in string]: MapData;
13248
- };
13249
- mapView: MapView;
13250
- optionsWithDefaults: TShow3DMapOptions;
13251
- labels: Map<string, [FloatingLabel, Label]>;
13252
- markers: Map<string, [LegacyMarker, Marker]>;
13253
- directions: WeakMap<Directions, IDirectionsResult>;
13254
- journey?: JourneyController;
13255
- Navigation: Navigation;
13256
- auto: DefaultTheme['auto'];
13257
- exportController?: ExportController;
13258
- constructor(el: HTMLElement, mapView: MapView, optionsWithDefaults: TShow3DMapOptions);
13259
- get currentFloor(): Floor;
13260
- setFloor(floor: Floor | string): void;
13261
- addMap(mapData: MapData): Promise<MapData>;
13262
- Labels: ILabels;
13263
- Markers: IMarkers;
13264
- Paths: IPaths;
13265
- Camera: ICamera;
13266
- createCoordinate(latitude: number, longitude: number, floor?: Floor): Coordinate;
13267
- createCoordinateFromScreenCoordinate(x: number, y: number, floor?: Floor | undefined): Coordinate;
13268
- convertMappedinXYToCoordinate(x: number, y: number, map: MappedinMap | string): Coordinate;
13269
- updateState<T extends Space | MapObject | Label>(object: T, state: TUpdateState<T>): void;
13270
- getNearestNodeToCoordinate(coordinate: Coordinate): import("@packages/internal/get-venue/MappedinNode").MappedinNode;
13271
- getDestinationNodesFromTarget: (target: TNavigationTarget) => string[];
13272
- getDirections: (from: TNavigationTarget | TNavigationTarget[], to: TNavigationTarget | TNavigationTarget[], options?: TGetDirectionsOptions) => Directions | undefined;
13293
+ constructor(id: string, mvf: any, styleMap: AggregatedStyleMap, renderer: RendererCore);
13273
13294
  }
13274
13295
  }
13275
13296
 
@@ -15296,213 +15317,41 @@ declare module '@mappedin/mappedin-js/packages/navigator/interfaces/IPolygon' {
15296
15317
  }
15297
15318
 
15298
15319
  declare module '@mappedin/mappedin-js/maker/src/api-geojson/floor-object' {
15299
- import type { ParsedMVF, StyleCollection } from '@mappedin/mvf';
15320
+ import type { ParsedMVF } from '@mappedin/mvf';
15300
15321
  import { RendererCore } from '@mappedin/core-sdk';
15322
+ import { AggregatedStyleMap } from '@mappedin/mappedin-js/maker/src/api-geojson/utils';
15301
15323
  export class FloorObject {
15302
15324
  id: string;
15303
15325
  name: string;
15304
15326
  elevation: number;
15305
15327
  containerId: string;
15306
15328
  layers: Map<string, string>;
15307
- constructor(parentId: string, floor: ParsedMVF['map.geojson'][0], renderer: RendererCore, mvf?: ParsedMVF, styles?: StyleCollection);
15329
+ constructor(parentId: string, floor: ParsedMVF['map.geojson'][0], renderer: RendererCore, mvf?: ParsedMVF, styleMap?: AggregatedStyleMap);
15308
15330
  load: () => this;
15309
15331
  }
15310
15332
  }
15311
15333
 
15312
- declare module '@mappedin/mappedin-js/maker/src/api-geojson/markers' {
15313
- import { TAddMarkerOptions } from '@mappedin/mappedin-js/maker/src/map-view-interface';
15314
- import { Marker } from '@mappedin/mappedin-js/maker/src/map-view-objects';
15315
- import { GeojsonApiMapObject } from '@mappedin/mappedin-js/maker/src/api-geojson/map-object';
15316
- import { IMarkers } from '@mappedin/mappedin-js/maker/src';
15317
- import { Space, Door, Coordinate } from '@mappedin/mappedin-js/maker/src/map-data-objects';
15318
- export class MarkersApi implements IMarkers {
15319
- get currentMap(): GeojsonApiMapObject | undefined;
15320
- constructor({ currentMapGetter }: {
15321
- currentMapGetter: CurremtMapGetter;
15322
- });
15323
- /**
15324
- * internal
15325
- */
15326
- getById(id: string): {
15327
- marker: Marker;
15328
- entityId: string;
15329
- } | undefined;
15330
- add(target: Space | Door | Coordinate, html: string, options?: TAddMarkerOptions): Marker;
15331
- all(): Marker[];
15332
- remove(target: Marker): void;
15333
- removeAll(): Marker[];
15334
- }
15335
- type CurremtMapGetter = () => GeojsonApiMapObject | undefined;
15336
- export {};
15337
- }
15338
-
15339
- declare module '@mappedin/mappedin-js/maker/src/api-geojson/paths' {
15340
- import { GeojsonApiMapObject } from '@mappedin/mappedin-js/maker/src/api-geojson/map-object';
15341
- import { IPaths } from '@mappedin/mappedin-js/maker/src';
15342
- import { Path } from '@mappedin/mappedin-js/maker/src/map-view-objects';
15334
+ declare module '@mappedin/mappedin-js/maker/src/api-geojson/utils' {
15343
15335
  import { Coordinate } from '@mappedin/mappedin-js/maker/src/map-data-objects';
15344
- export class PathsApi implements IPaths {
15345
- get currentMap(): GeojsonApiMapObject | undefined;
15346
- constructor({ currentMapGetter }: {
15347
- currentMapGetter: CurremtMapGetter;
15348
- });
15349
- /**
15350
- * internal
15351
- */
15352
- getById(id: string): {
15353
- path: Path;
15354
- entityIds: string[];
15355
- } | undefined;
15356
- add(coords: Coordinate[]): Path;
15357
- remove(target: Path): void;
15358
- removeAll(): Path[];
15359
- }
15360
- type CurremtMapGetter = () => GeojsonApiMapObject | undefined;
15361
- export {};
15362
- }
15363
-
15364
- declare module '@mappedin/mappedin-js/maker/src/api-geojson/inspector/debug' {
15365
- import MapData from '@mappedin/mappedin-js/maker/src/map-data';
15366
- import { MapViewGeoJson } from '@mappedin/mappedin-js/maker/src/map-view-geojson';
15367
- import { GeoJsonApi } from '@mappedin/mappedin-js/maker/src/api-geojson/api';
15368
- export class Inspector {
15369
- storeStateToLocalStorageEnabled: boolean;
15370
- constructor(mv: MapViewGeoJson, api: GeoJsonApi);
15371
- setMapData(data: MapData): void;
15372
- enable(): Promise<void>;
15373
- get enabled(): boolean;
15374
- storeState(id: string, state: any): void;
15375
- }
15376
- }
15377
-
15378
- declare module '@mappedin/mappedin-js/cms/src' {
15379
- import { MapView } from '@mappedin/mappedin-js/packages/legacy-renderer/public/MapView';
15380
- import { getVenue, getVenueMVF, getVenueBundle, getVenueMaker, Mappedin, downloadBundle, getVenueBundleURL, downloadVenueBundleMVF, MappedinDestinationSet, MappedinMap, TGetVenueBundleOptions, TGetVenueOptions, hydrateVenue, GET_VENUE_EVENT } from '@mappedin/mappedin-js/packages/get-venue';
15381
- import { PositionUpdater } from '@mappedin/mappedin-js/packages/legacy-renderer/internal/Mappedin.BlueDot/Mappedin.BlueDot.core';
15382
- import type { TMapViewOptions } from '@mappedin/mappedin-js/packages/legacy-renderer/MapView.types';
15383
- export { E_SDK_LOG_LEVEL, setLoggerLevel } from '@mappedin/mappedin-js/packages/common/Mappedin.Logger';
15384
- export type { Marker } from '@mappedin/mappedin-js/packages/legacy-renderer/private/controllers/MarkersController';
15385
- export type { Path } from '@mappedin/mappedin-js/packages/legacy-renderer/private/controllers/PathsController';
15386
- export type { FloatingLabel } from '@mappedin/mappedin-js/packages/legacy-renderer/private/controllers/FloatingLabelsController';
15387
- export { BEARING_TYPE, ACTION_TYPE } from '@mappedin/mappedin-js/packages/navigator';
15388
- export type { IDirectionsResult, TSimplifyDirectionsOptions, E_MESSAGES as E_GET_DIRECTIONS_MESSAGES, } from '@mappedin/mappedin-js/packages/navigator';
15389
- /**
15390
- * APIs for TypeDoc
15391
- */
15392
- export type { IFlatLabels, FlatLabels } from '@mappedin/mappedin-js/packages/legacy-renderer/public/api/FlatLabels';
15393
- export type { IFloatingLabels, FloatingLabels } from '@mappedin/mappedin-js/packages/legacy-renderer/public/api/FloatingLabels';
15394
- export type { Camera } from '@mappedin/mappedin-js/packages/legacy-renderer/public/api/Camera';
15395
- export type { BlueDot } from '@mappedin/mappedin-js/packages/legacy-renderer/public/api/BlueDot';
15396
- export type { Markers } from '@mappedin/mappedin-js/packages/legacy-renderer/public/api/Markers';
15397
- export type { Paths } from '@mappedin/mappedin-js/packages/legacy-renderer/public/api/Paths';
15398
- export type { StackedMaps } from '@mappedin/mappedin-js/packages/legacy-renderer/public/api/StackedMaps';
15399
- export type { OutdoorView } from '@mappedin/mappedin-js/packages/legacy-renderer/public/api/OutdoorView';
15400
- export type { DynamicFocus } from '@mappedin/mappedin-js/packages/legacy-renderer/public/api/DynamicFocus';
15401
- export type { Layers } from '@mappedin/mappedin-js/packages/legacy-renderer/public/api/Layers';
15402
- export type { TOOLTIP_ANCHOR } from '@mappedin/mappedin-js/packages/legacy-renderer/internal/Mappedin.SmartTooltip';
15403
- export type TMappedinInitializeOutput = {
15404
- mapView: MapView;
15405
- venue: Mappedin;
15406
- };
15407
- type _TGetVenueOptions = TGetVenueOptions & {
15408
- useVenueBundle?: false | undefined;
15409
- };
15410
- type _TGetVenueBundleOptions = TGetVenueBundleOptions & {
15411
- useVenueBundle: true;
15412
- };
15413
- type TMappedinInitializeOptions = {
15414
- mapView?: TMapViewOptions;
15415
- venue: _TGetVenueOptions | _TGetVenueBundleOptions;
15416
- firstMapSelector?: (venue: Mappedin) => MappedinMap | MappedinMap['id'];
15417
- };
15418
- /**
15419
- *
15420
- * @param el HTML Element where the mapView should be placed
15421
- * @param venue Venue Object returned by {@link getVenue}
15422
- * @param options MapView Options
15423
- * @returns
15424
- */
15425
- function showVenue<T extends Mappedin>(el: HTMLElement, venue: T, options?: TMapViewOptions): Promise<MapView>;
15426
- export { COLLISION_RANKING_TIERS, STATE, E_SDK_EVENT, E_BLUEDOT_STATE_REASON, E_BLUEDOT_MARKER_STATE, E_BLUEDOT_EVENT, E_BLUEDOT_STATE, E_CAMERA_EVENT, E_CAMERA_DIRECTION, SAFE_AREA_INSET_TYPE, ANIMATION_TWEENS, CAMERA_EASING_MODE, STACKED_MAPS_STATE, MARKER_ANCHOR, GEOLOCATION_STATUS, E_MAP_CHANGED_REASON, } from '@mappedin/mappedin-js/packages/legacy-renderer/MapView.enums';
15427
- export { getVenue, getVenueMVF, getVenueBundle, getVenueMaker, showVenue, downloadBundle, getVenueBundleURL, downloadVenueBundleMVF, hydrateVenue, PositionUpdater, MappedinDestinationSet, GET_VENUE_EVENT, };
15428
- import DefaultAssetManager from '@mappedin/mappedin-js/packages/legacy-renderer/internal/Mappedin.AssetManager';
15429
- import { TTileManagerOptions } from '@mappedin/mappedin-js/packages/legacy-renderer/internal/outdoor-context/Mappedin.TileManager';
15430
- import { TShowWatermarkOptions } from '@mappedin/mappedin-js/packages/legacy-renderer/private/controllers/WatermarkController';
15431
- export { setAssetManager } from '@mappedin/mappedin-js/packages/legacy-renderer/internal';
15432
- export { DefaultAssetManager as AssetManager };
15433
- export type { TMappedinDirective, IAction, IActionArrival, IActionDeparture, IActionExitVortex, IActionTakeVortex, IActionTurn, } from '@mappedin/mappedin-js/packages/get-venue/MappedinDirections';
15434
- export type { TMappedinInitializeOptions };
15435
- export * from '@mappedin/mappedin-js/packages/legacy-renderer/MapView.types';
15436
- export type { MapView } from '@mappedin/mappedin-js/packages/legacy-renderer/public/MapView';
15437
- export type { TSafeAreaInsets, TCameraTargets, TFocusOnCameraOptions, TCameraTransform, TCameraInteractionsSetOptions, TCameraAnimationOptions, default as CameraController, } from '@mappedin/mappedin-js/packages/legacy-renderer/private/controllers/CameraController';
15438
- export type { TGetVenueOptions, TGetVenueBundleOptions, TGetVenueMVFOptions, TGetVenueMakerOptions, TMappedinOfflineSearchOptions, TMappedinOfflineSearchResult, TMappedinOfflineSearchSuggestions, TMappedinOfflineAllSearchMatch, TMappedinOfflineSearchAllOptions, TDirectionToOptions, TPicture, TImage, TColor, TGalleryImage, TOpeningHours, TPhone, TSiblingGroup, TSocial, TState, TGeoReference, TPolygonRanking, TOperationHoursMap, TAccessors, } from '@mappedin/mappedin-js/packages/get-venue';
15439
- export { Mappedin, MappedinDirections, MappedinLocation, MappedinPolygon, MappedinNode, MappedinCategory, MappedinMap, MappedinEvent, MappedinMapGroup, MappedinVenue, MappedinVortex, MappedinRankings, MappedinNavigatable, MappedinCoordinate, OfflineSearch, MAP_RENDER_MODE, setFetchFn, MappedinCollectionType, MappedinLocationState, } from '@mappedin/mappedin-js/packages/get-venue';
15440
- /**
15441
- * Export this only so our internal pre-built products can use it. We don't want to document it for external developers.
15442
- */
15443
- export { CustomerAnalytics } from '@mappedin/mappedin-js/packages/get-venue';
15444
- /**
15445
- * Exported but marked as @internal.
15446
- */
15447
- export { BundleAssetManager } from '@mappedin/mappedin-js/packages/legacy-renderer/bundle-asset-manager';
15448
- /**
15449
- * @deprecated Use {@link OutdoorView} instead.
15450
- * Enable Tile Manager to render outdoor tiles around the venue. Must be called before {@link showVenue}.
15451
- *
15452
- * @example
15453
- * ```ts
15454
- * __enableTileManager({
15455
- * provider: new AzureOutdoorContextProvider(
15456
- * venue.options.language,
15457
- * 256,
15458
- * "Your Azure API Key",
15459
- * undefined //Omitted when using API Key.
15460
- * )
15461
- * });
15462
- * ```
15463
- */
15464
- export function __enableTileManager(options?: TTileManagerOptions): void;
15465
- /**
15466
- * @hidden
15467
- * @internal
15468
- *
15469
- * Show a Mappedin logo in the 3D scene. Must be called before {@link showVenue}.
15470
- */
15471
- export function __showWatermark(options?: TShowWatermarkOptions): void;
15472
- export type { TTileManagerOptions } from '@mappedin/mappedin-js/packages/legacy-renderer/internal/outdoor-context/Mappedin.TileManager';
15473
- export { TILE_RENDER_MODES } from '@mappedin/mappedin-js/packages/legacy-renderer/internal/outdoor-context/Mappedin.TileManager';
15474
- export { AzureOutdoorContextProvider, OpenStreetMapOutdoorContext, } from '@mappedin/mappedin-js/packages/legacy-renderer/internal/outdoor-context/Outdoor-Context.provider';
15475
- export type { IOutdoorContextProvider } from '@mappedin/mappedin-js/packages/legacy-renderer/internal/outdoor-context/Outdoor-Context.provider';
15476
- }
15477
-
15478
- declare module '@mappedin/mappedin-js/maker/src/themes/default' {
15479
- import type { MapData, MapView } from '@mappedin/mappedin-js/maker/src';
15480
- import { MapViewGeoJson } from '@mappedin/mappedin-js/maker/src/map-view-geojson';
15481
- import { Labels } from '@mappedin/mappedin-js/maker/src/themes/default/labels';
15482
- export class DefaultTheme {
15483
- Labels: Labels;
15484
- constructor(mapView: MapView | MapViewGeoJson, mapData: {
15485
- [key in string]: MapData;
15486
- });
15487
- auto: () => void;
15488
- }
15489
- }
15490
-
15491
- declare module '@mappedin/mappedin-js/maker/src/themes/default/labels' {
15492
- import type { MapData, MapView } from '@mappedin/mappedin-js/maker/src';
15493
- import { MapViewGeoJson } from '@mappedin/mappedin-js/maker/src/map-view-geojson';
15494
- export class Labels {
15495
- #private;
15496
- colors: {
15497
- default: string;
15498
- connection: string;
15499
- washroom: string;
15500
- point: string;
15501
- };
15502
- constructor(mapView: MapView | MapViewGeoJson, mapData: {
15503
- [key in string]: MapData;
15504
- });
15505
- auto(): void;
15506
- }
15336
+ import type { Position, EntranceCollection, LineString, Polygon, Point, SpaceProperties, ObstructionProperties, StyleCollection, PolygonStyle, LineStringStyle, Feature, ObstructionCollection, PointStyle } from '@mappedin/mvf';
15337
+ import type { MultiLineString } from 'geojson';
15338
+ import { LabelState, MarkerState } from '@mappedin/core-sdk';
15339
+ import { TGeometryState, TLabelState, TDirectionInstructionAction } from '@mappedin/mappedin-js/maker/src';
15340
+ import type { GeometryState, CollisionRankingTier } from '@mappedin/core-sdk';
15341
+ import { TMarkerState } from '@mappedin/mappedin-js/maker/src/map-view-interface';
15342
+ export function convertCoordinateToPosition(coord: Coordinate): Position;
15343
+ export function convertPositionToCoordinate(coord: Position): Coordinate;
15344
+ export const cutEntracesFromLineStrings: (lineStrings: ObstructionCollection['features'], entranceCollection: EntranceCollection['features']) => Feature<MultiLineString, any>;
15345
+ export function translateLabelStateToGeojsonCore(state: Partial<TLabelState>, currentState: Partial<LabelState>): Partial<LabelState>;
15346
+ export function translateMarkerStateToGeojsonCore(state: Partial<TMarkerState>, currentState: Partial<MarkerState>): Partial<MarkerState>;
15347
+ export function translateSpaceStateToGeojsonCore(state: Partial<TGeometryState>, currentState: Partial<GeometryState>): Partial<GeometryState>;
15348
+ export function differenceBetweenAngles(a: number, b: number): number;
15349
+ export function getRelativeBearing(relativeBearingAngle: number, threshold: number): TDirectionInstructionAction['bearing'];
15350
+ export function convertCollisionRankingTeirToNumber(tier: CollisionRankingTier): number;
15351
+ export type AggregatedStyleMap = {
15352
+ [id: string]: StyleCollection[keyof StyleCollection];
15353
+ };
15354
+ export function extractStyleMap(styles: StyleCollection): AggregatedStyleMap;
15355
+ export function groupGeometryByStyle(features: Feature<LineString | Polygon | Point, SpaceProperties | ObstructionProperties>[], styleMap: AggregatedStyleMap): Map<PolygonStyle | LineStringStyle | PointStyle, Feature<Point | LineString | Polygon, ObstructionProperties | SpaceProperties>[]>;
15507
15356
  }
15508
15357