@evercam/api 1.0.0-ee9739480 → 1.0.0-eea993f14

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 (106) 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} +67 -33
  4. package/dist/api/{aiApi.d.ts → api/aiApi.d.ts} +40 -37
  5. package/dist/api/{authzApi.d.ts → api/authzApi.d.ts} +10 -1
  6. package/dist/api/{client → api/client}/axios.d.ts +1 -0
  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/{evercamApi.d.ts → api/evercamApi.d.ts} +48 -44
  12. package/dist/api/{evercamLabsApi.d.ts → api/evercamLabsApi.d.ts} +6 -2
  13. package/dist/api/api/index.d.ts +13 -0
  14. package/dist/api/api/ingestApi.d.ts +96 -0
  15. package/dist/api/{ptzApi.d.ts → api/ptzApi.d.ts} +4 -0
  16. package/dist/api/api/videoWallApi.d.ts +9 -0
  17. package/dist/api/index.d.ts +3 -13
  18. package/dist/api/types/360.d.ts +274 -0
  19. package/dist/api/types/aconex.d.ts +143 -0
  20. package/dist/{types → api/types}/analytics.d.ts +113 -7
  21. package/dist/{types → api/types}/anpr.d.ts +7 -11
  22. package/dist/api/types/authz.d.ts +28 -0
  23. package/dist/api/types/automation.d.ts +61 -0
  24. package/dist/{types → api/types}/axios.d.ts +16 -0
  25. package/dist/{types → api/types}/camera.d.ts +24 -6
  26. package/dist/{types → api/types}/comments.d.ts +18 -2
  27. package/dist/{types → api/types}/company.d.ts +29 -1
  28. package/dist/{types → api/types}/coolify.d.ts +2 -0
  29. package/dist/{types → api/types}/countries.d.ts +0 -7
  30. package/dist/{types → api/types}/credentials.d.ts +1 -0
  31. package/dist/{types → api/types}/detections.d.ts +42 -18
  32. package/dist/{types → api/types}/errors.d.ts +13 -0
  33. package/dist/{types → api/types}/gateReport.d.ts +4 -101
  34. package/dist/{types → api/types}/index.d.ts +4 -0
  35. package/dist/{types → api/types}/ingest.d.ts +8 -0
  36. package/dist/{types → api/types}/kit.d.ts +55 -7
  37. package/dist/{types → api/types}/planner.d.ts +7 -0
  38. package/dist/api/types/posthog.d.ts +18 -0
  39. package/dist/{types → api/types}/procore.d.ts +13 -10
  40. package/dist/{types → api/types}/progressPhoto.d.ts +6 -22
  41. package/dist/{types → api/types}/project.d.ts +50 -3
  42. package/dist/{types → api/types}/recording.d.ts +2 -2
  43. package/dist/api/types/recycleBin.d.ts +14 -0
  44. package/dist/{types → api/types}/routeParams.d.ts +4 -2
  45. package/dist/{types → api/types}/router.d.ts +19 -0
  46. package/dist/{types → api/types}/shared.d.ts +1 -6
  47. package/dist/api/types/shares.d.ts +58 -0
  48. package/dist/api/types/siteAnalytics.d.ts +247 -0
  49. package/dist/{types → api/types}/snapshots.d.ts +9 -0
  50. package/dist/api/types/sso.d.ts +55 -0
  51. package/dist/{types → api/types}/streaming.d.ts +1 -2
  52. package/dist/{types → api/types}/time.d.ts +6 -0
  53. package/dist/{types → api/types}/user.d.ts +19 -7
  54. package/dist/api/types/videoWall.d.ts +66 -0
  55. package/dist/{types → api/types}/weather.d.ts +2 -0
  56. package/dist/{types → api/types}/widget.d.ts +27 -6
  57. package/dist/{utils.d.ts → api/utils.d.ts} +1 -0
  58. package/dist/index.d.ts +2 -3
  59. package/dist/index.js +1275 -823
  60. package/dist/index.js.map +1 -1
  61. package/dist/index.umd.cjs +1 -1
  62. package/dist/index.umd.cjs.map +1 -1
  63. package/dist/shared/api/index.d.ts +3 -0
  64. package/dist/shared/components/timelinePlayer/providers/index.d.ts +3 -0
  65. package/dist/shared/components/timelinePlayer/providers/timelineAnprProvider.d.ts +17 -0
  66. package/dist/shared/components/timelinePlayer/providers/timelineDataProvider.d.ts +13 -0
  67. package/dist/shared/components/timelinePlayer/providers/timelineLuminanceProvider.d.ts +16 -0
  68. package/dist/shared/types/components.d.ts +199 -0
  69. package/dist/shared/types/imagePlayer.d.ts +34 -0
  70. package/dist/shared/types/index.d.ts +4 -0
  71. package/dist/shared/types/timeline.d.ts +9 -0
  72. package/package.json +5 -4
  73. package/dist/api/3dFirebaseApi.d.ts +0 -10
  74. package/dist/api/ingestApi.d.ts +0 -68
  75. package/dist/api/videoWallApi.d.ts +0 -9
  76. package/dist/types/360.d.ts +0 -83
  77. package/dist/types/aconex.d.ts +0 -45
  78. package/dist/types/automation.d.ts +0 -6
  79. package/dist/types/shares.d.ts +0 -196
  80. package/dist/types/siteAnalytics.d.ts +0 -123
  81. package/dist/types/videoWall.d.ts +0 -33
  82. /package/dist/api/{client → api/client}/index.d.ts +0 -0
  83. /package/dist/api/{exNvrApi.d.ts → api/exNvrApi.d.ts} +0 -0
  84. /package/dist/api/{weatherApi.d.ts → api/weatherApi.d.ts} +0 -0
  85. /package/dist/api/{webRtcApi.d.ts → api/webRtcApi.d.ts} +0 -0
  86. /package/dist/{types → api/types}/auditLogs.d.ts +0 -0
  87. /package/dist/{types → api/types}/autodesk.d.ts +0 -0
  88. /package/dist/{types → api/types}/bim.d.ts +0 -0
  89. /package/dist/{types → api/types}/compare.d.ts +0 -0
  90. /package/dist/{types → api/types}/connector.d.ts +0 -0
  91. /package/dist/{types → api/types}/copilot.d.ts +0 -0
  92. /package/dist/{types → api/types}/drone.d.ts +0 -0
  93. /package/dist/{types → api/types}/hdd.d.ts +0 -0
  94. /package/dist/{types → api/types}/map.d.ts +0 -0
  95. /package/dist/{types → api/types}/media.d.ts +0 -0
  96. /package/dist/{types → api/types}/notification.d.ts +0 -0
  97. /package/dist/{types → api/types}/nvr.d.ts +0 -0
  98. /package/dist/{types → api/types}/roi.d.ts +0 -0
  99. /package/dist/{types → api/types}/sim.d.ts +0 -0
  100. /package/dist/{types → api/types}/storageServers.d.ts +0 -0
  101. /package/dist/{types → api/types}/systemCheck.d.ts +0 -0
  102. /package/dist/{types → api/types}/tag.d.ts +0 -0
  103. /package/dist/{types → api/types}/timelapse.d.ts +0 -0
  104. /package/dist/{types → api/types}/vendorModel.d.ts +0 -0
  105. /package/dist/{types → api/types}/voyageControl.d.ts +0 -0
  106. /package/dist/{types → api/types}/xweather.d.ts +0 -0
