@evercam/api 1.0.0-8c3d33cd2 → 1.0.0-8d4c81f92

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 (61) hide show
  1. package/README.md +1 -0
  2. package/dist/api/api/3dFirebaseApi.d.ts +60 -34
  3. package/dist/api/api/adminApi.d.ts +19 -15
  4. package/dist/api/api/aiApi.d.ts +125 -2
  5. package/dist/api/api/authzApi.d.ts +4 -1
  6. package/dist/api/api/evercamApi.d.ts +36 -12
  7. package/dist/api/api/evercamLabsApi.d.ts +5 -5
  8. package/dist/api/api/ingestApi.d.ts +21 -7
  9. package/dist/api/types/360.d.ts +122 -43
  10. package/dist/api/types/aiConfigs.d.ts +244 -0
  11. package/dist/api/types/analytics.d.ts +37 -9
  12. package/dist/api/types/anpr.d.ts +31 -2
  13. package/dist/api/types/authz.d.ts +71 -0
  14. package/dist/api/types/automation.d.ts +23 -4
  15. package/dist/api/types/axios.d.ts +8 -9
  16. package/dist/api/types/bim.d.ts +28 -5
  17. package/dist/api/types/camera.d.ts +7 -10
  18. package/dist/api/types/comments.d.ts +4 -3
  19. package/dist/api/types/connector.d.ts +2 -0
  20. package/dist/api/types/copilot.d.ts +0 -3
  21. package/dist/api/types/detections.d.ts +3 -10
  22. package/dist/api/types/drone.d.ts +7 -7
  23. package/dist/api/types/errors.d.ts +13 -1
  24. package/dist/api/types/gateReport.d.ts +1 -11
  25. package/dist/api/types/gateReportManagement.d.ts +170 -0
  26. package/dist/api/types/hammertech.d.ts +98 -0
  27. package/dist/api/types/index.d.ts +7 -1
  28. package/dist/api/types/ingest.d.ts +90 -3
  29. package/dist/api/types/kit.d.ts +42 -51
  30. package/dist/api/types/media.d.ts +8 -2
  31. package/dist/api/types/notification.d.ts +41 -2
  32. package/dist/api/types/observationEvents.d.ts +141 -0
  33. package/dist/api/types/observations.d.ts +84 -0
  34. package/dist/api/types/planner.d.ts +3 -11
  35. package/dist/api/types/posthog.d.ts +20 -0
  36. package/dist/api/types/project.d.ts +7 -0
  37. package/dist/api/types/recording.d.ts +5 -12
  38. package/dist/api/types/ring.d.ts +16 -16
  39. package/dist/api/types/roi.d.ts +2 -10
  40. package/dist/api/types/routeParams.d.ts +1 -0
  41. package/dist/api/types/shared.d.ts +1 -19
  42. package/dist/api/types/shares.d.ts +0 -13
  43. package/dist/api/types/siteAnalytics.d.ts +3 -5
  44. package/dist/api/types/siteAnalyticsManagement.d.ts +127 -0
  45. package/dist/api/types/siteView.d.ts +0 -1
  46. package/dist/api/types/snapshots.d.ts +13 -0
  47. package/dist/api/types/socket.d.ts +4 -0
  48. package/dist/api/types/storyblok.d.ts +0 -13
  49. package/dist/api/types/timelapse.d.ts +2 -13
  50. package/dist/api/types/user.d.ts +16 -4
  51. package/dist/api/utils.d.ts +0 -1
  52. package/dist/index.js +1477 -787
  53. package/dist/index.js.map +1 -1
  54. package/dist/index.umd.cjs +1 -1
  55. package/dist/index.umd.cjs.map +1 -1
  56. package/dist/shared/types/components.d.ts +102 -34
  57. package/dist/shared/types/customDataTableFilters.d.ts +10 -0
  58. package/dist/shared/types/index.d.ts +2 -0
  59. package/dist/shared/types/observations.d.ts +25 -0
  60. package/package.json +4 -2
  61. package/dist/api/types/vendorModel.d.ts +0 -15
@@ -1,6 +1,6 @@
1
1
  import type { AxiosRequestConfig } from "axios";
2
2
  import type { SwrRequestConfig } from "@evercam/api/types";
