@evercam/api 1.0.0-d861e8d9e → 1.0.0-d9534755d

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 (132) hide show
  1. package/README.md +3 -0
  2. package/dist/api/api/3dFirebaseApi.d.ts +183 -0
  3. package/dist/api/{adminApi.d.ts → api/adminApi.d.ts} +130 -61
  4. package/dist/api/api/aiApi.d.ts +128 -0
  5. package/dist/api/api/authzApi.d.ts +37 -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/{weatherApi.d.ts → api/weatherApi.d.ts} +2 -2
  19. package/dist/api/index.d.ts +3 -13
  20. package/dist/api/types/360.d.ts +281 -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 +186 -49
  24. package/dist/{types → api/types}/anpr.d.ts +26 -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 +23 -2
  30. package/dist/{types → api/types}/bim.d.ts +11 -5
  31. package/dist/{types → api/types}/camera.d.ts +111 -143
  32. package/dist/api/types/comments.d.ts +57 -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 +7 -5
  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/api/types/drone.d.ts +106 -0
  42. package/dist/{types → api/types}/errors.d.ts +13 -0
  43. package/dist/{types → api/types}/gateReport.d.ts +49 -158
  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 +147 -0
  47. package/dist/{types → api/types}/kit.d.ts +85 -6
  48. package/dist/api/types/map.d.ts +16 -0
  49. package/dist/{types → api/types}/media.d.ts +2 -1
  50. package/dist/api/types/notification.d.ts +57 -0
  51. package/dist/api/types/oauth.d.ts +62 -0
  52. package/dist/api/types/planner.d.ts +133 -0
  53. package/dist/api/types/posthog.d.ts +33 -0
  54. package/dist/api/types/procore.d.ts +229 -0
  55. package/dist/{types → api/types}/progressPhoto.d.ts +11 -23
  56. package/dist/api/types/project.d.ts +247 -0
  57. package/dist/{types → api/types}/recording.d.ts +6 -5
  58. package/dist/api/types/recycleBin.d.ts +14 -0
  59. package/dist/api/types/ring.d.ts +53 -0
  60. package/dist/{types → api/types}/roi.d.ts +1 -0
  61. package/dist/{types → api/types}/routeParams.d.ts +4 -2
  62. package/dist/{types → api/types}/router.d.ts +20 -1
  63. package/dist/{types → api/types}/shared.d.ts +30 -10
  64. package/dist/api/types/shares.d.ts +58 -0
  65. package/dist/{types → api/types}/sim.d.ts +6 -6
  66. package/dist/api/types/siteAnalytics.d.ts +287 -0
  67. package/dist/api/types/siteView.d.ts +74 -0
  68. package/dist/api/types/smartSeach.d.ts +5 -0
  69. package/dist/{types → api/types}/snapshots.d.ts +42 -1
  70. package/dist/api/types/sso.d.ts +55 -0
  71. package/dist/api/types/storageProvider.d.ts +19 -0
  72. package/dist/api/types/storyblok.d.ts +40 -0
  73. package/dist/{types → api/types}/streaming.d.ts +4 -25
  74. package/dist/api/types/systemCheck.d.ts +11 -0
  75. package/dist/{types → api/types}/tag.d.ts +1 -1
  76. package/dist/api/types/time.d.ts +7 -0
  77. package/dist/{types → api/types}/timelapse.d.ts +12 -5
  78. package/dist/{types → api/types}/user.d.ts +105 -36
  79. package/dist/api/types/videoWall.d.ts +66 -0
  80. package/dist/api/types/weather.d.ts +153 -0
  81. package/dist/{types → api/types}/widget.d.ts +96 -16
  82. package/dist/{types → api/types}/xweather.d.ts +4 -4
  83. package/dist/{utils.d.ts → api/utils.d.ts} +1 -0
  84. package/dist/index.d.ts +2 -3
  85. package/dist/index.js +2164 -960
  86. package/dist/index.js.map +1 -1
  87. package/dist/index.umd.cjs +1 -1
  88. package/dist/index.umd.cjs.map +1 -1
  89. package/dist/shared/api/index.d.ts +3 -0
  90. package/dist/shared/components/timelinePlayer/providers/index.d.ts +3 -0
  91. package/dist/shared/components/timelinePlayer/providers/timelineAnprProvider.d.ts +17 -0
  92. package/dist/shared/components/timelinePlayer/providers/timelineDataProvider.d.ts +13 -0
  93. package/dist/shared/components/timelinePlayer/providers/timelineLuminanceProvider.d.ts +16 -0
  94. package/dist/shared/types/components.d.ts +312 -0
  95. package/dist/shared/types/imagePlayer.d.ts +41 -0
  96. package/dist/shared/types/index.d.ts +5 -0
  97. package/dist/shared/types/rbac.d.ts +67 -0
  98. package/dist/shared/types/timeline.d.ts +10 -0
  99. package/package.json +5 -4
  100. package/dist/api/3dFirebaseApi.d.ts +0 -9
  101. package/dist/api/aiApi.d.ts +0 -110
  102. package/dist/api/authzApi.d.ts +0 -21
  103. package/dist/api/evercamApi.d.ts +0 -271
  104. package/dist/api/evercamLabsApi.d.ts +0 -50
  105. package/dist/api/ingestApi.d.ts +0 -66
  106. package/dist/api/videoWallApi.d.ts +0 -9
  107. package/dist/types/360.d.ts +0 -83
  108. package/dist/types/aconex.d.ts +0 -45
  109. package/dist/types/automation.d.ts +0 -6
  110. package/dist/types/comments.d.ts +0 -36
  111. package/dist/types/company.d.ts +0 -46
  112. package/dist/types/coolify.d.ts +0 -18
  113. package/dist/types/detections.d.ts +0 -76
  114. package/dist/types/devices.d.ts +0 -228
  115. package/dist/types/drone.d.ts +0 -17
  116. package/dist/types/ingest.d.ts +0 -43
  117. package/dist/types/map.d.ts +0 -4
  118. package/dist/types/notification.d.ts +0 -27
  119. package/dist/types/planner.d.ts +0 -28
  120. package/dist/types/procore.d.ts +0 -76
  121. package/dist/types/project.d.ts +0 -123
  122. package/dist/types/shares.d.ts +0 -196
  123. package/dist/types/siteAnalytics.d.ts +0 -84
  124. package/dist/types/storageServers.d.ts +0 -4
  125. package/dist/types/time.d.ts +0 -19
  126. package/dist/types/videoWall.d.ts +0 -33
  127. package/dist/types/weather.d.ts +0 -87
  128. /package/dist/api/{client → api/client}/index.d.ts +0 -0
  129. /package/dist/api/{webRtcApi.d.ts → api/webRtcApi.d.ts} +0 -0
  130. /package/dist/{types → api/types}/nvr.d.ts +0 -0
  131. /package/dist/{types → api/types}/vendorModel.d.ts +0 -0
  132. /package/dist/{types → api/types}/voyageControl.d.ts +0 -0
