@evercam/api 1.0.0-964e29308 → 1.0.0-9670187dd

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 (74) hide show
  1. package/README.md +1 -0
  2. package/dist/api/api/3dFirebaseApi.d.ts +203 -15
  3. package/dist/api/api/adminApi.d.ts +32 -21
  4. package/dist/api/api/aiApi.d.ts +127 -4
  5. package/dist/api/api/authzApi.d.ts +5 -3
  6. package/dist/api/api/evercamApi.d.ts +48 -25
  7. package/dist/api/api/evercamLabsApi.d.ts +5 -16
  8. package/dist/api/api/index.d.ts +1 -0
  9. package/dist/api/api/ingestApi.d.ts +41 -29
  10. package/dist/api/api/workflowsApi.d.ts +15 -0
  11. package/dist/api/types/360.d.ts +172 -83
  12. package/dist/api/types/admin.d.ts +1 -1
  13. package/dist/api/types/aiConfigs.d.ts +244 -0
  14. package/dist/api/types/analytics.d.ts +49 -37
  15. package/dist/api/types/anpr.d.ts +31 -2
  16. package/dist/api/types/auditLogs.d.ts +19 -4
  17. package/dist/api/types/authz.d.ts +71 -0
  18. package/dist/api/types/automation.d.ts +32 -4
  19. package/dist/api/types/axios.d.ts +10 -9
  20. package/dist/api/types/bim.d.ts +29 -6
  21. package/dist/api/types/camera.d.ts +38 -47
  22. package/dist/api/types/comments.d.ts +16 -7
  23. package/dist/api/types/company.d.ts +1 -2
  24. package/dist/api/types/compare.d.ts +1 -1
  25. package/dist/api/types/connector.d.ts +2 -0
  26. package/dist/api/types/detections.d.ts +3 -10
  27. package/dist/api/types/drone.d.ts +94 -6
  28. package/dist/api/types/errors.d.ts +18 -2
  29. package/dist/api/types/gateReport.d.ts +7 -22
  30. package/dist/api/types/gateReportManagement.d.ts +170 -0
  31. package/dist/api/types/hammertech.d.ts +98 -0
  32. package/dist/api/types/index.d.ts +9 -2
  33. package/dist/api/types/ingest.d.ts +177 -19
  34. package/dist/api/types/kit.d.ts +44 -101
  35. package/dist/api/types/map.d.ts +12 -0
  36. package/dist/api/types/media.d.ts +7 -2
  37. package/dist/api/types/notification.d.ts +52 -2
  38. package/dist/api/types/observationEvents.d.ts +141 -0
  39. package/dist/api/types/observations.d.ts +84 -0
  40. package/dist/api/types/planner.d.ts +56 -10
  41. package/dist/api/types/posthog.d.ts +20 -0
  42. package/dist/api/types/project.d.ts +19 -5
  43. package/dist/api/types/recording.d.ts +8 -13
  44. package/dist/api/types/ring.d.ts +16 -16
  45. package/dist/api/types/roi.d.ts +3 -11
  46. package/dist/api/types/routeParams.d.ts +1 -0
  47. package/dist/api/types/shared.d.ts +24 -22
  48. package/dist/api/types/shares.d.ts +0 -13
  49. package/dist/api/types/siteAnalytics.d.ts +3 -5
  50. package/dist/api/types/siteAnalyticsManagement.d.ts +127 -0
  51. package/dist/api/types/siteView.d.ts +78 -0
  52. package/dist/api/types/snapshots.d.ts +13 -0
  53. package/dist/api/types/socket.d.ts +4 -0
  54. package/dist/api/types/storyblok.d.ts +0 -13
  55. package/dist/api/types/timelapse.d.ts +4 -8
  56. package/dist/api/types/user.d.ts +16 -4
  57. package/dist/api/types/workflows.d.ts +108 -0
  58. package/dist/api/utils.d.ts +1 -1
  59. package/dist/index.js +2176 -922
  60. package/dist/index.js.map +1 -1
  61. package/dist/index.umd.cjs +1 -1
  62. package/dist/index.umd.cjs.map +1 -1
  63. package/dist/shared/types/components.d.ts +247 -49
  64. package/dist/shared/types/customDataTableFilters.d.ts +10 -0
  65. package/dist/shared/types/droneUpload.d.ts +66 -0
  66. package/dist/shared/types/imagePlayer.d.ts +8 -1
  67. package/dist/shared/types/index.d.ts +4 -0
  68. package/dist/shared/types/observations.d.ts +25 -0
  69. package/dist/shared/types/report.d.ts +101 -0
  70. package/dist/shared/utils/datePickerValue.d.ts +36 -0
  71. package/dist/shared/utils/datePresets.d.ts +31 -0
  72. package/package.json +4 -2
  73. package/dist/api/types/copilot.d.ts +0 -162
  74. package/dist/api/types/vendorModel.d.ts +0 -15
