@evercam/api 1.0.0-8134dc28b → 1.0.0-82efe1cab

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 (130) hide show
  1. package/README.md +3 -0
  2. package/dist/api/api/3dFirebaseApi.d.ts +27 -0
  3. package/dist/api/{adminApi.d.ts → api/adminApi.d.ts} +138 -75
  4. package/dist/api/api/aiApi.d.ts +128 -0
  5. package/dist/api/api/authzApi.d.ts +38 -0
  6. package/dist/api/{client → api/client}/axios.d.ts +2 -1
  7. package/dist/api/{client → api/client}/customErrors.d.ts +10 -0
  8. package/dist/api/{client → api/client}/interceptors.d.ts +1 -1
  9. package/dist/api/api/client/swr/Swr.d.ts +14 -0
  10. package/dist/api/api/client/swr/SwrStore.d.ts +10 -0
  11. package/dist/api/api/evercamApi.d.ts +337 -0
  12. package/dist/api/api/evercamLabsApi.d.ts +45 -0
  13. package/dist/api/{exNvrApi.d.ts → api/exNvrApi.d.ts} +1 -1
  14. package/dist/api/api/index.d.ts +13 -0
  15. package/dist/api/api/ingestApi.d.ts +148 -0
  16. package/dist/api/{ptzApi.d.ts → api/ptzApi.d.ts} +12 -3
  17. package/dist/api/api/videoWallApi.d.ts +9 -0
  18. package/dist/api/api/weatherApi.d.ts +9 -0
  19. package/dist/api/index.d.ts +3 -13
  20. package/dist/api/types/360.d.ts +276 -0
  21. package/dist/api/types/aconex.d.ts +143 -0
  22. package/dist/api/types/admin.d.ts +51 -0
  23. package/dist/{types → api/types}/analytics.d.ts +196 -80
  24. package/dist/{types → api/types}/anpr.d.ts +27 -13
  25. package/dist/{types → api/types}/auditLogs.d.ts +1 -1
  26. package/dist/api/types/authz.d.ts +61 -0
  27. package/dist/{types → api/types}/autodesk.d.ts +7 -7
  28. package/dist/api/types/automation.d.ts +95 -0
  29. package/dist/{types → api/types}/axios.d.ts +22 -2
  30. package/dist/{types → api/types}/bim.d.ts +11 -5
  31. package/dist/{types → api/types}/camera.d.ts +110 -124
  32. package/dist/api/types/comments.d.ts +55 -0
  33. package/dist/api/types/company.d.ts +115 -0
  34. package/dist/{types → api/types}/compare.d.ts +20 -5
  35. package/dist/{types → api/types}/connector.d.ts +9 -6
  36. package/dist/api/types/coolify.d.ts +36 -0
  37. package/dist/{types → api/types}/copilot.d.ts +11 -6
  38. package/dist/{types → api/types}/countries.d.ts +0 -7
  39. package/dist/{types → api/types}/credentials.d.ts +1 -0
  40. package/dist/api/types/detections.d.ts +124 -0
  41. package/dist/{types → api/types}/drone.d.ts +1 -0
  42. package/dist/{types → api/types}/errors.d.ts +13 -0
  43. package/dist/{types → api/types}/gateReport.d.ts +46 -150
  44. package/dist/{types → api/types}/hdd.d.ts +26 -1
  45. package/dist/{types → api/types}/index.d.ts +12 -2
  46. package/dist/api/types/ingest.d.ts +139 -0
  47. package/dist/{types → api/types}/kit.d.ts +89 -7
  48. package/dist/{types → api/types}/media.d.ts +2 -1
  49. package/dist/api/types/notification.d.ts +57 -0
  50. package/dist/api/types/oauth.d.ts +62 -0
  51. package/dist/api/types/planner.d.ts +79 -0
  52. package/dist/api/types/posthog.d.ts +33 -0
  53. package/dist/api/types/procore.d.ts +229 -0
  54. package/dist/{types → api/types}/progressPhoto.d.ts +11 -23
  55. package/dist/api/types/project.d.ts +246 -0
  56. package/dist/{types → api/types}/recording.d.ts +3 -4
  57. package/dist/api/types/recycleBin.d.ts +14 -0
  58. package/dist/api/types/ring.d.ts +53 -0
  59. package/dist/{types → api/types}/roi.d.ts +2 -1
  60. package/dist/{types → api/types}/routeParams.d.ts +4 -2
  61. package/dist/{types → api/types}/router.d.ts +20 -1
  62. package/dist/{types → api/types}/shared.d.ts +12 -10
  63. package/dist/api/types/shares.d.ts +58 -0
  64. package/dist/{types → api/types}/sim.d.ts +6 -6
  65. package/dist/api/types/siteAnalytics.d.ts +287 -0
  66. package/dist/api/types/smartSeach.d.ts +5 -0
  67. package/dist/{types → api/types}/snapshots.d.ts +42 -1
  68. package/dist/api/types/sso.d.ts +55 -0
  69. package/dist/api/types/storageProvider.d.ts +19 -0
  70. package/dist/api/types/storyblok.d.ts +40 -0
  71. package/dist/{types → api/types}/streaming.d.ts +4 -25
  72. package/dist/api/types/systemCheck.d.ts +11 -0
  73. package/dist/{types → api/types}/tag.d.ts +1 -1
  74. package/dist/api/types/time.d.ts +7 -0
  75. package/dist/{types → api/types}/timelapse.d.ts +5 -5
  76. package/dist/{types → api/types}/user.d.ts +105 -36
  77. package/dist/api/types/videoWall.d.ts +66 -0
  78. package/dist/api/types/weather.d.ts +153 -0
  79. package/dist/{types → api/types}/widget.d.ts +96 -16
  80. package/dist/api/types/xweather.d.ts +12 -0
  81. package/dist/{utils.d.ts → api/utils.d.ts} +1 -0
  82. package/dist/index.d.ts +2 -3
  83. package/dist/index.js +1686 -1007
  84. package/dist/index.js.map +1 -1
  85. package/dist/index.umd.cjs +1 -1
  86. package/dist/index.umd.cjs.map +1 -1
  87. package/dist/shared/api/index.d.ts +3 -0
  88. package/dist/shared/components/timelinePlayer/providers/index.d.ts +3 -0
  89. package/dist/shared/components/timelinePlayer/providers/timelineAnprProvider.d.ts +17 -0
  90. package/dist/shared/components/timelinePlayer/providers/timelineDataProvider.d.ts +13 -0
  91. package/dist/shared/components/timelinePlayer/providers/timelineLuminanceProvider.d.ts +16 -0
  92. package/dist/shared/types/components.d.ts +303 -0
  93. package/dist/shared/types/imagePlayer.d.ts +34 -0
  94. package/dist/shared/types/index.d.ts +5 -0
  95. package/dist/shared/types/rbac.d.ts +67 -0
  96. package/dist/shared/types/timeline.d.ts +10 -0
  97. package/package.json +5 -4
  98. package/dist/api/3dFirebaseApi.d.ts +0 -9
  99. package/dist/api/aiApi.d.ts +0 -110
  100. package/dist/api/authzApi.d.ts +0 -21
  101. package/dist/api/evercamApi.d.ts +0 -266
  102. package/dist/api/evercamLabsApi.d.ts +0 -50
  103. package/dist/api/ingestApi.d.ts +0 -66
  104. package/dist/api/videoWallApi.d.ts +0 -9
  105. package/dist/api/weatherApi.d.ts +0 -27
  106. package/dist/types/360.d.ts +0 -83
  107. package/dist/types/aconex.d.ts +0 -45
  108. package/dist/types/automation.d.ts +0 -6
  109. package/dist/types/comments.d.ts +0 -36
  110. package/dist/types/company.d.ts +0 -46
  111. package/dist/types/coolify.d.ts +0 -18
  112. package/dist/types/detections.d.ts +0 -76
  113. package/dist/types/devices.d.ts +0 -228
  114. package/dist/types/ingest.d.ts +0 -43
  115. package/dist/types/notification.d.ts +0 -27
  116. package/dist/types/planner.d.ts +0 -28
  117. package/dist/types/procore.d.ts +0 -76
  118. package/dist/types/project.d.ts +0 -119
  119. package/dist/types/shares.d.ts +0 -192
  120. package/dist/types/siteAnalytics.d.ts +0 -84
  121. package/dist/types/storageServers.d.ts +0 -4
  122. package/dist/types/time.d.ts +0 -19
  123. package/dist/types/videoWall.d.ts +0 -33
  124. package/dist/types/weather.d.ts +0 -83
  125. /package/dist/api/{client → api/client}/index.d.ts +0 -0
  126. /package/dist/api/{webRtcApi.d.ts → api/webRtcApi.d.ts} +0 -0
  127. /package/dist/{types → api/types}/map.d.ts +0 -0
  128. /package/dist/{types → api/types}/nvr.d.ts +0 -0
  129. /package/dist/{types → api/types}/vendorModel.d.ts +0 -0
  130. /package/dist/{types → api/types}/voyageControl.d.ts +0 -0
