@evercam/api 1.0.0-ae46ef99c → 1.0.0-api-fixes-bdf31a1d5

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 (92) hide show
  1. package/README.md +4 -0
  2. package/dist/api/api/3dFirebaseApi.d.ts +170 -5
  3. package/dist/api/api/adminApi.d.ts +170 -99
  4. package/dist/api/api/aiApi.d.ts +99 -82
  5. package/dist/api/api/authzApi.d.ts +31 -15
  6. package/dist/api/api/client/axios.d.ts +2 -1
  7. package/dist/api/api/client/swr/Swr.d.ts +14 -0
  8. package/dist/api/api/client/swr/SwrStore.d.ts +10 -0
  9. package/dist/api/api/evercamApi.d.ts +158 -116
  10. package/dist/api/api/evercamLabsApi.d.ts +6 -4
  11. package/dist/api/api/exNvrApi.d.ts +1 -1
  12. package/dist/api/api/ingestApi.d.ts +119 -33
  13. package/dist/api/api/ptzApi.d.ts +12 -3
  14. package/dist/api/api/videoWallApi.d.ts +7 -7
  15. package/dist/api/api/weatherApi.d.ts +2 -2
  16. package/dist/api/types/360.d.ts +208 -7
  17. package/dist/api/types/aconex.d.ts +106 -7
  18. package/dist/api/types/admin.d.ts +67 -0
  19. package/dist/api/types/aiConfigs.d.ts +154 -0
  20. package/dist/api/types/analytics.d.ts +172 -41
  21. package/dist/api/types/anpr.d.ts +52 -13
  22. package/dist/api/types/auditLogs.d.ts +63 -38
  23. package/dist/api/types/authz.d.ts +61 -0
  24. package/dist/api/types/autodesk.d.ts +7 -7
  25. package/dist/api/types/automation.d.ts +86 -1
  26. package/dist/api/types/axios.d.ts +28 -7
  27. package/dist/api/types/bim.d.ts +77 -43
  28. package/dist/api/types/camera.d.ts +165 -135
  29. package/dist/api/types/comments.d.ts +43 -21
  30. package/dist/api/types/company.d.ts +91 -11
  31. package/dist/api/types/compare.d.ts +40 -21
  32. package/dist/api/types/connector.d.ts +4 -5
  33. package/dist/api/types/coolify.d.ts +20 -2
  34. package/dist/api/types/copilot.d.ts +11 -6
  35. package/dist/api/types/countries.d.ts +0 -7
  36. package/dist/api/types/credentials.d.ts +1 -0
  37. package/dist/api/types/detections.d.ts +23 -34
  38. package/dist/api/types/drone.d.ts +96 -6
  39. package/dist/api/types/errors.d.ts +12 -0
  40. package/dist/api/types/gateReport.d.ts +50 -158
  41. package/dist/api/types/gateReportManagement.d.ts +175 -0
  42. package/dist/api/types/hdd.d.ts +76 -17
  43. package/dist/api/types/index.d.ts +12 -1
  44. package/dist/api/types/ingest.d.ts +104 -3
  45. package/dist/api/types/kit.d.ts +71 -12
  46. package/dist/api/types/map.d.ts +12 -0
  47. package/dist/api/types/media.d.ts +21 -2
  48. package/dist/api/types/notification.d.ts +50 -14
  49. package/dist/api/types/nvr.d.ts +28 -0
  50. package/dist/api/types/oauth.d.ts +63 -0
  51. package/dist/api/types/planner.d.ts +101 -1
  52. package/dist/api/types/posthog.d.ts +15 -0
  53. package/dist/api/types/procore.d.ts +23 -16
  54. package/dist/api/types/progressPhoto.d.ts +30 -41
  55. package/dist/api/types/project.d.ts +182 -20
  56. package/dist/api/types/recording.d.ts +11 -14
  57. package/dist/api/types/recycleBin.d.ts +14 -0
  58. package/dist/api/types/ring.d.ts +53 -0
  59. package/dist/api/types/roi.d.ts +4 -3
  60. package/dist/api/types/routeParams.d.ts +2 -1
  61. package/dist/api/types/router.d.ts +43 -3
  62. package/dist/api/types/shared.d.ts +81 -53
  63. package/dist/api/types/shares.d.ts +6 -144
  64. package/dist/api/types/sim.d.ts +6 -9
  65. package/dist/api/types/siteAnalytics.d.ts +194 -48
  66. package/dist/api/types/siteView.d.ts +73 -0
  67. package/dist/api/types/smartSeach.d.ts +5 -0
  68. package/dist/api/types/snapshots.d.ts +108 -7
  69. package/dist/api/types/sso.d.ts +55 -0
  70. package/dist/api/types/storageProvider.d.ts +31 -0
  71. package/dist/api/types/storyblok.d.ts +40 -0
  72. package/dist/api/types/streaming.d.ts +4 -5
  73. package/dist/api/types/tag.d.ts +1 -1
  74. package/dist/api/types/time.d.ts +4 -18
  75. package/dist/api/types/timelapse.d.ts +46 -17
  76. package/dist/api/types/user.d.ts +174 -88
  77. package/dist/api/types/videoWall.d.ts +47 -14
  78. package/dist/api/types/weather.d.ts +151 -11
  79. package/dist/api/types/widget.d.ts +143 -54
  80. package/dist/api/types/xweather.d.ts +4 -4
  81. package/dist/index.js +2206 -1029
  82. package/dist/index.js.map +1 -1
  83. package/dist/index.umd.cjs +1 -1
  84. package/dist/index.umd.cjs.map +1 -1
  85. package/dist/shared/types/components.d.ts +163 -18
  86. package/dist/shared/types/customDataTableFilters.d.ts +10 -0
  87. package/dist/shared/types/imagePlayer.d.ts +10 -3
  88. package/dist/shared/types/index.d.ts +2 -0
  89. package/dist/shared/types/rbac.d.ts +67 -0
  90. package/dist/shared/types/timeline.d.ts +2 -1
  91. package/package.json +7 -4
  92. package/dist/api/types/storageServers.d.ts +0 -4
