@evercam/api 1.0.0-9a767ebbe → 1.0.0-9c3cd2ae7

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 (55) hide show
  1. package/README.md +1 -0
  2. package/dist/api/api/3dFirebaseApi.d.ts +60 -27
  3. package/dist/api/api/adminApi.d.ts +19 -15
  4. package/dist/api/api/aiApi.d.ts +60 -2
  5. package/dist/api/api/authzApi.d.ts +4 -1
  6. package/dist/api/api/evercamApi.d.ts +29 -8
  7. package/dist/api/api/evercamLabsApi.d.ts +5 -5
  8. package/dist/api/api/ingestApi.d.ts +13 -3
  9. package/dist/api/types/360.d.ts +142 -4
  10. package/dist/api/types/aiConfigs.d.ts +154 -0
  11. package/dist/api/types/analytics.d.ts +34 -11
  12. package/dist/api/types/anpr.d.ts +31 -2
  13. package/dist/api/types/auditLogs.d.ts +18 -0
  14. package/dist/api/types/authz.d.ts +46 -0
  15. package/dist/api/types/axios.d.ts +8 -5
  16. package/dist/api/types/bim.d.ts +26 -1
  17. package/dist/api/types/camera.d.ts +8 -3
  18. package/dist/api/types/comments.d.ts +10 -7
  19. package/dist/api/types/connector.d.ts +2 -0
  20. package/dist/api/types/detections.d.ts +3 -10
  21. package/dist/api/types/drone.d.ts +6 -5
  22. package/dist/api/types/errors.d.ts +11 -0
  23. package/dist/api/types/gateReport.d.ts +1 -0
  24. package/dist/api/types/gateReportManagement.d.ts +175 -0
  25. package/dist/api/types/hammertech.d.ts +98 -0
  26. package/dist/api/types/index.d.ts +6 -0
  27. package/dist/api/types/ingest.d.ts +15 -3
  28. package/dist/api/types/kit.d.ts +38 -2
  29. package/dist/api/types/media.d.ts +8 -2
  30. package/dist/api/types/notification.d.ts +12 -2
  31. package/dist/api/types/observations.d.ts +85 -0
  32. package/dist/api/types/planner.d.ts +2 -3
  33. package/dist/api/types/posthog.d.ts +20 -0
  34. package/dist/api/types/recording.d.ts +5 -9
  35. package/dist/api/types/roi.d.ts +2 -1
  36. package/dist/api/types/routeParams.d.ts +1 -0
  37. package/dist/api/types/shared.d.ts +1 -0
  38. package/dist/api/types/siteAnalytics.d.ts +3 -3
  39. package/dist/api/types/siteAnalyticsManagement.d.ts +92 -0
  40. package/dist/api/types/siteView.d.ts +0 -1
  41. package/dist/api/types/snapshots.d.ts +13 -0
  42. package/dist/api/types/socket.d.ts +4 -0
  43. package/dist/api/types/timelapse.d.ts +2 -6
  44. package/dist/api/types/user.d.ts +1 -4
  45. package/dist/api/utils.d.ts +0 -1
  46. package/dist/index.js +1272 -806
  47. package/dist/index.js.map +1 -1
  48. package/dist/index.umd.cjs +1 -1
  49. package/dist/index.umd.cjs.map +1 -1
  50. package/dist/shared/types/components.d.ts +78 -5
  51. package/dist/shared/types/customDataTableFilters.d.ts +10 -0
  52. package/dist/shared/types/imagePlayer.d.ts +8 -1
  53. package/dist/shared/types/index.d.ts +2 -0
  54. package/dist/shared/types/observations.d.ts +21 -0
  55. package/package.json +4 -2