@@ -0,0 +1,95 @@
1
+ import { AconexIdentifiers, CameraExid } from "@evercam/api/types";
2
+ export declare enum AutomationProvider {
3
+ Aconex = "aconex",
4
+ Procore = "procore",
5
+ Autodesk = "autodesk",
6
+ Email = "email"
7
+ }
8
+ export declare enum AutomationType {
9
+ Photo = "photo",
10
+ Compare = "compare",
11
+ GateReport = "gate_report"
12
+ }
13
+ export type AutomationCompareConfig = {
14
+ compareDelay: number;
15
+ };
16
+ export type AutomationEmailRecipient = string | {
17
+ email: string;
18
+ };
19
+ export type AutomationGateReportConfig = {
20
+ projectExid: string;
21
+ vehicleTypes: string[];
22
+ fileType: string;
23
+ period: number;
24
+ columns: string[];
25
+ recipients: string | string[];
26
+ };
27
+ export type AutomationEmailProviderConfig = {
28
+ cameraExids?: CameraExid[];
29
+ recipients: string | AutomationEmailRecipient[];
30
+ };
31
+ export type AutomationProcoreProviderConfig = {
32
+ companyId: number;
33
+ companyName: string;
34
+ projectId: number;
35
+ projectName: string;
36
+ categoryId: number;
37
+ categoryName: string;
38
+ };
39
+ export type AutomationAconexProviderConfig = {
40
+ projectId: number;
41
+ projectName: string;
42
+ } & Partial<Record<AconexIdentifiers, string | number | boolean>>;
43
+ export type AutomationAutodeskProviderConfig = {
44
+ hubId: number;
45
+ hubName: string;
46
+ projectId: number;
47
+ projectName: string;
48
+ folderId: number;
49
+ accFileType: string;
50
+ accFolderType: string;
51
+ folderName: string;
52
+ };
53
+ export type AutomationProviderConfig = AutomationEmailProviderConfig | AutomationProcoreProviderConfig | AutomationAconexProviderConfig | AutomationAutodeskProviderConfig;
54
+ export type AutomationOptionsConfig = AutomationCompareConfig | AutomationGateReportConfig | {};
55
+ export type AutomationConfig = AutomationProviderConfig & AutomationOptionsConfig;
56
+ export type Automation = {
57
+ id?: number;
58
+ cameraExids: CameraExid[];
59
+ name: string;
60
+ subject?: string;
61
+ provider: AutomationProvider;
62
+ type: AutomationType;
63
+ config: AutomationConfig;
64
+ notifyDays: string[];
65
+ notifyTime: string;
66
+ timezone: string;
67
+ isPaused: boolean;
68
+ restrictedCameraExids?: string[];
69
+ };
70
+ export declare enum AutomationConfigStep {
71
+ Type = "type",
72
+ Cameras = "cameras",
73
+ Settings = "settings",
74
+ Destination = "destination"
75
+ }
76
+ export type AutomationProviderOption = {
77
+ labelTranslationKey: string;
78
+ descriptionTranslationKey: string;
79
+ value: AutomationProvider;
80
+ icon: string;
81
+ iconSize?: string;
82
+ requiresConnection: boolean;
83
+ };
84
+ export type FormattedAutomation = {
85
+ cameraExids: string;
86
+ name: string;
87
+ subject: string;
88
+ provider: AutomationProvider;
89
+ type: AutomationType;
90
+ config: Partial<AutomationProviderConfig> & Partial<AutomationOptionsConfig>;
91
+ notifyDays: string;
92
+ notifyTime: string;
93
+ timezone: string;
94
+ isPaused: boolean;
95
+ };
@@ -1,4 +1,5 @@
1
1
  import type { AxiosError, AxiosInstance, AxiosRequestConfig, AxiosResponse, CancelTokenSource, CancelTokenStatic } from "axios";
