@evercam/api 1.0.0-83566a548 → 1.0.0-8906d0c61

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 (46) hide show
  1. package/dist/api/api/3dFirebaseApi.d.ts +166 -15
  2. package/dist/api/api/adminApi.d.ts +24 -2
  3. package/dist/api/api/aiApi.d.ts +6 -5
  4. package/dist/api/api/authzApi.d.ts +1 -2
  5. package/dist/api/api/evercamApi.d.ts +45 -3
  6. package/dist/api/api/evercamLabsApi.d.ts +1 -2
  7. package/dist/api/api/ingestApi.d.ts +44 -42
  8. package/dist/api/types/360.d.ts +55 -50
  9. package/dist/api/types/analytics.d.ts +62 -49
  10. package/dist/api/types/auditLogs.d.ts +18 -0
  11. package/dist/api/types/authz.d.ts +1 -0
  12. package/dist/api/types/axios.d.ts +3 -3
  13. package/dist/api/types/camera.d.ts +17 -26
  14. package/dist/api/types/comments.d.ts +8 -6
  15. package/dist/api/types/connector.d.ts +1 -0
  16. package/dist/api/types/copilot.d.ts +10 -5
  17. package/dist/api/types/detections.d.ts +3 -9
  18. package/dist/api/types/drone.d.ts +92 -3
  19. package/dist/api/types/gateReport.d.ts +6 -11
  20. package/dist/api/types/index.d.ts +4 -1
  21. package/dist/api/types/ingest.d.ts +16 -3
  22. package/dist/api/types/map.d.ts +12 -0
  23. package/dist/api/types/media.d.ts +1 -0
  24. package/dist/api/types/oauth.d.ts +62 -0
  25. package/dist/api/types/planner.d.ts +97 -0
  26. package/dist/api/types/project.d.ts +10 -5
  27. package/dist/api/types/recording.d.ts +3 -1
  28. package/dist/api/types/ring.d.ts +53 -0
  29. package/dist/api/types/roi.d.ts +2 -2
  30. package/dist/api/types/shared.d.ts +19 -0
  31. package/dist/api/types/siteAnalytics.d.ts +2 -2
  32. package/dist/api/types/siteView.d.ts +74 -0
  33. package/dist/api/types/snapshots.d.ts +35 -3
  34. package/dist/api/types/storageProvider.d.ts +19 -0
  35. package/dist/api/types/timelapse.d.ts +6 -2
  36. package/dist/api/types/user.d.ts +0 -1
  37. package/dist/index.js +1499 -905
  38. package/dist/index.js.map +1 -1
  39. package/dist/index.umd.cjs +1 -1
  40. package/dist/index.umd.cjs.map +1 -1
  41. package/dist/shared/types/components.d.ts +51 -9
  42. package/dist/shared/types/imagePlayer.d.ts +8 -1
  43. package/dist/shared/types/index.d.ts +1 -0
  44. package/dist/shared/types/rbac.d.ts +67 -0
  45. package/package.json +2 -2
  46. package/dist/api/types/storageServers.d.ts +0 -4
@@ -1,17 +1,106 @@
1
+ import { Point3D } from "@evercam/api/types/shared";
2
+ export type DroneCameraTransform = {
3
+ position: Point3D;
4
+ direction: Point3D;
5
+ up: Point3D;
6
+ right: Point3D;
7
+ };
1
8
  export type DroneModel = {
2
9
  cesiumId: string;
3
10
  cesiumId2D: string;
4
11
  date: string;
5
12
  cesiumPointCloudId: string;
13
+ cesiumGausianSplatId: string;
6
14
  pointSize: string;
7
15
  maximumScreenSpaceError: string;
8
16
  link: string;
9
17
  trueIndex: number;
10
18
  };