@@ -92,6 +92,8 @@ export type _360WalkV2 = {
92
92
  processingStatus: string;
93
93
  projectId: string;
94
94
  report: string;
95
+ processingLog: string;
96
+ hasSteps?: boolean;
95
97
  route: unknown | null;
96
98
  startPosition: unknown | null;
97
99
  tusLinks: unknown | null;
@@ -100,6 +102,29 @@ export type _360WalkV2 = {
100
102
  videoArchive: string;
101
103
  videos: string[];
102
104
  };
105
+ export type _360ProcessingStep = {
106
+ name: string;
107
+ tool: string | null;
108
+ status: string;
109
+ startedAt: string | null;
110
+ endedAt: string | null;
111
+ durationSec: number | null;
112
+ durationPct: number | null;
113
+ detail: Record<string, unknown>;
114
+ };
115
+ export type _360ProgressResponse = {
116
+ available: boolean;
117
+ processingStatus: string;
118
+ status: string | null;
119
+ currentStep: string | null;
120
+ startedAt: string | null;
121
+ steps: _360ProcessingStep[];
122
+ footprint?: _360Footprint | null;
123
+ };
124
+ export type _360Footprint = {
125
+ disk: Record<string, number>;
126
+ peak: Record<string, number>;
127
+ };
103
128
  export type _360FloorV2 = {
104
129
  id: _360FloorId;
105
130
  assets: _360WalkV2[];
@@ -112,10 +137,11 @@ export type _360FloorV2 = {
112
137
  overlayPosition: _360OverlayPosition;
113
138
  insertedAt: string;
114
139
  updatedAt: string;
140
+ deletedAt: string | null;
115
141
  };
116
142
  export type _360Scene = {
117
143
  date: string;
118
- dateID: number;
144
+ dateID: string | number;
119
145
  floors: {
120
146
  floorID: _360FloorId;
121
147
  name: string;
@@ -181,12 +207,23 @@ export type MobileCaptureSnapshot = {
181
207
  thumbnailUrl: string;
182
208
  };
183
209
  export declare enum _360UrlParams {
184
- DateId = "date_id",
210
+ DateId = "dateId",
185
211
  Date = "date",
186
212
  Floor = "floor",
187
213
  Marker = "marker",
188
214
  PolarAngle = "polarAngle",
189
- AzimuthAngle = "azimuthAngle"
215
+ AzimuthAngle = "azimuthAngle",
216
+ Zoom = "zoom",
217
+ User = "user",
218
+ ViewerMode = "viewer_mode",
219
+ ProjectId = "projectId",
220
+ Unit = "unit",
221
+ LockDate = "lockDate",
222
+ LockFloor = "lockFloor",
223
+ LockMarker = "lockMarker",
224
+ IsWidget = "isWidget",
225
+ MediaLocked = "mediaLocked",
226
+ Debug = "debug"
190
227
  }
191
228
  export declare enum _360AssetType {
192
229
  Video = "video",
@@ -220,7 +257,7 @@ export declare enum PathMarkerColor {
220
257
  export type _360AssetsQueryParams = {
221
258
  page: number;
222
259
  limit: number;
223
- projectID: string;
260
+ projectId: string;
224
261
  date: DateType;
225
262
  floor: string;
226
263
  id: string;
@@ -243,6 +280,7 @@ export type DrawingsRequestPayload = {
243
280
  limit?: number;
244
281
  paginate?: boolean;
245
282
  withAsset?: boolean;
283
+ includeDeleted?: boolean;
246
284
  };
247
285
  export type GenerateFloorPayload = {
248
286
  overlay?: {
@@ -278,4 +316,104 @@ export type Generate360MapRequestPayload = {
278
316
  cameraOffset: string;
279
317
  startPoint: string;
280
318
  endPoint: string;
319
+ drawingId?: number;
320
+ markers?: Array<{
321
+ position: {
322
+ x: number;
323
+ y: number;
324
+ z: number;
325
+ };
326
+ }>;
327
+ startPointIndex?: number;
328
+ endPointIndex?: number;
329
+ };
330
+ export declare enum EModelsType {
331
+ FBX = "FBX",
332
+ PointCloud = "PLY"
333
+ }
334
+ export type _360FloorRef = {
335
+ projectID: string;
336
+ dateID: string;
337
+ floorID: string;
338
+ };
339
+ export type _360Vector3 = {
340
+ x: number;
341
+ y: number;
342
+ z: number;
343
+ };
344
+ export type _360MarkerData = {
345
+ cameraPosition: _360Vector3;
346
+ nextRoomId: string;
347
+ position: _360Vector3;
348
+ geolocation?: {
349
+ latitude: number;
350
+ longitude: number;
351
+ };
352
+ rotation: {
353
+ _order: string;
354
+ _x: number;
355
+ _y: number;
356
+ _z: number;
357
+ isEuler: boolean;
358
+ };
359
+ };
360
+ export type _360Route = {
361
+ overlayID?: number;
362
+ track?: string;
363
+ cameraHeadingOffset?: number;
364
+ };
365
+ export type _360CalibrationDetails = {
366
+ baseOriginOf360Viewer?: _360Vector3;
367
+ baseOriginOfForgeViewer?: _360Vector3;
368
+ rotationMatrix?: {
369
+ elements: number[];
370
+ };
371
+ scaleMatrix?: {
372
+ elements: number[];
373
+ };
374
+ };
375
+ export type _360FloorData = {
376
+ _3DMarkers: _360MarkerData[];
377
+ fbxModel: string | null;
378
+ fbxModelHQ: string | null;
379
+ pointCloudModelHQ: string | null;
380
+ initialMarker: string;
381
+ cameraRotation: _360CameraRotation;
382
+ steps: number;
383
+ route: _360Route | null;
384
+ sceneScale: number;
385
+ modelViewerFeatureFlag: boolean;
386
+ imagesOnlyFeatureFlag: boolean;
387
+ forgeBIMFeatureFlag: boolean;
388
+ isForgeGravityEnabled: boolean;
389
+ initialForgeView: Record<string, unknown> | null;
390
+ calibrationDetails: _360CalibrationDetails;
391
+ enhancedLightFeatureFlag: boolean;
392
+ };
393
+ export type _360PinData = {
394
+ position: _360Vector3;
395
+ pinType: string;
396
+ name: string;
397
+ pinId?: string;
398
+ cameraExid?: string;
399
+ currentRoom?: string;
400
+ cameraRotation?: {
401
+ polarAngle: number;
402
+ azimuthAngle: number;
403
+ };
404
+ };
405
+ export type _360ForgeTimelineItem = {
406
+ taskNumber: number;
407
+ taskID: string;
408
+ actualStartDate: string;
409
+ actualEndDate: string;
410
+ plannedStartDate: string;
411
+ plannedEndDate: string;
412
+ objectIDs: number[];
413
+ };
414
+ export type _360ForgeProject = {
415
+ urns?: Array<{
416
+ urn: string;
417
+ }>;
418
+ timeline?: _360ForgeTimelineItem[];
281
419
  };
@@ -0,0 +1,154 @@
1
+ export declare enum AiApp {
2
+ GateReport = "gate_report",
3
+ Ppe = "ppe",
4
+ SiteAnalytics = "site_analytics"
5
+ }
6
+ export declare enum AiProvider {
7
+ Gemini = "gemini",
8
+ OpenAi = "openai",
9
+ Anthropic = "anthropic"
10
+ }
11
+ export declare enum AiConfigsPromptDialogMode {
12
+ Create = "create",
13
+ Edit = "edit",
14
+ View = "view"
15
+ }
16
+ export declare enum AiConfigsKeyDialogMode {
17
+ Create = "create",
18
+ Rotate = "rotate",
19
+ Rename = "rename"
20
+ }
21
+ export interface AiAppConfig {
22
+ bg: string;
23
+ fg: string;
24
+ border: string;
25
+ icon: string;
26
+ }
27
+ export declare const AI_APP_CONFIGS: Record<AiApp | "generic", AiAppConfig>;
28
+ export interface AiProviderConfig {
29
+ bg: string;
30
+ fg: string;
31
+ icon: string;
32
+ }
33
+ export declare const AI_PROVIDER_CONFIGS: Record<AiProvider, AiProviderConfig>;
34
+ export declare enum AiPromptModel {
35
+ Gemini3Pro = "gemini-3-pro",
36
+ Gemini3FlashPreview = "gemini-3-flash-preview",
37
+ Gemini25Pro = "gemini-2.5-pro",
38
+ Gemini25Flash = "gemini-2.5-flash",
39
+ Gemini20Flash = "gemini-2.0-flash",
40
+ Gpt5 = "gpt-5",
41
+ Gpt5Mini = "gpt-5-mini",
42
+ Gpt4o = "gpt-4o",
43
+ Gpt4oMini = "gpt-4o-mini",
44
+ ClaudeOpus45 = "claude-opus-4-5",
45
+ ClaudeSonnet46 = "claude-sonnet-4-6",
46
+ ClaudeHaiku45 = "claude-haiku-4-5"
47
+ }
48
+ export interface AiPrompt {
49
+ id: number;
50
+ title: string | null;
51
+ purpose: string | null;
52
+ app: string | null;
53
+ model: string | null;
54
+ prompt: string;
55
+ outputSchema: Record<string, unknown> | null;
56
+ createdBy: string;
57
+ createdAt: string;
58
+ updatedAt: string;
59
+ }
60
+ export interface AiPromptCreatePayload {
61
+ title?: string | null;
62
+ purpose: string;
63
+ app: string;
64
+ model?: string | null;
65
+ prompt: string;
66
+ outputSchema?: Record<string, unknown> | null;
67
+ }
68
+ export interface AiPromptUpdatePayload {
69
+ title?: string | null;
70
+ purpose?: string;
71
+ app?: string;
72
+ model?: string | null;
73
+ prompt?: string;
74
+ outputSchema?: Record<string, unknown> | null;
75
+ }
76
+ export type AiPromptQueryParams = {
77
+ app?: string;
78
+ purpose?: string;
79
+ model?: string;
80
+ search?: string;
81
+ createdBy?: string;
82
+ page?: number;
83
+ limit?: number;
84
+ };
85
+ export interface AiPromptListResponse {
86
+ items: AiPrompt[];
87
+ total: number;
88
+ page: number;
89
+ limit: number;
90
+ from: number;
91
+ to: number;
92
+ }
93
+ export interface AiPromptCreateResponse {
94
+ created: boolean;
95
+ data: AiPrompt;
96
+ message: string;
97
+ }
98
+ export interface AiPromptUpdateResponse {
99
+ updated: boolean;
100
+ id: number | string;
101
+ message: string;
102
+ }
103
+ export interface AiPromptDeleteResponse {
104
+ deleted: boolean;
105
+ count: number;
106
+ message: string;
107
+ }
108
+ export interface AiApiKey {
109
+ id: number;
110
+ projectExid: string;
111
+ provider: string;
112
+ name: string;
113
+ purpose: string;
114
+ enabled: boolean;
115
+ autoGenerated: boolean;
116
+ firstUsedAt: string | null;
117
+ lastUsedAt: string | null;
118
+ insertedAt: string;
119
+ updatedAt: string;
120
+ }
121
+ export interface AiApiKeyCreatePayload {
122
+ projectExid: string;
123
+ provider: string;
124
+ name?: string;
125
+ purpose?: string;
126
+ apiKey?: string;
127
+ enabled?: boolean;
128
+ }
129
+ export interface AiApiKeyUpdatePayload {
130
+ name?: string;
131
+ enabled?: boolean;
132
+ apiKey?: string;
133
+ }
134
+ export type AiApiKeyQueryParams = {
135
+ projectExid?: string;
136
+ provider?: string;
137
+ purpose?: string;
138
+ enabled?: boolean;
139
+ };
140
+ export interface AiApiKeyCreateResponse {
141
+ created: boolean;
142
+ data: AiApiKey;
143
+ message: string;
144
+ }
145
+ export interface AiApiKeyUpdateResponse {
146
+ updated: boolean;
147
+ id: number | string;
148
+ message: string;
149
+ }
150
+ export interface AiApiKeyDeleteResponse {
151
+ deleted: boolean;
152
+ count: number;
153
+ message: string;
154
+ }
@@ -79,6 +79,9 @@ export declare enum AnalyticsEvent {
79
79
  SettingsConnectorsRemoveVoyageControlConnection = "RemoveVoyageControl",
80
80
  SettingsConnectorsToggleConnectorPromptDialog = "ToggleConnectorPromptDialog",
81
81
  SettingsConnectorsToggleVoyageControlDialog = "ToggleVoyageControlDialog",
82
+ SettingsConnectorsConnectToHammertech = "ConnectToHammertech",
83
+ SettingsConnectorsRemoveHammertechConnection = "RemoveHammertech",
84
+ SettingsConnectorsToggleHammertechDialog = "ToggleHammertechDialog",
82
85
  WidgetsSelectTypeThreeSixty = "Widgets-SelectType360",
83
86
  WidgetsSelectProject = "SelectProject",
84
87
  WidgetsSelect360Date = "Select360Date",
@@ -192,6 +195,7 @@ export declare enum AnalyticsEvent {
192
195
  XraySendToConnectorProcoreObservations = "Xray-SendToConnector-Procore-Observations",
193
196
  XraySendToConnectorAconex = "Xray-SendToConnector-Aconex",
194
197
  XraySendToConnectorAutodesk = "Xray-SendToConnector-Autodesk",
198
+ XraySendToConnectorHammerTech = "Xray-SendToConnector-HammerTech",
195
199
  WeatherGoBackDate = "Weather-GoBackDate",
196
200
  WeatherGoForwardDate = "Weather-GoForwardDate",
197
201
  WeatherReportExportFile = "ExportFile",
@@ -261,6 +265,9 @@ export declare enum AnalyticsEvent {
261
265
  MarkUpToolSendToConnectorProcoreObservations = "MarkUpTool-SendToConnector-Procore-Observations",
262
266
  MarkUpToolSendToConnectorAconex = "MarkUpTool-SendToConnector-Aconex",
263
267
  MarkUpToolSendToConnectorAutodesk = "MarkUpTool-SendToConnector-Autodesk",
268
+ MarkUpToolSendToConnectorHammerTech = "MarkUpTool-SendToConnector-HammerTech",
269
+ MarkUpToolSendViaEmail = "MarkUpTool-SendViaEmail",
270
+ MarkUpToolSendViaEmailSent = "MarkUpTool-SendViaEmail-Sent",
264
271
  RecordingsCancelExportDialog = "CancelExportDialog",
265
272
  RecordingsClickSupportLink = "ClickSupportLink",
266
273
  RecordingsCreateClip = "CreateClip",
@@ -282,16 +289,6 @@ export declare enum AnalyticsEvent {
282
289
  SharingSortBy = "SortBy",
283
290
  SharingChangeAccessRight = "ChangeAccessRight",
284
291
  ThreeSixtyGallery = "Gallery",
285
- ThreeSixtyGalleryFilterAssetTypes = "Gallery-FilterAssetTypes",
286
- ThreeSixtyGalleryFilterDateRange = "Gallery-FilterDateRange",
287
- ThreeSixtyGalleryFilterFeatures = "Gallery-FilterFeatures",
288
- ThreeSixtyGalleryFilterFloorName = "Gallery-FilterFloorName",
289
- ThreeSixtyGalleryFilterUploadedBy = "Gallery-FilterUploadedBy",
290
- ThreeSixtyGalleryTimelineSelectMilestoneItem = "Gallery-TimelineSelectMilestoneItem",
291
- ThreeSixtyGalleryTimelineDateClick = "Gallery-TimelineDateClick",
292
- ThreeSixtyGalleryToggleUploadDialog = "Gallery-ToggleUploadDialog",
293
- ThreeSixtyGalleryUpdateFloorName = "Gallery-UpdateFloorName",
294
- ThreeSixtyGalleryEditWalkName = "Gallery-EditWalkName",
295
292
  ThreeSixtyChangeDate = "ChangeDate",
296
293
  ThreeSixtyChangeFloor = "ChangeFloor",
297
294
  ThreeSixtyCloseCompare = "CloseCompare",
@@ -300,6 +297,7 @@ export declare enum AnalyticsEvent {
300
297
  ThreeSixtyDisableMeasuringTool = "DisableMeasuringTool",
301
298
  ThreeSixtyDisableCommnetTool = "DisableCommentTool",
302
299
  ThreeSixtyEnableMeasuringTool = "EnableMeasuringTool",
300
+ ThreeSixtyMeasuringPerformed = "measuring_performed",
303
301
  ThreeSixtyEnableCommentTool = "EnableCommentTool",
304
302
  ThreeSixtyLockCompare = "LockCompare",
305
303
  ThreeSixtyLockForgeBIM = "LockForgeBIM",
@@ -310,6 +308,7 @@ export declare enum AnalyticsEvent {
310
308
  ThreeSixtyOpenForgeBIM = "OpenForgeBIM",
311
309
  ThreeSixtyOpenMarkersThumbnailsList = "OpenMarkersThumbnailsList",
312
310
  ThreeSixtyOpenCommentsList = "OpenCommentsList",
311
+ ThreeSixtyGalleryEditWalkName = "Gallery-EditWalkName",
313
312
  ThreeSixtySaveComment = "SaveComment",
314
313
  ThreeSixtyUnarchiveComment = "UnarchiveComment",
315
314
  ThreeSixtyArchiveComment = "ArchiveComment",
@@ -319,6 +318,7 @@ export declare enum AnalyticsEvent {
319
318
  ThreeSixtyToggleMinimapVisibility = "ToggleMinimapVisibility",
320
319
  ThreeSixtyToggleMiniModel = "ToggleMiniModel",
321
320
  ThreeSixtyToggleCommentsVisibility = "ToggleCommentsVisibility",
321
+ ThreeSixtyToggleCameraPinsVisibility = "toggle_camera_pins_visibility",
322
322
  ThreeSixtyTourPause = "Tour-Pause",
323
323
  ThreeSixtyTourPlay = "Tour-Play",
324
324
  ThreeSixtyTourSetSpeedXHalve = "Tour-SetSpeedX0.5",
@@ -359,6 +359,7 @@ export declare enum AnalyticsEvent {
359
359
  DroneToggleMapStyle = "ToggleMapStyle",
360
360
  DroneTogglePointCloud = "TogglePointCloud",
361
361
  DroneToggleGaussianSplat = "ToggleGaussianSplat",
362
+ DroneToggleGlobe = "ToggleGlobe",
362
363
  DroneToggleQualityMode = "ChooseQuality",
363
364
  DroneToggleSideMenu = "ToggleSideMenu",
364
365
  DroneToggleImageryPlan = "ToggleImageryPlan",
@@ -405,6 +406,7 @@ export declare enum AnalyticsEvent {
405
406
  DrawingClickHome = "ClickHome",
406
407
  DrawingsUploadDrawing = "UploadDrawing",
407
408
  DrawingsCreateDrawing = "CreateDrawing",
409
+ DrawingsDeleteDrawing = "DeleteDrawing",
408
410
  DrawingToggleMapStyle = "ToggleMapStyle",
409
411
  DrawingToggleMapLabels = "ToggleMapLabels",
410
412
  DrawingToggleCamerasLabels = "ToggleCamerasLabels",
@@ -593,5 +595,26 @@ export declare enum AnalyticsEvent {
593
595
  AskAIClickVoice = "AskAI-ClickVoice",
594
596
  AskAIClickFullscreen = "AskAI-ClickFullscreen",
595
597
  AskAIExitFullscreen = "AskAI-ExitFullscreen",
596
- AskAICloseChat = "AskAI-CloseChat"
598
+ AskAICloseChat = "AskAI-CloseChat",
599
+ ForgeBimAddModelButtonClicked = "ForgeBim-AddModelButtonClicked",
600
+ ForgeBimUploadChoiceDialogOpened = "ForgeBim-UploadChoiceDialogOpened",
601
+ ForgeBimModelAddMethodSelected = "ForgeBim-ModelAddMethodSelected",
602
+ ForgeBimUploadChoiceDialogDismissed = "ForgeBim-UploadChoiceDialogDismissed",
603
+ ForgeBimLocalModelFileSelected = "ForgeBim-LocalModelFileSelected",
604
+ ForgeBimLocalModelFileRejected = "ForgeBim-LocalModelFileRejected",
605
+ ForgeBimUploadModelFileToIngestStarted = "ForgeBim-UploadModelFileToIngestStarted",
606
+ ForgeBimUploadModelFileToIngestCompleted = "ForgeBim-UploadModelFileToIngestCompleted",
607
+ ForgeBimUploadModelFileToIngestFailed = "ForgeBim-UploadModelFileToIngestFailed",
608
+ ForgeBimAccModelSelectorOpened = "ForgeBim-AccModelSelectorOpened",
609
+ ForgeBimAccModelSelectorDismissed = "ForgeBim-AccModelSelectorDismissed",
610
+ ForgeBimAccModelConfirmed = "ForgeBim-AccModelConfirmed",
611
+ ForgeBimModelDuplicateDetected = "ForgeBim-ModelDuplicateDetected",
612
+ ForgeBimUpdateModelButtonClicked = "ForgeBim-UpdateModelButtonClicked",
613
+ ForgeBimReplaceModelWarningOpened = "ForgeBim-ReplaceModelWarningOpened",
614
+ ForgeBimReplaceModelConfirmed = "ForgeBim-ReplaceModelConfirmed",
615
+ ForgeBimReplaceModelCancelled = "ForgeBim-ReplaceModelCancelled",
616
+ ForgeBimModelAdded = "ForgeBim-ModelAdded",
617
+ ForgeBimModelUpdated = "ForgeBim-ModelUpdated",
618
+ ForgeBimModelSaveFailed = "ForgeBim-ModelSaveFailed",
619
+ ForgeBimIngestNotificationFailed = "ForgeBim-IngestNotificationFailed"
597
620
  }
@@ -104,11 +104,40 @@ export declare enum AnprEventStatus {
104
104
  export type AnprBulkUpdateRequestPayload = {
105
105
  anprEventsIds: number[];
106
106
  action: AnprEventStatus;
107
- updatedBy: string;
108
107
  };
109
108
  export type AnprUpdateRequestPayload = {
110
109
  plateNumber: string;
111
110
  vehicleType: GateReportVehicleType;
112
111
  direction: AnprDirection;
113
- updatedBy: string;
112
+ };
113
+ export declare enum AnprExtractionStatus {
114
+ Pending = "pending",
115
+ Running = "running",
116
+ Completed = "completed",
117
+ Failed = "failed"
118
+ }
119
+ export declare enum AnprExtractionSaveMode {
120
+ All = "all",
121
+ AiDbOnly = "ai_db_only",
122
+ ImagesOnly = "images_only"
123
+ }
124
+ export type AnprExtraction = {
125
+ id: number;
126
+ cameraId: number;
127
+ userId: number | null;
128
+ startDate: string;
129
+ endDate: string;
130
+ status: AnprExtractionStatus;
131
+ totalRecords: number;
132
+ error: string | null;
133
+ saveMode: AnprExtractionSaveMode;
134
+ startedAt: string | null;
135
+ completedAt: string | null;
136
+ insertedAt: string;
137
+ updatedAt: string;
138
+ };
139
+ export type AnprExtractionCreatePayload = {
140
+ startDate: string;
141
+ endDate: string;
142
+ saveMode?: AnprExtractionSaveMode;
114
143
  };
@@ -33,6 +33,24 @@ export declare enum AuditLogActionType {
33
33
  BIM_NOTE = "bim_note",
34
34
  GATE_REPORT_NOTE = "gate_report_note"
35
35
  }
36
+ export declare enum AuditLogEntity {
37
+ Cameras = "cameras",
38
+ Projects = "projects",
39
+ Layers = "layers",
40
+ Routers = "routers",
41
+ Sims = "sims",
42
+ Hdds = "hdds",
43
+ Nvr = "nvr",
44
+ Archives = "archives",
45
+ Users = "users",
46
+ Rois = "rois",
47
+ Kits = "kits",
48
+ Roles = "roles",
49
+ Tags = "tags",
50
+ KitsTags = "kits_tags",
51
+ Oauth = "oauth",
52
+ StorageProviders = "storage_providers"
53
+ }
36
54
  export type AuditLog = {
37
55
  id: number;
38
56
  action: AuditLogActionType;
@@ -3,6 +3,10 @@ export declare enum RoleResourceType {
3
3
  Camera = "camera",
4
4
  Project = "project"
5
5
  }
6
+ export declare enum RoleAssignmentLogAction {
7
+ Assign = "assign",
8
+ Unassign = "unassign"
9
+ }
6
10
  export type RoleSubRole = {
7
11
  resourceId: string;
8
12
  roleId: number;
@@ -59,3 +63,45 @@ export type AuthzScopeCreatePayload = {
59
63
  export type AuthzScopeUpdatePayload = Partial<AuthzScopeCreatePayload>;
60
64
  export declare function isProjectRole(role: Role): role is ProjectResourceRole;
61
65
  export declare function isCameraRole(role: Role): role is CameraResourceRole;
66
+ export type RoleAssignmentLog = {
67
+ id: number;
68
+ action: RoleAssignmentLogAction;
69
+ assignerId: number | null;
70
+ assignerEmail: string | null;
71
+ assigneeId: number | null;
72
+ assigneeEmail: string;
73
+ roleId: number | null;
74
+ roleName: string | null;
75
+ previousRoleId: number | null;
76
+ previousRoleName: string | null;
77
+ scope: RoleResourceType;
78
+ projectExid: string | null;
79
+ cameraExid: string | null;
80
+ ip: string | null;
81
+ userDetails: {
82
+ browser?: string | null;
83
+ device?: string | null;
84
+ os?: string | null;
85
+ country?: string | null;
86
+ countryCode?: string | null;
87
+ ip?: string | null;
88
+ impersonatedBy?: string | null;
89
+ } | null;
90
+ insertedAt: string;
91
+ };
92
+ export type RoleAssignmentLogsParams = {
93
+ page?: number;
94
+ limit?: number;
95
+ sort?: string;
96
+ action?: RoleAssignmentLogAction;
97
+ roleId?: number;
98
+ roleName?: string;
99
+ assigneeEmail?: string;
100
+ assignerEmail?: string;
101
+ scope?: RoleResourceType;
102
+ projectExid?: string;
103
+ cameraExid?: string;
104
+ ip?: string;
105
+ from?: string;
106
+ to?: string;
107
+ };
@@ -13,10 +13,10 @@ export type AxiosEnvironment = {
13
13
  ingestGpuApiUrl?: string | null;
14
14
  posthogApiUrl?: string | null;
15
15
  posthogProjectId?: string | null;
16
- posthogPrivateApiKey?: string | null;
17
16
  firebaseVideowallUrl?: string | null;
18
17
  weatherApiBaseUrl?: string | null;
19
18
  evercamLabsUrl?: string | null;
19
+ isLabsStaging?: boolean;
20
20
  firebaseDbLink?: string | null;
21
21
  firebaseStorageUrl?: string | null;
22
22
  firebaseStorageToken?: string | null;
@@ -30,15 +30,18 @@ export type AxiosEnvironment = {
30
30
  export type RequestInterceptor = (req: AxiosRequestConfig, env: AxiosEnvironment) => AxiosRequestConfig & any;
31
31
  export type ResponseInterceptor = (res: AxiosResponse, env: AxiosEnvironment) => AxiosResponse & any;
32
32
  export type ErrorInterceptor = (error: any, env: AxiosEnvironment) => any;
33
+ export type RequestManager = {
34
+ createToken: (key: string) => CancelTokenSource["token"];
35
+ cancelToken: (key: string) => void;
36
+ cancelAll: () => void;
37
+ };
33
38
  export interface ExtendedAxiosInstance extends AxiosInstance {
34
39
  CancelToken: CancelTokenStatic;
35
40
  isCancel: (value: AxiosResponse | AxiosError | unknown) => boolean;
36
41
  setToken: (token: string) => void;
37
42
  setHeader: (headerName: string, value: any) => void;
38
- generateCancelTokenSource: () => CancelTokenSource;
39
- addCancelToken: (token: CancelTokenSource) => void;
40
- resetCancelTokens: () => void;
41
- cancelRequests: () => void;
43
+ createRequestManager: () => RequestManager;
44
+ requestManager: RequestManager;
42
45
  env: AxiosEnvironment;
43
46
  addEnvironmentVariables: (vars: Record<string, any>) => void;
44
47
  addRequestInterceptor: (interceptor: RequestInterceptor, errorInterceptor?: ErrorInterceptor) => void;
@@ -101,7 +101,7 @@ export type BIMLayerPostPayload = {
101
101
  layerType: BIMLayerTypes;
102
102
  startAt: DateType;
103
103
  shapes: string;
104
- zIndex: number;
104
+ zIndex?: number;
105
105
  };
106
106
  export type BIMLayer = {
107
107
  id: number;
@@ -151,3 +151,28 @@ export type BimUploadPayload = {
151
151
  fileExtension: string;
152
152
  }[];
153
153
  };
154
+ export declare enum ForgeBimUploadMethod {
155
+ FileUpload = "file_upload",
156
+ AutodeskAcc = "autodesk_acc"
157
+ }
158
+ export declare enum ForgeBimFileRejectionReason {
159
+ InvalidType = "invalid_type",
160
+ ExceedsSizeLimit = "exceeds_size_limit"
161
+ }
162
+ export declare enum ForgeBimUploadStage {
163
+ TusUpload = "tus_upload",
164
+ IngestUpload = "ingest_upload"
165
+ }
166
+ export declare enum ForgeBimDialogTrigger {
167
+ UpdateModel = "update_model",
168
+ AddModel = "add_model",
169
+ InitialSetup = "initial_setup"
170
+ }
171
+ export type BimUpdatedWebhookPayload = {
172
+ eventName: "bim.updated";
173
+ projectId: string;
174
+ data: {
175
+ updatedAt: string;
176
+ bimIdentifier: string;
177
+ };
178
+ };
@@ -1,6 +1,6 @@
1
- import { AuditLogActionType, DateType, EntityByExid, KitAlarm, NvrDeviceType, PaginationParams, PowerSchedule, PowerType, ProjectExid, ProjectFeatureFlag, Schedule, ScheduleLowercase } from "@evercam/api/types";
1
+ import { AuditLogActionType, DateType, EntityByExid, KitAlarm, NvrDeviceType, PaginationParams, PowerSchedule, PowerType, ProjectExid, ProjectFeatureFlag, Schedule, ScheduleLowercase, TimestampPositionCoordinates } from "@evercam/api/types";
2
2
  import { DateRangeFilter } from "@evercam/api/types/time";
3
- import { GeoPoint } from "@evercam/api/types/shared";
3
+ import { GeoPoint, TuplePoint2D } from "@evercam/api/types/shared";
4
4
  export type CameraExid = string;
5
5
  export type CamerasByExid = EntityByExid<Camera>;
6
6
  export type Camera = {
@@ -80,6 +80,7 @@ export type Camera = {
80
80
  vendorName: string;
81
81
  isAccessRestricted?: boolean;
82
82
  kitAlarms?: KitAlarm[];
83
+ timestampPosition?: TimestampPositionCoordinates;
83
84
  };
84
85
  export type AdminCamera = {
85
86
  id: number;
@@ -196,6 +197,10 @@ export declare enum CameraFeatureFlag {
196
197
  Segmentation = "segmentation",
197
198
  SegmentationAutoLabelling = "segmentation_auto_labelling",
198
199
  PpeMonitoring = "ppe_monitoring",
200
+ PpeOwlv2 = "ppe_owlv2",
201
+ PpeGemini = "ppe_gemini",
202
+ PpeYolo = "ppe_yolo",
203
+ PpeV2 = "ppe_v2",
199
204
  NoLiveView = "no_live_view",
200
205
  Ring = "ring",
201
206
  CloudOnly = "cloud_only"
@@ -347,7 +352,7 @@ export type CameraCreateRequestPayload = {
347
352
  isPowerScheduleActive?: boolean;
348
353
  ptz?: boolean;
349
354
  name: string;
350
- coordinates?: [number, number];
355
+ coordinates?: TuplePoint2D;
351
356
  recordingFromNvr?: boolean;
352
357
  CameraConfig: {
353
358
  model: CameraModel;