2
+ import { Swr } from "@evercam/api/api/client/swr/Swr";
2
3
  export type TimedRequest<T> = Promise<AxiosResponse<T> & {
3
4
  duration: number;
4
5
  error?: AxiosError;
@@ -7,7 +8,9 @@ export type AxiosEnvironment = {
7
8
  baseUrl?: string | null;
8
9
  stagingAiApiUrl?: string | null;
9
10
  aiApiUrl?: string | null;
10
- ingestApiUrl?: string | null;
11
+ ingestDroneApi?: string | null;
12
+ ingest360Api?: string | null;
13
+ ingestGpuApiUrl?: string | null;
11
14
  posthogApiUrl?: string | null;
12
15
  posthogProjectId?: string | null;
13
16
  posthogPrivateApiKey?: string | null;
@@ -15,17 +18,20 @@ export type AxiosEnvironment = {
15
18
  weatherApiBaseUrl?: string | null;
16
19
  evercamLabsUrl?: string | null;
17
20
  firebaseDbLink?: string | null;
21
+ firebaseStorageUrl?: string | null;
22
+ firebaseStorageToken?: string | null;
18
23
  snapshotsURL?: string | null;
19
24
  app?: string | null;
20
25
  getAuthToken?: () => string | null;
21
26
  errorLogger?: (error: AxiosError) => void;
27
+ swrKey?: string;
22
28
  };
23
29
  export type RequestInterceptor = (req: AxiosRequestConfig, env: AxiosEnvironment) => AxiosRequestConfig & any;
24
30
  export type ResponseInterceptor = (res: AxiosResponse, env: AxiosEnvironment) => AxiosResponse & any;
25
31
  export type ErrorInterceptor = (error: any, env: AxiosEnvironment) => any;
26
32
  export interface ExtendedAxiosInstance extends AxiosInstance {
27
33
  CancelToken: CancelTokenStatic;
28
- isCancel: (value: AxiosResponse | AxiosError | never) => boolean;
34
+ isCancel: (value: AxiosResponse | AxiosError | unknown) => boolean;
29
35
  setToken: (token: string) => void;
30
36
  setHeader: (headerName: string, value: any) => void;
31
37
  generateCancelTokenSource: () => CancelTokenSource;
@@ -37,7 +43,17 @@ export interface ExtendedAxiosInstance extends AxiosInstance {
37
43
  addRequestInterceptor: (interceptor: RequestInterceptor, errorInterceptor?: ErrorInterceptor) => void;
38
44
  addResponseInterceptor: (interceptor: ResponseInterceptor, errorInterceptor?: ErrorInterceptor) => void;
39
45
  addErrorInterceptor: (interceptor: ErrorInterceptor) => void;
46
+ swr: Swr;
40
47
  }
48
+ export type ResponseValue<T> = T | undefined;
49
+ export type SwrResponse<T> = {
50
+ cachedValue: ResponseValue<T>;
51
+ freshPromise: Promise<ResponseValue<T>>;
52
+ };
53
+ export type SwrRequestConfig<T> = Omit<AxiosRequestConfig, "onSwrHit" | "onSwrRefresh"> & {
54
+ onSwrHit?: (data: T) => unknown;
55
+ onSwrRefresh?: (data: T) => unknown;
56
+ };
41
57
  declare module "axios" {
42
58
  interface AxiosRequestConfig {
43
59
  raw?: boolean;
@@ -46,5 +62,9 @@ declare module "axios" {
46
62
  _metadata?: {
47
63
  startTime: number;
48
64
  };
65
+ swr?: boolean;
66
+ onSwrHit?: (data: any) => unknown;
67
+ onSwrRefresh?: (data: any) => unknown;
68
+ onSwrError?: (error: Error) => unknown;
49
69
  }
50
70
  }
@@ -1,4 +1,4 @@
1
- import { DateTime, DateType } from "@/types";
1
+ import { CompareLogoPosition, DateType } from "@evercam/api/types";
2
2
  export declare enum BimModelType {
3
3
  Architectural = "Architectural",
4
4
  Structural = "Structural",
@@ -48,14 +48,15 @@ export type BimCompareExportRequestPayload = {
48
48
  layerId?: number;
49
49
  maskId?: number;
50
50
  evercamWatermark?: boolean;
51
+ logo?: CompareLogoPosition;
51
52
  };
52
53
  export type BimLayerResponsePayload = {
53
54
  id: number;
54
55
  name: string;
55
- insertedAt: DateTime;
56
- updatedAt: DateTime;
56
+ insertedAt: string;
57
+ updatedAt: string;
57
58
  shapes: string;
58
- startAt: DateTime;
59
+ startAt: string;
59
60
  };
60
61
  export declare enum BimUploadStatus {
61
62
  Initial = 0,
@@ -78,13 +79,18 @@ export type BimCreationPayload = {
78
79
  };
79
80
  export declare enum BIMLayerTypes {
80
81
  Mask = "mask",
82
+ BimMask = "bim_mask",
81
83
  MeasuringGrid = "measuring_grid",
82
84
  BimArchitectural = "bim_architectural",
83
85
  BimStructural = "bim_structural",
84
86
  Bim4D = "bim_4d",
85
87
  BimMep = "bim_mep",
86
88
  RecordingsTag = "recordings_tag",
87
- Milestone = "milestone"
89
+ Milestone = "milestone",
90
+ ForgeBimArchitectural = "forge_bim_architectural",
91
+ ForgeBimStructural = "forge_bim_structural",
92
+ ForgeBim4D = "forge_bim_4d",
93
+ ForgeBimMep = "forge_bim_mep"
88
94
  }
89
95
  export type BimLayersQueryParams = {
90
96
  layerType: BIMLayerTypes;
@@ -1,4 +1,5 @@
1
- import { AuditLogActionType, DateTime_Z_micros, DateType, EntityByExid, NvrDeviceType, PaginationParams, PowerSchedule, PowerType, ProjectExid, Schedule } from "@/types";
1
+ import { AuditLogActionType, DateType, EntityByExid, KitAlarm, NvrDeviceType, PaginationParams, PowerSchedule, PowerType, ProjectExid, ProjectFeatureFlag, Schedule, ScheduleLowercase } from "@evercam/api/types";
2
+ import { DateRangeFilter } from "@evercam/api/types/time";
2
3
  export type CameraExid = string;
3
4
  export type CamerasByExid = EntityByExid<Camera>;
4
5
  export type Cartesian3 = {
@@ -16,8 +17,9 @@ export type Camera = {
16
17
  status: string;
17
18
  storageDuration: string;
18
19
  };
19
- createdAt: DateTime_Z_micros;
20
- description: null;
20
+ liveViewFrequency: number | null;
21
+ createdAt: string;
22
+ description: string | null;
21
23
  discoverable: boolean;
22
24
  external: {
23
25
  host: string;
@@ -36,14 +38,14 @@ export type Camera = {
36
38
  featureFlags: Array<CameraFeatureFlag>;
37
39
  fovAngle: number;
38
40
  fovRadius: number;
39
- heading: null;
41
+ heading: number;
40
42
  id: CameraExid;
41
43
  exid: CameraExid;
42
44
  isOnline: boolean;
43
45
  isPowerScheduleActive: boolean;
44
46
  isPublic: boolean;
45
- lastOnlineAt: DateTime_Z_micros;
46
- lastPolledAt: DateTime_Z_micros;
47
+ lastOnlineAt: string;
48
+ lastPolledAt: string;
47
49
  location: {
48
50
  lat: number;
49
51
  lng: number;
@@ -62,7 +64,7 @@ export type Camera = {
62
64
  offlineReason: string;
63
65
  owned: boolean;
64
66
  owner: string;
65
- pitch: null;
67
+ pitch: string | null;
66
68
  project: {
67
69
  id: string;
68
70
  name: string;
@@ -72,85 +74,95 @@ export type Camera = {
72
74
  rtmp: string;
73
75
  };
74
76
  ptz: boolean;
75
- rights: string;
76
- roll: null;
77
+ recordingFromNvr: boolean;
78
+ model?: CameraModel;
79
+ roll: string | null;
77
80
  routerId: number;
78
81
  status: CameraStatus;
79
82
  streamingServer: string;
80
83
  thumbnailUrl: string;
81
84
  largeThumbnailUrl?: string;
82
85
  timezone: string;
83
- updatedAt: DateTime_Z_micros;
86
+ updatedAt: string;
84
87
  vendorName: string;
88
+ isAccessRestricted?: boolean;
89
+ kitAlarms?: KitAlarm[];
85
90
  };
86
91
  export type AdminCamera = {
87
- cameraHost: string;
88
- cameraHttpPort: number;
89
- cameraModel: string;
90
- cameraPassword: string;
91
- cameraPictureEndpoint: string;
92
- cameraRtspPort: number;
93
- cameraScheme: string;
94
- cameraUsername: string;
95
- cameraFirmwareVersion: string;
96
- cameraTimezone: string;
97
- cloudRecordingFrequency: number;
98
- cloudRecordingId: number;
99
- cloudRecordingSchedule: Schedule;
100
- cloudRecordingStatus: string;
101
- cloudRecordingStorageDuration: number;
102
- createdAt: DateTime_Z_micros;
103
- description: null;
104
- discoverable: false;
105
- exid: CameraExid;
106
- featureFlags: CameraFeatureFlag[];
107
- fovAngle: 45.0;
108
- fovRadius: number;
109
- heading: null;
110
92
  id: number;
111
- isPowerScheduleActive: true;
112
- isPublic: false;
113
- kitId?: number;
114
- lastOnlineAt: DateTime_Z_micros;
115
- lastPolledAt: DateTime_Z_micros;
116
- location: {
117
- lat: number;
118
- lng: number;
119
- };
120
- macAddress: string;
93
+ exid: CameraExid;
121
94
  name: string;
122
- nvrChannel: null;
123
- nvrDeviceId: string;
124
- nvrHost: string;
125
- nvrHttpPort: number;
126
- nvrModel: NvrModel;
127
- nvrPassword: string;
128
- nvrPictureEndpoint: string;
129
- nvrRtspPort: number;
130
- nvrScheme: string;
131
- nvrUsername: string;
132
- offlineReason: null;
133
- pitch: null;
134
- powerSchedule: Schedule;
135
- projectExid: string;
136
- projectFeatureFlags: [];
137
- projectId: number;
138
- projectName: string;
139
- ptz: false;
140
- recordingFromNvr: false;
141
- roll: null;
142
- routerId: number;
143
95
  status: string;
144
- storageProviders: [];
145
- streamEndpoint: string;
146
- timezone: string;
147
- updatedAt: DateTime_Z_micros;
148
- userApiId: string;
149
- userApiKey: string;
96
+ description: string | null;
97
+ createdAt: string;
98
+ updatedAt: string;
99
+ lastOnlineAt: string | null;
100
+ lastPolledAt: string | null;
101
+ decommissionedAt: string | null;
102
+ deletedAt?: string | null;
103
+ projectId: number | null;
104
+ projectExid: string | null;
105
+ projectName: string | null;
106
+ projectFeatureFlags: Array<ProjectFeatureFlag | string>;
107
+ userId: number | null;
150
108
  userEmail: string;
151
109
  userFullname: string;
152
- userId: number;
153
- zohoId: string;
110
+ userApiId?: string;
111
+ userApiKey?: string;
112
+ isPublic: boolean;
113
+ sharedWithConstruction?: boolean;
114
+ timezone: string | null;
115
+ location?: {
116
+ lat: number;
117
+ lng: number;
118
+ } | null;
119
+ fovAngle?: number | null;
120
+ fovRadius?: number | null;
121
+ heading?: number | null;
122
+ pitch?: number | null;
123
+ roll?: number | null;
124
+ cameraModel?: string | null;
125
+ cameraHost?: string | null;
126
+ cameraHttpPort?: number | null;
127
+ cameraRtspPort?: number | null;
128
+ cameraScheme?: string | null;
129
+ cameraUsername?: string | null;
130
+ cameraPassword?: string | null;
131
+ cameraPictureEndpoint?: string | null;
132
+ rtspUrl?: string | null;
133
+ httpUrl?: string | null;
134
+ deviceId?: string | null;
135
+ nvrId?: number | null;
136
+ nvrDeviceId?: string | null;
137
+ nvrModel?: NvrModel | string | null;
138
+ nvrHost?: string | null;
139
+ nvrHttpPort?: number | null;
140
+ nvrRtspPort?: number | null;
141
+ nvrScheme?: string | null;
142
+ nvrUsername?: string | null;
143
+ nvrPassword?: string | null;
144
+ nvrPictureEndpoint?: string | null;
145
+ streamEndpoint?: string | null;
146
+ routerId?: number | null;
147
+ kitId?: number | null;
148
+ powerType?: string | null;
149
+ powerSchedule?: ScheduleLowercase | Record<string, string[]>;
150
+ isPowerScheduleActive?: boolean;
151
+ discoverable?: boolean;
152
+ recordingFromNvr?: boolean;
153
+ cloudRecordingFrequency?: number | null;
154
+ cloudRecordingId?: number | null;
155
+ cloudRecordingStatus?: string | null;
156
+ cloudRecordingSchedule?: ScheduleLowercase | null;
157
+ cloudRecordingStorageDuration?: number | null;
158
+ liveViewFrequency?: number | null;
159
+ anprSources?: string[];
160
+ storageProviders?: string[];
161
+ featureFlags?: CameraFeatureFlag[];
162
+ zohoId?: string | null;
163
+ offlineReason?: string | null;
164
+ macAddress?: string | null;
165
+ type?: string[];
154
166
  thumbnailUrl?: string;
155
167
  };
156
168
  export type CameraMapMarker = {
@@ -174,9 +186,19 @@ export declare enum CameraStatus {
174
186
  UnderMaintenance = "under_maintenance",
175
187
  WaitingForSiteVisit = "waiting_for_site_visit"
176
188
  }
189
+ export declare enum IntensityChange {
190
+ High = "High",
191
+ Moderate = "Moderate",
192
+ Low = "Low",
193
+ NoChange = "No change",
194
+ Default = "Default"
195
+ }
196
+ export declare const IntensityChangeColorMap: Record<IntensityChange, string>;
177
197
  export declare enum CameraFeatureFlag {
178
198
  EdgeVideo = "edge_video",
179
199
  BimCompare = "bim_compare",
200
+ TwoDBimCompare = "2d_bim_compare",
201
+ ForgeBIMCompare = "forge_bim_compare",
180
202
  GateReport = "gate_report",
181
203
  VideoStream = "video_stream",
182
204
  WebRTC = "webrtc",
@@ -186,7 +208,10 @@ export declare enum CameraFeatureFlag {
186
208
  ObjectDetection = "object_detection",
187
209
  Segmentation = "segmentation",
188
210
  SegmentationAutoLabelling = "segmentation_auto_labelling",
189
- PpeMonitoring = "ppe_monitoring"
211
+ PpeMonitoring = "ppe_monitoring",
212
+ NoLiveView = "no_live_view",
213
+ Ring = "ring",
214
+ CloudOnly = "cloud_only"
190
215
  }
191
216
  export type CameraLogsRequestPayload = {
192
217
  limit: number;
@@ -229,6 +254,8 @@ export type CameraUpdateRequestPayload = {
229
254
  fovAngle?: number;
230
255
  fovRadius?: number;
231
256
  featureFlags: CameraFeatureFlag[];
257
+ isAccessRestricted?: boolean;
258
+ liveViewFrequency?: number | null;
232
259
  };
233
260
  export type CamerasResponsePayload = {
234
261
  cameras?: Camera[];
@@ -290,7 +317,8 @@ export declare enum CameraModel {
290
317
  Hikvision = "hikvision",
291
318
  Avigilion = "avigilion",
292
319
  Hanwha = "hanwha",
293
- Other = "other"
320
+ Other = "other",
321
+ Ring = "ring"
294
322
  }
295
323
  export type DroneCameraTransform = {
296
324
  position: Cartesian3;
@@ -322,56 +350,6 @@ export type Hdd = {
322
350
  errorStatus: string;
323
351
  canExpand: boolean;
324
352
  };
325
- export declare enum ResolutionDimensions {
326
- QVGA = "320x240",
327
- VGA = "640x480",
328
- SVGA = "800x600",
329
- XGA = "1024x768",
330
- HD = "1280x720",
331
- WXGA = "1280x800",
332
- HDPlus = "1366x768",
333
- WXGAPlus = "1440x900",
334
- HDPlusPlus = "1600x900",
335
- UXGA = "1600x1200",
336
- FullHD = "1920x1080",
337
- WUXGA = "1920x1200",
338
- TwoK = "2048x1080",
339
- QHD = "2560x1440",
340
- WQXGA = "2560x1600",
341
- FourK = "3840x2160",
342
- FourKCinema = "4096x2160",
343
- FiveK = "5120x2880",
344
- EightK = "7680x4320",
345
- WHUXGA = "7680x4800"
346
- }
347
- export declare enum ResolutionLabel {
348
- QVGA = "QVGA",
349
- VGA = "VGA",
350
- SVGA = "SVGA",
351
- XGA = "XGA",
352
- HD = "HD",
353
- WXGA = "WXGA",
354
- HDPlus = "HD+",
355
- WXGAPlus = "WXGA++",
356
- HDPlusPlus = "HD++",
357
- UXGA = "UXGA",
358
- FullHD = "FullHD",
359
- WUXGA = "WUXGA",
360
- TwoK = "2K",
361
- QHD = "QHD",
362
- WQXGA = "WQXGA",
363
- FourK = "4K",
364
- FourKCinema = "4KCinema",
365
- FiveK = "5K",
366
- EightK = "8K",
367
- WHUXGA = "WHUXGA"
368
- }
369
- export type ResolutionInfo = {
370
- ratioString: string;
371
- ratioFloat: number;
372
- resolutionDimensions: ResolutionDimensions;
373
- resolutionLabel: ResolutionLabel;
374
- };
375
353
  export type CameraPath = {
376
354
  projectExid: ProjectExid;
377
355
  cameraExid: CameraExid;
@@ -379,6 +357,7 @@ export type CameraPath = {
379
357
  export type CheckCameraPortPayload = {
380
358
  address: string;
381
359
  port: number;
360
+ open: boolean;
382
361
  };
383
362
  export type CameraCreateRequestPayload = {
384
363
  status: CameraStatus;
@@ -563,3 +542,10 @@ export type FetchCameraQueryParams = PaginationParams & {
563
542
  externalRsptPort: string;
564
543
  nvrHttpPort: string;
565
544
  };
545
+ export declare enum BimType {
546
+ TwoD = "2D",
547
+ Forge = "Forge"
548
+ }
549
+ export type CameraDateRangeFilter = DateRangeFilter & {
550
+ cameraExid: CameraExid;
551
+ };
@@ -0,0 +1,55 @@
1
+ import { CameraExid, DateType, ProjectExid, PaginationParams } from "@evercam/api/types";
2
+ export declare enum CommentsScope {
3
+ Recordings = "recordings",
4
+ ThreeSixty = "360",
5
+ Drone = "drone"
6
+ }
7
+ export declare enum CommentsLabel {
8
+ Info = "Info",
9
+ Danger = "Danger",
10
+ Restricted = "Restricted"
11
+ }
12
+ export type CommentsRequestPayload = {
13
+ scope: CommentsScope;
14
+ };
15
+ export type CommentsListRequestPayload = PaginationParams & {
16
+ projectExid?: ProjectExid;
17
+ cameraExid?: CameraExid;
18
+ fromDate?: string;
19
+ toDate?: string;
20
+ scope?: CommentsScope;
21
+ creatorEmail?: string;
22
+ content?: string;
23
+ includeArchived?: boolean;
24
+ };
25
+ export type Comment = {
26
+ fromDate?: string;
27
+ toDate?: string;
28
+ timestamp: string;
29
+ projectExid: ProjectExid;
30
+ updatedAt?: string;
31
+ id?: number;
32
+ cameraExid: CameraExid;
33
+ content: string;
34
+ createdAt?: string;
35
+ creatorEmail?: string;
36
+ creatorName?: string;
37
+ position2d?: [number, number];
38
+ position3d?: [number, number, number];
39
+ context?: Record<string, unknown>;
40
+ canDelete?: boolean;
41
+ archivedAt?: string;
42
+ label?: CommentsLabel;
43
+ };
44
+ export type CommentCreationRequestPayload = {
45
+ fromDate?: DateType;
46
+ toDate?: DateType;
47
+ timestamp?: DateType;
48
+ scope?: CommentsScope;
49
+ projectExid: ProjectExid;
50
+ cameraExid?: CameraExid;
51
+ content: string;
52
+ position2d?: number[];
53
+ position3d?: number[];
54
+ context?: Record<string, unknown>;
55
+ };
@@ -0,0 +1,115 @@
1
+ import type { DateType, PaginationParams } from "@evercam/api/types";
2
+ export type CompanyUser = {
3
+ id: number;
4
+ fullname: string;
5
+ email: string;
6
+ eventsCount: number;
7
+ lastSeenAt: string;
8
+ active: boolean;
9
+ };
10
+ export type AdminCompanyUser = {
11
+ id: number;
12
+ email: string;
13
+ fullname: string;
14
+ lastLoginAt: string;
15
+ };
16
+ export type CompanyProject = {
17
+ exid: string;
18
+ name: string;
19
+ status: string;
20
+ startedAt: DateType;
21
+ };
22
+ export type AdminCompanyProject = {
23
+ id: number;
24
+ name: string;
25
+ status: string;
26
+ insertedAt: DateType;
27
+ exid: string;
28
+ endDate: string | null;
29
+ startDate: string | null;
30
+ archiveTier: string | null;
31
+ };
32
+ export type CompanyKit = {
33
+ id: number;
34
+ name: string;
35
+ serial: string;
36
+ status: string;
37
+ powerType: string;
38
+ countryName: string;
39
+ nvrId: string;
40
+ nvrSerial: string;
41
+ nvrVersion: string;
42
+ nvrNerves: boolean;
43
+ nvrModel: string;
44
+ nvrDeviceType: string;
45
+ routerId: string;
46
+ routerSerial: string;
47
+ projectExid: string;
48
+ projectName: string;
49
+ alarms: Array<string>;
50
+ sims: Array<{
51
+ id: number;
52
+ number: string;
53
+ }>;
54
+ cameras: Array<{
55
+ exid: string;
56
+ name: string;
57
+ status: string;
58
+ }>;
59
+ };
60
+ export type Company = {
61
+ id: number;
62
+ exid: string;
63
+ name: string;
64
+ zohoId: string;
65
+ domains: string;
66
+ linkedinUrl: string;
67
+ sessions: number;
68
+ projects: number;
69
+ cameras: number;
70
+ users: number;
71
+ activeUsers: number;
72
+ insertedAt: DateType;
73
+ };
74
+ export type CompanySummary = {
75
+ id: number;
76
+ name: string;
77
+ users: number;
78
+ insertedAt: DateType;
79
+ exid: string;
80
+ sessions: number;
81
+ projects: number;
82
+ zohoId: string;
83
+ domains: string;
84
+ linkedinUrl: string | null;
85
+ ssoProviders: string[];
86
+ cameras: number;
87
+ kits: number;
88
+ };
89
+ export type CompanyCameraSummary = {
90
+ id: number;
91
+ name: string;
92
+ status: string;
93
+ exid: string;
94
+ projectExid: string | null;
95
+ ownerEmail: string;
96
+ ownerFullname: string;
97
+ usersCount: number;
98
+ };
99
+ export type CompanyQueryParams = PaginationParams & {
100
+ name: string;
101
+ exid: string;
102
+ domains: string;
103
+ projects: string;
104
+ cameras: string;
105
+ users: string;
106
+ activeUsers: string;
107
+ sessions: string;
108
+ };
109
+ export type CompanyUpdatePayload = {
110
+ name: string;
111
+ exid: string;
112
+ linkedinUrl?: string;
113
+ domains?: string;
114
+ zohoId?: string;
115
+ };