@@ -0,0 +1,61 @@
1
+ export declare enum RoleResourceType {
2
+ App = "app",
3
+ Camera = "camera",
4
+ Project = "project"
5
+ }
6
+ export type RoleSubRole = {
7
+ resourceId: string;
8
+ roleId: number;
9
+ roleName?: string;
10
+ permissions?: string[];
11
+ };
12
+ export type Role = {
13
+ id: number;
14
+ name: string;
15
+ description?: string | null;
16
+ resource?: string;
17
+ resourceType: RoleResourceType;
18
+ resourceId?: string | null;
19
+ permissions: string[];
20
+ subRoles?: RoleSubRole[];
21
+ isDefault?: boolean;
22
+ };
23
+ export type ProjectResourceRole = Role & {
24
+ resourceType: RoleResourceType.Project;
25
+ };
26
+ export type CameraResourceRole = Omit<Role, "subRoles"> & {
27
+ resourceType: RoleResourceType.Camera;
28
+ };
29
+ export type ProjectRoleRequestPayload = {
30
+ name: string;
31
+ permissions: string[];
32
+ subRoles?: RoleSubRole[];
33
+ };
34
+ export type AuthzRoleUser = {
35
+ email: string;
36
+ resourceId: string;
37
+ };
38
+ export type AuthzUserRolesResponse = {
39
+ roles: Role[];
40
+ };
41
+ export type AuthzScopePermission = {
42
+ id: number;
43
+ action: string;
44
+ exid: string;
45
+ };
46
+ export type AuthzScope = {
47
+ id: number;
48
+ name: string;
49
+ description: string | null;
50
+ permissions: AuthzScopePermission[];
51
+ app: string;
52
+ exid: string;
53
+ };
54
+ export type AuthzScopeCreatePayload = {
55
+ name: string;
56
+ description?: string;
57
+ permissions: string[];
58
+ };
59
+ export type AuthzScopeUpdatePayload = Partial<AuthzScopeCreatePayload>;
60
+ export declare function isProjectRole(role: Role): role is ProjectResourceRole;
61
+ export declare function isCameraRole(role: Role): role is CameraResourceRole;
@@ -1,20 +1,20 @@
1
- export type AutodeskUserHubsResponsePayload = Array<{
1
+ export type AutodeskUserHub = {
2
2
  text: string;
3
3
  value: string;
4
- }>;
5
- export type AutodeskProjectsResponsePayload = Array<{
4
+ };
5
+ export type AutodeskProject = {
6
6
  text: string;
7
7
  value: string;
8
- }>;
9
- export type AutodeskFolderResponsePayload = {
8
+ };
9
+ export type AutodeskFolder = {
10
10
  text: string;
11
11
  value: string;
12
12
  allowedFileType: string;
13
13
  allowedFolderType: string;
14
- children: Array<AutodeskFolderResponsePayload>;
14
+ children: Array<AutodeskFolder>;
15
15
  parentName?: string;
16
16
  };
17
- export type AutodeskUploadSnapshotPayload = {
17
+ export type AutodeskSnapshot = {
18
18
  projectId: string;
19
19
  folderId: string;
20
20
  accFileType: string;
@@ -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,21 @@ 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;
23
+ forgeTokenServerUrl?: 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,11 +1,8 @@
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";
3
+ import { GeoPoint } from "@evercam/api/types/shared";
2
4
  export type CameraExid = string;
3
5
  export type CamerasByExid = EntityByExid<Camera>;
4
- export type Cartesian3 = {
5
- x: number;
6
- y: number;
7
- z: number;
8
- };
9
6
  export type Camera = {
10
7
  cameraPowerSchedule?: Schedule;
11
8
  camPassword?: string;
@@ -16,8 +13,9 @@ export type Camera = {
16
13
  status: string;
17
14
  storageDuration: string;
18
15
  };
19
- createdAt: DateTime_Z_micros;
20
- description: null;
16
+ liveViewFrequency: number | null;
17
+ createdAt: string;
18
+ description: string | null;
21
19
  discoverable: boolean;
22
20
  external: {
23
21
  host: string;
@@ -36,18 +34,15 @@ export type Camera = {
36
34
  featureFlags: Array<CameraFeatureFlag>;
37
35
  fovAngle: number;
38
36
  fovRadius: number;
39
- heading: null;
37
+ heading: number;
40
38
  id: CameraExid;
41
39
  exid: CameraExid;
42
40
  isOnline: boolean;
43
41
  isPowerScheduleActive: boolean;
44
42
  isPublic: boolean;
45
- lastOnlineAt: DateTime_Z_micros;
46
- lastPolledAt: DateTime_Z_micros;
47
- location: {
48
- lat: number;
49
- lng: number;
50
- };
43
+ lastOnlineAt: string;
44
+ lastPolledAt: string;
45
+ location: GeoPoint;
51
46
  modelId: string;
52
47
  modelName: string;
53
48
  name: string;
@@ -62,7 +57,7 @@ export type Camera = {
62
57
  offlineReason: string;
63
58
  owned: boolean;
64
59
  owner: string;
65
- pitch: null;
60
+ pitch: string | null;
66
61
  project: {
67
62
  id: string;
68
63
  name: string;
@@ -72,94 +67,97 @@ export type Camera = {
72
67
  rtmp: string;
73
68
  };
74
69
  ptz: boolean;
75
- rights: string;
76
- roll: null;
70
+ recordingFromNvr: boolean;
71
+ model?: CameraModel;
72
+ roll: string | null;
77
73
  routerId: number;
78
74
  status: CameraStatus;
79
75
  streamingServer: string;
80
76
  thumbnailUrl: string;
81
77
  largeThumbnailUrl?: string;
82
78
  timezone: string;
83
- updatedAt: DateTime_Z_micros;
79
+ updatedAt: string;
84
80
  vendorName: string;
85
81
  isAccessRestricted?: boolean;
82
+ kitAlarms?: KitAlarm[];
86
83
  };
87
84
  export type AdminCamera = {
88
- cameraHost: string;
89
- cameraHttpPort: number;
90
- cameraModel: string;
91
- cameraPassword: string;
92
- cameraPictureEndpoint: string;
93
- cameraRtspPort: number;
94
- cameraScheme: string;
95
- cameraUsername: string;
96
- cameraFirmwareVersion: string;
97
- cameraTimezone: string;
98
- cloudRecordingFrequency: number;
99
- cloudRecordingId: number;
100
- cloudRecordingSchedule: Schedule;
101
- cloudRecordingStatus: string;
102
- cloudRecordingStorageDuration: number;
103
- createdAt: DateTime_Z_micros;
104
- description: null;
105
- discoverable: false;
106
- exid: CameraExid;
107
- featureFlags: CameraFeatureFlag[];
108
- fovAngle: 45.0;
109
- fovRadius: number;
110
- heading: null;
111
85
  id: number;
112
- isPowerScheduleActive: true;
113
- isPublic: false;
114
- kitId?: number;
115
- lastOnlineAt: DateTime_Z_micros;
116
- lastPolledAt: DateTime_Z_micros;
117
- location: {
118
- lat: number;
119
- lng: number;
120
- };
121
- macAddress: string;
86
+ exid: CameraExid;
122
87
  name: string;
123
- nvrChannel: null;
124
- nvrDeviceId: string;
125
- nvrHost: string;
126
- nvrHttpPort: number;
127
- nvrModel: NvrModel;
128
- nvrPassword: string;
129
- nvrPictureEndpoint: string;
130
- nvrRtspPort: number;
131
- nvrScheme: string;
132
- nvrUsername: string;
133
- offlineReason: null;
134
- pitch: null;
135
- powerSchedule: Schedule;
136
- projectExid: string;
137
- projectFeatureFlags: [];
138
- projectId: number;
139
- projectName: string;
140
- ptz: false;
141
- recordingFromNvr: false;
142
- roll: null;
143
- routerId: number;
144
88
  status: string;
145
- storageProviders: [];
146
- streamEndpoint: string;
147
- timezone: string;
148
- updatedAt: DateTime_Z_micros;
149
- userApiId: string;
150
- userApiKey: string;
89
+ description: string | null;
90
+ createdAt: string;
91
+ updatedAt: string;
92
+ lastOnlineAt: string | null;
93
+ lastPolledAt: string | null;
94
+ decommissionedAt: string | null;
95
+ deletedAt?: string | null;
96
+ projectId: number | null;
97
+ projectExid: string | null;
98
+ projectName: string | null;
99
+ projectFeatureFlags: Array<ProjectFeatureFlag | string>;
100
+ userId: number | null;
151
101
  userEmail: string;
152
102
  userFullname: string;
153
- userId: number;
154
- zohoId: string;
103
+ userApiId?: string;
104
+ userApiKey?: string;
105
+ isPublic: boolean;
106
+ sharedWithConstruction?: boolean;
107
+ timezone: string | null;
108
+ location?: GeoPoint | null;
109
+ fovAngle?: number | null;
110
+ fovRadius?: number | null;
111
+ heading?: number | null;
112
+ pitch?: number | null;
113
+ roll?: number | null;
114
+ cameraModel?: string | null;
115
+ cameraHost?: string | null;
116
+ cameraHttpPort?: number | null;
117
+ cameraRtspPort?: number | null;
118
+ cameraScheme?: string | null;
119
+ cameraUsername?: string | null;
120
+ cameraPassword?: string | null;
121
+ cameraPictureEndpoint?: string | null;
122
+ rtspUrl?: string | null;
123
+ httpUrl?: string | null;
124
+ deviceId?: string | null;
125
+ nvrId?: number | null;
126
+ nvrDeviceId?: string | null;
127
+ nvrModel?: NvrModel | string | null;
128
+ nvrHost?: string | null;
129
+ nvrHttpPort?: number | null;
130
+ nvrRtspPort?: number | null;
131
+ nvrScheme?: string | null;
132
+ nvrUsername?: string | null;
133
+ nvrPassword?: string | null;
134
+ nvrPictureEndpoint?: string | null;
135
+ streamEndpoint?: string | null;
136
+ routerId?: number | null;
137
+ kitId?: number | null;
138
+ powerType?: string | null;
139
+ powerSchedule?: ScheduleLowercase | Record<string, string[]>;
140
+ isPowerScheduleActive?: boolean;
141
+ discoverable?: boolean;
142
+ recordingFromNvr?: boolean;
143
+ cloudRecordingFrequency?: number | null;
144
+ cloudRecordingId?: number | null;
145
+ cloudRecordingStatus?: string | null;
146
+ cloudRecordingSchedule?: ScheduleLowercase | null;
147
+ cloudRecordingStorageDuration?: number | null;
148
+ liveViewFrequency?: number | null;
149
+ anprSources?: string[];
150
+ storageProviders?: string[];
151
+ featureFlags?: CameraFeatureFlag[];
152
+ zohoId?: string | null;
153
+ offlineReason?: string | null;
154
+ macAddress?: string | null;
155
+ type?: string[];
155
156
  thumbnailUrl?: string;
156
157
  };
157
158
  export type CameraMapMarker = {
158
159
  isOnline: boolean;
159
- location: {
160
- lat: number;
161
- lng: number;
162
- };
160
+ location: GeoPoint;
163
161
  needFov: boolean;
164
162
  rotation: number;
165
163
  fovAngle: number;
@@ -175,9 +173,19 @@ export declare enum CameraStatus {
175
173
  UnderMaintenance = "under_maintenance",
176
174
  WaitingForSiteVisit = "waiting_for_site_visit"
177
175
  }
176
+ export declare enum IntensityChange {
177
+ High = "High",
178
+ Moderate = "Moderate",
179
+ Low = "Low",
180
+ NoChange = "No change",
181
+ Default = "Default"
182
+ }
183
+ export declare const IntensityChangeColorMap: Record<IntensityChange, string>;
178
184
  export declare enum CameraFeatureFlag {
179
185
  EdgeVideo = "edge_video",
180
186
  BimCompare = "bim_compare",
187
+ TwoDBimCompare = "2d_bim_compare",
188
+ ForgeBIMCompare = "forge_bim_compare",
181
189
  GateReport = "gate_report",
182
190
  VideoStream = "video_stream",
183
191
  WebRTC = "webrtc",
@@ -187,7 +195,13 @@ export declare enum CameraFeatureFlag {
187
195
  ObjectDetection = "object_detection",
188
196
  Segmentation = "segmentation",
189
197
  SegmentationAutoLabelling = "segmentation_auto_labelling",
190
- PpeMonitoring = "ppe_monitoring"
198
+ PpeMonitoring = "ppe_monitoring",
199
+ PpeOwlv2 = "ppe_owlv2",
200
+ PpeGemini = "ppe_gemini",
201
+ PpeYolo = "ppe_yolo",
202
+ NoLiveView = "no_live_view",
203
+ Ring = "ring",
204
+ CloudOnly = "cloud_only"
191
205
  }
192
206
  export type CameraLogsRequestPayload = {
193
207
  limit: number;
@@ -231,6 +245,7 @@ export type CameraUpdateRequestPayload = {
231
245
  fovRadius?: number;
232
246
  featureFlags: CameraFeatureFlag[];
233
247
  isAccessRestricted?: boolean;
248
+ liveViewFrequency?: number | null;
234
249
  };
235
250
  export type CamerasResponsePayload = {
236
251
  cameras?: Camera[];
@@ -292,14 +307,9 @@ export declare enum CameraModel {
292
307
  Hikvision = "hikvision",
293
308
  Avigilion = "avigilion",
294
309
  Hanwha = "hanwha",
295
- Other = "other"
310
+ Other = "other",
311
+ Ring = "ring"
296
312
  }
297
- export type DroneCameraTransform = {
298
- position: Cartesian3;
299
- direction: Cartesian3;
300
- up: Cartesian3;
301
- right: Cartesian3;
302
- };
303
313
  export type Footage = {
304
314
  cameraExid: string;
305
315
  cameraName: string;
@@ -324,56 +334,6 @@ export type Hdd = {
324
334
  errorStatus: string;
325
335
  canExpand: boolean;
326
336
  };
327
- export declare enum ResolutionDimensions {
328
- QVGA = "320x240",
329
- VGA = "640x480",
330
- SVGA = "800x600",
331
- XGA = "1024x768",
332
- HD = "1280x720",
333
- WXGA = "1280x800",
334
- HDPlus = "1366x768",
335
- WXGAPlus = "1440x900",
336
- HDPlusPlus = "1600x900",
337
- UXGA = "1600x1200",
338
- FullHD = "1920x1080",
339
- WUXGA = "1920x1200",
340
- TwoK = "2048x1080",
341
- QHD = "2560x1440",
342
- WQXGA = "2560x1600",
343
- FourK = "3840x2160",
344
- FourKCinema = "4096x2160",
345
- FiveK = "5120x2880",
346
- EightK = "7680x4320",
347
- WHUXGA = "7680x4800"
348
- }
349
- export declare enum ResolutionLabel {
350
- QVGA = "QVGA",
351
- VGA = "VGA",
352
- SVGA = "SVGA",
353
- XGA = "XGA",
354
- HD = "HD",
355
- WXGA = "WXGA",
356
- HDPlus = "HD+",
357
- WXGAPlus = "WXGA++",
358
- HDPlusPlus = "HD++",
359
- UXGA = "UXGA",
360
- FullHD = "FullHD",
361
- WUXGA = "WUXGA",
362
- TwoK = "2K",
363
- QHD = "QHD",
364
- WQXGA = "WQXGA",
365
- FourK = "4K",
366
- FourKCinema = "4KCinema",
367
- FiveK = "5K",
368
- EightK = "8K",
369
- WHUXGA = "WHUXGA"
370
- }
371
- export type ResolutionInfo = {
372
- ratioString: string;
373
- ratioFloat: number;
374
- resolutionDimensions: ResolutionDimensions;
375
- resolutionLabel: ResolutionLabel;
376
- };
377
337
  export type CameraPath = {
378
338
  projectExid: ProjectExid;
379
339
  cameraExid: CameraExid;
@@ -381,6 +341,7 @@ export type CameraPath = {
381
341
  export type CheckCameraPortPayload = {
382
342
  address: string;
383
343
  port: number;
344
+ open: boolean;
384
345
  };
385
346
  export type CameraCreateRequestPayload = {
386
347
  status: CameraStatus;
@@ -565,3 +526,10 @@ export type FetchCameraQueryParams = PaginationParams & {
565
526
  externalRsptPort: string;
566
527
  nvrHttpPort: string;
567
528
  };
529
+ export declare enum BimType {
530
+ TwoD = "2D",
531
+ Forge = "Forge"
532
+ }
533
+ export type CameraDateRangeFilter = DateRangeFilter & {
534
+ cameraExid: CameraExid;
535
+ };