@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,4 +1,4 @@
1
- import { AnprDirection, CameraExid, Date_HH, Date_YYYY, Date_YYYY_MM, Date_YYYY_MM_DD, DateTime, DateTimeSpaceSeparated, DateType, PaginatedItems, PaginationParams, ProjectExid, Timestamp } from "@/types";
1
+ import { AnprDirection, AnprEvent, CameraExid, DateType, PaginatedItems, PaginationParams, ProjectExid, RoiDirection, RoiShapeType, RoiType, Timestamp, TuplePoint2D } from "@evercam/api/types";
2
2
  export declare enum GateReportDetectionType {
3
3
  Auto = "auto",
4
4
  Manual = "manual",
@@ -147,8 +147,8 @@ export declare enum GateReportVehicleType {
147
147
  Unknown = "unknown"
148
148
  }
149
149
  export type GateReportVehicleTypeItem = {
150
- name: string;
151
- id: GateReportVehicleType;
150
+ label: string;
151
+ value: GateReportVehicleType;
152
152
  };
153
153
  export type GateReportEvent = {
154
154
  id: number;
@@ -174,10 +174,10 @@ export type GateReportLeftEvent = GateReportEvent & {
174
174
  };
175
175
  export type GateReportVerifiedDay = {
176
176
  id: number;
177
- day: Date_YYYY_MM_DD;
177
+ day: string;
178
178
  isMatched: boolean;
179
- insertedAt: DateTime;
180
- updatedAt: DateTime;
179
+ insertedAt: string;
180
+ updatedAt: string;
181
181
  verifiedBy: string;
182
182
  cameraExid: CameraExid;
183
183
  projectExid: ProjectExid;
@@ -195,16 +195,16 @@ export type EventsCount = {
195
195
  source: GateReportDataSource;
196
196
  };
197
197
  export type YearlyEventCount = EventsCount & {
198
- year: Date_YYYY;
198
+ year: string;
199
199
  };
200
200
  export type MonthlyEventCount = EventsCount & {
201
- month: Date_YYYY_MM;
201
+ month: string;
202
202
  };
203
203
  export type DailyEventCount = EventsCount & {
204
- day: Date_YYYY_MM_DD;
204
+ day: string;
205
205
  };
206
206
  export type HourlyEventCount = {
207
- hour: Date_HH;
207
+ hour: string;
208
208
  count: number;
209
209
  };
210
210
  export type EventCountRequestPayload = {
@@ -223,7 +223,7 @@ export declare enum GateReportDataSource {
223
223
  }
224
224
  export type GateReportResponsePayload = {
225
225
  source: GateReportDataSource;
226
- results: PaginatedItems<GateReportEvent>;
226
+ results: PaginatedItems<AnprEvent>;
227
227
  };
228
228
  export declare enum GateReportEventDirection {
229
229
  In = "in",
@@ -233,53 +233,45 @@ export declare enum GateReportEventDirection {
233
233
  export type GatReportRequestPayload = {
234
234
  camerasExid?: CameraExid[];
235
235
  eventType?: GateReportEventType;
236
- fromDate?: DateTime;
236
+ fromDate?: string;
237
237
  isPublic?: boolean;
238
- toDate?: DateTime;
238
+ toDate?: string;
239
239
  vehicleTypes?: GateReportVehicleType[];
240
240
  } & PaginationParams;
241
241
  export declare enum GateReportExportType {
242
242
  Pdf = "pdf",
243
243
  Csv = "csv"
244
244
  }
245
- export type EventsExportRequestParameters = {
246
- vehicleTypes: GateReportVehicleType[];
247
- fileType: GateReportExportType;
248
- fromDate: DateTimeSpaceSeparated;
249
- toDate: DateTimeSpaceSeparated;
250
- camerasExid: CameraExid[];
251
- eventType: GateReportEventType;
252
- };
253
- export type AnprBasedGateReportExportRequestParams = {
245
+ export type AnprExportBaseParams = {
254
246
  vehicleTypes?: GateReportVehicleType[];
255
247
  fileType?: GateReportExportType;
256
- fromDate?: DateTimeSpaceSeparated;
257
- toDate?: DateTimeSpaceSeparated;
248
+ fromDate?: string;
249
+ toDate?: string;
258
250
  camerasExid?: CameraExid[];
251
+ isPublic?: boolean;
252
+ };
253
+ export type EventsExportRequestParameters = AnprExportBaseParams & {
254
+ eventType: GateReportEventType;
255
+ };
256
+ export type AnprBasedGateReportExportRequestParams = AnprExportBaseParams & {
257
+ direction?: AnprDirection;
258
+ };
259
+ export type LegacyAnprExportParams = AnprExportBaseParams & {
259
260
  direction?: AnprDirection;
260
261
  };
261
- type X1 = number;
262
- type Y1 = number;
263
- type X2 = number;
264
- type Y2 = number;
265
- export declare enum GateReportROIShapeType {
266
- Rectangle = "rectangle",
267
- Direction = "direction",
268
- Line = "line"
269
- }
270
262
  export type GateReportROIShape = {
271
- coordinates: [[X1, Y1], [X2, Y2]];
272
- type: GateReportROIShapeType;
263
+ coordinates: TuplePoint2D[];
264
+ type: RoiShapeType;
273
265
  };
274
266
  export type GateReportROI = {
275
267
  cameraex?: string;
276
268
  fromDate?: string;
277
- directionFilter?: string;
269
+ directionFilter?: RoiDirection;
278
270
  id?: number;
279
271
  insertedAt?: Timestamp;
280
- isactive?: boolean;
272
+ isActive?: boolean;
281
273
  name?: string;
282
- roiType?: string;
274
+ roiType?: RoiType;
283
275
  updatedAt?: Timestamp;
284
276
  shapes?: GateReportROIShape[];
285
277
  };
@@ -301,14 +293,14 @@ export type VerifiedDaysQueryParams = PaginationParams & {
301
293
  camerasExid: CameraExid[];
302
294
  verifiedBy: string;
303
295
  isMatched: boolean;
304
- insertedAt: DateTime[];
305
- updatedAt: DateTime[];
296
+ insertedAt: string[];
297
+ updatedAt: string[];
306
298
  day: string;
307
299
  };
308
300
  export type VerifyDayUpdateRequestPayload = {
309
301
  camerasExid: string[];
310
302
  projectExid: string;
311
- day: Date_YYYY_MM_DD;
303
+ day: string;
312
304
  isMatched: boolean;
313
305
  verifiedBy: string;
314
306
  };
@@ -318,27 +310,23 @@ export type ProcessedDaysQueryParams = {
318
310
  eventType: GateReportEventType;
319
311
  };
320
312
  export type RoisQueryParams = {
321
- cameraExid: string;
313
+ camerasExid: CameraExid[];
322
314
  id: number;
323
315
  name: string;
324
316
  fromDate: string;
325
- roiType: GateReportROIShapeType;
326
- isactive: boolean;
317
+ roiType: RoiType;
318
+ isActive: boolean;
327
319
  directionFilter: string;
328
320
  sort: string;
329
321
  };
330
- export type GateReportROICreateRequestPayload = {
331
- id?: number;
332
- roi: {
333
- cameraex: string;
334
- name: string;
335
- roiType: string;
336
- isactive: true;
337
- fromDate: string;
338
- shapes: Record<string, unknown>[];
339
- directionFilter: string;
340
- note: string;
341
- };
342
- createdBy: string;
322
+ export type GateReportRoiRequestPayload = {
323
+ id: number;
324
+ cameraExid: string;
325
+ name: string;
326
+ roiType: RoiType;
327
+ isActive: true;
328
+ fromDate: string;
329
+ shapes: GateReportROIShape[];
330
+ directionFilter: string;
331
+ note: string;
343
332
  };
344
- export {};
@@ -1,4 +1,4 @@
1
- import { PaginationParams } from "@/types";
1
+ import { PaginationParams } from "@evercam/api/types";
2
2
  export declare enum HddFormat {
3
3
  ExFat = "ExFAT",
4
4
  HikFs = "HikFS"
@@ -61,3 +61,28 @@ export type HDDsQueryParams = PaginationParams & {
61
61
  type: string;
62
62
  hddStatus: string;
63
63
  };
64
+ export type AdminHddFootage = {
65
+ id: number;
66
+ cameraExid: string;
67
+ cameraName: string;
68
+ startDate: string | null;
69
+ endDate: string | null;
70
+ };
71
+ export type AdminHdd = {
72
+ id: number;
73
+ size: string;
74
+ type: string;
75
+ format: string;
76
+ location: string;
77
+ errorStatus: string | null;
78
+ createdAt: string;
79
+ serialNumber: string;
80
+ hddStatus: string;
81
+ reportedCapacity: string | null;
82
+ reportedFreeSpace: string | null;
83
+ reportedHddType: string | null;
84
+ reportedPath: string | null;
85
+ reportedProperty: string | null;
86
+ shelfBlock: string;
87
+ footages: AdminHddFootage[];
88
+ };
@@ -2,6 +2,7 @@ export * from "./360";
2
2
  export * from "./aconex";
3
3
  export * from "./analytics";
4
4
  export * from "./anpr";
5
+ export * from "./admin";
5
6
  export * from "./media";
6
7
  export * from "./autodesk";
7
8
  export * from "./bim";
@@ -29,8 +30,9 @@ export * from "./shares";
29
30
  export * from "./sim";
30
31
  export * from "./systemCheck";
31
32
  export * from "./planner";
32
- export * from "./storageServers";
33
+ export * from "./storageProvider";
33
34
  export * from "./streaming";
35
+ export * from "./storyblok";
34
36
  export * from "./time";
35
37
  export * from "./timelapse";
36
38
  export * from "./user";
@@ -57,3 +59,7 @@ export * from "./xweather";
57
59
  export * from "./posthog";
58
60
  export * from "./recycleBin";
59
61
  export * from "./authz";
62
+ export * from "./oauth";
63
+ export * from "./ring";
64
+ export * from "./smartSeach";
65
+ export * from "./siteView";
@@ -1,4 +1,5 @@
1
- import { PaginationParams, DateType } from "@/types";
1
+ import { PaginationParams, DateType, JsonValue } from "@evercam/api/types";
2
+ import type { _360FloorV2, _360WalkV2 } from "@evercam/api/types/360";
2
3
  export declare enum IngestProcessingStatus {
3
4
  Completed = "completed",
4
5
  Uploading = "uploading",
@@ -15,7 +16,14 @@ export declare enum MobileAssetsType {
15
16
  }
16
17
  export declare enum IngestVersions {
17
18
  V1 = "v1",
18
- V2 = "v2"
19
+ V2 = "v2",
20
+ V3 = "v3",
21
+ V4 = "v4",
22
+ V5 = "v5"
23
+ }
24
+ export declare enum IngestTypes {
25
+ Drone = "drone",
26
+ ThreeSixty = "360"
19
27
  }
20
28
  export type DronesQueryParams = Omit<PaginationParams, "sort"> & {
21
29
  projectId: string;
@@ -23,6 +31,34 @@ export type DronesQueryParams = Omit<PaginationParams, "sort"> & {
23
31
  token: string;
24
32
  processingStatus: IngestProcessingStatus;
25
33
  };
34
+ export type IngestPaginatedResponse<T> = {
35
+ items: T[];
36
+ page: number;
37
+ limit: number;
38
+ total: number;
39
+ pageCount?: number;
40
+ };
41
+ export type DroneUploadItem = {
42
+ id: number;
43
+ projectId: string;
44
+ consumed: boolean;
45
+ token: string;
46
+ flightDate: string;
47
+ flightGeolocation: string;
48
+ modelZip: string;
49
+ orthomosaicZip: string;
50
+ reportPdf: string;
51
+ uploadedBy: string;
52
+ processingStatus: IngestProcessingStatus | string;
53
+ modelCesiumAssetId: string;
54
+ updatedAt: string;
55
+ hasTusLinks: boolean;
56
+ };
57
+ export type DroneUploadsResponse = IngestPaginatedResponse<DroneUploadItem>;
58
+ export type DroneQueueResponse = {
59
+ size: number;
60
+ assetsDrone: DroneUploadItem[];
61
+ };
26
62
  export type DroneUploadUpdateRequestPayload = {
27
63
  flightMetadata: {
28
64
  dateTime: string;
@@ -34,6 +70,14 @@ export type DroneUploadUpdateRequestPayload = {
34
70
  title: string;
35
71
  fileExtension: string;
36
72
  }[];
73
+ aerialShots: {
74
+ url: string;
75
+ title: string;
76
+ fileExtension: string;
77
+ gpsLatitude: string;
78
+ gpsLongitude: string;
79
+ gpsAltitude: string;
80
+ }[];
37
81
  projectName: string;
38
82
  };
39
83
  export type CalculateMeasuringOperationRequestPayload = {
@@ -49,3 +93,55 @@ export type InspectionToolRequestPayload = {
49
93
  gpsAltitude: string;
50
94
  gpsCoordinates: string;
51
95
  };
96
+ export type _360AssetsResponse = IngestPaginatedResponse<_360WalkV2>;
97
+ export type _360AssetsCountsDay = {
98
+ day: number;
99
+ walks?: number;
100
+ mobilePhotos?: number;
101
+ [key: string]: JsonValue | undefined;
102
+ };
103
+ export type _360AssetsCountsResponse = {
104
+ days: _360AssetsCountsDay[];
105
+ };
106
+ export type _360QueueResponse = {
107
+ size: number;
108
+ assets360: _360WalkV2[];
109
+ };
110
+ export type _360FloorsResponse = IngestPaginatedResponse<_360FloorV2>;
111
+ export type BimUploadItem = {
112
+ id: number;
113
+ projectId: string;
114
+ uploadedBy: string;
115
+ files: string[];
116
+ updatedAt: string;
117
+ archive?: string | null;
118
+ };
119
+ export type BimUploadsResponse = IngestPaginatedResponse<BimUploadItem>;
120
+ export type IngestUploadInitResponse = {
121
+ id: number;
122
+ projectId: string;
123
+ token?: string;
124
+ projectName?: string;
125
+ };
126
+ export type MobileAssetsQueryParams = Partial<Omit<PaginationParams, "sort">> & {
127
+ projectId?: string;
128
+ project_id?: string;
129
+ assetType?: MobileAssetsType | string;
130
+ date?: DateType;
131
+ isPaginated?: boolean;
132
+ };
133
+ export type MobileCaptureAssetsResponse = IngestPaginatedResponse<{
134
+ id: string;
135
+ projectId?: string;
136
+ uploadedBy: string;
137
+ updatedAt: string;
138
+ assetType: string;
139
+ thumbnailUrl: string;
140
+ }> | Array<{
141
+ id: string;
142
+ projectId?: string;
143
+ uploadedBy: string;
144
+ updatedAt: string;
145
+ assetType: string;
146
+ thumbnailUrl: string;
147
+ }>;
@@ -1,4 +1,4 @@
1
- import { CameraExid, CountryCode, CountryId, DateTime, DateType, Nvr, PaginationParams, PowerType, Project, Router, Schedule, Tag } from "@/types";
1
+ import { CameraExid, CountryCode, CountryId, DateType, Nvr, PaginationParams, PowerType, Project, Router, Schedule, Tag } from "@evercam/api/types";
2
2
  export type Kit = {
3
3
  alarms: KitAlarm[];
4
4
  countryCode: CountryCode;
@@ -305,6 +305,13 @@ export type KitCreatePayload = {
305
305
  region: KitRegion;
306
306
  };
307
307
  };
308
+ export type KitMetricStatsEntry = {
309
+ timestamp: string;
310
+ voltage: number;
311
+ current: number;
312
+ panelVoltage: number;
313
+ panelPower: number;
314
+ };
308
315
  export type KitUpdatePayload = {
309
316
  countryId: number;
310
317
  name: string;
@@ -329,8 +336,8 @@ export type KitStorage = {
329
336
  formFactor: string;
330
337
  };
331
338
  model: string;
332
- insertedAt: DateTime;
333
- updatedAt: DateTime;
339
+ insertedAt: string;
340
+ updatedAt: string;
334
341
  vendor: string;
335
342
  kitId: number;
336
343
  capacity: number;
@@ -352,16 +359,16 @@ export type KitAlarmItem = {
352
359
  id: number;
353
360
  kitId: number;
354
361
  alarm: KitAlarm;
355
- startDate: DateTime;
356
- endDate: DateTime | null;
362
+ startDate: string;
363
+ endDate: string | null;
357
364
  };
358
365
  export type KitBox = {
359
366
  id: string;
360
367
  gatewaySerial: string;
361
368
  gatewayMac: string;
362
369
  gatewayConfig: Record<string, unknown> | null;
363
- insertedAt: DateTime;
364
- updatedAt: DateTime;
370
+ insertedAt: string;
371
+ updatedAt: string;
365
372
  };
366
373
  export type KitBoxCreatePayload = {
367
374
  id?: string;
@@ -2,3 +2,15 @@ export declare enum MapType {
2
2
  Hybrid = "hybrid",
3
3
  Terrain = "terrain"
4
4
  }
5
+ export type MapView = {
6
+ east?: number;
7
+ floorID?: string;
8
+ image?: string;
9
+ mapStyle?: MapType;
10
+ name: string;
11
+ north?: number;
12
+ projectId: string;
13
+ projectName: string;
14
+ south?: number;
15
+ west?: number;
16
+ };
@@ -1,4 +1,4 @@
1
- import type { CameraExid, Exid, DateType } from "@/types";
1
+ import type { CameraExid, Exid, DateType } from "@evercam/api/types";
2
2
  export type MediaExid = Exid;
3
3
  export type Media = {
4
4
  project_exid?: string;
@@ -25,6 +25,7 @@ export type Media = {
25
25
  projectExid?: string;
26
26
  thumbnailUrl?: string;
27
27
  mediaUrl?: string;
28
+ camera?: string;
28
29
  };
29
30
  export declare enum MediaType {
30
31
  EditedImage = "edit",
@@ -7,11 +7,41 @@ export declare enum NotificationType {
7
7
  DroneProcessing = "drone_processing_done",
8
8
  Processing360 = "three_sixty_done"
9
9
  }
10
- export interface CameraShareContext {
10
+ export interface NotificationContextBase {
11
+ cameraExid?: string;
12
+ projectExid?: string;
13
+ }
14
+ export interface CameraShareContext extends NotificationContextBase {
11
15
  cameraExid: string;
12
16
  projectExid: string;
13
17
  shareId: number;
14
18
  }
19
+ export interface CameraStatusChangeContext extends NotificationContextBase {
20
+ cameraExid: string;
21
+ projectExid: string;
22
+ newStatus: string;
23
+ }
24
+ export interface MentionContext extends NotificationContextBase {
25
+ }
26
+ export interface TimelapseCreatedContext extends NotificationContextBase {
27
+ cameraExid: string;
28
+ projectExid: string;
29
+ archiveExid: string;
30
+ }
31
+ export interface TimelapseFailedContext extends NotificationContextBase {
32
+ cameraExid: string;
33
+ projectExid: string;
34
+ }
35
+ export interface DroneProcessingContext extends NotificationContextBase {
36
+ projectExid: string;
37
+ droneDate: string;
38
+ }
39
+ export interface Processing360Context extends NotificationContextBase {
40
+ projectExid: string;
41
+ date: string;
42
+ floor: string;
43
+ }
44
+ export type NotificationContext = CameraShareContext | CameraStatusChangeContext | MentionContext | TimelapseCreatedContext | TimelapseFailedContext | DroneProcessingContext | Processing360Context;
15
45
  export type Notification = {
16
46
  id: number;
17
47
  type: NotificationType;
@@ -23,5 +53,5 @@ export type Notification = {
23
53
  targetFullname: string;
24
54
  targetEmail: string;
25
55
  readTimestamp: string | null;
26
- context: CameraShareContext;
56
+ context: NotificationContext;
27
57
  };
@@ -0,0 +1,62 @@
1
+ export type OAuthClient = {
2
+ id: number;
3
+ name: string;
4
+ clientId: string;
5
+ redirectUris: string[];
6
+ logoUrl: string | null;
7
+ scopes: string[];
8
+ active: boolean;
9
+ description: string | null;
10
+ owner: {
11
+ id: number;
12
+ name: string;
13
+ email: string;
14
+ } | null;
15
+ createdAt: string;
16
+ updatedAt: string;
17
+ };
18
+ export type OAuthClientWithSecret = OAuthClient & {
19
+ clientSecret: string;
20
+ };
21
+ export type CreateOAuthClientPayload = {
22
+ name: string;
23
+ redirectUris: string[];
24
+ scopes?: string[];
25
+ description?: string;
26
+ logoUrl?: string;
27
+ };
28
+ export type AdminCreateOAuthClientPayload = CreateOAuthClientPayload & {
29
+ clientId?: string;
30
+ clientSecret?: string;
31
+ };
32
+ export type UpdateOAuthClientPayload = {
33
+ name?: string;
34
+ redirectUris?: string[];
35
+ scopes?: string[];
36
+ description?: string;
37
+ logoUrl?: string;
38
+ active?: boolean;
39
+ };
40
+ export type OAuthScopeDetail = {
41
+ scope: string;
42
+ description: string;
43
+ group: string;
44
+ };
45
+ export type OAuthConsentInfo = {
46
+ client: {
47
+ name: string;
48
+ logoUrl: string | null;
49
+ description: string | null;
50
+ };
51
+ scopes: OAuthScopeDetail[];
52
+ };
53
+ export type OAuthConsentPayload = {
54
+ clientId: string;
55
+ scope: string;
56
+ redirectUri: string;
57
+ state: string;
58
+ decision: "allow" | "deny";
59
+ };
60
+ export type OAuthConsentResponse = {
61
+ redirectUrl: string;
62
+ };
@@ -1,3 +1,34 @@
1
+ import { GeoPoint } from "./shared";
2
+ import { MapType } from "./map";
3
+ export type PlannerListItem = {
4
+ id: string;
5
+ projectId: string;
6
+ projectName: string;
7
+ projectLocation: string;
8
+ createdDate: string;
9
+ updatedDate: string;
10
+ owner?: string;
11
+ lastUpdatedBy?: string;
12
+ camerasCount?: number;
13
+ hasPlan?: boolean;
14
+ thumbnailUrl?: string;
15
+ projectMapType?: MapType;
16
+ sessionId?: string;
17
+ };
18
+ export type Coordinate = [number, number];
19
+ export type PolygonPath = Coordinate[];
20
+ export type PolygonCoordinates = PolygonPath[];
21
+ export interface GeoJSONPolygon {
22
+ type: "Polygon";
23
+ coordinates: PolygonCoordinates;
24
+ }
25
+ export declare enum PlannerUrlParams {
26
+ SitePlanId = "site_plan_id",
27
+ IsNewSitePlan = "is_new_site_plan",
28
+ IsBoundsMode = "is_bounds_mode",
29
+ ProjectPosition = "project_position",
30
+ DealId = "deal_id"
31
+ }
1
32
  export declare enum EDistortImageModes {
2
33
  FreeRotate = "freeRotate",
3
34
  Lock = "lock",
@@ -33,3 +64,70 @@ export declare enum ERoles {
33
64
  Admin = "admin",
34
65
  User = "user"
35
66
  }
67
+ export type PlannerOverlay = {
68
+ imageUrl?: string;
69
+ corners?: {
70
+ topLeft: GeoPoint;
71
+ topRight: GeoPoint;
72
+ bottomLeft: GeoPoint;
73
+ bottomRight: GeoPoint;
74
+ } | null;
75
+ };
76
+ export type PlannerCameraMarker = {
77
+ name?: string;
78
+ location?: GeoPoint;
79
+ heading?: number;
80
+ fovAngle?: number;
81
+ fovRadius?: number;
82
+ isVisible?: boolean;
83
+ color?: string;
84
+ };
85
+ export type SitePlanBounds = {
86
+ northEast: GeoPoint;
87
+ southWest: GeoPoint;
88
+ };
89
+ export type SitePlan = {
90
+ id?: string;
91
+ projectId?: string;
92
+ owner?: string;
93
+ lastUpdatedBy?: string;
94
+ projectName?: string;
95
+ projectLocation?: string;
96
+ projectMapType?: EMapTypes;
97
+ projectBounds?: SitePlanBounds;
98
+ overlay?: PlannerOverlay;
99
+ markers?: PlannerCameraMarker[];
100
+ thumbnailUrl?: string;
101
+ createdDate?: string;
102
+ updatedDate?: string;
103
+ };
104
+ export interface IDrawControl {
105
+ _toolbars: {
106
+ draw: {
107
+ _activeMode: {
108
+ handler: {
109
+ disable(): void;
110
+ completeShape(): void;
111
+ };
112
+ };
113
+ _modes: {
114
+ polygon: {
115
+ handler: {
116
+ enable(): void;
117
+ };
118
+ };
119
+ };
120
+ };
121
+ edit: {
122
+ _modes: {
123
+ edit: {
124
+ handler: {
125
+ enable(): void;
126
+ disable(): void;
127
+ save(): void;
128
+ };
129
+ };
130
+ };
131
+ };
132
+ };
133
+ }
@@ -16,3 +16,18 @@ export declare enum ActiveUsersMetric {
16
16
  WAU = "wau",
17
17
  MAU = "mau"
18
18
  }
19
+ export type PosthogUserParams = {
20
+ firstname?: string;
21
+ lastname?: string;
22
+ email: string;
23
+ telephone?: string;
24
+ country?: string;
25
+ isAdmin?: boolean;
26
+ persona?: string;
27
+ companyExid: string;
28
+ companyName: string;
29
+ isImpersonationLogin: boolean;
30
+ ImpersonatedUserEmail?: string;
31
+ ImpersonatedUserFirstname?: string;
32
+ impersonatedUserLastname?: string;
33
+ };