@evercam/api 1.0.0-aa812f55e → 1.0.0-ac7e004b6

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 (125) 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} +133 -67
  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 +3 -2
  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 +295 -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} +13 -4
  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 -104
  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 -2
  30. package/dist/{types → api/types}/bim.d.ts +11 -5
  31. package/dist/{types → api/types}/camera.d.ts +106 -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 +8 -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/api/types/hdd.d.ts +88 -0
  44. package/dist/{types → api/types}/index.d.ts +13 -2
  45. package/dist/api/types/ingest.d.ts +134 -0
  46. package/dist/{types → api/types}/kit.d.ts +94 -6
  47. package/dist/{types → api/types}/media.d.ts +2 -1
  48. package/dist/api/types/notification.d.ts +57 -0
  49. package/dist/{types → api/types}/nvr.d.ts +2 -1
  50. package/dist/{types/sitePlanner.d.ts → api/types/planner.d.ts} +13 -1
  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/{types → api/types}/roi.d.ts +2 -1
  58. package/dist/{types → api/types}/routeParams.d.ts +4 -2
  59. package/dist/{types → api/types}/router.d.ts +20 -1
  60. package/dist/{types → api/types}/shared.d.ts +14 -21
  61. package/dist/api/types/shares.d.ts +58 -0
  62. package/dist/{types → api/types}/sim.d.ts +6 -6
  63. package/dist/api/types/siteAnalytics.d.ts +287 -0
  64. package/dist/api/types/smartSeach.d.ts +5 -0
  65. package/dist/{types → api/types}/snapshots.d.ts +10 -1
  66. package/dist/api/types/sso.d.ts +55 -0
  67. package/dist/api/types/storyblok.d.ts +40 -0
  68. package/dist/api/types/streaming.d.ts +97 -0
  69. package/dist/api/types/systemCheck.d.ts +11 -0
  70. package/dist/api/types/tag.d.ts +12 -0
  71. package/dist/api/types/time.d.ts +7 -0
  72. package/dist/{types → api/types}/timelapse.d.ts +18 -4
  73. package/dist/{types → api/types}/user.d.ts +105 -35
  74. package/dist/api/types/videoWall.d.ts +66 -0
  75. package/dist/api/types/weather.d.ts +153 -0
  76. package/dist/{types → api/types}/widget.d.ts +105 -20
  77. package/dist/api/types/xweather.d.ts +12 -0
  78. package/dist/{utils.d.ts → api/utils.d.ts} +1 -0
  79. package/dist/index.d.ts +2 -3
  80. package/dist/index.js +1658 -955
  81. package/dist/index.js.map +1 -1
  82. package/dist/index.umd.cjs +1 -1
  83. package/dist/index.umd.cjs.map +1 -1
  84. package/dist/shared/api/index.d.ts +3 -0
  85. package/dist/shared/components/timelinePlayer/providers/index.d.ts +3 -0
  86. package/dist/shared/components/timelinePlayer/providers/timelineAnprProvider.d.ts +17 -0
  87. package/dist/shared/components/timelinePlayer/providers/timelineDataProvider.d.ts +13 -0
  88. package/dist/shared/components/timelinePlayer/providers/timelineLuminanceProvider.d.ts +16 -0
  89. package/dist/shared/types/components.d.ts +270 -0
  90. package/dist/shared/types/imagePlayer.d.ts +34 -0
  91. package/dist/shared/types/index.d.ts +4 -0
  92. package/dist/shared/types/timeline.d.ts +10 -0
  93. package/package.json +8 -7
  94. package/dist/api/3dFirebaseApi.d.ts +0 -9
  95. package/dist/api/aiApi.d.ts +0 -76
  96. package/dist/api/authzApi.d.ts +0 -21
  97. package/dist/api/evercamApi.d.ts +0 -266
  98. package/dist/api/evercamLabsApi.d.ts +0 -50
  99. package/dist/api/ingestApi.d.ts +0 -65
  100. package/dist/api/videoWallApi.d.ts +0 -9
  101. package/dist/api/weatherApi.d.ts +0 -25
  102. package/dist/types/360.d.ts +0 -83
  103. package/dist/types/aconex.d.ts +0 -45
  104. package/dist/types/automation.d.ts +0 -6
  105. package/dist/types/comments.d.ts +0 -36
  106. package/dist/types/company.d.ts +0 -46
  107. package/dist/types/detections.d.ts +0 -70
  108. package/dist/types/devices.d.ts +0 -228
  109. package/dist/types/ingest.d.ts +0 -43
  110. package/dist/types/notification.d.ts +0 -27
  111. package/dist/types/procore.d.ts +0 -76
  112. package/dist/types/project.d.ts +0 -120
  113. package/dist/types/shares.d.ts +0 -192
  114. package/dist/types/siteAnalytics.d.ts +0 -5
  115. package/dist/types/streaming.d.ts +0 -119
  116. package/dist/types/time.d.ts +0 -19
  117. package/dist/types/videoWall.d.ts +0 -33
  118. package/dist/types/weather.d.ts +0 -83
  119. /package/dist/api/{client → api/client}/index.d.ts +0 -0
  120. /package/dist/api/{webRtcApi.d.ts → api/webRtcApi.d.ts} +0 -0
  121. /package/dist/{types → api/types}/drone.d.ts +0 -0
  122. /package/dist/{types → api/types}/map.d.ts +0 -0
  123. /package/dist/{types → api/types}/storageServers.d.ts +0 -0
  124. /package/dist/{types → api/types}/vendorModel.d.ts +0 -0
  125. /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,14 +1,17 @@
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;
5
6
  }>;
