@evercam/api 1.0.0-964e29308 → 1.0.0-98fee43f2

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 (64) hide show
  1. package/README.md +1 -0
  2. package/dist/api/api/3dFirebaseApi.d.ts +204 -15
  3. package/dist/api/api/adminApi.d.ts +20 -15
  4. package/dist/api/api/aiApi.d.ts +90 -4
  5. package/dist/api/api/authzApi.d.ts +5 -3
  6. package/dist/api/api/evercamApi.d.ts +32 -12
  7. package/dist/api/api/evercamLabsApi.d.ts +5 -5
  8. package/dist/api/api/ingestApi.d.ts +19 -5
  9. package/dist/api/types/360.d.ts +175 -76
  10. package/dist/api/types/aiConfigs.d.ts +242 -0
  11. package/dist/api/types/analytics.d.ts +34 -15
  12. package/dist/api/types/anpr.d.ts +31 -2
  13. package/dist/api/types/auditLogs.d.ts +18 -0
  14. package/dist/api/types/authz.d.ts +71 -0
  15. package/dist/api/types/automation.d.ts +23 -4
  16. package/dist/api/types/axios.d.ts +9 -9
  17. package/dist/api/types/bim.d.ts +28 -5
  18. package/dist/api/types/camera.d.ts +13 -32
  19. package/dist/api/types/comments.d.ts +10 -7
  20. package/dist/api/types/connector.d.ts +2 -0
  21. package/dist/api/types/copilot.d.ts +0 -3
  22. package/dist/api/types/detections.d.ts +3 -10
  23. package/dist/api/types/drone.d.ts +95 -6
  24. package/dist/api/types/errors.d.ts +13 -1
  25. package/dist/api/types/gateReport.d.ts +7 -22
  26. package/dist/api/types/gateReportManagement.d.ts +170 -0
  27. package/dist/api/types/hammertech.d.ts +98 -0
  28. package/dist/api/types/index.d.ts +8 -1
  29. package/dist/api/types/ingest.d.ts +98 -3
  30. package/dist/api/types/kit.d.ts +41 -51
  31. package/dist/api/types/map.d.ts +12 -0
  32. package/dist/api/types/media.d.ts +8 -2
  33. package/dist/api/types/notification.d.ts +41 -2
  34. package/dist/api/types/observationEvents.d.ts +61 -0
  35. package/dist/api/types/observations.d.ts +85 -0
  36. package/dist/api/types/planner.d.ts +55 -10
  37. package/dist/api/types/posthog.d.ts +20 -0
  38. package/dist/api/types/project.d.ts +11 -2
  39. package/dist/api/types/recording.d.ts +8 -13
  40. package/dist/api/types/ring.d.ts +16 -16
  41. package/dist/api/types/roi.d.ts +3 -11
  42. package/dist/api/types/routeParams.d.ts +1 -0
  43. package/dist/api/types/shared.d.ts +18 -18
  44. package/dist/api/types/shares.d.ts +0 -13
  45. package/dist/api/types/siteAnalytics.d.ts +3 -5
  46. package/dist/api/types/siteAnalyticsManagement.d.ts +117 -0
  47. package/dist/api/types/siteView.d.ts +73 -0
  48. package/dist/api/types/snapshots.d.ts +13 -0
  49. package/dist/api/types/socket.d.ts +4 -0
  50. package/dist/api/types/storyblok.d.ts +0 -13
  51. package/dist/api/types/timelapse.d.ts +4 -8
  52. package/dist/api/types/user.d.ts +1 -4
  53. package/dist/api/utils.d.ts +0 -1
  54. package/dist/index.js +1781 -673
  55. package/dist/index.js.map +1 -1
  56. package/dist/index.umd.cjs +1 -1
  57. package/dist/index.umd.cjs.map +1 -1
  58. package/dist/shared/types/components.d.ts +103 -38
  59. package/dist/shared/types/customDataTableFilters.d.ts +10 -0
  60. package/dist/shared/types/imagePlayer.d.ts +8 -1
  61. package/dist/shared/types/index.d.ts +2 -0
  62. package/dist/shared/types/observations.d.ts +21 -0
  63. package/package.json +4 -2
  64. package/dist/api/types/vendorModel.d.ts +0 -15
