@evercam/api 1.0.0-babd9ee76 → 1.0.0-bc5229297

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 (81) hide show
  1. package/dist/api/api/3dFirebaseApi.d.ts +171 -14
  2. package/dist/api/api/adminApi.d.ts +68 -58
  3. package/dist/api/api/aiApi.d.ts +58 -54
  4. package/dist/api/api/authzApi.d.ts +23 -16
  5. package/dist/api/api/client/axios.d.ts +1 -1
  6. package/dist/api/api/client/swr/Swr.d.ts +1 -1
  7. package/dist/api/api/evercamApi.d.ts +110 -94
  8. package/dist/api/api/evercamLabsApi.d.ts +4 -5
  9. package/dist/api/api/exNvrApi.d.ts +1 -1
  10. package/dist/api/api/ingestApi.d.ts +99 -47
  11. package/dist/api/api/ptzApi.d.ts +9 -4
  12. package/dist/api/api/videoWallApi.d.ts +2 -2
  13. package/dist/api/api/weatherApi.d.ts +2 -2
  14. package/dist/api/types/360.d.ts +59 -52
  15. package/dist/api/types/aconex.d.ts +9 -9
  16. package/dist/api/types/admin.d.ts +51 -0
  17. package/dist/api/types/analytics.d.ts +84 -58
  18. package/dist/api/types/anpr.d.ts +19 -2
  19. package/dist/api/types/auditLogs.d.ts +1 -1
  20. package/dist/api/types/authz.d.ts +44 -6
  21. package/dist/api/types/autodesk.d.ts +7 -7
  22. package/dist/api/types/automation.d.ts +37 -3
  23. package/dist/api/types/axios.d.ts +11 -6
  24. package/dist/api/types/bim.d.ts +11 -5
  25. package/dist/api/types/camera.d.ts +90 -93
  26. package/dist/api/types/comments.d.ts +4 -8
  27. package/dist/api/types/company.d.ts +42 -1
  28. package/dist/api/types/compare.d.ts +20 -5
  29. package/dist/api/types/connector.d.ts +3 -5
  30. package/dist/api/types/coolify.d.ts +18 -2
  31. package/dist/api/types/copilot.d.ts +11 -6
  32. package/dist/api/types/detections.d.ts +20 -8
  33. package/dist/api/types/drone.d.ts +92 -3
  34. package/dist/api/types/gateReport.d.ts +46 -58
  35. package/dist/api/types/hdd.d.ts +26 -1
  36. package/dist/api/types/index.d.ts +7 -1
  37. package/dist/api/types/ingest.d.ts +98 -2
  38. package/dist/api/types/kit.d.ts +14 -7
  39. package/dist/api/types/map.d.ts +12 -0
  40. package/dist/api/types/media.d.ts +2 -1
  41. package/dist/api/types/notification.d.ts +32 -2
  42. package/dist/api/types/oauth.d.ts +62 -0
  43. package/dist/api/types/planner.d.ts +98 -0
  44. package/dist/api/types/posthog.d.ts +15 -0
  45. package/dist/api/types/procore.d.ts +13 -6
  46. package/dist/api/types/progressPhoto.d.ts +6 -2
  47. package/dist/api/types/project.d.ts +96 -21
  48. package/dist/api/types/recording.d.ts +5 -4
  49. package/dist/api/types/recycleBin.d.ts +1 -1
  50. package/dist/api/types/ring.d.ts +53 -0
  51. package/dist/api/types/roi.d.ts +2 -2
  52. package/dist/api/types/router.d.ts +1 -1
  53. package/dist/api/types/shared.d.ts +29 -4
  54. package/dist/api/types/shares.d.ts +1 -139
  55. package/dist/api/types/sim.d.ts +6 -6
  56. package/dist/api/types/siteAnalytics.d.ts +79 -39
  57. package/dist/api/types/siteView.d.ts +74 -0
  58. package/dist/api/types/smartSeach.d.ts +5 -0
  59. package/dist/api/types/snapshots.d.ts +36 -4
  60. package/dist/api/types/storageProvider.d.ts +19 -0
  61. package/dist/api/types/storyblok.d.ts +40 -0
  62. package/dist/api/types/streaming.d.ts +3 -3
  63. package/dist/api/types/tag.d.ts +1 -1
  64. package/dist/api/types/time.d.ts +0 -18
  65. package/dist/api/types/timelapse.d.ts +12 -5
  66. package/dist/api/types/user.d.ts +101 -31
  67. package/dist/api/types/videoWall.d.ts +21 -21
  68. package/dist/api/types/weather.d.ts +75 -11
  69. package/dist/api/types/widget.d.ts +71 -12
  70. package/dist/api/types/xweather.d.ts +4 -4
  71. package/dist/index.js +1513 -888
  72. package/dist/index.js.map +1 -1
  73. package/dist/index.umd.cjs +1 -1
  74. package/dist/index.umd.cjs.map +1 -1
  75. package/dist/shared/types/components.d.ts +127 -14
  76. package/dist/shared/types/imagePlayer.d.ts +1 -1
  77. package/dist/shared/types/index.d.ts +1 -0
  78. package/dist/shared/types/rbac.d.ts +67 -0
  79. package/dist/shared/types/timeline.d.ts +2 -1
  80. package/package.json +2 -2
  81. package/dist/api/types/storageServers.d.ts +0 -4