11
- export type DroneProjectJsonResponse = {
12
- models: DroneModel[];
13
- [key: string]: any;
19
+ export type DroneProjectTransform = {
20
+ initialCameraTransform?: DroneCameraTransform;
21
+ initial2DCameraTransform?: DroneCameraTransform;
22
+ blackListIds?: string;
23
+ markers?: Record<string, DroneMarker>;
24
+ imageryPlans?: Record<string, DroneImageryPlan>;
25
+ bimData?: DroneBimData;
26
+ terrainPoints?: Record<string, Point3D[]>;
27
+ projectWGS84Coordinates?: DroneProjectCoordinates | null;
28
+ tags?: Record<string, DroneTag>;
29
+ };
30
+ export type DroneProjectData = {
31
+ models?: DroneModel[];
32
+ integrationType?: DroneProvider;
33
+ origin?: string;
34
+ params?: Record<string, unknown>;
35
+ pointSize?: string;
36
+ };
37
+ export type DroneProjectDataPatch = {
38
+ models?: Record<number, Partial<DroneModel>>;
39
+ integrationType?: DroneProvider;
40
+ origin?: string;
41
+ params?: string;
42
+ };
43
+ export type DroneProjectCoordinates = {
44
+ lat: number | null;
45
+ lon: number | null;
46
+ alt: number | null;
47
+ };
48
+ export type DroneTransformPatch = {
49
+ projectWGS84Coordinates?: DroneProjectCoordinates | null;
50
+ };
51
+ export declare enum DroneTagType {
52
+ AerialShot = "AerialShot"
53
+ }
54
+ export type DroneTag<T extends DroneTagType = DroneTagType> = {
55
+ id?: number;
56
+ type: T;
57
+ comment: string;
58
+ position?: Point3D;
59
+ cameraTransform?: DroneCameraTransform;
60
+ creationDate: string;
61
+ hyperlink?: string;
62
+ height?: number;
63
+ };
64
+ export type AerialShotPoint = DroneTag<DroneTagType.AerialShot>;
65
+ export type DroneMarkerTransform = {
66
+ fovAngle: number;
67
+ fovRadius: number;
68
+ heading: number;
69
+ height: number;
70
+ latitude: string;
71
+ longitude: string;
72
+ pitch: number;
73
+ roll: number;
74
+ scale: number;
75
+ };
76
+ export declare enum DroneMarkerType {
77
+ Default = "Default",
78
+ Gate = "Gate",
79
+ Indoor = "Indoor"
80
+ }
81
+ export type DroneMarker = {
82
+ type: DroneMarkerType;
83
+ name: string;
84
+ cameraExid: string;
85
+ transform: DroneMarkerTransform;
86
+ };
87
+ export type DroneImageryPlan = {
88
+ cesiumId: number;
89
+ uuid: string;
90
+ name: string;
91
+ alpha: number;
92
+ order: number;
93
+ };
94
+ export type DroneBimData = {
95
+ cesiumId: string | null;
96
+ iModelId: string | null;
97
+ changeSetId: string | null;
98
+ isItwin: boolean;
14
99
  };
15
100
  export declare enum DroneUrlParams {
16
101
  Date = "date"
17
102
  }
103
+ export declare enum DroneProvider {
104
+ Evercam = "Evercam",
105
+ DroneDeploy = "DroneDeploy"
106
+ }
@@ -1,4 +1,4 @@
1
- import { AnprDirection, AnprEvent, CameraExid, DateType, PaginatedItems, PaginationParams, ProjectExid, RoiShapeType, Timestamp } from "@evercam/api/types";
1
+ import { AnprDirection, AnprEvent, CameraExid, DateType, PaginatedItems, PaginationParams, ProjectExid, RoiDirection, RoiShapeType, RoiType, Timestamp, TuplePoint2D } from "@evercam/api/types";
2
2
  export declare enum GateReportDetectionType {
3
3
  Auto = "auto",
4
4
  Manual = "manual",
@@ -259,23 +259,19 @@ export type AnprBasedGateReportExportRequestParams = AnprExportBaseParams & {
259
259
  export type LegacyAnprExportParams = AnprExportBaseParams & {
260
260
  direction?: AnprDirection;
261
261
  };
262
- type X1 = number;
263
- type Y1 = number;
264
- type X2 = number;
265
- type Y2 = number;
266
262
  export type GateReportROIShape = {
267
- coordinates: [[X1, Y1], [X2, Y2]];
263
+ coordinates: TuplePoint2D[];
268
264
  type: RoiShapeType;
269
265
  };
270
266
  export type GateReportROI = {
271
267
  cameraex?: string;
272
268
  fromDate?: string;
273
- directionFilter?: string;
269
+ directionFilter?: RoiDirection;
274
270
  id?: number;
275
271
  insertedAt?: Timestamp;
276
272
  isActive?: boolean;
277
273
  name?: string;
278
- roiType?: string;
274
+ roiType?: RoiType;
279
275
  updatedAt?: Timestamp;
280
276
  shapes?: GateReportROIShape[];
281
277
  };
@@ -318,7 +314,7 @@ export type RoisQueryParams = {
318
314
  id: number;
319
315
  name: string;
320
316
  fromDate: string;
321
- roiType: RoiShapeType;
317
+ roiType: RoiType;
322
318
  isActive: boolean;
323
319
  directionFilter: string;
324
320
  sort: string;
@@ -327,11 +323,10 @@ export type GateReportRoiRequestPayload = {
327
323
  id: number;
328
324
  cameraExid: string;
329
325
  name: string;
330
- roiType: string;
326
+ roiType: RoiType;
331
327
  isActive: true;
332
328
  fromDate: string;
333
329
  shapes: GateReportROIShape[];
334
330
  directionFilter: string;
335
331
  note: string;
336
332
  };
337
- export {};
@@ -30,7 +30,7 @@ export * from "./shares";
30
30
  export * from "./sim";
31
31
  export * from "./systemCheck";
32
32
  export * from "./planner";
33
- export * from "./storageServers";
33
+ export * from "./storageProvider";
34
34
  export * from "./streaming";
35
35
  export * from "./storyblok";
36
36
  export * from "./time";
@@ -59,4 +59,7 @@ export * from "./xweather";
59
59
  export * from "./posthog";
60
60
  export * from "./recycleBin";
61
61
  export * from "./authz";
62
+ export * from "./oauth";
63
+ export * from "./ring";
62
64
  export * from "./smartSeach";
65
+ export * from "./siteView";
@@ -1,4 +1,4 @@
1
- import { PaginationParams, DateType, JsonValue } from "@evercam/api/types";
1
+ import { PaginationParams, DateType, JsonValue, TuplePoint2D } from "@evercam/api/types";
2
2
  import type { _360FloorV2, _360WalkV2 } from "@evercam/api/types/360";
3
3
  export declare enum IngestProcessingStatus {
4
4
  Completed = "completed",
@@ -18,7 +18,12 @@ export declare enum IngestVersions {
18
18
  V1 = "v1",
19
19
  V2 = "v2",
20
20
  V3 = "v3",
21
- V4 = "v4"
21
+ V4 = "v4",
22
+ V5 = "v5"
23
+ }
24
+ export declare enum IngestTypes {
25
+ Drone = "drone",
26
+ ThreeSixty = "360"
22
27
  }
23
28
  export type DronesQueryParams = Omit<PaginationParams, "sort"> & {
24
29
  projectId: string;
@@ -65,11 +70,19 @@ export type DroneUploadUpdateRequestPayload = {
65
70
  title: string;
66
71
  fileExtension: string;
67
72
  }[];
73
+ aerialShots: {
74
+ url: string;
75
+ title: string;
76
+ fileExtension: string;
77
+ gpsLatitude: string;
78
+ gpsLongitude: string;
79
+ gpsAltitude: string;
80
+ }[];
68
81
  projectName: string;
69
82
  };
70
83
  export type CalculateMeasuringOperationRequestPayload = {
71
84
  date: DateType;
72
- points: [number, number][];
85
+ points: TuplePoint2D[];
73
86
  operation: string;
74
87
  };
75
88
  export type FlightImagesQueryParams = Partial<Omit<PaginationParams, "sort">> & {
@@ -2,3 +2,15 @@ export declare enum MapType {
2
2
  Hybrid = "hybrid",
3
3
  Terrain = "terrain"
4
4
  }
5
+ export type MapView = {
6
+ east?: number;
7
+ floorID?: string;
8
+ image?: string;
9
+ mapStyle?: MapType;
10
+ name: string;
11
+ north?: number;
12
+ projectId: string;
13
+ projectName: string;
14
+ south?: number;
15
+ west?: number;
16
+ };
@@ -25,6 +25,7 @@ export type Media = {
25
25
  projectExid?: string;
26
26
  thumbnailUrl?: string;
27
27
  mediaUrl?: string;
28
+ camera?: string;
28
29
  };
29
30
  export declare enum MediaType {
30
31
  EditedImage = "edit",
@@ -0,0 +1,62 @@
1
+ export type OAuthClient = {
2
+ id: number;
3
+ name: string;
4
+ clientId: string;
5
+ redirectUris: string[];
6
+ logoUrl: string | null;
7
+ scopes: string[];
8
+ active: boolean;
9
+ description: string | null;
10
+ owner: {
11
+ id: number;
12
+ name: string;
13
+ email: string;
14
+ } | null;
15
+ createdAt: string;
16
+ updatedAt: string;
17
+ };
18
+ export type OAuthClientWithSecret = OAuthClient & {
19
+ clientSecret: string;
20
+ };
21
+ export type CreateOAuthClientPayload = {
22
+ name: string;
23
+ redirectUris: string[];
24
+ scopes?: string[];
25
+ description?: string;
26
+ logoUrl?: string;
27
+ };
28
+ export type AdminCreateOAuthClientPayload = CreateOAuthClientPayload & {
29
+ clientId?: string;
30
+ clientSecret?: string;
31
+ };
32
+ export type UpdateOAuthClientPayload = {
33
+ name?: string;
34
+ redirectUris?: string[];
35
+ scopes?: string[];
36
+ description?: string;
37
+ logoUrl?: string;
38
+ active?: boolean;
39
+ };
40
+ export type OAuthScopeDetail = {
41
+ scope: string;
42
+ description: string;
43
+ group: string;
44
+ };
45
+ export type OAuthConsentInfo = {
46
+ client: {
47
+ name: string;
48
+ logoUrl: string | null;
49
+ description: string | null;
50
+ };
51
+ scopes: OAuthScopeDetail[];
52
+ };
53
+ export type OAuthConsentPayload = {
54
+ clientId: string;
55
+ scope: string;
56
+ redirectUri: string;
57
+ state: string;
58
+ decision: "allow" | "deny";
59
+ };
60
+ export type OAuthConsentResponse = {
61
+ redirectUrl: string;
62
+ };
@@ -1,3 +1,33 @@
1
+ import { GeoPoint, TuplePoint2D } from "./shared";
2
+ import { MapType } from "./map";
3
+ export type PlannerListItem = {
4
+ id: string;
5
+ projectId: string;
6
+ projectName: string;
7
+ projectLocation: string;
8
+ createdDate: string;
9
+ updatedDate: string;
10
+ owner?: string;
11
+ lastUpdatedBy?: string;
12
+ camerasCount?: number;
13
+ hasPlan?: boolean;
14
+ thumbnailUrl?: string;
15
+ projectMapType?: MapType;
16
+ sessionId?: string;
17
+ };
18
+ export type PolygonPath = TuplePoint2D[];
19
+ export type PolygonCoordinates = PolygonPath[];
20
+ export interface GeoJSONPolygon {
21
+ type: "Polygon";
22
+ coordinates: PolygonCoordinates;
23
+ }
24
+ export declare enum PlannerUrlParams {
25
+ SitePlanId = "site_plan_id",
26
+ IsNewSitePlan = "is_new_site_plan",
27
+ IsBoundsMode = "is_bounds_mode",
28
+ ProjectPosition = "project_position",
29
+ DealId = "deal_id"
30
+ }
1
31
  export declare enum EDistortImageModes {
2
32
  FreeRotate = "freeRotate",
3
33
  Lock = "lock",
@@ -33,3 +63,70 @@ export declare enum ERoles {
33
63
  Admin = "admin",
34
64
  User = "user"
35
65
  }
66
+ export type PlannerOverlay = {
67
+ imageUrl?: string;
68
+ corners?: {
69
+ topLeft: GeoPoint;
70
+ topRight: GeoPoint;
71
+ bottomLeft: GeoPoint;
72
+ bottomRight: GeoPoint;
73
+ } | null;
74
+ };
75
+ export type PlannerCameraMarker = {
76
+ name?: string;
77
+ location?: GeoPoint;
78
+ heading?: number;
79
+ fovAngle?: number;
80
+ fovRadius?: number;
81
+ isVisible?: boolean;
82
+ color?: string;
83
+ };
84
+ export type SitePlanBounds = {
85
+ northEast: GeoPoint;
86
+ southWest: GeoPoint;
87
+ };
88
+ export type SitePlan = {
89
+ id?: string;
90
+ projectId?: string;
91
+ owner?: string;
92
+ lastUpdatedBy?: string;
93
+ projectName?: string;
94
+ projectLocation?: string;
95
+ projectMapType?: EMapTypes;
96
+ projectBounds?: SitePlanBounds;
97
+ overlay?: PlannerOverlay;
98
+ markers?: PlannerCameraMarker[];
99
+ thumbnailUrl?: string;
100
+ createdDate?: string;
101
+ updatedDate?: string;
102
+ };
103
+ export interface IDrawControl {
104
+ _toolbars: {
105
+ draw: {
106
+ _activeMode: {
107
+ handler: {
108
+ disable(): void;
109
+ completeShape(): void;
110
+ };
111
+ };
112
+ _modes: {
113
+ polygon: {
114
+ handler: {
115
+ enable(): void;
116
+ };
117
+ };
118
+ };
119
+ };
120
+ edit: {
121
+ _modes: {
122
+ edit: {
123
+ handler: {
124
+ enable(): void;
125
+ disable(): void;
126
+ save(): void;
127
+ };
128
+ };
129
+ };
130
+ };
131
+ };
132
+ }
@@ -1,4 +1,4 @@
1
- import { AdminCamera, Camera, CameraExid, DateType, EntityByExid, Exid, PaginationParams } from "@evercam/api/types";
1
+ import { AdminCamera, Camera, CameraExid, DateType, EntityByExid, Exid, Operator, PaginationParams } from "@evercam/api/types";
2
2
  export type ProjectExid = Exid;
3
3
  export type ProjectsByExid = EntityByExid<Project>;
4
4
  export type Project = {
@@ -62,7 +62,8 @@ export declare enum ProjectArchiveTier {
62
62
  Full = "Full",
63
63
  Partial = "Partial",
64
64
  Minimal = "Minimal",
65
- ScheduledForDeletion = "Scheduled for Deletion"
65
+ ScheduledForDeletion = "Scheduled for Deletion",
66
+ No = "No"
66
67
  }
67
68
  export type UpdateCameraRestrictionPayload = {
68
69
  isAccessRestricted?: boolean;
@@ -91,8 +92,7 @@ export declare enum ProjectFeatureFlag {
91
92
  DefaultToProjectApp = "default_to_project_app",
92
93
  SmartSearch = "smart_search",
93
94
  PpeMonitoring = "ppe_monitoring",
94
- NoGdpr = "no_gdpr",
95
- NoLiveView = "no_live_view"
95
+ NoGdpr = "no_gdpr"
96
96
  }
97
97
  export type ProjectBatteryReading = {
98
98
  exid: number;
@@ -110,6 +110,7 @@ export type ProjectsQueryParams = PaginationParams & {
110
110
  status: ProjectStatus;
111
111
  cameras: string;
112
112
  featureFlags: Array<ProjectFeatureFlag>;
113
+ featureFlagsOperator?: Operator;
113
114
  archived: string;
114
115
  };
115
116
  export type ProjectCreateRequestPayload = {
@@ -164,6 +165,7 @@ export type ProjectRole = {
164
165
  };
165
166
  export type ProjectMember = {
166
167
  id: string;
168
+ key?: string;
167
169
  email: string;
168
170
  fullname: string;
169
171
  lastSeenAt?: string;
@@ -173,7 +175,9 @@ export type ProjectMember = {
173
175
  resourceId: string;
174
176
  roleId: number;
175
177
  }>;
176
- company?: string | null;
178
+ company?: {
179
+ name: string;
180
+ } | null;
177
181
  };
178
182
  export type ProjectInvite = {
179
183
  id?: string;
@@ -194,6 +198,7 @@ export type ProjectMembersResponsePayload = {
194
198
  export type ProjectMembersRequestPayload = {
195
199
  roleId: number;
196
200
  emails: string[];
201
+ message?: string;
197
202
  overrideRole?: Partial<{
198
203
  permissions?: string[];
199
204
  subRoles?: Array<{
@@ -76,6 +76,7 @@ export declare enum CloudRecordingDuration {
76
76
  Month = 30,
77
77
  ThreeMonths = 90
78
78
  }
79
+ export declare const CloudRecordingDurationLabel: Record<CloudRecordingDuration, string>;
79
80
  export declare enum CloudRecordingStatus {
80
81
  On = "on",
81
82
  Off = "off",
@@ -119,5 +120,6 @@ export declare enum VpnServer {
119
120
  WireGuard7 = "WireGuard7",
120
121
  WireGuard8 = "WireGuard8",
121
122
  WireGuard9 = "WireGuard9",
122
- WireGuard10 = "WireGuard10"
123
+ WireGuard10 = "WireGuard10",
124
+ WgHub = "WgHub"
123
125
  }
@@ -0,0 +1,53 @@
1
+ export type RingDevice = {
2
+ deviceId: string;
3
+ name: string;
4
+ deviceType: string;
5
+ firmwareVersion: string | null;
6
+ batteryLife: number | null;
7
+ location: string | null;
8
+ imported: boolean;
9
+ cameraExid?: string;
10
+ projectExid?: string;
11
+ projectName?: string;
12
+ };
13
+ export type RingDevicesResponsePayload = {
14
+ devices: RingDevice[];
15
+ };
16
+ export type RingImportDevicesPayload = {
17
+ deviceIds: string[];
18
+ projectExid: string;
19
+ deviceNames?: Record<string, string>;
20
+ };
21
+ export type RingImportResponsePayload = {
22
+ cameras: Array<{
23
+ exid: string;
24
+ name: string;
25
+ }>;
26
+ project: {
27
+ exid: string;
28
+ name: string;
29
+ };
30
+ };
31
+ export type RingMoveDevicePayload = {
32
+ projectExid: string;
33
+ };
34
+ export type RingMoveDeviceResponsePayload = {
35
+ status: string;
36
+ cameraExid: string;
37
+ projectExid: string;
38
+ };
39
+ export type RingLiveViewPayload = {
40
+ sdpOffer: string;
41
+ };
42
+ export type RingLiveViewResponse = {
43
+ sdpAnswer: string;
44
+ sessionUrl: string;
45
+ iceServers: Array<{
46
+ urls: string;
47
+ username?: string;
48
+ credential?: string;
49
+ }>;
50
+ };
51
+ export type RingStopLiveViewResponse = {
52
+ status: string;
53
+ };
@@ -9,8 +9,7 @@ export declare enum RoiShapeType {
9
9
  Polygon = "polygon",
10
10
  Line = "line",
11
11
  Direction = "direction",
12
- Rectangle = "rectangle",
13
- ROIBox = "ROIBox"
12
+ Rectangle = "rectangle"
14
13
  }
15
14
  export type RoiShape = {
16
15
  id: number | null;
@@ -19,6 +18,7 @@ export type RoiShape = {
19
18
  x2: number;
20
19
  y1: number;
21
20
  y2: number;
21
+ points?: [number, number][];
22
22
  };
23
23
  export declare enum RoiDirection {
24
24
  Arrived = "arrived",
@@ -1,4 +1,8 @@
1
1
  import { DateType } from "@evercam/api/types";
2
+ export declare enum Operator {
3
+ AND = "and",
4
+ OR = "or"
5
+ }
2
6
  type sortby = string;
3
7
  type sortDirection = "asc" | "desc";
4
8
  export type SortingUrlParam = `${sortby}|${sortDirection}`;
@@ -133,6 +137,21 @@ export interface JSON {
133
137
  stringify<T>(value: T, replacer?: (key: string, value: unknown) => unknown, space?: string | number): string & Stringified<T>;
134
138
  parse<T>(text: Stringified<T>, reviver?: (key: unknown, value: unknown) => unknown): T;
135
139
  }
140
+ export type TuplePoint2D = [number, number];
141
+ export type TuplePoint3D = [number, number, number];
142
+ export type Point2D = {
143
+ x: number;
144
+ y: number;
145
+ };
146
+ export type Point3D = {
147
+ x: number;
148
+ y: number;
149
+ z: number;
150
+ };
151
+ export type GeoPoint = {
152
+ lat: number;
153
+ lng: number;
154
+ };
136
155
  export type Exid = string;
137
156
  export type EntityByExid<Entity extends unknown> = Record<Exid, Entity>;
138
157
  export type BatteryVoltage = {
@@ -1,4 +1,4 @@
1
- import { BBox, BoundingBox, DateType, Schedule, ScheduleLowercase, CameraExid, DetectionModel, PaginationParams, PpeLabel, ProjectExid, CameraDateRangeFilter, CameraFeatureFlag, TimelineDateInterval, Camera, AdminCamera, _360FloorV2, _360FloorId, PaginatedItems, DateRangeFilter } from "@evercam/api/types";
1
+ import { BBox, BoundingBox, DateType, Schedule, ScheduleLowercase, CameraExid, DetectionModel, PaginationParams, PpeLabel, ProjectExid, CameraDateRangeFilter, CameraFeatureFlag, TimelineDateInterval, Camera, AdminCamera, _360FloorV2, _360FloorId, PaginatedItems, DateRangeFilter, TuplePoint2D } from "@evercam/api/types";
2
2
  import { DetectionLabel, DownloadFileType } from "@evercam/api/types";
3
3
  export declare enum SiteAnalyticsMode {
4
4
  Detections = "detections",
@@ -184,7 +184,7 @@ export type DetectionsExportRequestParams = DetectionsRequestParams & {
184
184
  directDownload?: boolean;
185
185
  };
186
186
  export type SmartSearchHeatmapPoint = {
187
- coordinates: [number, number];
187
+ coordinates: TuplePoint2D;
188
188
  detectionsCount: number;
189
189
  };
190
190
  export type SmartSearchHeatmapData = {
@@ -0,0 +1,74 @@
1
+ import { ForgeView } from "@evercam/api/types/360";
2
+ import { Point2D, Point3D } from "@evercam/api/types/shared";
3
+ export declare enum SiteViewSoftwareType {
4
+ Revit = "Revit",
5
+ Navisworks = "Navisworks",
6
+ Drone = "Drone",
7
+ Synchro = "Synchro"
8
+ }
9
+ export declare enum SiteViewerType {
10
+ ITwin = "iTwin",
11
+ Cesium = "Cesium",
12
+ Forge = "Forge"
13
+ }
14
+ export type SiteViewCameraListItem = {
15
+ projectId: string;
16
+ projectName: string;
17
+ software: SiteViewSoftwareType;
18
+ type: SiteViewerType;
19
+ uniqueId: string;
20
+ integrationType?: string;
21
+ };
22
+ export type ForgeUrn = {
23
+ displayName: string;
24
+ urn: string;
25
+ isModelHostedByEvercamACC?: boolean;
26
+ };
27
+ export type ForgeAccAlignmentData = {
28
+ bbox: {
29
+ min: Point2D;
30
+ max: Point2D;
31
+ };
32
+ transform: number[];
33
+ };
34
+ export type TimelineItem = {
35
+ taskNumber: number;
36
+ taskID: string;
37
+ actualStartDate: string;
38
+ actualEndDate: string;
39
+ plannedStartDate: string;
40
+ plannedEndDate: string;
41
+ objectIDs: number[];
42
+ };
43
+ export type ForgeMarkerTransform = {
44
+ default: {
45
+ position: Point3D;
46
+ type: string;
47
+ };
48
+ };
49
+ export type ForgeMarker = {
50
+ name: string;
51
+ cameraExid: string;
52
+ transforms: ForgeMarkerTransform;
53
+ };
54
+ export type ForgeProjectData = {
55
+ urns?: ForgeUrn[];
56
+ isEvercamAccount?: boolean;
57
+ accDrawingsAlignments?: Record<string, ForgeAccAlignmentData>;
58
+ timeline?: TimelineItem[];
59
+ savedView?: ForgeView;
60
+ markers?: ForgeMarker[];
61
+ };
62
+ export type ItwinModel = {
63
+ name: string;
64
+ iTwinId: string;
65
+ iModelId: string;
66
+ changeSetId?: string;
67
+ isIModel: boolean;
68
+ height?: number;
69
+ cesiumId?: number;
70
+ markerDistanceThreshold: number;
71
+ };
72
+ export type ItwinProjectData = {
73
+ models: ItwinModel[];
74
+ };