@evercam/api 1.0.0-0a308274b → 1.0.0-0ddf6c628

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 (128) hide show
  1. package/README.md +5 -0
  2. package/dist/api/api/3dFirebaseApi.d.ts +27 -0
  3. package/dist/api/{adminApi.d.ts → api/adminApi.d.ts} +142 -79
  4. package/dist/api/api/aiApi.d.ts +127 -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 +329 -0
  12. package/dist/api/api/evercamLabsApi.d.ts +46 -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 +147 -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 +214 -103
  24. package/dist/{types → api/types}/anpr.d.ts +35 -19
  25. package/dist/{types → api/types}/auditLogs.d.ts +1 -1
  26. package/dist/api/types/authz.d.ts +60 -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 -1
  30. package/dist/{types → api/types}/bim.d.ts +11 -5
  31. package/dist/{types → api/types}/camera.d.ts +109 -125
  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 +19 -13
  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 +121 -0
  41. package/dist/{types → api/types}/errors.d.ts +13 -0
  42. package/dist/{types → api/types}/gateReport.d.ts +46 -150
  43. package/dist/{types → api/types}/hdd.d.ts +26 -1
  44. package/dist/{types → api/types}/index.d.ts +15 -3
  45. package/dist/api/types/ingest.d.ts +134 -0
  46. package/dist/{types → api/types}/kit.d.ts +93 -7
  47. package/dist/{types → api/types}/media.d.ts +2 -1
  48. package/dist/api/types/notification.d.ts +57 -0
  49. package/dist/api/types/oauth.d.ts +62 -0
  50. package/dist/{types/sitePlanner.d.ts → api/types/planner.d.ts} +7 -0
  51. package/dist/api/types/posthog.d.ts +33 -0
  52. package/dist/api/types/procore.d.ts +229 -0
  53. package/dist/{types → api/types}/progressPhoto.d.ts +11 -23
  54. package/dist/api/types/project.d.ts +242 -0
  55. package/dist/{types → api/types}/recording.d.ts +3 -4
  56. package/dist/api/types/recycleBin.d.ts +14 -0
  57. package/dist/api/types/ring.d.ts +53 -0
  58. package/dist/{types → api/types}/roi.d.ts +2 -1
  59. package/dist/{types → api/types}/routeParams.d.ts +4 -2
  60. package/dist/{types → api/types}/router.d.ts +20 -1
  61. package/dist/{types → api/types}/shared.d.ts +13 -20
  62. package/dist/api/types/shares.d.ts +58 -0
  63. package/dist/{types → api/types}/sim.d.ts +6 -6
  64. package/dist/api/types/siteAnalytics.d.ts +287 -0
  65. package/dist/api/types/smartSeach.d.ts +5 -0
  66. package/dist/{types → api/types}/snapshots.d.ts +10 -1
  67. package/dist/api/types/sso.d.ts +55 -0
  68. package/dist/api/types/storageProvider.d.ts +19 -0
  69. package/dist/api/types/storyblok.d.ts +40 -0
  70. package/dist/api/types/streaming.d.ts +97 -0
  71. package/dist/api/types/systemCheck.d.ts +11 -0
  72. package/dist/api/types/tag.d.ts +12 -0
  73. package/dist/api/types/time.d.ts +7 -0
  74. package/dist/{types → api/types}/timelapse.d.ts +10 -4
  75. package/dist/{types → api/types}/user.d.ts +105 -35
  76. package/dist/api/types/videoWall.d.ts +66 -0
  77. package/dist/api/types/weather.d.ts +153 -0
  78. package/dist/{types → api/types}/widget.d.ts +99 -19
  79. package/dist/api/types/xweather.d.ts +12 -0
  80. package/dist/{utils.d.ts → api/utils.d.ts} +1 -0
  81. package/dist/index.d.ts +2 -3
  82. package/dist/index.js +1700 -957
  83. package/dist/index.js.map +1 -1
  84. package/dist/index.umd.cjs +1 -1
  85. package/dist/index.umd.cjs.map +1 -1
  86. package/dist/shared/api/index.d.ts +3 -0
  87. package/dist/shared/components/timelinePlayer/providers/index.d.ts +3 -0
  88. package/dist/shared/components/timelinePlayer/providers/timelineAnprProvider.d.ts +17 -0
  89. package/dist/shared/components/timelinePlayer/providers/timelineDataProvider.d.ts +13 -0
  90. package/dist/shared/components/timelinePlayer/providers/timelineLuminanceProvider.d.ts +16 -0
  91. package/dist/shared/types/components.d.ts +270 -0
  92. package/dist/shared/types/imagePlayer.d.ts +34 -0
  93. package/dist/shared/types/index.d.ts +4 -0
  94. package/dist/shared/types/timeline.d.ts +10 -0
  95. package/package.json +6 -5
  96. package/dist/api/3dFirebaseApi.d.ts +0 -9
  97. package/dist/api/aiApi.d.ts +0 -86
  98. package/dist/api/authzApi.d.ts +0 -21
  99. package/dist/api/evercamApi.d.ts +0 -266
  100. package/dist/api/evercamLabsApi.d.ts +0 -46
  101. package/dist/api/ingestApi.d.ts +0 -65
  102. package/dist/api/videoWallApi.d.ts +0 -9
  103. package/dist/api/weatherApi.d.ts +0 -25
  104. package/dist/types/360.d.ts +0 -83
  105. package/dist/types/aconex.d.ts +0 -45
  106. package/dist/types/automation.d.ts +0 -6
  107. package/dist/types/comments.d.ts +0 -36
  108. package/dist/types/company.d.ts +0 -46
  109. package/dist/types/detections.d.ts +0 -76
  110. package/dist/types/devices.d.ts +0 -228
  111. package/dist/types/ingest.d.ts +0 -43
  112. package/dist/types/notification.d.ts +0 -27
  113. package/dist/types/procore.d.ts +0 -76
  114. package/dist/types/project.d.ts +0 -120
  115. package/dist/types/shares.d.ts +0 -192
  116. package/dist/types/siteAnalytics.d.ts +0 -84
  117. package/dist/types/storageServers.d.ts +0 -4
  118. package/dist/types/streaming.d.ts +0 -119
  119. package/dist/types/time.d.ts +0 -19
  120. package/dist/types/videoWall.d.ts +0 -33
  121. package/dist/types/weather.d.ts +0 -83
  122. /package/dist/api/{client → api/client}/index.d.ts +0 -0
  123. /package/dist/api/{webRtcApi.d.ts → api/webRtcApi.d.ts} +0 -0
  124. /package/dist/{types → api/types}/drone.d.ts +0 -0
  125. /package/dist/{types → api/types}/map.d.ts +0 -0
  126. /package/dist/{types → api/types}/nvr.d.ts +0 -0
  127. /package/dist/{types → api/types}/vendorModel.d.ts +0 -0
  128. /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;