3
- import type { _360AssetsQueryParams, _360AssetsRequestPayload, _360QueueQueryParams, _360AssetsUploadPayload, _360AssetsResponse, _360AssetsCountsResponse, _360QueueResponse, _360FloorsResponse, DroneQueueResponse, DroneUploadsResponse, IngestUploadInitResponse, BimUploadsResponse, MobileAssetsQueryParams, MobileCaptureAssetsResponse, BimUploadPayload, BimUploadsQueryParams, CalculateMeasuringOperationRequestPayload, DrawingsRequestPayload, DronesQueryParams, DroneUploadUpdateRequestPayload, FlightImagesQueryParams, Generate360MapRequestPayload, GenerateFloorPayload, InspectionToolRequestPayload, JsonObject, _360WalkV2, _360FloorV2 } from "@evercam/api/types";
3
+ import type { _360AssetsQueryParams, _360AssetsRequestPayload, _360QueueQueryParams, _360AssetsUploadPayload, _360AssetsResponse, _360AssetsCountsResponse, _360QueueResponse, _360FloorsResponse, DroneQueueResponse, DroneUploadsResponse, IngestUploadInitResponse, BimUploadsResponse, MobileAssetsQueryParams, MobileCaptureAssetsResponse, BimUploadPayload, BimUploadsQueryParams, CalculateMeasuringOperationRequestPayload, DrawingsRequestPayload, DronesQueryParams, DroneUploadUpdateRequestPayload, IngestProcessingProgress, FlightImagesQueryParams, Generate360MapRequestPayload, GenerateFloorPayload, InspectionToolRequestPayload, JsonObject, _360WalkV2, _360FloorV2 } from "@evercam/api/types";
4
4
  import { IngestVersions, IngestTypes } from "@evercam/api/types";
5
5
  export declare const getIngestApiUrls: (type: string) => string[];