@@ -1,4 +1,4 @@
1
- import { AdminCamera, Camera, CameraExid, DateTime, DateType, EntityByExid, Exid, PaginationParams } from "@/types";
1
+ import { AdminCamera, Camera, CameraExid, DateRangeFilter, DateTime, DateType, EntityByExid, Exid, PaginationParams } from "@/types";
2
2
  export type ProjectExid = Exid;
3
3
  export type ProjectsByExid = EntityByExid<Project>;
4
4
  export type Project = {
@@ -10,7 +10,9 @@ export type Project = {
10
10
  startedAt?: string;
11
11
  timezone?: string;
12
12
  zohoId?: string;
13
+ userId?: number;
13
14
  cameras?: Array<Camera | AdminCamera>;
15
+ unrestrictedCameras?: Array<Camera | AdminCamera>;
14
16
  featureFlags: Array<ProjectFeatureFlag>;
15
17
  owner?: {
16
18
  email?: string;
@@ -51,14 +53,15 @@ export declare enum ProjectFeatureFlag {
51
53
  ThreeSixtyView = "360_view",
52
54
  NdaMc = "NDA/MC",
53
55
  GateReport = "gate_report",
54
- GateReportAutoVerify = "auto_publish",
55
56
  GateReportMotionDetection = "motion_detection",
56
57
  FullEmpty = "full_empty",
57
58
  MediaHubSharing = "archives_sharing",
58
59
  GateReportAnprBased = "anpr_sourced",
59
60
  NoLicensePlate = "no_license_plate",
60
61
  DefaultToProjectApp = "default_to_project_app",
61
- SmartSearch = "smart_search"
62
+ SmartSearch = "smart_search",
63
+ PpeMonitoring = "ppe_monitoring",
64
+ NoGdpr = "no_gdpr"
62
65
  }
63
66
  export type ProjectBatteryReading = {
64
67
  exid: number;
@@ -124,3 +127,47 @@ export type ProjectUsers = {
124
127
  }[];
125
128
  users: Record<string, ProjectUserProperty[]>;
126
129
  };
130
+ export type ProjectDateRangeFilter = DateRangeFilter & {
131
+ projectExid: ProjectExid;
132
+ };
133
+ export type ProjectRole = {
134
+ id: string;
135
+ name: string;
136
+ };
137
+ export type ProjectMember = {
138
+ id: string;
139
+ email: string;
140
+ fullname: string;
141
+ lastSeenAt?: DateTime;
142
+ role: ProjectRole;
143
+ permissions?: string[];
144
+ subRoles?: Array<{
145
+ resourceId: string;
146
+ roleId: number;
147
+ }>;
148
+ };
149
+ export type ProjectInvite = {
150
+ id?: string;
151
+ email: string;
152
+ role?: ProjectRole;
153
+ invitedAt?: string;
154
+ };
155
+ export type ProjectMembersResponsePayload = {
156
+ users: ProjectMember[];
157
+ invites: ProjectInvite[];
158
+ };
159
+ export type ProjectMembersRequestPayload = {
160
+ roleId: number;
161
+ emails: string[];
162
+ overrideRole?: Partial<{
163
+ permissions?: string[];
164
+ subRoles?: Array<{
165
+ resourceId: string;
166
+ roleId: number;
167
+ }>;
168
+ }>;
169
+ };
170
+ export type ProjectInviteMembersResponsePayload = {
171
+ users: ProjectMember[];
172
+ invites: ProjectInvite[];
173
+ };
@@ -10,6 +10,7 @@ export type NearestSnapshotRequestPayload = {
10
10
  apiId?: string;
11
11
  token?: string;
12
12
  cancelToken?: object;
13
+ includeImage?: boolean;
13
14
  };
14
15
  export type AvailableDaysRequestPayload = {
15
16
  cameraId: string;
@@ -56,8 +57,7 @@ export type SnapshotRangeResponsePayload = {
56
57
  };
57
58
  export declare enum BrainTool {
58
59
  Detections = "detections",
59
- Segmentation = "sam",
60
- DepthAnalysis = "depthAnalysis"
60
+ Segmentation = "sam"
61
61
  }
62
62
  export declare enum CloudRecordingFrequency {
63
63
  EverySecond = 60,
@@ -0,0 +1,14 @@
1
+ import type { DateType, PaginationParams } from "@/types";
2
+ export type RecycleBin = {
3
+ id?: number;
4
+ exid: string;
5
+ name: string;
6
+ type: string;
7
+ deletedBy: string;
8
+ deletedAt: DateType;
9
+ };
10
+ export type RecycleBinQueryParams = PaginationParams & {
11
+ name: string;
12
+ type: string;
13
+ deletedBy: string;
14
+ };
@@ -16,8 +16,9 @@ export declare enum TimelineUrlParam {
16
16
  ToDate = "toDate",
17
17
  Live = "live",
18
18
  Video = "video",
19
- BeforeTimestamp = "beforeTimestamp",
20
19
  OverlayType = "overlayType",
20
+ ShowOverlay = "showOverlay",
21
+ ShowCompare = "showCompare",
21
22
  Sidebar = "sidebar",
22
23
  ThreeSixtyId = "_360Id",
23
24
  DroneId = "droneId",
@@ -45,6 +46,7 @@ export declare enum TimelineMobileCaptureUrlParams {
45
46
  ShowMobileCapture = "showMobileCapture"
46
47
  }
47
48
  export declare enum TimelineCommentsUrlParams {
48
- ShowComments = "showComments"
49
+ ShowComments = "showComments",
50
+ SelectedCommentId = "selectedCommentId"
49
51
  }
50
52
  export type TimelineUrlParams = Record<TimelineUrlParam | TimelineMediaUrlParams | TimelineBimUrlParams | TimelineExNvrRecordingsUrlParams | TimelineAnprUrlParams | TimelineMobileCaptureUrlParams | TimelineCommentsUrlParams, string | null>;
@@ -47,6 +47,10 @@ export declare enum RouterStatus {
47
47
  Active = "active",
48
48
  Inactive = "inactive"
49
49
  }
50
+ export declare enum RouterScanInputMode {
51
+ Qr = "qr",
52
+ Manual = "manual"
53
+ }
50
54
  export type RouterQueryParams = PaginationParams & {
51
55
  routerType: string;
52
56
  vpnServer: string;
@@ -65,3 +69,18 @@ export type RouterCreatePayload = {
65
69
  vpnServer?: string;
66
70
  netbirdUrl?: string;
67
71
  };
72
+ export type RouterQRScanResult = {
73
+ raw: string;
74
+ timestamp: string;
75
+ sn?: string;
76
+ m?: string;
77
+ u?: string;
78
+ pw?: string;
79
+ t?: string;
80
+ s?: string;
81
+ p?: string;
82
+ i?: string;
83
+ b?: string;
84
+ boxId?: string;
85
+ isDuplicate?: boolean;
86
+ };
@@ -90,11 +90,6 @@ export declare enum _3dViewer {
90
90
  Itwin = "itwin",
91
91
  Cesium = "cesium"
92
92
  }
93
- export declare enum SsoProvider {
94
- Microsoft = "microsoft",
95
- Google = "google",
96
- Evercam = "evercam"
97
- }
98
93
  export declare enum InfoPage {
99
94
  ThreeSixtyView = "360",
100
95
  BIMView = "bim",
@@ -105,7 +100,7 @@ export declare enum InfoPage {
105
100
  Timeline = "timeline",
106
101
  WeatherReport = "weather-report"
107
102
  }
108
- export declare enum DownloadTypes {
103
+ export declare enum DownloadFileType {
109
104
  Jpeg = "jpeg",
110
105
  Pdf = "pdf",
111
106
  Csv = "csv"
@@ -0,0 +1,58 @@
1
+ import type { DateType } from "@/types";
2
+ export type ShareRequest = {
3
+ cameraId: string;
4
+ createdAt: DateType | number;
5
+ email: string;
6
+ id: number;
7
+ rights: string;
8
+ sharerEmail: string;
9
+ sharerName: string;
10
+ userId: number;
11
+ };
12
+ export type Share = {
13
+ cameraId: string;
14
+ createdAt: DateType | number;
15
+ email: string;
16
+ fullname: string;
17
+ id: number;
18
+ lastSeenAt: DateType;
19
+ rights: string;
20
+ sessionCount: number;
21
+ sharerEmail: string;
22
+ sharerId: number;
23
+ sharerName: string;
24
+ userId: number;
25
+ isUserAccessRestricted: boolean;
26
+ };
27
+ export type ShareDeletionRequestPayload = {
28
+ email?: string;
29
+ key?: string;
30
+ origin?: string;
31
+ };
32
+ export type SharedUsersResponsePayload = Array<{
33
+ email: string;
34
+ name: string;
35
+ }>;
36
+ export type ShareCreateRequestPayload = {
37
+ email: string[] | string;
38
+ message?: string;
39
+ permission?: string;
40
+ rights: string;
41
+ apiId?: string;
42
+ apiKey?: string;
43
+ };
44
+ export type ShareCreateResponsePayload = {
45
+ shares: Share[];
46
+ shareRequests: ShareRequest[];
47
+ };
48
+ export declare enum InviteStatus {
49
+ Pending = 0,
50
+ Cancelled = -1,
51
+ Used = 1,
52
+ Failed = -2
53
+ }
54
+ export declare enum ShareVisibility {
55
+ PublicDiscoverable = "publicDiscoverable",
56
+ PublicUndiscoverable = "publicUndiscoverable",
57
+ Private = "private"
58
+ }
@@ -0,0 +1,247 @@
1
+ import { BBox, BoundingBox, DateType, Schedule, CameraExid, DateTime, DetectionModel, PaginationParams, PpeLabel, ProjectExid, CameraDateRangeFilter, CameraFeatureFlag, TimelineDateInterval, Camera, AdminCamera, _360FullProject, _360FloorId, PaginatedItems } from "@evercam/api/types";
2
+ import { DetectionLabel, DownloadFileType } from "@evercam/api/types";
3
+ export declare enum SiteAnalyticsMode {
4
+ Detections = "detections",
5
+ Segments = "segments"
6
+ }
7
+ export type SmartSearchPart = {
8
+ id?: string;
9
+ type: SmartSearchPartType;
10
+ value: DetectionLabel | SmartSearchOperatorType | SmartSearchConditionData | SmartSearchCondition | SmartSearchDateRange | string;
11
+ };
12
+ export declare enum SmartSearchComponentType {
13
+ Condition = "condition",
14
+ Object = "object",
15
+ Area = "in_area",
16
+ Time = "time",
17
+ Operator = "operator",
18
+ View = "view",
19
+ DateRange = "date_range",
20
+ Heatmap = "heatmap"
21
+ }
22
+ export type SmartSearchPartType = SmartSearchComponentType | SmartSearchCondition;
23
+ export type SmartSearchDateRange = {
24
+ start: DateType;
25
+ end: DateType;
26
+ };
27
+ export type SmartSearchComponentData = {
28
+ id: string;
29
+ type: SmartSearchComponentType;
30
+ parts: SmartSearchPart[];
31
+ };
32
+ export declare enum SmartSearchCondition {
33
+ InArea = "in_area",
34
+ Intersects = "intersects",
35
+ Time = "time"
36
+ }
37
+ export type SmartSearchConditionData = {
38
+ condition: SmartSearchCondition;
39
+ value: string | BoundingBox | DetectionLabel | Date;
40
+ };
41
+ export type SmartSearchBackendQueryCondition = {
42
+ type: SmartSearchConditionTypes;
43
+ target: SmartSearchTargets;
44
+ operator?: SmartSearchOperators;
45
+ attribute?: string;
46
+ value: string | number | string[];
47
+ reference?: {
48
+ target: SmartSearchTargets;
49
+ attribute: string;
50
+ value: string | number | string[];
51
+ };
52
+ polygon?: BBox;
53
+ };
54
+ export type SmartSearchBackendQuery = {
55
+ returnTargets: SmartSearchTargets[];
56
+ rulesLogic: SmartSearchOperatorType;
57
+ rules: {
58
+ logic: SmartSearchOperatorType;
59
+ conditions: SmartSearchBackendQueryCondition[];
60
+ }[];
61
+ returnType: SmartSearchReturnType;
62
+ };
63
+ export declare enum SmartSearchTargets {
64
+ Tracking = "tracking",
65
+ Segments = "segments"
66
+ }
67
+ export declare enum SmartSearchReturnType {
68
+ All = "all",
69
+ FirstLastSeen = "first_last_seen"
70
+ }
71
+ export declare enum SmartSearchOperatorType {
72
+ And = "AND",
73
+ Or = "OR"
74
+ }
75
+ export declare enum SmartSearchOperators {
76
+ Near = "near",
77
+ Far = "far",
78
+ Intersects = "intersects",
79
+ DoesNotIntersect = "does_not_intersect",
80
+ Inside = "inside",
81
+ Outside = "outside",
82
+ DistanceBelow = "distance_below",
83
+ DistanceAbove = "distance_above",
84
+ Area = "in_area",
85
+ Equal = "="
86
+ }
87
+ export declare enum SmartSearchConditionTypes {
88
+ Selection = "selection",
89
+ Spatial = "spatial",
90
+ Area = "area",
91
+ GeoArea = "in_geo_area",
92
+ Iou = "iou",
93
+ Near = "near",
94
+ Far = "far"
95
+ }
96
+ export type SmartSearchOptionValue = DetectionLabel | SmartSearchOperatorType | SmartSearchConditionData;
97
+ export type SmartSearchBackendQueryPayload = {
98
+ cameraExid: string;
99
+ name: string;
100
+ description: string;
101
+ query: {
102
+ req: SmartSearchBackendQuery;
103
+ timeSchedule?: Schedule | undefined;
104
+ };
105
+ fromDate?: DateType;
106
+ toDate?: DateType;
107
+ author: string;
108
+ createdAt: DateType;
109
+ params?: Record<string, unknown>;
110
+ };
111
+ export type SavedQuery = {
112
+ description: string;
113
+ id: number;
114
+ query: {
115
+ req: SmartSearchBackendQuery;
116
+ timeSchedule?: Schedule | undefined;
117
+ };
118
+ params: Record<string, string>;
119
+ components?: Omit<SmartSearchPart, "id">[];
120
+ toDate?: DateType;
121
+ createdAt?: DateType;
122
+ cameraExid: string;
123
+ name: string;
124
+ fromDate?: DateType;
125
+ author?: string;
126
+ };
127
+ export type DetectionsRequestParams = {
128
+ projectExid: ProjectExid;
129
+ cameraExids: CameraExid[];
130
+ fromDate?: DateTime;
131
+ toDate?: DateTime;
132
+ labels?: Array<DetectionLabel | PpeLabel>;
133
+ modelId?: DetectionModel;
134
+ trackId?: number;
135
+ thresholds?: string[];
136
+ excludeLabels?: Array<DetectionLabel | PpeLabel>;
137
+ mergedClasses?: Array<string>;
138
+ confidenceThreshold?: number;
139
+ } & PaginationParams;
140
+ export type DetectionsExportRequestParams = DetectionsRequestParams & {
141
+ fileType: DownloadFileType;
142
+ columns?: string[];
143
+ directDownload?: boolean;
144
+ };
145
+ export type SmartSearchHeatmapPoint = {
146
+ coordinates: [number, number];
147
+ detectionsCount: number;
148
+ };
149
+ export type SmartSearchHeatmapData = {
150
+ label: string;
151
+ points: SmartSearchHeatmapPoint[];
152
+ };
153
+ export type SmartSearchNearConfig = {
154
+ sourceLabels: DetectionLabel[];
155
+ targetLabel?: DetectionLabel;
156
+ };
157
+ export type HeatmapIntersectionsRequestParams = CameraDateRangeFilter & SmartSearchNearConfig;
158
+ export type SmartSearchSidebarItem = {
159
+ key: string;
160
+ displayLabel: string;
161
+ data: SmartSearchHeatmapData;
162
+ imagePath?: string;
163
+ };
164
+ export declare enum SiteAnalyticsViewType {
165
+ Camera = "camera",
166
+ ThreeSixty = "360"
167
+ }
168
+ type SiteAnalyticsViewByType = {
169
+ [SiteAnalyticsViewType.Camera]: Camera | AdminCamera;
170
+ [SiteAnalyticsViewType.ThreeSixty]: _360FullProject;
171
+ };
172
+ export type SiteAnalyticsView<T extends SiteAnalyticsViewType = SiteAnalyticsViewType.Camera> = {
173
+ type: SiteAnalyticsViewType;
174
+ value: SiteAnalyticsViewByType[T];
175
+ };
176
+ export type SiteAnalyticsProcessingStatusPayload = {
177
+ projectExid?: ProjectExid;
178
+ fromDate?: DateType;
179
+ toDate?: DateType;
180
+ cameraExid?: CameraExid;
181
+ drawingId?: string;
182
+ features?: CameraFeatureFlag[];
183
+ };
184
+ export type SiteAnalyticsProcessingStatus = {
185
+ projectExid: ProjectExid;
186
+ viewType: SiteAnalyticsViewType;
187
+ viewId: string;
188
+ feature: CameraFeatureFlag;
189
+ processedIntervals: TimelineDateInterval[];
190
+ };
191
+ export type SmartSearchRequestPayload = {
192
+ cameraExids?: CameraExid[];
193
+ drawingIds?: _360FloorId[];
194
+ walkIds?: string[];
195
+ markerIds?: string[];
196
+ payload: SmartSearchBackendQuery;
197
+ fromDate?: string;
198
+ toDate?: string;
199
+ page?: number;
200
+ pageSize?: number;
201
+ threshold?: number;
202
+ };
203
+ type SmartSearchResultItemBase = {
204
+ area: number;
205
+ bbox: BBox;
206
+ cameraExid?: CameraExid;
207
+ centroid: number[];
208
+ confidenceScore: number;
209
+ drawingId?: _360FloorId;
210
+ label: DetectionLabel;
211
+ modelId: DetectionModel;
212
+ projectExid: ProjectExid;
213
+ segmentId?: number;
214
+ trackId: number;
215
+ walkId?: string | number;
216
+ };
217
+ export type SmartSearchResultItemFirstLastSeen = SmartSearchResultItemBase & {
218
+ firstSeen: DateType;
219
+ firstSeenMarkerId?: string | number;
220
+ lastSeen: DateType;
221
+ lastSeenMarkerId?: string | number;
222
+ };
223
+ export type SmartSearchResultItemAll = SmartSearchResultItemBase & {
224
+ walkId?: string | number;
225
+ markerId?: string | number;
226
+ geolocation?: number[];
227
+ mask?: number[][];
228
+ timestamp: DateType;
229
+ };
230
+ type SmartSearchResultItemByType = {
231
+ [SmartSearchReturnType.FirstLastSeen]: SmartSearchResultItemFirstLastSeen;
232
+ [SmartSearchReturnType.All]: SmartSearchResultItemAll;
233
+ };
234
+ export type SmartSearchResponse<R extends SmartSearchReturnType = SmartSearchReturnType.FirstLastSeen> = {
235
+ data: PaginatedItems<SmartSearchResultItemByType[R]>;
236
+ message?: string;
237
+ success: boolean;
238
+ };
239
+ export type SmartSearchMinifiedPart = {
240
+ t: SmartSearchComponentType;
241
+ v: unknown;
242
+ };
243
+ export type SmartSearchMinifiedComponent = {
244
+ t: SmartSearchComponentType;
245
+ p: SmartSearchMinifiedPart[];
246
+ };
247
+ export {};
@@ -48,3 +48,12 @@ export type DeleteSnapshotQueryParams = {
48
48
  adminEmail: string;
49
49
  adminFullname: string;
50
50
  };
51
+ export type TransferCloudRecordingsQueryParams = {
52
+ targetCameraExid: CameraExid;
53
+ fromDate: DateType;
54
+ toDate: DateType;
55
+ overwriteExistingSnapshots?: boolean;
56
+ keepSourceSnapshots?: boolean;
57
+ adminEmail?: string;
58
+ adminFullname?: string;
59
+ };
@@ -0,0 +1,55 @@
1
+ export type SsoProvider = {
2
+ id: number;
3
+ name: string;
4
+ exid: string;
5
+ clientId: string;
6
+ clientSecret: string;
7
+ scope: string;
8
+ responseType: string;
9
+ loginUrl: string;
10
+ iconUrl: string;
11
+ options: {
12
+ showOnLogin: boolean;
13
+ showOnSignup: boolean;
14
+ };
15
+ tokenUri: string;
16
+ tokenIntrospectionUri: string;
17
+ userInfoUri: string;
18
+ enabled: boolean;
19
+ };
20
+ export type SsoUpdatePayload = {
21
+ name: string;
22
+ exid: string;
23
+ clientId: string;
24
+ clientSecret: string;
25
+ scope: string;
26
+ responseType: string;
27
+ loginUrl: string;
28
+ iconUrl: string;
29
+ options: {
30
+ showOnLogin: boolean;
31
+ showOnSignup: boolean;
32
+ };
33
+ tokenUri: string;
34
+ tokenIntrospectionUri: string;
35
+ userInfoUri: string;
36
+ enabled: boolean;
37
+ };
38
+ export type SsoCreatePayload = {
39
+ name: string;
40
+ exid: string;
41
+ clientId: string;
42
+ clientSecret: string;
43
+ scope: string;
44
+ responseType: string;
45
+ loginUrl: string;
46
+ iconUrl: string;
47
+ options: {
48
+ showOnLogin: boolean;
49
+ showOnSignup: boolean;
50
+ };
51
+ tokenUri: string;
52
+ tokenIntrospectionUri: string;
53
+ userInfoUri: string;
54
+ enabled: boolean;
55
+ };
@@ -39,8 +39,7 @@ export type ExNvrDeviceConfig = {
39
39
  timezone: string;
40
40
  };
41
41
  export declare enum ExNvrFootageAvailableStatus {
42
- Active = "Active",
43
- NotActive = "Not Active",
42
+ Available = "Available",
44
43
  NotAvailable = "Not Available"
45
44
  }
46
45
  export declare enum ExNvrDeviceState {
@@ -1,4 +1,6 @@
1
+ import { Moment } from "moment-timezone";
1
2
  export type DateType = Date | string | number;
3
+ export type ExtendedDateType = Moment | DateType;
2
4
  type YYYY = number;
3
5
  type MM = number;
4
6
  type DD = number;
@@ -16,4 +18,8 @@ export type DateTime_tz = `${Date_YYYY_MM_DD}T${Time_HH_mm_ss}${"+" | "-"}${HH}:
16
18
  export type DateTime_Z = `${Date_YYYY_MM_DD}T${Time_HH_mm_ss}Z` | string;
17
19
  export type DateTime_Z_micros = `${Date_YYYY_MM_DD}T${Time_HH_mm_ss}.${microS}Z` | string;
18
20
  export type DateTimeSpaceSeparated = `${Date_YYYY_MM_DD} ${Time_HH_mm_ss}` | string;
21
+ export type DateRangeFilter = {
22
+ fromDate: DateType;
23
+ toDate: DateType;
24
+ };
19
25
  export {};
@@ -1,4 +1,4 @@
1
- import type { DateTime, PaginationParams } from "@/types";
1
+ import { DateTime, PaginationParams, BaseRole, SubRole } from "@/types";
2
2
  export type User = {
3
3
  id?: number;
4
4
  fullname?: string;
@@ -34,12 +34,7 @@ export type AdminUser = {
34
34
  countryName: string;
35
35
  createdAt: DateTime;
36
36
  integrations: string[];
37
- lastEventBrowser: string;
38
- lastEvenCreatedAt: DateTime;
39
- lastEventId: number;
40
- lastEventIpAddress: string;
41
- lastEventName: string;
42
- lastEventOs: string;
37
+ lastSeenAt: DateTime;
43
38
  lastLoginAt: string;
44
39
  lastname: string;
45
40
  persona: string;
@@ -64,6 +59,10 @@ export type ProjectUser = User & {
64
59
  cameraExid: string;
65
60
  cameraRights: string;
66
61
  };
62
+ export declare enum ContactRole {
63
+ SalesExecutive = "Sales Executive",
64
+ CustomerSuccessManager = "Customer Success Manager"
65
+ }
67
66
  export declare enum Persona {
68
67
  HQ = "HQ",
69
68
  PM = "PM",
@@ -274,3 +273,16 @@ export type Suppression = {
274
273
  insertedAt: DateTime;
275
274
  updatedAt: DateTime;
276
275
  };
276
+ export type ProjectUserWithRole = {
277
+ id: number;
278
+ email: string;
279
+ fullname: string;
280
+ company: {
281
+ id: number;
282
+ name: string;
283
+ exid: string;
284
+ };
285
+ permissions: string[];
286
+ role: BaseRole;
287
+ subRoles: SubRole[];
288
+ };
@@ -0,0 +1,66 @@
1
+ import { Camera, Media, PaginationParams } from "@/types";
2
+ export declare enum VideoWallItemType {
3
+ LiveView = "live",
4
+ Video = "video",
5
+ Image = "image"
6
+ }
7
+ export type VideoWallItem<T extends Camera | Media> = {
8
+ value: T;
9
+ type: VideoWallItemType;
10
+ };
11
+ export type VideoWallPresetItemConfig = {
12
+ camera: Camera;
13
+ h: number;
14
+ i: string | number;
15
+ moved: boolean;
16
+ w: number;
17
+ x: number;
18
+ y: number;
19
+ };
20
+ export type VideoWallPreset = {
21
+ name?: string;
22
+ configuration: Array<VideoWallPresetItemConfig>;
23
+ };
24
+ export type VideoWallPresetItem = {
25
+ i: string | number;
26
+ x: number;
27
+ y: number;
28
+ w: number;
29
+ h: number;
30
+ camera: Camera;
31
+ weather?: Record<string, unknown>;
32
+ media?: Media;
33
+ };
34
+ export type VideoWallSource = "default" | "widget";
35
+ export interface VideoWall {
36
+ id: number;
37
+ exid: string;
38
+ name: string;
39
+ source: VideoWallSource;
40
+ config: Record<string, any>;
41
+ inserted_at: string;
42
+ updated_at: string;
43
+ user: {
44
+ id: number;
45
+ firstname: string;
46
+ lastname: string;
47
+ email: string;
48
+ };
49
+ }
50
+ export interface ListParams extends PaginationParams {
51
+ project_exid?: string;
52
+ id?: number;
53
+ exid?: string;
54
+ project_id?: number;
55
+ user_id?: number;
56
+ name?: string;
57
+ project?: string;
58
+ user?: string;
59
+ source?: VideoWallSource;
60
+ }
61
+ export type VideoWallCreateUpdatePayload = {
62
+ project_exid: string;
63
+ name: string;
64
+ source?: VideoWallSource;
65
+ config: Record<string, unknown>;
66
+ };