@@ -8,6 +9,9 @@ export type AxiosEnvironment = {
8
9
  stagingAiApiUrl?: string | null;
9
10
  aiApiUrl?: string | null;
10
11
  ingestApiUrl?: string | null;
12
+ ingestGpuApiUrl?: string | null;
13
+ ingestGpuV3ApiUrl?: string | null;
14
+ ingestGpuV4ApiUrl?: string | null;
11
15
  posthogApiUrl?: string | null;
12
16
  posthogProjectId?: string | null;
13
17
  posthogPrivateApiKey?: string | null;
@@ -15,17 +19,20 @@ export type AxiosEnvironment = {
15
19
  weatherApiBaseUrl?: string | null;
16
20
  evercamLabsUrl?: string | null;
17
21
  firebaseDbLink?: string | null;
22
+ firebaseStorageUrl?: string | null;
23
+ firebaseStorageToken?: string | null;
18
24
  snapshotsURL?: string | null;
19
25
  app?: string | null;
20
26
  getAuthToken?: () => string | null;
21
27
  errorLogger?: (error: AxiosError) => void;
28
+ swrKey?: string;
22
29
  };
23
30
  export type RequestInterceptor = (req: AxiosRequestConfig, env: AxiosEnvironment) => AxiosRequestConfig & any;
24
31
  export type ResponseInterceptor = (res: AxiosResponse, env: AxiosEnvironment) => AxiosResponse & any;
25
32
  export type ErrorInterceptor = (error: any, env: AxiosEnvironment) => any;
26
33
  export interface ExtendedAxiosInstance extends AxiosInstance {
27
34
  CancelToken: CancelTokenStatic;
28
- isCancel: (value: AxiosResponse | AxiosError | never) => boolean;
35
+ isCancel: (value: AxiosResponse | AxiosError | unknown) => boolean;
29
36
  setToken: (token: string) => void;
30
37
  setHeader: (headerName: string, value: any) => void;
31
38
  generateCancelTokenSource: () => CancelTokenSource;
@@ -37,7 +44,17 @@ export interface ExtendedAxiosInstance extends AxiosInstance {
37
44
  addRequestInterceptor: (interceptor: RequestInterceptor, errorInterceptor?: ErrorInterceptor) => void;
38
45
  addResponseInterceptor: (interceptor: ResponseInterceptor, errorInterceptor?: ErrorInterceptor) => void;
39
46
  addErrorInterceptor: (interceptor: ErrorInterceptor) => void;
47
+ swr: Swr;
40
48
  }
49
+ export type ResponseValue<T> = T | undefined;
50
+ export type SwrResponse<T> = {
51
+ cachedValue: ResponseValue<T>;
52
+ freshPromise: Promise<ResponseValue<T>>;
53
+ };
54
+ export type SwrRequestConfig<T> = Omit<AxiosRequestConfig, "onSwrHit" | "onSwrRefresh"> & {
55
+ onSwrHit?: (data: T) => unknown;
56
+ onSwrRefresh?: (data: T) => unknown;
57
+ };
41
58
  declare module "axios" {
42
59
  interface AxiosRequestConfig {
43
60
  raw?: boolean;
@@ -46,5 +63,9 @@ declare module "axios" {
46
63
  _metadata?: {
47
64
  startTime: number;
48
65
  };
66
+ swr?: boolean;
67
+ onSwrHit?: (data: any) => unknown;
68
+ onSwrRefresh?: (data: any) => unknown;
69
+ onSwrError?: (error: Error) => unknown;
49
70
  }
50
71
  }
@@ -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,5 +1,6 @@
1
- import { AuditLogActionType, DateTime_Z_micros, DateType, EntityByExid, Exid, NvrDeviceType, PaginationParams, PowerSchedule, PowerType, ProjectExid, Schedule } from "@/types";
2
- export type CameraExid = Exid;
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";
3
+ export type CameraExid = string;
3
4
  export type CamerasByExid = EntityByExid<Camera>;
4
5
  export type Cartesian3 = {
5
6
  x: number;
@@ -16,8 +17,8 @@ export type Camera = {
16
17
  status: string;
17
18
  storageDuration: string;
18
19
  };
19
- createdAt: DateTime_Z_micros;
20
- description: null;
20
+ createdAt: string;
21
+ description: string | null;
21
22
  discoverable: boolean;
22
23
  external: {
23
24
  host: string;
@@ -36,14 +37,14 @@ export type Camera = {
36
37
  featureFlags: Array<CameraFeatureFlag>;
37
38
  fovAngle: number;
38
39
  fovRadius: number;
39
- heading: null;
40
+ heading: number;
40
41
  id: CameraExid;
41
42
  exid: CameraExid;
42
43
  isOnline: boolean;
43
44
  isPowerScheduleActive: boolean;
44
45
  isPublic: boolean;
45
- lastOnlineAt: DateTime_Z_micros;
46
- lastPolledAt: DateTime_Z_micros;
46
+ lastOnlineAt: string;
47
+ lastPolledAt: string;
47
48
  location: {
48
49
  lat: number;
49
50
  lng: number;
@@ -62,7 +63,7 @@ export type Camera = {
62
63
  offlineReason: string;
63
64
  owned: boolean;
64
65
  owner: string;
65
- pitch: null;
66
+ pitch: string | null;
66
67
  project: {
67
68
  id: string;
68
69
  name: string;
@@ -72,85 +73,94 @@ export type Camera = {
72
73
  rtmp: string;
73
74
  };
74
75
  ptz: boolean;
75
- rights: string;
76
- roll: null;
76
+ recordingFromNvr: boolean;
77
+ model?: CameraModel;
78
+ roll: string | null;
77
79
  routerId: number;
78
80
  status: CameraStatus;
79
81
  streamingServer: string;
80
82
  thumbnailUrl: string;
81
83
  largeThumbnailUrl?: string;
82
84
  timezone: string;
83
- updatedAt: DateTime_Z_micros;
85
+ updatedAt: string;
84
86
  vendorName: string;
87
+ isAccessRestricted?: boolean;
88
+ kitAlarms?: KitAlarm[];
85
89
  };
86
90
  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
91
  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;
92
+ exid: CameraExid;
121
93
  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
94
  status: string;
144
- storageProviders: [];
145
- streamEndpoint: string;
146
- timezone: string;
147
- updatedAt: DateTime_Z_micros;
148
- userApiId: string;
149
- userApiKey: string;
95
+ description: string | null;
96
+ createdAt: string;
97
+ updatedAt: string;
98
+ lastOnlineAt: string | null;
99
+ lastPolledAt: string | null;
100
+ decommissionedAt: string | null;
101
+ deletedAt?: string | null;
102
+ projectId: number | null;
103
+ projectExid: string | null;
104
+ projectName: string | null;
105
+ projectFeatureFlags: Array<ProjectFeatureFlag | string>;
106
+ userId: number | null;
150
107
  userEmail: string;
151
108
  userFullname: string;
152
- userId: number;
153
- zohoId: string;
109
+ userApiId?: string;
110
+ userApiKey?: string;
111
+ isPublic: boolean;
112
+ sharedWithConstruction?: boolean;
113
+ timezone: string | null;
114
+ location?: {
115
+ lat: number;
116
+ lng: number;
117
+ } | null;
118
+ fovAngle?: number | null;
119
+ fovRadius?: number | null;
120
+ heading?: number | null;
121
+ pitch?: number | null;
122
+ roll?: number | null;
123
+ cameraModel?: string | null;
124
+ cameraHost?: string | null;
125
+ cameraHttpPort?: number | null;
126
+ cameraRtspPort?: number | null;
127
+ cameraScheme?: string | null;
128
+ cameraUsername?: string | null;
129
+ cameraPassword?: string | null;
130
+ cameraPictureEndpoint?: string | null;
131
+ rtspUrl?: string | null;
132
+ httpUrl?: string | null;
133
+ deviceId?: string | null;
134
+ nvrId?: number | null;
135
+ nvrDeviceId?: string | null;
136
+ nvrModel?: NvrModel | string | null;
137
+ nvrHost?: string | null;
138
+ nvrHttpPort?: number | null;
139
+ nvrRtspPort?: number | null;
140
+ nvrScheme?: string | null;
141
+ nvrUsername?: string | null;
142
+ nvrPassword?: string | null;
143
+ nvrPictureEndpoint?: string | null;
144
+ streamEndpoint?: string | null;
145
+ routerId?: number | null;
146
+ kitId?: number | null;
147
+ powerType?: string | null;
148
+ powerSchedule?: ScheduleLowercase | Record<string, string[]>;
149
+ isPowerScheduleActive?: boolean;
150
+ discoverable?: boolean;
151
+ recordingFromNvr?: boolean;
152
+ cloudRecordingFrequency?: number | null;
153
+ cloudRecordingId?: number | null;
154
+ cloudRecordingStatus?: string | null;
155
+ cloudRecordingSchedule?: ScheduleLowercase | null;
156
+ cloudRecordingStorageDuration?: number | null;
157
+ anprSources?: string[];
158
+ storageProviders?: string[];
159
+ featureFlags?: CameraFeatureFlag[];
160
+ zohoId?: string | null;
161
+ offlineReason?: string | null;
162
+ macAddress?: string | null;
163
+ type?: string[];
154
164
  thumbnailUrl?: string;
155
165
  };
156
166
  export type CameraMapMarker = {
@@ -174,9 +184,19 @@ export declare enum CameraStatus {
174
184
  UnderMaintenance = "under_maintenance",
175
185
  WaitingForSiteVisit = "waiting_for_site_visit"
176
186
  }
187
+ export declare enum IntensityChange {
188
+ High = "High",
189
+ Moderate = "Moderate",
190
+ Low = "Low",
191
+ NoChange = "No change",
192
+ Default = "Default"
193
+ }
194
+ export declare const IntensityChangeColorMap: Record<IntensityChange, string>;
177
195
  export declare enum CameraFeatureFlag {
178
196
  EdgeVideo = "edge_video",
179
197
  BimCompare = "bim_compare",
198
+ TwoDBimCompare = "2d_bim_compare",
199
+ ForgeBIMCompare = "forge_bim_compare",
180
200
  GateReport = "gate_report",
181
201
  VideoStream = "video_stream",
182
202
  WebRTC = "webrtc",
@@ -186,7 +206,10 @@ export declare enum CameraFeatureFlag {
186
206
  ObjectDetection = "object_detection",
187
207
  Segmentation = "segmentation",
188
208
  SegmentationAutoLabelling = "segmentation_auto_labelling",
189
- PpeMonitoring = "ppe_monitoring"
209
+ PpeMonitoring = "ppe_monitoring",
210
+ NoLiveView = "no_live_view",
211
+ Ring = "ring",
212
+ CloudOnly = "cloud_only"
190
213
  }
191
214
  export type CameraLogsRequestPayload = {
192
215
  limit: number;
@@ -228,6 +251,8 @@ export type CameraUpdateRequestPayload = {
228
251
  heading?: number;
229
252
  fovAngle?: number;
230
253
  fovRadius?: number;
254
+ featureFlags: CameraFeatureFlag[];
255
+ isAccessRestricted?: boolean;
231
256
  };
232
257
  export type CamerasResponsePayload = {
233
258
  cameras?: Camera[];
@@ -289,7 +314,8 @@ export declare enum CameraModel {
289
314
  Hikvision = "hikvision",
290
315
  Avigilion = "avigilion",
291
316
  Hanwha = "hanwha",
292
- Other = "other"
317
+ Other = "other",
318
+ Ring = "ring"
293
319
  }
294
320
  export type DroneCameraTransform = {
295
321
  position: Cartesian3;
@@ -321,56 +347,6 @@ export type Hdd = {
321
347
  errorStatus: string;
322
348
  canExpand: boolean;
323
349
  };
324
- export declare enum ResolutionDimensions {
325
- QVGA = "320x240",
326
- VGA = "640x480",
327
- SVGA = "800x600",
328
- XGA = "1024x768",
329
- HD = "1280x720",
330
- WXGA = "1280x800",
331
- HDPlus = "1366x768",
332
- WXGAPlus = "1440x900",
333
- HDPlusPlus = "1600x900",
334
- UXGA = "1600x1200",
335
- FullHD = "1920x1080",
336
- WUXGA = "1920x1200",
337
- TwoK = "2048x1080",
338
- QHD = "2560x1440",
339
- WQXGA = "2560x1600",
340
- FourK = "3840x2160",
341
- FourKCinema = "4096x2160",
342
- FiveK = "5120x2880",
343
- EightK = "7680x4320",
344
- WHUXGA = "7680x4800"
345
- }
346
- export declare enum ResolutionLabel {
347
- QVGA = "QVGA",
348
- VGA = "VGA",
349
- SVGA = "SVGA",
350
- XGA = "XGA",
351
- HD = "HD",
352
- WXGA = "WXGA",
353
- HDPlus = "HD+",
354
- WXGAPlus = "WXGA++",
355
- HDPlusPlus = "HD++",
356
- UXGA = "UXGA",
357
- FullHD = "FullHD",
358
- WUXGA = "WUXGA",
359
- TwoK = "2K",
360
- QHD = "QHD",
361
- WQXGA = "WQXGA",
362
- FourK = "4K",
363
- FourKCinema = "4KCinema",
364
- FiveK = "5K",
365
- EightK = "8K",
366
- WHUXGA = "WHUXGA"
367
- }
368
- export type ResolutionInfo = {
369
- ratioString: string;
370
- ratioFloat: number;
371
- resolutionDimensions: ResolutionDimensions;
372
- resolutionLabel: ResolutionLabel;
373
- };
374
350
  export type CameraPath = {
375
351
  projectExid: ProjectExid;
376
352
  cameraExid: CameraExid;
@@ -378,6 +354,7 @@ export type CameraPath = {
378
354
  export type CheckCameraPortPayload = {
379
355
  address: string;
380
356
  port: number;
357
+ open: boolean;
381
358
  };
382
359
  export type CameraCreateRequestPayload = {
383
360
  status: CameraStatus;
@@ -562,3 +539,10 @@ export type FetchCameraQueryParams = PaginationParams & {
562
539
  externalRsptPort: string;
563
540
  nvrHttpPort: string;
564
541
  };
542
+ export declare enum BimType {
543
+ TwoD = "2D",
544
+ Forge = "Forge"
545
+ }
546
+ export type CameraDateRangeFilter = DateRangeFilter & {
547
+ cameraExid: CameraExid;
548
+ };
@@ -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
+ };