@@ -1,26 +1,35 @@
1
1
  import { DateType } from "@evercam/api/types/time";
2
- export type _360CameraParams = {
3
- azimuthAngle: number;
4
- polarAngle: number;
2
+ import { GeoPoint, PaginationParams, Point3D } from "@evercam/api/types/shared";
3
+ export type _360OverlayPosition = {
4
+ northEast: GeoPoint;
5
+ northWest: GeoPoint;
6
+ southEast: GeoPoint;
7
+ southWest: GeoPoint;
5
8
  };
6
- export type _360Vector3D = {
7
- x: number;
8
- y: number;
9
- z: number;
9
+ export type ForgeViewport = {
10
+ name: string;
11
+ eye: number[];
12
+ target: number[];
13
+ worldUpVector?: number[];
10
14
  };
11
- export type _360Geolocation = {
12
- latitude: number;
13
- longitude: number;
15
+ export type ForgeView = {
16
+ name: string;
17
+ viewport: ForgeViewport;
18
+ timestamp: string;
14
19
  };
15
20
  export type _360CameraRotation = {
16
21
  azimuthAngle: number;
17
22
  polarAngle: number;
18
23
  };
24
+ export type _360Geolocation = {
25
+ latitude: number;
26
+ longitude: number;
27
+ };
19
28
  export type _360Marker3D = {
20
- cameraPosition: _360Vector3D;
29
+ cameraPosition: Point3D;
21
30
  geolocation: _360Geolocation;
22
31
  nextRoomId: _360MakerId;
23
- position: _360Vector3D;
32
+ position: Point3D;
24
33
  rotation: {
25
34
  _order: "XYZ" | string;
26
35
  _x: number;
@@ -35,7 +44,7 @@ export type _360Tag = {
35
44
  comment: string;
36
45
  creationDate: number;
37
46
  currentRoom: _360MakerId;
38
- position: _360Vector3D;
47
+ position: Point3D;
39
48
  cameraRotation: _360CameraRotation;
40
49
  };
41
50
  export type _360FloorId = string | number;
@@ -45,8 +54,17 @@ export type _360Floor = {
45
54
  _3DMarkers: _360Marker3D[];
46
55
  cameraRotation: _360CameraRotation;
47
56
  fbxModel: string;
57
+ fbxModelHQ?: string;
58
+ pointCloudModelHQ?: string;
48
59
  initialMarker: _360MakerId;
49
60
  modelViewerFeatureFlag: boolean;
61
+ imagesOnlyFeatureFlag?: boolean;
62
+ forgeBIMFeatureFlag?: boolean;
63
+ isForgeGravityEnabled?: boolean;
64
+ bimHeight?: number;
65
+ initialForgeView?: ForgeView | null;
66
+ enhancedLightFeatureFlag?: boolean;
67
+ calibrationDetails?: Record<string, unknown>;
50
68
  route: {
51
69
  cameraHeadingOffset: string;
52
70
  overlayID: number;
@@ -54,13 +72,13 @@ export type _360Floor = {
54
72
  };
55
73
  sceneScale: number;
56
74
  steps: number;
57
- tags: Record<string, _360Tag>;
75
+ tags?: Record<string, _360Tag>;
58
76
  };
59
77
  export type _360WalkV2 = {
60
78
  archive: string;
61
79
  date: string;
62
80
  deviceSerial: string | null;
63
- endPosition: unknown | null;
81
+ endPosition: string | null;
64
82
  floor: string;
65
83
  floorId: number;
66
84
  id: number;
@@ -75,8 +93,10 @@ export type _360WalkV2 = {
75
93
  processingStatus: string;
76
94
  projectId: string;
77
95
  report: string;
96
+ processingLog: string;
97
+ hasSteps?: boolean;
78
98
  route: unknown | null;
79
- startPosition: unknown | null;
99
+ startPosition: string | null;
80
100
  tusLinks: unknown | null;
81
101
  updatedAt: string;
82
102
  uploadedBy: string;
@@ -92,44 +112,40 @@ export type _360FloorV2 = {
92
112
  hasOverlay: boolean;
93
113
  isCalibrated: boolean;
94
114
  createdBy: string | null;
95
- overlayPosition: {
96
- northEast: {
97
- lat: number;
98
- lng: number;
99
- };
100
- northWest: {
101
- lat: number;
102
- lng: number;
103
- };
104
- southEast: {
105
- lat: number;
106
- lng: number;
107
- };
108
- southWest: {
109
- lat: number;
110
- lng: number;
111
- };
112
- };
115
+ overlayPosition: _360OverlayPosition;
113
116
  insertedAt: string;
114
117
  updatedAt: string;
118
+ deletedAt: string | null;
115
119
  };
116
120
  export type _360Scene = {
117
121
  date: string;
118
- dateID: number;
122
+ dateID: string | number;
119
123
  floors: {
120
124
  floorID: _360FloorId;
121
125
  name: string;
126
+ isValidated?: boolean;
122
127
  }[];
123
128
  polarAngle: number;
124
129
  azimuthAngle: number;
125
130
  };
131
+ export declare enum _360PinType {
132
+ Default = "Default"
133
+ }
134
+ export type _360Pin = {
135
+ position: Point3D;
136
+ pinType: _360PinType;
137
+ pinId?: string;
138
+ cameraExid?: string;
139
+ name: string;
140
+ currentRoom?: _360MakerId;
141
+ cameraRotation?: _360CameraRotation;
142
+ };
126
143
  export type _360SceneRoute = {
127
144
  cameraHeadingOffset?: number;
128
145
  overlayID?: number;
129
146
  track?: string;
130
147
  };
131
- export type _360FullProject = {
132
- dates: _360SceneWithFloors[];
148
+ export type _360ProjectListItem = {
133
149
  integrationType: string;
134
150
  projectId: string;
135
151
  projectName: string;
@@ -138,13 +154,7 @@ export type _360FullProject = {
138
154
  providerSuffix: string;
139
155
  timeline: string;
140
156
  uniqueId: string;
141
- };
142
- export type _360FullFloor = _360Floor & {
143
- id: _360FloorId;
144
- name: string;
145
- };
146
- export type _360SceneWithFloors = _360Scene & {
147
- floors: _360FullFloor[];
157
+ requiresValidation?: boolean;
148
158
  };
149
159
  export type _360ProjectJsonResponse = {
150
160
  dates: _360Scene[];
@@ -159,12 +169,25 @@ export type MobileCaptureSnapshot = {
159
169
  thumbnailUrl: string;
160
170
  };
161
171
  export declare enum _360UrlParams {
162
- DateId = "date_id",
172
+ DateId = "dateId",
163
173
  Date = "date",
164
174
  Floor = "floor",
165
175
  Marker = "marker",
166
176
  PolarAngle = "polarAngle",
167
- AzimuthAngle = "azimuthAngle"
177
+ AzimuthAngle = "azimuthAngle",
178
+ Zoom = "zoom",
179
+ User = "user",
180
+ ViewerMode = "viewer_mode",
181
+ ProjectId = "projectId",
182
+ Unit = "unit",
183
+ LockDate = "lockDate",
184
+ LockFloor = "lockFloor",
185
+ LockMarker = "lockMarker",
186
+ IsWidget = "isWidget",
187
+ MediaLocked = "mediaLocked",
188
+ Debug = "debug",
189
+ RequiresValidation = "requires_validation",
190
+ CommentId = "comment_id"
168
191
  }
169
192
  export declare enum _360AssetType {
170
193
  Video = "video",
@@ -178,11 +201,6 @@ export declare enum _360AssetLabel {
178
201
  Walks = "walks",
179
202
  MobilePhotos = "mobilePhotos"
180
203
  }
181
- export declare enum _360Feature {
182
- BIM = "BIM",
183
- Minimap = "Minimap",
184
- Minimodel = "Minimodel"
185
- }
186
204
  export declare enum _360IntergrationType {
187
205
  Evercam = "Evercam",
188
206
  Matterport = "Matterport",
@@ -193,14 +211,14 @@ export declare enum _360IntergrationType {
193
211
  export declare enum PathMarkerColor {
194
212
  Start = "#00e74c",
195
213
  End = "#fd7567",
214
+ Anchor = "#ffb300",
196
215
  Default = "#2196F3"
197
216
  }
198
- export type _360AssetsQueryParams = {
199
- page: number;
200
- limit: number;
201
- projectID: string;
217
+ export type _360AssetsQueryParams = PaginationParams & {
218
+ projectId: string;
202
219
  date: DateType;
203
220
  floor: string;
221
+ name: string;
204
222
  id: string;
205
223
  };
206
224
  export type _360AssetsRequestPayload = {
@@ -209,7 +227,7 @@ export type _360AssetsRequestPayload = {
209
227
  floor: string;
210
228
  uploadedBy?: string;
211
229
  };
212
- export type DrawingsRequestPayload = {
230
+ export type DrawingsRequestPayload = PaginationParams & {
213
231
  projectId?: string;
214
232
  name?: string;
215
233
  changedBy?: string;
@@ -217,10 +235,9 @@ export type DrawingsRequestPayload = {
217
235
  startDate?: string;
218
236
  endDate?: string;
219
237
  id?: number;
220
- page?: number;
221
- limit?: number;
222
238
  paginate?: boolean;
223
239
  withAsset?: boolean;
240
+ includeDeleted?: boolean;
224
241
  };
225
242
  export type GenerateFloorPayload = {
226
243
  overlay?: {
@@ -231,24 +248,7 @@ export type GenerateFloorPayload = {
231
248
  changedBy: string;
232
249
  name?: string;
233
250
  mapStyle?: string;
234
- overlayPositionCorners: {
235
- northEast: {
236
- lat: number;
237
- lng: number;
238
- };
239
- northWest: {
240
- lat: number;
241
- lng: number;
242
- };
243
- southWest: {
244
- lat: number;
245
- lng: number;
246
- };
247
- southEast: {
248
- lat: number;
249
- lng: number;
250
- };
251
- };
251
+ overlayPositionCorners: _360OverlayPosition;
252
252
  };
253
253
  export type _360QueueQueryParams = {
254
254
  projectId?: string;
@@ -261,16 +261,105 @@ export type _360AssetsUploadPayload = {
261
261
  title: string;
262
262
  fileExtension: string;
263
263
  }[];
264
- deviceSerial: string;
265
- startPosition: string;
266
- endPosition: string;
267
- isTimelapse: boolean;
268
- isImagesOnly: boolean;
264
+ deviceSerial?: string;
265
+ startPosition?: string;
266
+ endPosition?: string;
267
+ isTimelapse?: boolean;
268
+ isImagesOnly?: boolean;
269
269
  };
270
270
  export type Generate360MapRequestPayload = {
271
- dateId: string;
271
+ dateId: string | number;
272
272
  floorId: string;
273
- cameraOffset: string;
273
+ cameraOffset: string | number;
274
274
  startPoint: string;
275
275
  endPoint: string;
276
+ drawingId?: number;
277
+ markers?: Array<{
278
+ position: {
279
+ x: number;
280
+ y: number;
281
+ z: number;
282
+ };
283
+ }>;
284
+ startPointIndex?: number;
285
+ endPointIndex?: number;
286
+ };
287
+ export declare enum EModelsType {
288
+ FBX = "FBX",
289
+ PointCloud = "PLY"
290
+ }
291
+ export type _360FloorRef = {
292
+ projectID: string;
293
+ dateID: string | number;
294
+ floorID: _360FloorId;
295
+ };
296
+ export type _360Vector3 = {
297
+ x: number;
298
+ y: number;
299
+ z: number;
300
+ };
301
+ export type _360MarkerData = {
302
+ cameraPosition: _360Vector3;
303
+ nextRoomId: string;
304
+ position: _360Vector3;
305
+ geolocation?: {
306
+ latitude: number;
307
+ longitude: number;
308
+ };
309
+ rotation: {
310
+ _order: string;
311
+ _x: number;
312
+ _y: number;
313
+ _z: number;
314
+ isEuler: boolean;
315
+ x?: number;
316
+ y?: number;
317
+ z?: number;
318
+ };
319
+ };
320
+ export type _360Route = {
321
+ overlayID?: number;
322
+ track?: string;
323
+ cameraHeadingOffset?: number;
324
+ };
325
+ export type _360CalibrationDetails = {
326
+ baseOriginOf360Viewer?: _360Vector3;
327
+ baseOriginOfForgeViewer?: _360Vector3;
328
+ rotationMatrix?: {
329
+ elements: number[];
330
+ };
331
+ scaleMatrix?: {
332
+ elements: number[];
333
+ };
334
+ };
335
+ export type _360FloorData = {
336
+ _3DMarkers: _360MarkerData[];
337
+ fbxModel: string | null;
338
+ fbxModelHQ: string | null;
339
+ pointCloudModelHQ: string | null;
340
+ initialMarker: string;
341
+ cameraRotation: _360CameraRotation;
342
+ steps: number;
343
+ route: _360Route | null;
344
+ sceneScale: number;
345
+ modelViewerFeatureFlag: boolean;
346
+ imagesOnlyFeatureFlag: boolean;
347
+ forgeBIMFeatureFlag: boolean;
348
+ isForgeGravityEnabled: boolean;
349
+ bimHeight?: number | null;
350
+ initialForgeView: ForgeView | null;
351
+ calibrationDetails: _360CalibrationDetails;
352
+ enhancedLightFeatureFlag: boolean;
353
+ };
354
+ export type _360PinData = {
355
+ position: _360Vector3;
356
+ pinType: string;
357
+ name: string;
358
+ pinId?: string;
359
+ cameraExid?: string;
360
+ currentRoom?: string;
361
+ cameraRotation?: {
362
+ polarAngle: number;
363
+ azimuthAngle: number;
364
+ };
276
365
  };
@@ -41,7 +41,7 @@ export type AdminInvite = {
41
41
  resourceId: string;
42
42
  assigner: AdminInviteAssigner;
43
43
  sentCount: number;
44
- lastSentAt: string;
44
+ lastSentAt: string | null;
45
45
  authContext: AdminInviteAuthContext;
46
46
  statusName: string;
47
47
  };
@@ -0,0 +1,244 @@
1
+ import { PaginatedItems, PaginationParams } from "@evercam/api/types";
2
+ export declare enum AiApp {
3
+ GateReport = "gate_report",
4
+ Ppe = "ppe",
5
+ SiteAnalytics = "site_analytics",
6
+ Observations360 = "observations_360"
7
+ }
8
+ export declare enum AiProvider {
9
+ Gemini = "gemini",
10
+ OpenAi = "openai",
11
+ Anthropic = "anthropic"
12
+ }
13
+ export declare enum AiConfigsPromptDialogMode {
14
+ Create = "create",
15
+ Edit = "edit",
16
+ View = "view",
17
+ Subprompt = "subprompt"
18
+ }
19
+ export declare enum AiConfigsKeyDialogMode {
20
+ Create = "create",
21
+ Rotate = "rotate",
22
+ Rename = "rename"
23
+ }
24
+ export interface AiAppConfig {
25
+ bg: string;
26
+ fg: string;
27
+ border: string;
28
+ icon: string;
29
+ }
30
+ export declare const AI_APP_CONFIGS: Record<AiApp | "generic", AiAppConfig>;
31
+ export interface AiProviderConfig {
32
+ bg: string;
33
+ fg: string;
34
+ icon: string;
35
+ }
36
+ export declare const AI_PROVIDER_CONFIGS: Record<AiProvider, AiProviderConfig>;
37
+ export declare enum AiPromptModel {
38
+ Gemini3Pro = "gemini-3-pro",
39
+ Gemini3FlashPreview = "gemini-3-flash-preview",
40
+ Gemini25Pro = "gemini-2.5-pro",
41
+ Gemini25Flash = "gemini-2.5-flash",
42
+ Gemini20Flash = "gemini-2.0-flash",
43
+ Gpt5 = "gpt-5",
44
+ Gpt5Mini = "gpt-5-mini",
45
+ Gpt4o = "gpt-4o",
46
+ Gpt4oMini = "gpt-4o-mini",
47
+ ClaudeOpus45 = "claude-opus-4-5",
48
+ ClaudeSonnet46 = "claude-sonnet-4-6",
49
+ ClaudeHaiku45 = "claude-haiku-4-5"
50
+ }
51
+ export declare enum AiPromptType {
52
+ Prompt = "prompt",
53
+ Parent = "parent",
54
+ Subprompt = "subprompt"
55
+ }
56
+ export interface AiPrompt {
57
+ id: number;
58
+ title: string | null;
59
+ purpose: string | null;
60
+ app: string | null;
61
+ model: string | null;
62
+ prompt: string;
63
+ outputSchema: Record<string, unknown> | null;
64
+ createdBy: string;
65
+ createdAt: string;
66
+ updatedAt: string;
67
+ promptType: AiPromptType;
68
+ parentId: number | null;
69
+ subpromptCount: number;
70
+ }
71
+ export interface AiPromptCreatePayload {
72
+ title?: string | null;
73
+ purpose: string;
74
+ app: string;
75
+ model?: string | null;
76
+ prompt: string;
77
+ outputSchema?: Record<string, unknown> | null;
78
+ promptType?: AiPromptType.Prompt | AiPromptType.Parent;
79
+ }
80
+ export interface AiPromptUpdatePayload {
81
+ title?: string | null;
82
+ purpose?: string;
83
+ app?: string;
84
+ model?: string | null;
85
+ prompt?: string;
86
+ outputSchema?: Record<string, unknown> | null;
87
+ }
88
+ export type AiPromptQueryParams = PaginationParams & {
89
+ app?: string;
90
+ purpose?: string;
91
+ model?: string;
92
+ search?: string;
93
+ createdBy?: string;
94
+ promptType?: AiPromptType;
95
+ includeSubprompts?: boolean;
96
+ };
97
+ export interface AiSubpromptCreatePayload {
98
+ title?: string | null;
99
+ purpose: string;
100
+ model?: string | null;
101
+ prompt: string;
102
+ outputSchema?: Record<string, unknown> | null;
103
+ }
104
+ export type AiPromptListResponse = PaginatedItems<AiPrompt>;
105
+ export interface AiPromptCreateResponse {
106
+ created: boolean;
107
+ data: AiPrompt;
108
+ message: string;
109
+ }
110
+ export interface AiPromptUpdateResponse {
111
+ updated: boolean;
112
+ id: number | string;
113
+ message: string;
114
+ }
115
+ export interface AiPromptDeleteResponse {
116
+ deleted: boolean;
117
+ count: number;
118
+ message: string;
119
+ }
120
+ export interface AiApiKey {
121
+ id: number;
122
+ projectExid: string;
123
+ provider: string;
124
+ name: string;
125
+ purpose: string;
126
+ enabled: boolean;
127
+ autoGenerated: boolean;
128
+ firstUsedAt: string | null;
129
+ lastUsedAt: string | null;
130
+ insertedAt: string;
131
+ updatedAt: string;
132
+ }
133
+ export interface AiApiKeyCreatePayload {
134
+ projectExid: string;
135
+ provider: string;
136
+ name?: string;
137
+ purpose?: string;
138
+ apiKey?: string;
139
+ enabled?: boolean;
140
+ }
141
+ export interface AiApiKeyUpdatePayload {
142
+ name?: string;
143
+ enabled?: boolean;
144
+ apiKey?: string;
145
+ }
146
+ export type AiApiKeyQueryParams = {
147
+ projectExid?: string;
148
+ provider?: string;
149
+ purpose?: string;
150
+ enabled?: boolean;
151
+ };
152
+ export interface AiApiKeyCreateResponse {
153
+ created: boolean;
154
+ data: AiApiKey;
155
+ message: string;
156
+ }
157
+ export interface AiApiKeyUpdateResponse {
158
+ updated: boolean;
159
+ id: number | string;
160
+ message: string;
161
+ }
162
+ export interface AiApiKeyDeleteResponse {
163
+ deleted: boolean;
164
+ count: number;
165
+ message: string;
166
+ }
167
+ export declare enum AiObservationFeasibilityStatus {
168
+ Prod = "prod",
169
+ Beta = "beta",
170
+ Parked = "parked"
171
+ }
172
+ export declare enum AiObservationTimeDetection {
173
+ PerSecond = "per_second",
174
+ PerMinute = "per_minute",
175
+ Hourly = "hourly",
176
+ Daily = "daily"
177
+ }
178
+ export interface AiObservationFeasibilityConfig {
179
+ bg: string;
180
+ fg: string;
181
+ border: string;
182
+ label: string;
183
+ }
184
+ export declare const AI_OBSERVATION_FEASIBILITY_CONFIGS: Record<AiObservationFeasibilityStatus, AiObservationFeasibilityConfig>;
185
+ export interface AiObservationType {
186
+ id: number;
187
+ observationCode: string;
188
+ name: string;
189
+ description: string | null;
190
+ type: string;
191
+ rules: Record<string, unknown> | null;
192
+ timeDetection: string | null;
193
+ every: number | null;
194
+ severity: number | null;
195
+ feasibilityStatus: AiObservationFeasibilityStatus;
196
+ promptId: number | null;
197
+ promptName: string | null;
198
+ insertedAt: string;
199
+ updatedAt: string;
200
+ }
201
+ export interface AiObservationTypeCreatePayload {
202
+ observationCode: string;
203
+ name: string;
204
+ description?: string | null;
205
+ type: string;
206
+ rules?: Record<string, unknown> | null;
207
+ timeDetection?: string | null;
208
+ every?: number | null;
209
+ severity?: number | null;
210
+ feasibilityStatus: AiObservationFeasibilityStatus;
211
+ promptId?: number | null;
212
+ }
213
+ export type AiObservationTypeUpdatePayload = Partial<Omit<AiObservationTypeCreatePayload, "observationCode">>;
214
+ export type AiObservationTypeQueryParams = {
215
+ search?: string;
216
+ feasibilityStatus?: string;
217
+ sourceType?: string;
218
+ type?: string;
219
+ page?: number;
220
+ limit?: number;
221
+ };
222
+ export interface AiObservationTypeListResponse {
223
+ items: AiObservationType[];
224
+ total: number;
225
+ page: number;
226
+ limit: number;
227
+ from: number;
228
+ to: number;
229
+ }
230
+ export interface AiObservationTypeCreateResponse {
231
+ created: boolean;
232
+ data: AiObservationType;
233
+ message: string;
234
+ }
235
+ export interface AiObservationTypeUpdateResponse {
236
+ updated: boolean;
237
+ id: number | string;
238
+ message: string;
239
+ }
240
+ export interface AiObservationTypeDeleteResponse {
241
+ deleted: boolean;
242
+ count: number;
243
+ message: string;
244
+ }