6
7
  export type AxiosEnvironment = {
7
- isStaging?: boolean;
8
8
  baseUrl?: string | null;
9
9
  stagingAiApiUrl?: string | null;
10
10
  aiApiUrl?: string | null;
11
11
  ingestApiUrl?: string | null;
12
+ ingestGpuApiUrl?: string | null;
13
+ ingestGpuV3ApiUrl?: string | null;
14
+ ingestGpuV4ApiUrl?: string | null;
12
15
  posthogApiUrl?: string | null;
13
16
  posthogProjectId?: string | null;
14
17
  posthogPrivateApiKey?: string | null;
@@ -16,17 +19,20 @@ export type AxiosEnvironment = {
16
19
  weatherApiBaseUrl?: string | null;
17
20
  evercamLabsUrl?: string | null;
18
21
  firebaseDbLink?: string | null;
22
+ firebaseStorageUrl?: string | null;
23
+ firebaseStorageToken?: string | null;
19
24
  snapshotsURL?: string | null;
20
25
  app?: string | null;
21
26
  getAuthToken?: () => string | null;
22
27
  errorLogger?: (error: AxiosError) => void;
28
+ swrKey?: string;
23
29
  };
24
30
  export type RequestInterceptor = (req: AxiosRequestConfig, env: AxiosEnvironment) => AxiosRequestConfig & any;
25
31
  export type ResponseInterceptor = (res: AxiosResponse, env: AxiosEnvironment) => AxiosResponse & any;
26
32
  export type ErrorInterceptor = (error: any, env: AxiosEnvironment) => any;
27
33
  export interface ExtendedAxiosInstance extends AxiosInstance {
28
34
  CancelToken: CancelTokenStatic;
29
- isCancel: (value: AxiosResponse | AxiosError | never) => boolean;
35
+ isCancel: (value: AxiosResponse | AxiosError | unknown) => boolean;
30
36
  setToken: (token: string) => void;
31
37
  setHeader: (headerName: string, value: any) => void;
32
38
  generateCancelTokenSource: () => CancelTokenSource;
@@ -38,7 +44,17 @@ export interface ExtendedAxiosInstance extends AxiosInstance {
38
44
  addRequestInterceptor: (interceptor: RequestInterceptor, errorInterceptor?: ErrorInterceptor) => void;
39
45
  addResponseInterceptor: (interceptor: ResponseInterceptor, errorInterceptor?: ErrorInterceptor) => void;
40
46
  addErrorInterceptor: (interceptor: ErrorInterceptor) => void;
47
+ swr: Swr;
41
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
+ };
42
58
  declare module "axios" {
43
59
  interface AxiosRequestConfig {
44
60
  raw?: boolean;
@@ -47,5 +63,9 @@ declare module "axios" {
47
63
  _metadata?: {
48
64
  startTime: number;
49
65
  };
66
+ swr?: boolean;
67
+ onSwrHit?: (data: any) => unknown;
68
+ onSwrRefresh?: (data: any) => unknown;
69
+ onSwrError?: (error: Error) => unknown;
50
70
  }
51
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",
@@ -185,7 +205,9 @@ export declare enum CameraFeatureFlag {
185
205
  PTZ = "ptz",
186
206
  ObjectDetection = "object_detection",
187
207
  Segmentation = "segmentation",
188
- SegmentationAutoLabelling = "segmentation_auto_labelling"
208
+ SegmentationAutoLabelling = "segmentation_auto_labelling",
209
+ PpeMonitoring = "ppe_monitoring",
210
+ NoLiveView = "no_live_view"
189
211
  }
190
212
  export type CameraLogsRequestPayload = {
191
213
  limit: number;
@@ -227,6 +249,8 @@ export type CameraUpdateRequestPayload = {
227
249
  heading?: number;
228
250
  fovAngle?: number;
229
251
  fovRadius?: number;
252
+ featureFlags: CameraFeatureFlag[];
253
+ isAccessRestricted?: boolean;
230
254
  };
231
255
  export type CamerasResponsePayload = {
232
256
  cameras?: Camera[];
@@ -320,56 +344,6 @@ export type Hdd = {
320
344
  errorStatus: string;
321
345
  canExpand: boolean;
322
346
  };
323
- export declare enum ResolutionDimensions {
324
- QVGA = "320x240",
325
- VGA = "640x480",
326
- SVGA = "800x600",
327
- XGA = "1024x768",
328
- HD = "1280x720",
329
- WXGA = "1280x800",
330
- HDPlus = "1366x768",
331
- WXGAPlus = "1440x900",
332
- HDPlusPlus = "1600x900",
333
- UXGA = "1600x1200",
334
- FullHD = "1920x1080",
335
- WUXGA = "1920x1200",
336
- TwoK = "2048x1080",
337
- QHD = "2560x1440",
338
- WQXGA = "2560x1600",
339
- FourK = "3840x2160",
340
- FourKCinema = "4096x2160",
341
- FiveK = "5120x2880",
342
- EightK = "7680x4320",
343
- WHUXGA = "7680x4800"
344
- }
345
- export declare enum ResolutionLabel {
346
- QVGA = "QVGA",
347
- VGA = "VGA",
348
- SVGA = "SVGA",
349
- XGA = "XGA",
350
- HD = "HD",
351
- WXGA = "WXGA",
352
- HDPlus = "HD+",
353
- WXGAPlus = "WXGA++",
354
- HDPlusPlus = "HD++",
355
- UXGA = "UXGA",
356
- FullHD = "FullHD",
357
- WUXGA = "WUXGA",
358
- TwoK = "2K",
359
- QHD = "QHD",
360
- WQXGA = "WQXGA",
361
- FourK = "4K",
362
- FourKCinema = "4KCinema",
363
- FiveK = "5K",
364
- EightK = "8K",
365
- WHUXGA = "WHUXGA"
366
- }
367
- export type ResolutionInfo = {
368
- ratioString: string;
369
- ratioFloat: number;
370
- resolutionDimensions: ResolutionDimensions;
371
- resolutionLabel: ResolutionLabel;
372
- };
373
347
  export type CameraPath = {
374
348
  projectExid: ProjectExid;
375
349
  cameraExid: CameraExid;
@@ -377,6 +351,7 @@ export type CameraPath = {
377
351
  export type CheckCameraPortPayload = {
378
352
  address: string;
379
353
  port: number;
354
+ open: boolean;
380
355
  };
381
356
  export type CameraCreateRequestPayload = {
382
357
  status: CameraStatus;
@@ -561,3 +536,10 @@ export type FetchCameraQueryParams = PaginationParams & {
561
536
  externalRsptPort: string;
562
537
  nvrHttpPort: string;
563
538
  };
539
+ export declare enum BimType {
540
+ TwoD = "2D",
541
+ Forge = "Forge"
542
+ }
543
+ export type CameraDateRangeFilter = DateRangeFilter & {
544
+ cameraExid: CameraExid;
545
+ };
@@ -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
+ };