@@ -22,6 +22,36 @@ export type Kit = {
22
22
  storages: KitStorage[];
23
23
  createdAt: string;
24
24
  };
25
+ export declare enum KitSupportCheckId {
26
+ RouterSmsRoundTrip = "router_sms_round_trip",
27
+ NvrRecordingAllCameras = "nvr_recording_all_cameras",
28
+ NvrRecordingThirdStream = "nvr_recording_third_stream",
29
+ CamerasHaveDeviceId = "cameras_have_device_id",
30
+ CamerasRecording = "cameras_recording",
31
+ CamerasSdCardMounted = "cameras_sd_card_mounted",
32
+ BatteryReadings = "battery_readings"
33
+ }
34
+ export declare enum KitSupportCheckStatus {
35
+ Passed = "passed",
36
+ Failed = "failed",
37
+ Skipped = "skipped"
38
+ }
39
+ export type KitSupportCheck = {
40
+ id: KitSupportCheckId;
41
+ name: string;
42
+ status: KitSupportCheckStatus;
43
+ error: string | null;
44
+ };
45
+ export type KitSupportChecklist = {
46
+ checks: KitSupportCheck[];
47
+ };
48
+ export type KitDiagnosticRun = {
49
+ kitId: number;
50
+ kitSerial: string;
51
+ checks: KitSupportCheck[];
52
+ ranAt: string;
53
+ isSeen: boolean;
54
+ };
25
55
  export declare enum KitStatus {
26
56
  New = "new",
27
57
  Active = "active",
@@ -45,11 +75,14 @@ export declare enum KitAlarm {
45
75
  NoHdd = "no_hdd",
46
76
  MissingRouterInfo = "missing_router_info",
47
77
  AcFailure = "ac_failure",
48
- LowBattery = "low_battery"
78
+ LowBattery = "low_battery",
79
+ GeneratorOff = "generator_off"
49
80
  }
50
81
  export declare enum KitMetricId {
51
82
  SolarCharger = "solar_charger",
52
- PanelPower = "panel_power"
83
+ PanelPower = "panel_power",
84
+ Fan = "fan",
85
+ FanTemperature = "fan_temperature"
53
86
  }
54
87
  export declare enum KitMetricPeriod {
55
88
  Last15Minutes = "now-15m",
@@ -115,55 +148,6 @@ export declare enum KitChartType {
115
148
  TimeSeries = "timeseries",
116
149
  BarChart = "barchart"
117
150
  }
118
- export type GrafanaDataSource = {
119
- type: string;
120
- uid: string;
121
- };
122
- export type GrafanaTarget = {
123
- expr: string;
124
- refId: string;
125
- datasourceId?: string;
126
- intervalMs?: number;
127
- maxDataPoints?: number;
128
- };
129
- export type GrafanaPanel = {
130
- [key: string]: unknown;
131
- id: GrafanaMetricId;
132
- name: keyof GrafanaMetricId;
133
- title: string;
134
- description: string;
135
- type: KitChartType;
136
- datasource: GrafanaDataSource;
137
- targets: GrafanaTarget[];
138
- maxDataPoints?: number;
139
- interval?: string;
140
- timeFrom?: string;
141
- timeShift?: string;
142
- options?: {
143
- maxDataPoints?: number;
144
- interval?: string;
145
- };
146
- };
147
- export type GrafanaDashboard = {
148
- [key: string]: unknown;
149
- panels: GrafanaPanel[];
150
- time?: {
151
- from: string;
152
- to: string;
153
- };
154
- timepicker?: {
155
- refresh_intervals: string[];
156
- time_options: string[];
157
- };
158
- };
159
- export type GrafanaQueryOptions = {
160
- metricId: GrafanaMetricId;
161
- host: string;
162
- job?: string;
163
- from?: string;
164
- to?: string;
165
- variables?: Record<string, string>;
166
- };
167
151
  export type GrafanaTimeSeriesValue = number | string | null;
168
152
  export type GrafanaTimeSeriesValues = GrafanaTimeSeriesValue[][];
169
153
  export type GrafanaFieldConfig = {
@@ -312,6 +296,12 @@ export type KitMetricStatsEntry = {
312
296
  panelVoltage: number;
313
297
  panelPower: number;
314
298
  };
299
+ export type KitFanStatsEntry = {
300
+ timestamp: string;
301
+ speed: number;
302
+ internalTemperature: number;
303
+ externalTemperature: number | null;
304
+ };
315
305
  export type KitUpdatePayload = {
316
306
  countryId: number;
317
307
  name: 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
+ };
@@ -43,7 +43,8 @@ export declare enum MediaFileType {
43
43
  Mp4 = "mp4",
44
44
  Png = "png",
45
45
  Pdf = "pdf",
46
- Jpeg = "jpeg"
46
+ Jpeg = "jpeg",
47
+ Csv = "csv"
47
48
  }
48
49
  export declare enum MediaStatus {
49
50
  Pending = "Pending",
@@ -93,7 +94,7 @@ export type MediaCreateRequestPayload = {
93
94
  cameraExid?: string;
94
95
  requestedBy?: string;
95
96
  notes?: string;
96
- category?: ClipsCategory;
97
+ category?: MediaCategory | ClipsCategory;
97
98
  isUrgent?: boolean;
98
99
  storeAsType?: MediaType;
99
100
  };
@@ -108,6 +109,11 @@ export declare enum ClipsCategory {
108
109
  Marketing = "marketing",
109
110
  BestPracticies = "best_practices"
110
111
  }
112
+ export declare enum MediaCategory {
113
+ Weather = "weather",
114
+ SmartSearch = "smart_search",
115
+ Copilot = "copilot"
116
+ }
111
117
  export type MediaDeleteRequestPayload = {
112
118
  timelapseIds: (string | number)[];
113
119
  compareIds: (string | number)[];
@@ -5,7 +5,26 @@ 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
+ SmartSearchExportReady = "smart_search_export_ready",
10
+ SmartSearchExportFailed = "smart_search_export_failed",
11
+ GateReportExportReady = "gate_report_export_ready",
12
+ GateReportExportFailed = "gate_report_export_failed",
13
+ PpeExportReady = "ppe_export_ready",
14
+ PpeExportFailed = "ppe_export_failed",
15
+ WeatherExportReady = "weather_export_ready",
16
+ WeatherExportFailed = "weather_export_failed",
17
+ CompareReady = "compare_ready",
18
+ CompareFailed = "compare_failed",
19
+ ClipExportReady = "clip_export_ready",
20
+ ClipExportFailed = "clip_export_failed",
21
+ NvrClipReady = "nvr_clip_ready",
22
+ NvrClipFailed = "nvr_clip_failed",
23
+ UploadComplete = "upload_complete",
24
+ UploadFailed = "upload_failed",
25
+ RingCamerasImported = "ring_cameras_imported",
26
+ StorageWarning = "storage_warning",
27
+ Other = "other"
9
28
  }
10
29
  export interface NotificationContextBase {
11
30
  cameraExid?: string;
@@ -41,7 +60,27 @@ export interface Processing360Context extends NotificationContextBase {
41
60
  date: string;
42
61
  floor: string;
43
62
  }
44
- export type NotificationContext = CameraShareContext | CameraStatusChangeContext | MentionContext | TimelapseCreatedContext | TimelapseFailedContext | DroneProcessingContext | Processing360Context;
63
+ export interface ExportNotificationContext extends NotificationContextBase {
64
+ projectExid: string;
65
+ archiveExid?: string;
66
+ compareExid?: string;
67
+ }
68
+ export interface UploadNotificationContext extends NotificationContextBase {
69
+ projectExid: string;
70
+ }
71
+ export interface RingCamerasImportedContext extends NotificationContextBase {
72
+ projectExid: string;
73
+ projectName: string;
74
+ cameras: Array<{
75
+ exid: string;
76
+ name: string;
77
+ }>;
78
+ }
79
+ export interface StorageWarningContext extends NotificationContextBase {
80
+ projectExid: string;
81
+ cameraName: string;
82
+ }
83
+ export type NotificationContext = CameraShareContext | CameraStatusChangeContext | MentionContext | TimelapseCreatedContext | TimelapseFailedContext | DroneProcessingContext | Processing360Context | ExportNotificationContext | UploadNotificationContext | RingCamerasImportedContext | StorageWarningContext;
45
84
  export type Notification = {
46
85
  id: number;
47
86
  type: NotificationType;
@@ -0,0 +1,61 @@
1
+ export declare enum ObservationEventStatus {
2
+ Detected = "detected",
3
+ Approved = "approved",
4
+ Disapproved = "disapproved",
5
+ Unsure = "unsure"
6
+ }
7
+ export interface ObservationEventStatusConfig {
8
+ bg: string;
9
+ fg: string;
10
+ border: string;
11
+ label: string;
12
+ }
13
+ export declare const OBSERVATION_EVENT_STATUS_CONFIGS: Record<ObservationEventStatus, ObservationEventStatusConfig>;
14
+ export interface SiteAnalyticsObservationEvent {
15
+ id: number;
16
+ observationTypeId: number;
17
+ observationName: string | null;
18
+ observationCode: string | null;
19
+ cameraExid: string;
20
+ projectExid: string | null;
21
+ startTime: string;
22
+ endTime: string | null;
23
+ confidence: number | null;
24
+ status: ObservationEventStatus;
25
+ aiEvidence: string | null;
26
+ bbox: number[] | null;
27
+ model: string | null;
28
+ promptId: number | null;
29
+ observationMetadata: Record<string, unknown> | null;
30
+ trigger: string;
31
+ reviewedBy: string | null;
32
+ reviewedAt: string | null;
33
+ insertedAt: string;
34
+ }
35
+ export type ObservationEventQueryParams = {
36
+ cameraExid?: string;
37
+ projectExid?: string;
38
+ observationTypeIds?: string;
39
+ status?: ObservationEventStatus | string;
40
+ sortBy?: string;
41
+ sortDir?: "asc" | "desc";
42
+ page?: number;
43
+ limit?: number;
44
+ };
45
+ export interface ObservationEventListResponse {
46
+ items: SiteAnalyticsObservationEvent[];
47
+ total: number;
48
+ page: number;
49
+ limit: number;
50
+ from: number;
51
+ to: number;
52
+ }
53
+ export type ObservationEventVerdict = ObservationEventStatus.Approved | ObservationEventStatus.Disapproved | ObservationEventStatus.Unsure;
54
+ export interface ObservationEventReviewPayload {
55
+ status: ObservationEventVerdict;
56
+ }
57
+ export interface ObservationEventReviewResponse {
58
+ updated: boolean;
59
+ id: number | string;
60
+ message: string;
61
+ }
@@ -0,0 +1,85 @@
1
+ import { type ProjectExid, type CameraExid, type DateType, type BBox, PpeLabel, DownloadFileType } from "@evercam/api/types";
2
+ export declare enum ObservationItemState {
3
+ Absent = 0,
4
+ Present = 1,
5
+ NotVisible = 2
6
+ }
7
+ export type ObservationEventEquipment = {
8
+ score: number;
9
+ bbox: BBox;
10
+ };
11
+ export type ObservationEvent = {
12
+ id: number;
13
+ cameraExid: CameraExid;
14
+ projectExid: ProjectExid;
15
+ capturedAt: DateType;
16
+ personIndex: number;
17
+ personBbox: BBox;
18
+ personScore: number;
19
+ ppe: Partial<Record<PpeLabel, ObservationEventEquipment>>;
20
+ hasHelmet: ObservationItemState | null;
21
+ hasHighVisVest: ObservationItemState | null;
22
+ hasGloves: ObservationItemState | null;
23
+ hasGlasses: ObservationItemState | null;
24
+ modelVersion: string;
25
+ createdAt: DateType;
26
+ compliant: boolean;
27
+ reason: string | null;
28
+ isApproved: boolean | null;
29
+ };
30
+ export type ObservationEventsQueryParams = {
31
+ cameraExid?: CameraExid;
32
+ fromDate?: string;
33
+ toDate?: string;
34
+ required?: string;
35
+ compliant?: boolean;
36
+ hasHelmet?: boolean;
37
+ hasHighVisVest?: boolean;
38
+ hasGloves?: boolean;
39
+ hasGlasses?: boolean;
40
+ sort?: string;
41
+ page?: number;
42
+ limit?: number;
43
+ };
44
+ export type ObservationEventsExportQueryParams = {
45
+ cameraExid?: CameraExid;
46
+ fromDate: string;
47
+ toDate: string;
48
+ required?: string;
49
+ compliant?: boolean;
50
+ fileType: DownloadFileType;
51
+ directDownload?: boolean;
52
+ includeInvalid?: boolean;
53
+ };
54
+ export type ObservationApprovalUpdateResponse = {
55
+ updated: boolean;
56
+ id: number | string | null;
57
+ message: string;
58
+ };
59
+ export declare enum ObservationCountsGranularity {
60
+ Day = "day",
61
+ Week = "week",
62
+ Month = "month"
63
+ }
64
+ export type ObservationEventsCountsQueryParams = {
65
+ cameraExid?: CameraExid;
66
+ fromDate?: string;
67
+ toDate?: string;
68
+ required?: string;
69
+ compliant?: boolean;
70
+ hasHelmet?: boolean;
71
+ hasHighVisVest?: boolean;
72
+ hasGloves?: boolean;
73
+ hasGlasses?: boolean;
74
+ granularity?: ObservationCountsGranularity;
75
+ };
76
+ export type ObservationEventCount = {
77
+ bucket: DateType;
78
+ total: number;
79
+ compliant: number;
80
+ nonCompliant: number;
81
+ };
82
+ export declare enum ObservationRequiredItem {
83
+ Helmet = "has_helmet",
84
+ HighVisVest = "has_high_vis_vest"
85
+ }
@@ -1,5 +1,21 @@
1
- export type Coordinate = [number, number];
2
- export type PolygonPath = Coordinate[];
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[];
3
19
  export type PolygonCoordinates = PolygonPath[];
4
20
  export interface GeoJSONPolygon {
5
21
  type: "Polygon";
@@ -35,18 +51,47 @@ export declare enum EPageType {
35
51
  List = "list",
36
52
  Item = "item"
37
53
  }
38
- export declare enum EPaths {
39
- Home = "/",
40
- Session = "/session"
41
- }
42
- export declare enum EProjectItems {
43
- Camera = "camera",
44
- Overlay = "overlay"
45
- }
46
54
  export declare enum ERoles {
47
55
  Admin = "admin",
48
56
  User = "user"
49
57
  }
58
+ export type PlannerOverlay = {
59
+ imageUrl?: string;
60
+ corners?: {
61
+ topLeft: GeoPoint;
62
+ topRight: GeoPoint;
63
+ bottomLeft: GeoPoint;
64
+ bottomRight: GeoPoint;
65
+ } | null;
66
+ };
67
+ export type PlannerCameraMarker = {
68
+ name?: string;
69
+ location?: GeoPoint;
70
+ heading?: number;
71
+ fovAngle?: number;
72
+ fovRadius?: number;
73
+ isVisible?: boolean;
74
+ color?: string;
75
+ };
76
+ export type SitePlanBounds = {
77
+ northEast: GeoPoint;
78
+ southWest: GeoPoint;
79
+ };
80
+ export type SitePlan = {
81
+ id?: string;
82
+ projectId?: string;
83
+ owner?: string;
84
+ lastUpdatedBy?: string;
85
+ projectName?: string;
86
+ projectLocation?: string;
87
+ projectMapType?: EMapTypes;
88
+ projectBounds?: SitePlanBounds;
89
+ overlay?: PlannerOverlay;
90
+ markers?: PlannerCameraMarker[];
91
+ thumbnailUrl?: string;
92
+ createdDate?: string;
93
+ updatedDate?: string;
94
+ };
50
95
  export interface IDrawControl {
51
96
  _toolbars: {
52
97
  draw: {
@@ -16,6 +16,26 @@ export declare enum ActiveUsersMetric {
16
16
  WAU = "wau",
17
17
  MAU = "mau"
18
18
  }
19
+ export type PosthogUser = {
20
+ id: string;
21
+ email: string;
22
+ isWeeklyActiveUser: number;
23
+ isMonthlyActiveUser: number;
24
+ eventsCount: number;
25
+ };
26
+ export type PosthogUsersRequestParams = {
27
+ companyExid?: string;
28
+ projectExid?: string;
29
+ cameraExid?: string;
30
+ productsActivityOnly?: boolean;
31
+ afterId?: string;
32
+ size?: number;
33
+ };
34
+ export type PosthogUsersResponse = {
35
+ data: PosthogUser[];
36
+ hasMore: boolean;
37
+ size: number;
38
+ };
19
39
  export type PosthogUserParams = {
20
40
  firstname?: string;
21
41
  lastname?: string;
@@ -1,4 +1,4 @@
1
- import { AdminCamera, Camera, CameraExid, DateType, EntityByExid, Exid, PaginationParams } from "@evercam/api/types";
1
+ import { AdminCamera, Camera, CameraExid, DateType, EntityByExid, Exid, Operator, PaginationParams } from "@evercam/api/types";
2
2
  export type ProjectExid = Exid;
3
3
  export type ProjectsByExid = EntityByExid<Project>;
4
4
  export type Project = {
@@ -62,11 +62,19 @@ export declare enum ProjectArchiveTier {
62
62
  Full = "Full",
63
63
  Partial = "Partial",
64
64
  Minimal = "Minimal",
65
- ScheduledForDeletion = "Scheduled for Deletion"
65
+ ScheduledForDeletion = "Scheduled for Deletion",
66
+ No = "No"
66
67
  }
67
68
  export type UpdateCameraRestrictionPayload = {
68
69
  isAccessRestricted?: boolean;
69
70
  };
71
+ export type CameraPosition = {
72
+ cameraExid: CameraExid;
73
+ position: number;
74
+ };
75
+ export type ReorderCamerasPayload = {
76
+ positions: CameraPosition[];
77
+ };
70
78
  export type Logo = {
71
79
  id: number;
72
80
  projectId: number;
@@ -109,6 +117,7 @@ export type ProjectsQueryParams = PaginationParams & {
109
117
  status: ProjectStatus;
110
118
  cameras: string;
111
119
  featureFlags: Array<ProjectFeatureFlag>;
120
+ featureFlagsOperator?: Operator;
112
121
  archived: string;
113
122
  };
114
123
  export type ProjectCreateRequestPayload = {
@@ -1,22 +1,24 @@
1
- import { ApiCredentials } from "@evercam/api/types";
1
+ import { ApiCredentials, PaginationParams } from "@evercam/api/types";
2
2
  import { CancelToken } from "axios";
3
3
  export type Snapshot = {
4
4
  createdAt: string;
5
5
  data: string;
6
6
  status?: string;
7
7
  };
8
- export type NearestSnapshotRequestPayload = {
8
+ export type SnapshotRequestPayload = {
9
9
  apiKey?: string;
10
10
  apiId?: string;
11
11
  token?: string;
12
12
  cancelToken?: object;
13
13
  includeImage?: boolean;
14
+ view?: boolean;
14
15
  };
15
16
  export type AvailableDaysRequestPayload = {
16
17
  cameraId: string;
17
18
  year: string;
18
19
  month: string;
19
20
  payload?: ApiCredentials;
21
+ cancelToken?: CancelToken;
20
22
  };
21
23
  export type AvailableDaysResponsePayload = {
22
24
  days: Array<number>;
@@ -39,11 +41,9 @@ export type NearestSnapshotResponsePayload = {
39
41
  notes?: string;
40
42
  }>;
41
43
  };
42
- export type SnapshotRangeRequestPayload = {
44
+ export type SnapshotRangeRequestPayload = PaginationParams & {
43
45
  from: string;
44
46
  to: string;
45
- limit?: number;
46
- page?: number;
47
47
  schedule?: boolean;
48
48
  count?: number;
49
49
  };
@@ -76,6 +76,7 @@ export declare enum CloudRecordingDuration {
76
76
  Month = 30,
77
77
  ThreeMonths = 90
78
78
  }
79
+ export declare const CloudRecordingDurationLabel: Record<CloudRecordingDuration, string>;
79
80
  export declare enum CloudRecordingStatus {
80
81
  On = "on",
81
82
  Off = "off",
@@ -103,13 +104,6 @@ export declare enum SnapshotExtractionInterval {
103
104
  }
104
105
  export declare enum VpnServer {
105
106
  None = "None",
106
- OpenVPN1 = "OpenVPN1",
107
- OpenVPN2 = "OpenVPN2",
108
- OpenVPN3 = "OpenVPN3",
109
- OpenVPN4 = "OpenVPN4",
110
- OpenVPN5 = "OpenVPN5",
111
- PPTP1 = "PPTP1",
112
- PPTP2 = "PPTP2",
113
107
  WireGuard1 = "WireGuard1",
114
108
  WireGuard2 = "WireGuard2",
115
109
  WireGuard3 = "WireGuard3",
@@ -119,5 +113,6 @@ export declare enum VpnServer {
119
113
  WireGuard7 = "WireGuard7",
120
114
  WireGuard8 = "WireGuard8",
121
115
  WireGuard9 = "WireGuard9",
122
- WireGuard10 = "WireGuard10"
116
+ WireGuard10 = "WireGuard10",
117
+ WgHub = "WgHub"
123
118
  }
@@ -1,8 +1,23 @@
1
+ export type RingCompleteLinkingPayload = {
2
+ nonce: string;
3
+ time: string;
4
+ };
5
+ /** The only auto-import status complete-linking returns today. */
6
+ export declare const RING_AUTO_IMPORT_QUEUED = "queued";
7
+ export type RingAutoImportStatus = typeof RING_AUTO_IMPORT_QUEUED;
8
+ export type RingCompleteLinkingResponsePayload = {
9
+ status: string;
10
+ /** Absent when the API did not schedule an import. */
11
+ autoImport?: RingAutoImportStatus;
12
+ };
1
13
  export type RingDevice = {
2
14
  deviceId: string;
3
15
  name: string;
4
- deviceType: string;
16
+ /** Resolved from Ring's `device-status`; null when Ring did not return it. */
17
+ online: boolean | null;
18
+ deviceType: string | null;
5
19
  firmwareVersion: string | null;
20
+ /** Always null — Ring's API does not expose device power level. */
6
21
  batteryLife: number | null;
7
22
  location: string | null;
8
23
  imported: boolean;
@@ -13,21 +28,6 @@ export type RingDevice = {
13
28
  export type RingDevicesResponsePayload = {
14
29
  devices: RingDevice[];
15
30
  };
16
- export type RingImportDevicesPayload = {
17
- deviceIds: string[];
18
- projectExid: string;
19
- deviceNames?: Record<string, string>;
20
- };
21
- export type RingImportResponsePayload = {
22
- cameras: Array<{
23
- exid: string;
24
- name: string;
25
- }>;
26
- project: {
27
- exid: string;
28
- name: string;
29
- };
30
- };
31
31
  export type RingMoveDevicePayload = {
32
32
  projectExid: string;
33
33
  };
@@ -3,23 +3,15 @@ export declare enum RoiType {
3
3
  AnprContext = "anpr_context",
4
4
  ExclusionZone = "exclusion_zone",
5
5
  WorkflowArea = "workflow_area",
6
- SiteAnalytics = "site_analytics"
6
+ SiteAnalytics = "site_analytics",
7
+ Ppe = "ppe_roi"
7
8
  }
8
9
  export declare enum RoiShapeType {
9
10
  Polygon = "polygon",
10
11
  Line = "line",
11
12
  Direction = "direction",
12
- Rectangle = "rectangle",
13
- ROIBox = "ROIBox"
13
+ Rectangle = "rectangle"
14
14
  }
15
- export type RoiShape = {
16
- id: number | null;
17
- name: string;
18
- x1: number;
19
- x2: number;
20
- y1: number;
21
- y2: number;
22
- };
23
15
  export declare enum RoiDirection {
24
16
  Arrived = "arrived",
25
17
  Left = "left",
@@ -1,6 +1,7 @@
1
1
  export type RouteParams = {
2
2
  projectExid?: string;
3
3
  cameraExid?: string;
4
+ mediaExid?: string;
4
5
  timestamp?: string;
5
6
  fromDate?: string;
6
7
  toDate?: string;