6
6
  export declare const IngestApi: {
@@ -12,6 +12,7 @@ export declare const IngestApi: {
12
12
  getDrones(params: {
13
13
  params: Partial<DronesQueryParams>;
14
14
  }): Promise<DroneUploadsResponse>;
15
+ getProcessingProgress(id: number): Promise<IngestProcessingProgress>;
15
16
  getArchive(id: number, params: {
16
17
  dataType: string;
17
18
  }): Promise<Blob>;
@@ -27,7 +28,7 @@ export declare const IngestApi: {
27
28
  verifyToken(projectId: string, params: {
28
29
  token: string;
29
30
  }): Promise<JsonObject>;
30
- calculateMeasuringOperation(projectId: string, params: CalculateMeasuringOperationRequestPayload): Promise<JsonObject>;
31
+ calculateMeasuringOperation(projectId: string, params: CalculateMeasuringOperationRequestPayload, ingestUrl?: string): Promise<JsonObject>;
31
32
  inspectionTool(projectId: string, params: InspectionToolRequestPayload): Promise<JsonObject>;
32
33
  isInspectionEnabled(projectId: string, params?: JsonObject): Promise<JsonObject>;
33
34
  getDroneQueueSize(droneUrl: string): Promise<DroneQueueResponse>;
@@ -41,13 +42,16 @@ export declare const IngestApi: {
41
42
  get360AssetsCounts(projectId: string, params: {
42
43
  uploadedBy: string;
43
44
  }): Promise<_360AssetsCountsResponse>;
44
- get360AssetLink(projectId: string, date: string, floor: string, assetType: string, drawingId: string, marker: string | null): Promise<string>;
45
+ get360AssetLink(projectId: string, date: string, floor: string | number, assetType: string, drawingId: string | number, marker: string | null): Promise<string | string[]>;
45
46
  update360(id: number, payload: _360AssetsRequestPayload): Promise<_360WalkV2>;
46
- update360ByProjectDateName(projectId: string, date: string, floor: string, payload: _360AssetsRequestPayload): Promise<_360WalkV2>;
47
+ update360ByProjectDateName(projectId: string, date: string, floor: string, payload: Partial<_360AssetsRequestPayload> & {
48
+ drawingId?: number;
49
+ }): Promise<_360WalkV2>;
47
50
  deleteUpload(id: number): Promise<void>;
48
51
  getArchive(id: number, params: {
49
52
  dateType: string;
50
53
  }): Promise<Blob>;
54
+ get360Progress(id: number): Promise<IngestProcessingProgress>;
51
55
  createUpload(projectId: string, params: _360AssetsRequestPayload): Promise<IngestUploadInitResponse>;
52
56
  upload(id: number, params: JsonObject, payload: _360AssetsUploadPayload): Promise<_360WalkV2>;
53
57
  reprocess360(id: number): Promise<void>;
@@ -64,11 +68,13 @@ export declare const IngestApi: {
64
68
  getDrawingById(id: number, projectExid: string): Promise<_360FloorV2>;
65
69
  updateDrawing(id: number, projectExid: string, payload: GenerateFloorPayload): Promise<_360FloorV2>;
66
70
  deleteDrawing(id: number): Promise<void>;
71
+ restoreDrawing(id: number): Promise<void>;
67
72
  transferWalks(sourceId: number, targetId: number, projectExid: string): Promise<void>;
68
73
  createDrawing(projectExid: string, payload: GenerateFloorPayload, createdBy: string): Promise<_360FloorV2>;
69
74
  fetchDrawingOverlay(id: number, params: {
70
75
  view: boolean;
71
- }, onDownloadProgress: (progress: ProgressEvent) => void): Promise<Blob>;
76
+ thumbnail?: boolean;
77
+ }, onDownloadProgress?: (progress: ProgressEvent) => void, extraConfig?: AxiosRequestConfig): Promise<string>;
72
78
  getFloorArchive(id: number): Promise<string>;
73
79
  generate360map(projectId: string, params: Generate360MapRequestPayload): Promise<JsonObject>;
74
80
  get360QueueSize(ingestUrl: string, params?: _360QueueQueryParams): Promise<_360QueueResponse>;
@@ -87,6 +93,9 @@ export declare const IngestApi: {
87
93
  name: string;
88
94
  }, payload: BimUploadPayload): Promise<void>;
89
95
  };
96
+ webhook: {
97
+ notifyBimUpdated(projectId: string, bimIdentifier: string): Promise<void>;
98
+ };
90
99
  mobileCapture: {
91
100
  getProjectMobileAssets(params: MobileAssetsQueryParams, extraConfig?: AxiosRequestConfig): Promise<MobileCaptureAssetsResponse>;
92
101
  getMobileAssetPhoto(assetId: string | number, params: {
@@ -109,17 +118,20 @@ export declare const IngestApi: {
109
118
  modelZip: string;
110
119
  orthomosaicZip: string;
111
120
  reportPdf: string;
121
+ processingLog: string;
112
122
  uploadedBy: string;
113
123
  processingStatus: import("@evercam/api/types").IngestProcessingStatus | string;
114
124
  modelCesiumAssetId: string;
115
125
  updatedAt: string;
116
126
  hasTusLinks: boolean;
127
+ hasSteps: boolean;
128
+ aerialShots: import("@evercam/api/types").AerialShotItem[];
117
129
  } | {
118
130
  ingestVersion: string;
119
131
  archive: string;
120
132
  date: string;
121
133
  deviceSerial: string | null;
122
- endPosition: unknown | null;
134
+ endPosition: string | null;
123
135
  floor: string;
124
136
  floorId: number;
125
137
  id: number;
@@ -134,8 +146,10 @@ export declare const IngestApi: {
134
146
  processingStatus: string;
135
147
  projectId: string;
136
148
  report: string;
149
+ processingLog: string;
150
+ hasSteps?: boolean;
137
151
  route: unknown | null;
138
- startPosition: unknown | null;
152
+ startPosition: string | null;
139
153
  tusLinks: unknown | null;
140
154
  updatedAt: string;
141
155
  uploadedBy: string;
@@ -1,5 +1,5 @@
1
1
  import { DateType } from "@evercam/api/types/time";
2
- import { GeoPoint, Point3D } from "@evercam/api/types/shared";
2
+ import { GeoPoint, PaginationParams, Point3D } from "@evercam/api/types/shared";
3
3
  export type _360OverlayPosition = {
4
4
  northEast: GeoPoint;
5
5
  northWest: GeoPoint;
@@ -77,7 +77,7 @@ export type _360WalkV2 = {
77
77
  archive: string;
78
78
  date: string;
79
79
  deviceSerial: string | null;
80
- endPosition: unknown | null;
80
+ endPosition: string | null;
81
81
  floor: string;
82
82
  floorId: number;
83
83
  id: number;
@@ -92,8 +92,10 @@ 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
- startPosition: unknown | null;
98
+ startPosition: string | null;
97
99
  tusLinks: unknown | null;
98
100
  updatedAt: string;
99
101
  uploadedBy: string;
@@ -112,13 +114,15 @@ export type _360FloorV2 = {
112
114
  overlayPosition: _360OverlayPosition;
113
115
  insertedAt: string;
114
116
  updatedAt: string;
117
+ deletedAt: string | null;
115
118
  };
116
119
  export type _360Scene = {
117
120
  date: string;
118
- dateID: number;
121
+ dateID: string | number;
119
122
  floors: {
120
123
  floorID: _360FloorId;
121
124
  name: string;
125
+ isValidated?: boolean;
122
126
  }[];
123
127
  polarAngle: number;
124
128
  azimuthAngle: number;
@@ -149,24 +153,7 @@ export type _360ProjectListItem = {
149
153
  providerSuffix: string;
150
154
  timeline: string;
151
155
  uniqueId: string;
152
- };
153
- export type _360FullProject = {
154
- dates: _360SceneWithFloors[];
155
- integrationType: string;
156
- projectId: string;
157
- projectName: string;
158
- providerID: string;
159
- providerPrefix: string;
160
- providerSuffix: string;
161
- timeline: string;
162
- uniqueId: string;
163
- };
164
- export type _360FullFloor = _360Floor & {
165
- id: _360FloorId;
166
- name: string;
167
- };
168
- export type _360SceneWithFloors = _360Scene & {
169
- floors: _360FullFloor[];
156
+ requiresValidation?: boolean;
170
157
  };
171
158
  export type _360ProjectJsonResponse = {
172
159
  dates: _360Scene[];
@@ -181,12 +168,24 @@ export type MobileCaptureSnapshot = {
181
168
  thumbnailUrl: string;
182
169
  };
183
170
  export declare enum _360UrlParams {
184
- DateId = "date_id",
171
+ DateId = "dateId",
185
172
  Date = "date",
186
173
  Floor = "floor",
187
174
  Marker = "marker",
188
175
  PolarAngle = "polarAngle",
189
- AzimuthAngle = "azimuthAngle"
176
+ AzimuthAngle = "azimuthAngle",
177
+ Zoom = "zoom",
178
+ User = "user",
179
+ ViewerMode = "viewer_mode",
180
+ ProjectId = "projectId",
181
+ Unit = "unit",
182
+ LockDate = "lockDate",
183
+ LockFloor = "lockFloor",
184
+ LockMarker = "lockMarker",
185
+ IsWidget = "isWidget",
186
+ MediaLocked = "mediaLocked",
187
+ Debug = "debug",
188
+ RequiresValidation = "requires_validation"
190
189
  }
191
190
  export declare enum _360AssetType {
192
191
  Video = "video",
@@ -200,11 +199,6 @@ export declare enum _360AssetLabel {
200
199
  Walks = "walks",
201
200
  MobilePhotos = "mobilePhotos"
202
201
  }
203
- export declare enum _360Feature {
204
- BIM = "BIM",
205
- Minimap = "Minimap",
206
- Minimodel = "Minimodel"
207
- }
208
202
  export declare enum _360IntergrationType {
209
203
  Evercam = "Evercam",
210
204
  Matterport = "Matterport",
@@ -217,10 +211,8 @@ export declare enum PathMarkerColor {
217
211
  End = "#fd7567",
218
212
  Default = "#2196F3"
219
213
  }
220
- export type _360AssetsQueryParams = {
221
- page: number;
222
- limit: number;
223
- projectID: string;
214
+ export type _360AssetsQueryParams = PaginationParams & {
215
+ projectId: string;
224
216
  date: DateType;
225
217
  floor: string;
226
218
  id: string;
@@ -231,7 +223,7 @@ export type _360AssetsRequestPayload = {
231
223
  floor: string;
232
224
  uploadedBy?: string;
233
225
  };
234
- export type DrawingsRequestPayload = {
226
+ export type DrawingsRequestPayload = PaginationParams & {
235
227
  projectId?: string;
236
228
  name?: string;
237
229
  changedBy?: string;
@@ -239,10 +231,9 @@ export type DrawingsRequestPayload = {
239
231
  startDate?: string;
240
232
  endDate?: string;
241
233
  id?: number;
242
- page?: number;
243
- limit?: number;
244
234
  paginate?: boolean;
245
235
  withAsset?: boolean;
236
+ includeDeleted?: boolean;
246
237
  };
247
238
  export type GenerateFloorPayload = {
248
239
  overlay?: {
@@ -266,16 +257,104 @@ export type _360AssetsUploadPayload = {
266
257
  title: string;
267
258
  fileExtension: string;
268
259
  }[];
269
- deviceSerial: string;
270
- startPosition: string;
271
- endPosition: string;
272
- isTimelapse: boolean;
273
- isImagesOnly: boolean;
260
+ deviceSerial?: string;
261
+ startPosition?: string;
262
+ endPosition?: string;
263
+ isTimelapse?: boolean;
264
+ isImagesOnly?: boolean;
274
265
  };
275
266
  export type Generate360MapRequestPayload = {
276
- dateId: string;
267
+ dateId: string | number;
277
268
  floorId: string;
278
- cameraOffset: string;
269
+ cameraOffset: string | number;
279
270
  startPoint: string;
280
271
  endPoint: string;
272
+ drawingId?: number;
273
+ markers?: Array<{
274
+ position: {
275
+ x: number;
276
+ y: number;
277
+ z: number;
278
+ };
279
+ }>;
280
+ startPointIndex?: number;
281
+ endPointIndex?: number;
282
+ };
283
+ export declare enum EModelsType {
284
+ FBX = "FBX",
285
+ PointCloud = "PLY"
286
+ }
287
+ export type _360FloorRef = {
288
+ projectID: string;
289
+ dateID: string | number;
290
+ floorID: _360FloorId;
291
+ };
292
+ export type _360Vector3 = {
293
+ x: number;
294
+ y: number;
295
+ z: number;
296
+ };
297
+ export type _360MarkerData = {
298
+ cameraPosition: _360Vector3;
299
+ nextRoomId: string;
300
+ position: _360Vector3;
301
+ geolocation?: {
302
+ latitude: number;
303
+ longitude: number;
304
+ };
305
+ rotation: {
306
+ _order: string;
307
+ _x: number;
308
+ _y: number;
309
+ _z: number;
310
+ isEuler: boolean;
311
+ x?: number;
312
+ y?: number;
313
+ z?: number;
314
+ };
315
+ };
316
+ export type _360Route = {
317
+ overlayID?: number;
318
+ track?: string;
319
+ cameraHeadingOffset?: number;
320
+ };
321
+ export type _360CalibrationDetails = {
322
+ baseOriginOf360Viewer?: _360Vector3;
323
+ baseOriginOfForgeViewer?: _360Vector3;
324
+ rotationMatrix?: {
325
+ elements: number[];
326
+ };
327
+ scaleMatrix?: {
328
+ elements: number[];
329
+ };
330
+ };
331
+ export type _360FloorData = {
332
+ _3DMarkers: _360MarkerData[];
333
+ fbxModel: string | null;
334
+ fbxModelHQ: string | null;
335
+ pointCloudModelHQ: string | null;
336
+ initialMarker: string;
337
+ cameraRotation: _360CameraRotation;
338
+ steps: number;
339
+ route: _360Route | null;
340
+ sceneScale: number;
341
+ modelViewerFeatureFlag: boolean;
342
+ imagesOnlyFeatureFlag: boolean;
343
+ forgeBIMFeatureFlag: boolean;
344
+ isForgeGravityEnabled: boolean;
345
+ initialForgeView: ForgeView | null;
346
+ calibrationDetails: _360CalibrationDetails;
347
+ enhancedLightFeatureFlag: boolean;
348
+ };
349
+ export type _360PinData = {
350
+ position: _360Vector3;
351
+ pinType: string;
352
+ name: string;
353
+ pinId?: string;
354
+ cameraExid?: string;
355
+ currentRoom?: string;
356
+ cameraRotation?: {
357
+ polarAngle: number;
358
+ azimuthAngle: number;
359
+ };
281
360
  };
@@ -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
+ }