@@ -1,4 +1,5 @@
1
- import { PaginationParams, DateType } from "@/types";
1
+ import { PaginationParams, DateType, JsonValue, TuplePoint2D } 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",
@@ -9,9 +10,20 @@ export declare enum IngestProcessingStatus {
9
10
  InProgress = "inprogress",
10
11
  Pending = "pending"
11
12
  }
13
+ export declare enum MobileAssetsType {
14
+ Audio = "mobile_audios",
15
+ Photo = "mobile_photos"
16
+ }
12
17
  export declare enum IngestVersions {
13
18
  V1 = "v1",
14
- 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"
15
27
  }
16
28
  export type DronesQueryParams = Omit<PaginationParams, "sort"> & {
17
29
  projectId: string;
@@ -19,6 +31,35 @@ export type DronesQueryParams = Omit<PaginationParams, "sort"> & {
19
31
  token: string;
20
32
  processingStatus: IngestProcessingStatus;
21
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
+ processingLog: string;
52
+ uploadedBy: string;
53
+ processingStatus: IngestProcessingStatus | string;
54
+ modelCesiumAssetId: string;
55
+ updatedAt: string;
56
+ hasTusLinks: boolean;
57
+ };
58
+ export type DroneUploadsResponse = IngestPaginatedResponse<DroneUploadItem>;
59
+ export type DroneQueueResponse = {
60
+ size: number;
61
+ assetsDrone: DroneUploadItem[];
62
+ };
22
63
  export type DroneUploadUpdateRequestPayload = {
23
64
  flightMetadata: {
24
65
  dateTime: string;
@@ -30,11 +71,19 @@ export type DroneUploadUpdateRequestPayload = {
30
71
  title: string;
31
72
  fileExtension: string;
32
73
  }[];
74
+ aerialShots: {
75
+ url: string;
76
+ title: string;
77
+ fileExtension: string;
78
+ gpsLatitude: string;
79
+ gpsLongitude: string;
80
+ gpsAltitude: string;
81
+ }[];
33
82
  projectName: string;
34
83
  };
35
84
  export type CalculateMeasuringOperationRequestPayload = {
36
85
  date: DateType;
37
- points: [number, number][];
86
+ points: TuplePoint2D[];
38
87
  operation: string;
39
88
  };
40
89
  export type FlightImagesQueryParams = Partial<Omit<PaginationParams, "sort">> & {
@@ -45,3 +94,55 @@ export type InspectionToolRequestPayload = {
45
94
  gpsAltitude: string;
46
95
  gpsCoordinates: string;
47
96
  };
97
+ export type _360AssetsResponse = IngestPaginatedResponse<_360WalkV2>;
98
+ export type _360AssetsCountsDay = {
99
+ day: number;
100
+ walks?: number;
101
+ mobilePhotos?: number;
102
+ [key: string]: JsonValue | undefined;
103
+ };
104
+ export type _360AssetsCountsResponse = {
105
+ days: _360AssetsCountsDay[];
106
+ };
107
+ export type _360QueueResponse = {
108
+ size: number;
109
+ assets360: _360WalkV2[];
110
+ };
111
+ export type _360FloorsResponse = IngestPaginatedResponse<_360FloorV2>;
112
+ export type BimUploadItem = {
113
+ id: number;
114
+ projectId: string;
115
+ uploadedBy: string;
116
+ files: string[];
117
+ updatedAt: string;
118
+ archive?: string | null;
119
+ };
120
+ export type BimUploadsResponse = IngestPaginatedResponse<BimUploadItem>;
121
+ export type IngestUploadInitResponse = {
122
+ id: number;
123
+ projectId: string;
124
+ token?: string;
125
+ projectName?: string;
126
+ };
127
+ export type MobileAssetsQueryParams = Partial<Omit<PaginationParams, "sort">> & {
128
+ projectId?: string;
129
+ project_id?: string;
130
+ assetType?: MobileAssetsType | string;
131
+ date?: DateType;
132
+ isPaginated?: boolean;
133
+ };
134
+ export type MobileCaptureAssetsResponse = IngestPaginatedResponse<{
135
+ id: string;
136
+ projectId?: string;
137
+ uploadedBy: string;
138
+ updatedAt: string;
139
+ assetType: string;
140
+ thumbnailUrl: string;
141
+ }> | Array<{
142
+ id: string;
143
+ projectId?: string;
144
+ uploadedBy: string;
145
+ updatedAt: string;
146
+ assetType: string;
147
+ thumbnailUrl: string;
148
+ }>;
@@ -1,10 +1,10 @@
1
- import { CountryCode, CountryId, DateTime, DateType, Nvr, PaginationParams, PowerType, Project, Region, Router, Schedule, Tag } from "@/types";
1
+ import { 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;
5
5
  countryId: CountryId;
6
6
  countryName: string;
7
- countryRegion: Region;
7
+ countryRegion: KitRegion;
8
8
  id?: number;
9
9
  jobId: number;
10
10
  name: string;
@@ -16,7 +16,11 @@ export type Kit = {
16
16
  serial: string;
17
17
  status: KitStatus;
18
18
  powerSchedule: Schedule;
19
+ ups: boolean;
20
+ boxId: string;
19
21
  tags: Tag[];
22
+ storages: KitStorage[];
23
+ createdAt: string;
20
24
  };
21
25
  export declare enum KitStatus {
22
26
  New = "new",
@@ -24,18 +28,24 @@ export declare enum KitStatus {
24
28
  Deployed = "deployed",
25
29
  Decommissioned = "decommissioned"
26
30
  }
31
+ export declare enum KitRegion {
32
+ APAC = "apac",
33
+ EMEA = "emea",
34
+ LATAM = "latam",
35
+ US = "na"
36
+ }
27
37
  export declare enum KitAlarm {
28
38
  NvrOffline = "nvr_offline",
39
+ OfflineScheduled = "offline_scheduled",
29
40
  UnknownCamera = "unknown_camera",
30
41
  NotRecordingCamera = "not_recording_camera",
31
- OfflineScheduled = "offline_scheduled",
32
42
  FullSD = "full_sd",
33
43
  FullStorage = "full_storage",
34
44
  HddUnmounted = "hdd_unmounted",
35
45
  NoHdd = "no_hdd",
36
46
  MissingRouterInfo = "missing_router_info",
37
- PowerLost = "ac_failure",
38
- UpsLowBattery = "low_battery"
47
+ AcFailure = "ac_failure",
48
+ LowBattery = "low_battery"
39
49
  }
40
50
  export declare enum KitMetricId {
41
51
  SolarCharger = "solar_charger",
@@ -292,9 +302,22 @@ export type KitCreatePayload = {
292
302
  status: KitStatus;
293
303
  powerType: PowerType;
294
304
  config: {
295
- region: Region;
305
+ region: KitRegion;
296
306
  };
297
307
  };
308
+ export type KitMetricStatsEntry = {
309
+ timestamp: string;
310
+ voltage?: number;
311
+ current?: number;
312
+ panelVoltage?: number;
313
+ panelPower?: number;
314
+ yieldTotal?: number;
315
+ yieldToday?: number;
316
+ yieldYesterday?: number;
317
+ maxPowerToday?: number;
318
+ maxPowerYesterday?: number;
319
+ stateOfCharge?: number;
320
+ };
298
321
  export type KitUpdatePayload = {
299
322
  countryId: number;
300
323
  name: string;
@@ -310,19 +333,55 @@ export declare enum KitStorageTransport {
310
333
  export type KitStorageRequestPayload = {
311
334
  kitId: number;
312
335
  };
313
- export type KitStorageResponsePayload = {
336
+ export type KitStorage = {
314
337
  id: number;
315
338
  serial: string;
316
339
  status: string;
317
340
  type: string;
318
- metadata: {
319
- formFactor: string;
320
- };
341
+ metadata: Record<string, string>;
321
342
  model: string;
322
- insertedAt: DateTime;
323
- updatedAt: DateTime;
324
343
  vendor: string;
325
344
  kitId: number;
326
345
  capacity: number;
346
+ freeSpace: number;
327
347
  tran: KitStorageTransport;
328
348
  };
349
+ export type KitFootageRequestPayload = {
350
+ cameraId?: number;
351
+ storageId?: number;
352
+ };
353
+ export type KitFootage = {
354
+ id: number;
355
+ startDate: string;
356
+ endDate: string;
357
+ cameraId: number;
358
+ storageId: number;
359
+ };
360
+ export type KitAlarmItem = {
361
+ id: number;
362
+ kitId: number;
363
+ alarm: KitAlarm;
364
+ startDate: string;
365
+ endDate: string | null;
366
+ };
367
+ export type KitBox = {
368
+ id: string;
369
+ gatewaySerial: string;
370
+ gatewayMac: string;
371
+ gatewayConfig: Record<string, unknown> | null;
372
+ kitSerials?: string[];
373
+ insertedAt: string;
374
+ updatedAt: string;
375
+ };
376
+ export type KitBoxCreatePayload = {
377
+ id?: string;
378
+ gatewaySerial: string;
379
+ gatewayMac: string;
380
+ gatewayConfig?: Record<string, unknown>;
381
+ };
382
+ export type KitBoxQueryParams = PaginationParams & {
383
+ id?: string;
384
+ gatewaySerial?: string;
385
+ gatewayMac?: string;
386
+ hasKits?: boolean;
387
+ };
@@ -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;
@@ -15,6 +15,7 @@ export type Media = {
15
15
  url?: string;
16
16
  exid?: MediaExid;
17
17
  embedCode?: string;
18
+ embedTime?: boolean;
18
19
  fileName?: string;
19
20
  format?: string;
20
21
  frames?: number;
@@ -25,6 +26,13 @@ export type Media = {
25
26
  projectExid?: string;
26
27
  thumbnailUrl?: string;
27
28
  mediaUrl?: string;
29
+ camera?: string;
30
+ notes?: string | null;
31
+ category?: string | null;
32
+ isUrgent?: boolean;
33
+ bucket?: string | null;
34
+ sourceProduct?: string | null;
35
+ featureType?: string | null;
28
36
  };
29
37
  export declare enum MediaType {
30
38
  EditedImage = "edit",
@@ -69,8 +77,12 @@ export type MediaFilterQueryParams = {
69
77
  toDate?: string;
70
78
  cameraName?: string;
71
79
  requesterEmail?: string;
80
+ requestorName?: string;
72
81
  type?: MediaType;
82
+ status?: string;
73
83
  cameraExid?: string;
84
+ projectExid?: string;
85
+ projectName?: string;
74
86
  page?: number;
75
87
  limit?: number;
76
88
  camera?: string;
@@ -78,7 +90,9 @@ export type MediaFilterQueryParams = {
78
90
  export type MediaUpdateRequestPayload = {
79
91
  name?: string;
80
92
  title?: string;
93
+ status?: number;
81
94
  public?: boolean;
95
+ url?: string;
82
96
  };
83
97
  export type MediaCreateRequestPayload = {
84
98
  fromDate: DateType;
@@ -92,7 +106,7 @@ export type MediaCreateRequestPayload = {
92
106
  cameraExid?: string;
93
107
  requestedBy?: string;
94
108
  notes?: string;
95
- category?: ClipsCategory;
109
+ category?: MediaCategory | ClipsCategory;
96
110
  isUrgent?: boolean;
97
111
  storeAsType?: MediaType;
98
112
  };
@@ -107,6 +121,11 @@ export declare enum ClipsCategory {
107
121
  Marketing = "marketing",
108
122
  BestPracticies = "best_practices"
109
123
  }
124
+ export declare enum MediaCategory {
125
+ Weather = "weather",
126
+ SmartSearch = "smart_search",
127
+ Copilot = "copilot"
128
+ }
110
129
  export type MediaDeleteRequestPayload = {
111
130
  timelapseIds: (string | number)[];
112
131
  compareIds: (string | number)[];
@@ -5,23 +5,59 @@ export declare enum NotificationType {
5
5
  TimelapseCreated = "timelapse_created",
6
6
  TimelapseFailed = "timelapse_failed",
7
7
  DroneProcessing = "drone_processing_done",
8
- Processing360 = "three_sixty_done"
8
+ Processing360 = "three_sixty_done",
9
+ Other = "other"
9
10
  }
10
- export interface CameraShareContext {
11
+ export type NotificationContextBase = {
12
+ cameraExid?: string;
13
+ projectExid?: string;
14
+ cameraName?: string;
15
+ };
16
+ export type CameraShareContext = NotificationContextBase & {
11
17
  cameraExid: string;
12
18
  projectExid: string;
13
19
  shareId: number;
14
- }
20
+ };
21
+ export type CameraStatusChangeContext = NotificationContextBase & {
22
+ cameraExid: string;
23
+ projectExid: string;
24
+ newStatus: string;
25
+ };
26
+ export type MentionContext = NotificationContextBase;
27
+ export type TimelapseCreatedContext = NotificationContextBase & {
28
+ cameraExid: string;
29
+ projectExid: string;
30
+ archiveExid: string;
31
+ };
32
+ export type TimelapseFailedContext = NotificationContextBase & {
33
+ cameraExid: string;
34
+ projectExid: string;
35
+ };
36
+ export type DroneProcessingContext = NotificationContextBase & {
37
+ projectExid: string;
38
+ droneDate: string;
39
+ };
40
+ export type Processing360Context = NotificationContextBase & {
41
+ projectExid: string;
42
+ date: string;
43
+ floor: string;
44
+ };
45
+ export type NotificationContext = CameraShareContext | CameraStatusChangeContext | MentionContext | TimelapseCreatedContext | TimelapseFailedContext | DroneProcessingContext | Processing360Context;
15
46
  export type Notification = {
16
- id: number;
17
- type: NotificationType;
18
- insertedAt: string;
19
- initiatorId: number;
20
- initiatorFullname: string;
21
- initiatorEmail: string;
22
- targetId: number;
23
- targetFullname: string;
24
- targetEmail: string;
25
- readTimestamp: string | null;
26
- context: CameraShareContext;
47
+ id?: number;
48
+ type?: NotificationType;
49
+ insertedAt?: string;
50
+ initiatorId?: number;
51
+ initiatorFullname?: string;
52
+ initiatorEmail?: string;
53
+ targetId?: number;
54
+ targetFullname?: string;
55
+ targetEmail?: string;
56
+ readTimestamp?: string | null;
57
+ context?: NotificationContext;
58
+ };
59
+ export type NotificationsListParams = {
60
+ page?: number;
61
+ limit?: number;
62
+ sort?: string;
27
63
  };
@@ -24,6 +24,34 @@ export declare enum NvrHddStatus {
24
24
  Ok = "ok",
25
25
  Unformatted = "unformatted"
26
26
  }
27
+ export type NvrSetting = {
28
+ exid: string;
29
+ name: string;
30
+ externalHost: string;
31
+ model: string;
32
+ deviceName: string;
33
+ macAddress: string;
34
+ firmwareVersion: string;
35
+ resolution: string;
36
+ bitrateType: string;
37
+ videoQuality: string;
38
+ frameRate: number;
39
+ bitrate: number;
40
+ videoEncoding: string;
41
+ hddName: string;
42
+ hddCapacity: string;
43
+ freeSpace: string;
44
+ hddStatus: string;
45
+ hddProperty: string;
46
+ nvrStatus: string;
47
+ timeMode: string;
48
+ localTime: string;
49
+ timezone: string;
50
+ addressingFormatType: string;
51
+ hostName: string;
52
+ portNo: string;
53
+ synchronizeInterval: string;
54
+ };
27
55
  export type NvrCreatePayload = {
28
56
  serial?: string;
29
57
  httpUrl: string;
@@ -0,0 +1,63 @@
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
+ userId?: number;
28
+ };
29
+ export type AdminCreateOAuthClientPayload = CreateOAuthClientPayload & {
30
+ clientId?: string;
31
+ clientSecret?: string;
32
+ };
33
+ export type UpdateOAuthClientPayload = {
34
+ name?: string;
35
+ redirectUris?: string[];
36
+ scopes?: string[];
37
+ description?: string;
38
+ logoUrl?: string;
39
+ active?: boolean;
40
+ };
41
+ export type OAuthScopeDetail = {
42
+ scope: string;
43
+ description: string;
44
+ group: string;
45
+ };
46
+ export type OAuthConsentInfo = {
47
+ client: {
48
+ name: string;
49
+ logoUrl: string | null;
50
+ description: string | null;
51
+ };
52
+ scopes: OAuthScopeDetail[];
53
+ };
54
+ export type OAuthConsentPayload = {
55
+ clientId: string;
56
+ scope: string;
57
+ redirectUri: string;
58
+ state: string;
59
+ decision: "allow" | "deny";
60
+ };
61
+ export type OAuthConsentResponse = {
62
+ redirectUrl: string;
63
+ };
@@ -1,6 +1,39 @@
1
+ import { GeoPoint, TuplePoint2D } 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 PolygonPath = TuplePoint2D[];
19
+ export type PolygonCoordinates = PolygonPath[];
20
+ export interface GeoJSONPolygon {
21
+ type: "Polygon";
22
+ coordinates: PolygonCoordinates;
23
+ }
24
+ export declare enum PlannerUrlParams {
25
+ SitePlanId = "site_plan_id",
26
+ IsNewSitePlan = "is_new_site_plan",
27
+ IsBoundsMode = "is_bounds_mode",
28
+ ProjectPosition = "project_position",
29
+ DealId = "deal_id"
30
+ }
1
31
  export declare enum EDistortImageModes {
2
32
  FreeRotate = "freeRotate",
3
- Lock = "lock"
33
+ Lock = "lock",
34
+ Rotate = "rotate",
35
+ Scale = "scale",
36
+ Pan = "drag"
4
37
  }
5
38
  export declare enum EMapTypes {
6
39
  Blank = "Blank",
@@ -30,3 +63,70 @@ export declare enum ERoles {
30
63
  Admin = "admin",
31
64
  User = "user"
32
65
  }
66
+ export type PlannerOverlay = {
67
+ imageUrl?: string;
68
+ corners?: {
69
+ topLeft: GeoPoint;
70
+ topRight: GeoPoint;
71
+ bottomLeft: GeoPoint;
72
+ bottomRight: GeoPoint;
73
+ } | null;
74
+ };
75
+ export type PlannerCameraMarker = {
76
+ name?: string;
77
+ location?: GeoPoint;
78
+ heading?: number;
79
+ fovAngle?: number;
80
+ fovRadius?: number;
81
+ isVisible?: boolean;
82
+ color?: string;
83
+ };
84
+ export type SitePlanBounds = {
85
+ northEast: GeoPoint;
86
+ southWest: GeoPoint;
87
+ };
88
+ export type SitePlan = {
89
+ id?: string;
90
+ projectId?: string;
91
+ owner?: string;
92
+ lastUpdatedBy?: string;
93
+ projectName?: string;
94
+ projectLocation?: string;
95
+ projectMapType?: EMapTypes;
96
+ projectBounds?: SitePlanBounds;
97
+ overlay?: PlannerOverlay;
98
+ markers?: PlannerCameraMarker[];
99
+ thumbnailUrl?: string;
100
+ createdDate?: string;
101
+ updatedDate?: string;
102
+ };
103
+ export interface IDrawControl {
104
+ _toolbars: {
105
+ draw: {
106
+ _activeMode: {
107
+ handler: {
108
+ disable(): void;
109
+ completeShape(): void;
110
+ };
111
+ };
112
+ _modes: {
113
+ polygon: {
114
+ handler: {
115
+ enable(): void;
116
+ };
117
+ };
118
+ };
119
+ };
120
+ edit: {
121
+ _modes: {
122
+ edit: {
123
+ handler: {
124
+ enable(): void;
125
+ disable(): void;
126
+ save(): void;
127
+ };
128
+ };
129
+ };
130
+ };
131
+ };
132
+ }
@@ -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
+ };