@@ -1,12 +1,8 @@
1
- import { AuditLogActionType, DateTime_Z_micros, DateType, EntityByExid, NvrDeviceType, PaginationParams, PowerSchedule, PowerType, ProjectExid, ProjectFeatureFlag, Schedule } from "@/types";
2
- import { DateRangeFilter } from "@/types/time";
1
+ import { AuditLogActionType, DateType, EntityByExid, KitAlarm, NvrDeviceType, PaginationParams, PowerSchedule, PowerType, ProjectExid, ProjectFeatureFlag, Schedule, ScheduleLowercase } from "@evercam/api/types";
2
+ import { DateRangeFilter } from "@evercam/api/types/time";
3
+ import { GeoPoint } from "@evercam/api/types/shared";
3
4
  export type CameraExid = string;
4
5
  export type CamerasByExid = EntityByExid<Camera>;
5
- export type Cartesian3 = {
6
- x: number;
7
- y: number;
8
- z: number;
9
- };
10
6
  export type Camera = {
11
7
  cameraPowerSchedule?: Schedule;
12
8
  camPassword?: string;
@@ -17,7 +13,8 @@ export type Camera = {
17
13
  status: string;
18
14
  storageDuration: string;
19
15
  };
20
- createdAt: DateTime_Z_micros;
16
+ liveViewFrequency: number | null;
17
+ createdAt: string;
21
18
  description: string | null;
22
19
  discoverable: boolean;
23
20
  external: {
@@ -37,18 +34,15 @@ export type Camera = {
37
34
  featureFlags: Array<CameraFeatureFlag>;
38
35
  fovAngle: number;
39
36
  fovRadius: number;
40
- heading: null;
37
+ heading: number;
41
38
  id: CameraExid;
42
39
  exid: CameraExid;
43
40
  isOnline: boolean;
44
41
  isPowerScheduleActive: boolean;
45
42
  isPublic: boolean;
46
- lastOnlineAt: DateTime_Z_micros;
47
- lastPolledAt: DateTime_Z_micros;
48
- location: {
49
- lat: number;
50
- lng: number;
51
- };
43
+ lastOnlineAt: string;
44
+ lastPolledAt: string;
45
+ location: GeoPoint;
52
46
  modelId: string;
53
47
  modelName: string;
54
48
  name: string;
@@ -73,7 +67,8 @@ export type Camera = {
73
67
  rtmp: string;
74
68
  };
75
69
  ptz: boolean;
76
- rights: string;
70
+ recordingFromNvr: boolean;
71
+ model?: CameraModel;
77
72
  roll: string | null;
78
73
  routerId: number;
79
74
  status: CameraStatus;
@@ -81,88 +76,88 @@ export type Camera = {
81
76
  thumbnailUrl: string;
82
77
  largeThumbnailUrl?: string;
83
78
  timezone: string;
84
- updatedAt: DateTime_Z_micros;
79
+ updatedAt: string;
85
80
  vendorName: string;
86
81
  isAccessRestricted?: boolean;
87
- kitAlarms?: string[];
82
+ kitAlarms?: KitAlarm[];
88
83
  };
89
84
  export type AdminCamera = {
90
- cameraHost: string;
91
- cameraHttpPort: number;
92
- cameraModel: string;
93
- cameraPassword: string;
94
- cameraPictureEndpoint: string;
95
- cameraRtspPort: number;
96
- cameraScheme: string;
97
- cameraUsername: string;
98
- cameraFirmwareVersion: string;
99
- cameraTimezone: string;
100
- cloudRecordingFrequency: number;
101
- cloudRecordingId: number;
102
- cloudRecordingSchedule: Schedule;
103
- cloudRecordingStatus: string;
104
- cloudRecordingStorageDuration: number;
105
- createdAt: DateTime_Z_micros;
106
- description: null;
107
- discoverable: false;
108
- exid: CameraExid;
109
- featureFlags: CameraFeatureFlag[];
110
- fovAngle: 45.0;
111
- fovRadius: number;
112
- heading: null;
113
85
  id: number;
114
- isPowerScheduleActive: true;
115
- isPublic: false;
116
- kitId?: number;
117
- lastOnlineAt: DateTime_Z_micros;
118
- lastPolledAt: DateTime_Z_micros;
119
- location: {
120
- lat: number;
121
- lng: number;
122
- };
123
- macAddress: string;
86
+ exid: CameraExid;
124
87
  name: string;
125
- nvrChannel: null;
126
- nvrDeviceId: string;
127
- nvrHost: string;
128
- nvrHttpPort: number;
129
- nvrModel: NvrModel;
130
- nvrPassword: string;
131
- nvrPictureEndpoint: string;
132
- nvrRtspPort: number;
133
- nvrScheme: string;
134
- nvrUsername: string;
135
- offlineReason: null;
136
- pitch: null;
137
- powerSchedule: Schedule;
138
- projectExid: string;
139
- projectFeatureFlags: ProjectFeatureFlag[];
140
- projectId: number;
141
- projectName: string;
142
- ptz: false;
143
- recordingFromNvr: false;
144
- roll: null;
145
- routerId: number;
146
88
  status: string;
147
- storageProviders: [];
148
- streamEndpoint: string;
149
- timezone: string;
150
- updatedAt: DateTime_Z_micros;
151
- userApiId: string;
152
- userApiKey: string;
89
+ description: string | null;
90
+ createdAt: string;
91
+ updatedAt: string;
92
+ lastOnlineAt: string | null;
93
+ lastPolledAt: string | null;
94
+ decommissionedAt: string | null;
95
+ deletedAt?: string | null;
96
+ projectId: number | null;
97
+ projectExid: string | null;
98
+ projectName: string | null;
99
+ projectFeatureFlags: Array<ProjectFeatureFlag | string>;
100
+ userId: number | null;
153
101
  userEmail: string;
154
102
  userFullname: string;
155
- userId: number;
156
- zohoId: string;
103
+ userApiId?: string;
104
+ userApiKey?: string;
105
+ isPublic: boolean;
106
+ sharedWithConstruction?: boolean;
107
+ timezone: string | null;
108
+ location?: GeoPoint | null;
109
+ fovAngle?: number | null;
110
+ fovRadius?: number | null;
111
+ heading?: number | null;
112
+ pitch?: number | null;
113
+ roll?: number | null;
114
+ cameraModel?: string | null;
115
+ cameraHost?: string | null;
116
+ cameraHttpPort?: number | null;
117
+ cameraRtspPort?: number | null;
118
+ cameraScheme?: string | null;
119
+ cameraUsername?: string | null;
120
+ cameraPassword?: string | null;
121
+ cameraPictureEndpoint?: string | null;
122
+ rtspUrl?: string | null;
123
+ httpUrl?: string | null;
124
+ deviceId?: string | null;
125
+ nvrId?: number | null;
126
+ nvrDeviceId?: string | null;
127
+ nvrModel?: NvrModel | string | null;
128
+ nvrHost?: string | null;
129
+ nvrHttpPort?: number | null;
130
+ nvrRtspPort?: number | null;
131
+ nvrScheme?: string | null;
132
+ nvrUsername?: string | null;
133
+ nvrPassword?: string | null;
134
+ nvrPictureEndpoint?: string | null;
135
+ streamEndpoint?: string | null;
136
+ routerId?: number | null;
137
+ kitId?: number | null;
138
+ powerType?: string | null;
139
+ powerSchedule?: ScheduleLowercase | Record<string, string[]>;
140
+ isPowerScheduleActive?: boolean;
141
+ discoverable?: boolean;
142
+ recordingFromNvr?: boolean;
143
+ cloudRecordingFrequency?: number | null;
144
+ cloudRecordingId?: number | null;
145
+ cloudRecordingStatus?: string | null;
146
+ cloudRecordingSchedule?: ScheduleLowercase | null;
147
+ cloudRecordingStorageDuration?: number | null;
148
+ liveViewFrequency?: number | null;
149
+ anprSources?: string[];
150
+ storageProviders?: string[];
151
+ featureFlags?: CameraFeatureFlag[];
152
+ zohoId?: string | null;
153
+ offlineReason?: string | null;
154
+ macAddress?: string | null;
155
+ type?: string[];
157
156
  thumbnailUrl?: string;
158
- sharedWithConstruction: boolean;
159
157
  };
160
158
  export type CameraMapMarker = {
161
159
  isOnline: boolean;
162
- location: {
163
- lat: number;
164
- lng: number;
165
- };
160
+ location: GeoPoint;
166
161
  needFov: boolean;
167
162
  rotation: number;
168
163
  fovAngle: number;
@@ -200,7 +195,13 @@ export declare enum CameraFeatureFlag {
200
195
  ObjectDetection = "object_detection",
201
196
  Segmentation = "segmentation",
202
197
  SegmentationAutoLabelling = "segmentation_auto_labelling",
203
- PpeMonitoring = "ppe_monitoring"
198
+ PpeMonitoring = "ppe_monitoring",
199
+ PpeOwlv2 = "ppe_owlv2",
200
+ PpeGemini = "ppe_gemini",
201
+ PpeYolo = "ppe_yolo",
202
+ NoLiveView = "no_live_view",
203
+ Ring = "ring",
204
+ CloudOnly = "cloud_only"
204
205
  }
205
206
  export type CameraLogsRequestPayload = {
206
207
  limit: number;
@@ -244,6 +245,7 @@ export type CameraUpdateRequestPayload = {
244
245
  fovRadius?: number;
245
246
  featureFlags: CameraFeatureFlag[];
246
247
  isAccessRestricted?: boolean;
248
+ liveViewFrequency?: number | null;
247
249
  };
248
250
  export type CamerasResponsePayload = {
249
251
  cameras?: Camera[];
@@ -305,14 +307,9 @@ export declare enum CameraModel {
305
307
  Hikvision = "hikvision",
306
308
  Avigilion = "avigilion",
307
309
  Hanwha = "hanwha",
308
- Other = "other"
310
+ Other = "other",
311
+ Ring = "ring"
309
312
  }
310
- export type DroneCameraTransform = {
311
- position: Cartesian3;
312
- direction: Cartesian3;
313
- up: Cartesian3;
314
- right: Cartesian3;
315
- };
316
313
  export type Footage = {
317
314
  cameraExid: string;
318
315
  cameraName: string;
@@ -1,4 +1,4 @@
1
- import { CameraExid, DateType, ProjectExid, PaginationParams } from "@/types";
1
+ import { CameraExid, DateType, ProjectExid, PaginationParams } from "@evercam/api/types";
2
2
  export declare enum CommentsScope {
3
3
  Recordings = "recordings",
4
4
  ThreeSixty = "360",
@@ -10,12 +10,7 @@ export declare enum CommentsLabel {
10
10
  Restricted = "Restricted"
11
11
  }
12
12
  export type CommentsRequestPayload = {
13
- cameraExid: CameraExid;
14
- fromDate: string;
15
- toDate: string;
16
13
  scope: CommentsScope;
17
- page?: number;
18
- limit?: number;
19
14
  };
20
15
  export type CommentsListRequestPayload = PaginationParams & {
21
16
  projectExid?: ProjectExid;
@@ -44,6 +39,7 @@ export type Comment = {
44
39
  context?: Record<string, unknown>;
45
40
  canDelete?: boolean;
46
41
  archivedAt?: string;
42
+ label?: CommentsLabel;
47
43
  };
48
44
  export type CommentCreationRequestPayload = {
49
45
  fromDate?: DateType;
@@ -53,7 +49,7 @@ export type CommentCreationRequestPayload = {
53
49
  projectExid: ProjectExid;
54
50
  cameraExid?: CameraExid;
55
51
  content: string;
56
- position2d?: [number, number];
57
- position3d?: [number, number, number];
52
+ position2d?: number[];
53
+ position3d?: number[];
58
54
  context?: Record<string, unknown>;
59
55
  };
@@ -1,4 +1,4 @@
1
- import type { DateType, PaginationParams } from "@/types";
1
+ import type { DateType, PaginationParams } from "@evercam/api/types";
2
2
  export type CompanyUser = {
3
3
  id: number;
4
4
  fullname: string;
@@ -7,12 +7,28 @@ export type CompanyUser = {
7
7
  lastSeenAt: string;
8
8
  active: boolean;
9
9
  };
10
+ export type AdminCompanyUser = {
11
+ id: number;
12
+ email: string;
13
+ fullname: string;
14
+ lastLoginAt: string;
15
+ };
10
16
  export type CompanyProject = {
11
17
  exid: string;
12
18
  name: string;
13
19
  status: string;
14
20
  startedAt: DateType;
15
21
  };
22
+ export type AdminCompanyProject = {
23
+ id: number;
24
+ name: string;
25
+ status: string;
26
+ insertedAt: DateType;
27
+ exid: string;
28
+ endDate: string | null;
29
+ startDate: string | null;
30
+ archiveTier: string | null;
31
+ };
16
32
  export type CompanyKit = {
17
33
  id: number;
18
34
  name: string;
@@ -55,6 +71,31 @@ export type Company = {
55
71
  activeUsers: number;
56
72
  insertedAt: DateType;
57
73
  };
74
+ export type CompanySummary = {
75
+ id: number;
76
+ name: string;
77
+ users: number;
78
+ insertedAt: DateType;
79
+ exid: string;
80
+ sessions: number;
81
+ projects: number;
82
+ zohoId: string;
83
+ domains: string;
84
+ linkedinUrl: string | null;
85
+ ssoProviders: string[];
86
+ cameras: number;
87
+ kits: number;
88
+ };
89
+ export type CompanyCameraSummary = {
90
+ id: number;
91
+ name: string;
92
+ status: string;
93
+ exid: string;
94
+ projectExid: string | null;
95
+ ownerEmail: string;
96
+ ownerFullname: string;
97
+ usersCount: number;
98
+ };
58
99
  export type CompanyQueryParams = PaginationParams & {
59
100
  name: string;
60
101
  exid: string;
@@ -1,4 +1,4 @@
1
- import { DateType, PaginationParams } from "@/types";
1
+ import { DateType, PaginationParams } from "@evercam/api/types";
2
2
  export type Compare = {
3
3
  cameraExid: string;
4
4
  createdAt: string;
@@ -28,14 +28,29 @@ export declare enum CompareStatus {
28
28
  Failed = 2
29
29
  }
30
30
  export type CompareRequestPayload = {
31
+ compareExid: string;
31
32
  name: string;
32
- afterDate: string;
33
33
  beforeDate: string;
34
+ afterDate: string;
35
+ cameraExid: string;
34
36
  embed: string;
35
- compareExid: string;
36
- cameraExid?: string;
37
+ bim?: boolean;
38
+ custom?: boolean;
39
+ options?: {
40
+ type: string;
41
+ beforeSnap: string;
42
+ afterSnap: string;
43
+ };
37
44
  createAnimation: boolean;
38
- evercamWatermark?: boolean;
45
+ evercamWatermark: boolean;
46
+ logo?: CompareLogoPosition;
47
+ };
48
+ export type CompareLogoPosition = {
49
+ id?: number;
50
+ width: number;
51
+ height: number;
52
+ x: number;
53
+ y: number;
39
54
  };
40
55
  export type AdminCompare = {
41
56
  id: number;
@@ -1,6 +1,7 @@
1
1
  export type ConnectorDetail = {
2
2
  login: string;
3
3
  hostname: string;
4
+ provider: string;
4
5
  };
5
6
  export declare enum Connector {
6
7
  Aconex = "aconex",
@@ -8,14 +9,11 @@ export declare enum Connector {
8
9
  Autodesk = "autodesk",
9
10
  AutodeskViewer = "autodesk_viewer",
10
11
  VoyageControl = "voyage_control",
12
+ Ring = "ring",
11
13
  XWeather = "xweather"
12
14
  }
13
15
  export declare enum ProcoreType {
14
16
  Observations = "observations",
15
17
  Photos = "photos"
16
18
  }
17
- export type ConnectorResponsePayload = Array<{
18
- hostname: string;
19
- login: string;
20
- provider: string;
21
- }>;
19
+ export type ConnectorResponsePayload = Array<ConnectorDetail>;
@@ -1,6 +1,5 @@
1
- import { DateType } from "@/types/time";
1
+ import { CameraExid, DateType, ProjectExid } from "@evercam/api/types";
2
2
  export type CreateCoolifyAppRequestPayload = {
3
- cameraExid: string;
4
3
  startDate: DateType;
5
4
  modelVersion: string;
6
5
  snapshotRequestTimeout: string | number;
@@ -18,3 +17,20 @@ export type SaveCoolifyAppRequestPayload = {
18
17
  serverUuid: string;
19
18
  useThirdParty: boolean;
20
19
  };
20
+ export type CoolifyApp = {
21
+ id: number;
22
+ projectExid: ProjectExid;
23
+ anprCameraExid: CameraExid;
24
+ contextCameraExid: CameraExid;
25
+ modelVersion: string;
26
+ isActive: boolean;
27
+ insertedAt: DateType;
28
+ updatedAt: DateType;
29
+ };
30
+ export type RegisterCoolifyAppResponsePayload = {
31
+ created: boolean;
32
+ id: number;
33
+ data: CoolifyApp;
34
+ count: number;
35
+ message: string;
36
+ };
@@ -1,4 +1,4 @@
1
- import type { AnalyticsEventPageId, CameraExid, CameraFeatureFlag, CameraStatus, ProjectExid, ProjectFeatureFlag, ProjectStatus } from "@/types";
1
+ import type { AnalyticsEventPageId, CameraExid, CameraFeatureFlag, CameraStatus, ProjectExid, ProjectFeatureFlag, ProjectStatus } from "@evercam/api/types";
2
2
  export declare enum CopilotMessageAuthor {
3
3
  Copilot = "copilot",
4
4
  User = "user",
@@ -26,7 +26,9 @@ export declare enum CopilotStepId {
26
26
  CompletedFieldsResponse = "completed_fields_response",
27
27
  SendRawToolCallResponse = "send_raw_tool_call_response",
28
28
  SubmitToolOutputsToLLM = "submit_tool_outputs_to_llm",
29
- CancelCall = "cancel_call"
29
+ CancelCall = "cancel_call",
30
+ RequestAgentCall = "request_agent_call",
31
+ ExecAgentCall = "exec_agent_call"
30
32
  }
31
33
  export declare enum CopilotMissingFieldsLabels {
32
34
  ProjectExid = "Project",
@@ -34,10 +36,10 @@ export declare enum CopilotMissingFieldsLabels {
34
36
  FromDate = "Start date",
35
37
  ToDate = "End date"
36
38
  }
37
- export type CopilotMissingField<T = any> = {
39
+ export type CopilotMissingField<T = unknown> = {
38
40
  name: string;
39
41
  label: string;
40
- value: any;
42
+ value: unknown;
41
43
  type: string;
42
44
  toolId: string;
43
45
  error?: T;
@@ -83,7 +85,8 @@ export declare enum CopilotSuggestion {
83
85
  Weather = "weather",
84
86
  Clip = "clip",
85
87
  Timelapse = "timelapse",
86
- Chart = "chart"
88
+ Chart = "chart",
89
+ SmartSearch = "smart_search"
87
90
  }
88
91
  export declare enum CopilotChatProvider {
89
92
  Gemini = "gemini",
@@ -101,12 +104,14 @@ export declare enum CopilotToolId {
101
104
  NavigateToPage = "navigateToPage",
102
105
  CreateTimelapse = "createTimelapse",
103
106
  RequestMissingFields = "requestMissingFields",
104
- RenderCharts = "renderCharts"
107
+ RenderCharts = "renderCharts",
108
+ SmartSearch = "smartSearch"
105
109
  }
106
110
  export type CopilotSystemToolCallResponse<I = unknown, O = unknown> = {
107
111
  toolId?: CopilotToolId;
108
112
  input?: I;
109
113
  output?: O;
114
+ isAgent?: boolean;
110
115
  };
111
116
  export type CopilotCamera = {
112
117
  name: string;
@@ -1,4 +1,4 @@
1
- import { type BoundingBox, type ProjectExid, type CameraExid, type DateType, DetectionLabel, SegmentLabel, type TimelineDateInterval, TimelinePrecision, DateRangeFilter, ProjectDateRangeFilter, CameraDateRangeFilter } from "@/types";
1
+ import { type BoundingBox, type ProjectExid, type CameraExid, type DateType, DetectionLabel, SegmentLabel, type TimelineDateInterval, TimelinePrecision, CameraDateRangeFilter } from "@evercam/api/types";
2
2
  export type BaseDetectionsFilters = {
3
3
  fromDate: string | Date;
4
4
  toDate: string | Date;
@@ -31,7 +31,8 @@ export type Detection = {
31
31
  };
32
32
  export type DetectionsGroup = {
33
33
  timestamp: DateType;
34
- detections: Detection[];
34
+ cameraExid: CameraExid;
35
+ trackings: Detection[];
35
36
  };
36
37
  export type DetectionsCounts = {
37
38
  timestamps: number;
@@ -74,22 +75,33 @@ export type SegmentSimilarityResult = {
74
75
  };
75
76
  export type SegmentsSimilaritySearchParams = {
76
77
  cameraExid: CameraExid;
77
- referenceId: string;
78
+ referenceId: string | number;
78
79
  iouThreshold?: number;
79
80
  fromDate: string;
80
81
  toDate: string;
81
82
  };
82
- export type BaseCountsParams = DateRangeFilter & {
83
- precision: keyof typeof TimelinePrecision;
84
- trackId: number;
85
- labels: DetectionLabel | DetectionLabel[];
83
+ export type BaseCountsParams = {
84
+ fromDate?: string;
85
+ toDate?: string;
86
+ precision?: TimelinePrecision;
87
+ trackId?: number;
88
+ labels?: DetectionLabel | DetectionLabel[];
86
89
  };
87
- export type DetectionsCountsParams = ProjectDateRangeFilter & BaseCountsParams & {
90
+ export type DetectionsCountsParams = BaseCountsParams & {
88
91
  cameraExids?: CameraExid[];
92
+ projectExid?: ProjectExid;
93
+ modelId?: DetectionModel;
94
+ labels?: Label[];
95
+ excludeLabels?: Label[];
96
+ confidenceThreshold?: number;
97
+ mergedClasses?: string[];
89
98
  };
90
99
  export type SegmentsCountsParams = CameraDateRangeFilter & BaseCountsParams;
91
100
  export type DetectionsPresenceByLabel = Record<DetectionLabel, TimelineDateInterval[]>;
92
101
  export type SegmentsPresenceByLabel = Record<SegmentLabel, TimelineDateInterval[]>;
102
+ export type SegmentsPresenceResponse = {
103
+ intervals: SegmentsPresenceByLabel;
104
+ };
93
105
  export type LuminanceReading = {
94
106
  timestamp: string;
95
107
  luminanceDelta: number;
@@ -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
+ }