@evercam/api 1.0.0-91a80705f → 1.0.0-9272abbb4

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 (152) hide show
  1. package/README.md +6 -0
  2. package/dist/api/api/3dFirebaseApi.d.ts +221 -0
  3. package/dist/api/api/adminApi.d.ts +394 -0
  4. package/dist/api/api/aiApi.d.ts +251 -0
  5. package/dist/api/api/authzApi.d.ts +40 -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 +360 -0
  12. package/dist/api/api/evercamLabsApi.d.ts +34 -0
  13. package/dist/api/{exNvrApi.d.ts → api/exNvrApi.d.ts} +1 -1
  14. package/dist/api/api/index.d.ts +14 -0
  15. package/dist/api/api/ingestApi.d.ts +161 -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/api/workflowsApi.d.ts +15 -0
  20. package/dist/api/index.d.ts +3 -13
  21. package/dist/api/types/360.d.ts +365 -0
  22. package/dist/api/types/aconex.d.ts +143 -0
  23. package/dist/api/types/admin.d.ts +51 -0
  24. package/dist/api/types/aiConfigs.d.ts +244 -0
  25. package/dist/{types → api/types}/analytics.d.ts +254 -121
  26. package/dist/{types → api/types}/anpr.d.ts +64 -19
  27. package/dist/api/types/apiKey.d.ts +70 -0
  28. package/dist/{types → api/types}/auditLogs.d.ts +51 -12
  29. package/dist/api/types/authz.d.ts +132 -0
  30. package/dist/{types → api/types}/autodesk.d.ts +7 -7
  31. package/dist/api/types/automation.d.ts +123 -0
  32. package/dist/{types → api/types}/axios.d.ts +32 -12
  33. package/dist/{types → api/types}/bim.d.ts +39 -10
  34. package/dist/{types → api/types}/camera.d.ts +146 -167
  35. package/dist/api/types/comments.d.ts +64 -0
  36. package/dist/api/types/company.d.ts +114 -0
  37. package/dist/{types → api/types}/compare.d.ts +21 -6
  38. package/dist/api/types/connector.d.ts +21 -0
  39. package/dist/api/types/coolify.d.ts +36 -0
  40. package/dist/{types → api/types}/countries.d.ts +0 -7
  41. package/dist/{types → api/types}/credentials.d.ts +1 -0
  42. package/dist/api/types/detections.d.ts +117 -0
  43. package/dist/api/types/drone.d.ts +106 -0
  44. package/dist/{types → api/types}/errors.d.ts +30 -1
  45. package/dist/{types → api/types}/gateReport.d.ts +49 -168
  46. package/dist/api/types/gateReportManagement.d.ts +170 -0
  47. package/dist/api/types/hammertech.d.ts +98 -0
  48. package/dist/api/types/hdd.d.ts +88 -0
  49. package/dist/{types → api/types}/index.d.ts +26 -5
  50. package/dist/api/types/ingest.d.ts +301 -0
  51. package/dist/{types → api/types}/kit.d.ts +132 -101
  52. package/dist/api/types/map.d.ts +16 -0
  53. package/dist/{types → api/types}/media.d.ts +9 -3
  54. package/dist/api/types/notification.d.ts +107 -0
  55. package/dist/{types → api/types}/nvr.d.ts +2 -1
  56. package/dist/api/types/oauth.d.ts +62 -0
  57. package/dist/api/types/observationEvents.d.ts +141 -0
  58. package/dist/api/types/observations.d.ts +80 -0
  59. package/dist/api/types/planner.d.ts +125 -0
  60. package/dist/api/types/posthog.d.ts +53 -0
  61. package/dist/api/types/procore.d.ts +229 -0
  62. package/dist/{types → api/types}/progressPhoto.d.ts +11 -23
  63. package/dist/api/types/project.d.ts +259 -0
  64. package/dist/{types → api/types}/recording.d.ts +10 -16
  65. package/dist/api/types/recycleBin.d.ts +14 -0
  66. package/dist/api/types/ring.d.ts +53 -0
  67. package/dist/{types → api/types}/roi.d.ts +2 -9
  68. package/dist/{types → api/types}/routeParams.d.ts +5 -2
  69. package/dist/{types → api/types}/router.d.ts +20 -1
  70. package/dist/{types → api/types}/shared.d.ts +34 -39
  71. package/dist/api/types/shares.d.ts +45 -0
  72. package/dist/{types → api/types}/sim.d.ts +6 -6
  73. package/dist/api/types/siteAnalytics.d.ts +285 -0
  74. package/dist/api/types/siteAnalyticsManagement.d.ts +127 -0
  75. package/dist/api/types/siteView.d.ts +78 -0
  76. package/dist/api/types/smartSeach.d.ts +5 -0
  77. package/dist/api/types/snapshots.d.ts +104 -0
  78. package/dist/api/types/socket.d.ts +4 -0
  79. package/dist/api/types/sso.d.ts +55 -0
  80. package/dist/api/types/storageProvider.d.ts +19 -0
  81. package/dist/api/types/storyblok.d.ts +27 -0
  82. package/dist/api/types/streaming.d.ts +97 -0
  83. package/dist/api/types/systemCheck.d.ts +11 -0
  84. package/dist/api/types/tag.d.ts +12 -0
  85. package/dist/api/types/time.d.ts +7 -0
  86. package/dist/{types → api/types}/timelapse.d.ts +22 -11
  87. package/dist/{types → api/types}/user.d.ts +121 -40
  88. package/dist/api/types/videoWall.d.ts +66 -0
  89. package/dist/api/types/weather.d.ts +153 -0
  90. package/dist/{types → api/types}/widget.d.ts +105 -20
  91. package/dist/api/types/workflows.d.ts +108 -0
  92. package/dist/api/types/xweather.d.ts +12 -0
  93. package/dist/{utils.d.ts → api/utils.d.ts} +1 -0
  94. package/dist/index.d.ts +2 -3
  95. package/dist/index.js +3242 -1107
  96. package/dist/index.js.map +1 -1
  97. package/dist/index.umd.cjs +1 -1
  98. package/dist/index.umd.cjs.map +1 -1
  99. package/dist/shared/api/index.d.ts +3 -0
  100. package/dist/shared/components/timelinePlayer/providers/index.d.ts +3 -0
  101. package/dist/shared/components/timelinePlayer/providers/timelineAnprProvider.d.ts +17 -0
  102. package/dist/shared/components/timelinePlayer/providers/timelineDataProvider.d.ts +13 -0
  103. package/dist/shared/components/timelinePlayer/providers/timelineLuminanceProvider.d.ts +16 -0
  104. package/dist/shared/types/components.d.ts +501 -0
  105. package/dist/shared/types/customDataTableFilters.d.ts +10 -0
  106. package/dist/shared/types/droneUpload.d.ts +67 -0
  107. package/dist/shared/types/imagePlayer.d.ts +41 -0
  108. package/dist/shared/types/index.d.ts +9 -0
  109. package/dist/shared/types/observations.d.ts +25 -0
  110. package/dist/shared/types/rbac.d.ts +67 -0
  111. package/dist/shared/types/report.d.ts +101 -0
  112. package/dist/shared/types/timeline.d.ts +10 -0
  113. package/dist/shared/utils/datePickerValue.d.ts +36 -0
  114. package/dist/shared/utils/datePresets.d.ts +31 -0
  115. package/package.json +10 -7
  116. package/dist/api/3dFirebaseApi.d.ts +0 -9
  117. package/dist/api/adminApi.d.ts +0 -288
  118. package/dist/api/aiApi.d.ts +0 -73
  119. package/dist/api/authzApi.d.ts +0 -21
  120. package/dist/api/evercamApi.d.ts +0 -266
  121. package/dist/api/evercamLabsApi.d.ts +0 -51
  122. package/dist/api/ingestApi.d.ts +0 -65
  123. package/dist/api/videoWallApi.d.ts +0 -9
  124. package/dist/api/weatherApi.d.ts +0 -25
  125. package/dist/types/360.d.ts +0 -83
  126. package/dist/types/aconex.d.ts +0 -45
  127. package/dist/types/automation.d.ts +0 -6
  128. package/dist/types/comments.d.ts +0 -36
  129. package/dist/types/company.d.ts +0 -46
  130. package/dist/types/connector.d.ts +0 -16
  131. package/dist/types/copilot.d.ts +0 -156
  132. package/dist/types/detections.d.ts +0 -71
  133. package/dist/types/devices.d.ts +0 -228
  134. package/dist/types/drone.d.ts +0 -17
  135. package/dist/types/ingest.d.ts +0 -43
  136. package/dist/types/map.d.ts +0 -4
  137. package/dist/types/notification.d.ts +0 -27
  138. package/dist/types/procore.d.ts +0 -76
  139. package/dist/types/project.d.ts +0 -120
  140. package/dist/types/shares.d.ts +0 -192
  141. package/dist/types/siteAnalytics.d.ts +0 -5
  142. package/dist/types/sitePlanner.d.ts +0 -23
  143. package/dist/types/snapshots.d.ts +0 -50
  144. package/dist/types/storageServers.d.ts +0 -4
  145. package/dist/types/streaming.d.ts +0 -119
  146. package/dist/types/time.d.ts +0 -19
  147. package/dist/types/vendorModel.d.ts +0 -15
  148. package/dist/types/videoWall.d.ts +0 -33
  149. package/dist/types/weather.d.ts +0 -83
  150. /package/dist/api/{client → api/client}/index.d.ts +0 -0
  151. /package/dist/api/{webRtcApi.d.ts → api/webRtcApi.d.ts} +0 -0
  152. /package/dist/{types → api/types}/voyageControl.d.ts +0 -0
@@ -0,0 +1,70 @@
1
+ export declare enum ApiKeyType {
2
+ User = "user",
3
+ Workflows = "workflows",
4
+ Widget = "widget"
5
+ }
6
+ export type ApiKey = {
7
+ id: number;
8
+ name: string;
9
+ type: ApiKeyType;
10
+ maskedKey: string;
11
+ key: string | null;
12
+ scopes: string[];
13
+ projects: string[];
14
+ active: boolean;
15
+ expiresAt: string | null;
16
+ lastUsedAt: string | null;
17
+ revokedAt: string | null;
18
+ insertedAt: string;
19
+ updatedAt: string;
20
+ };
21
+ export declare enum ApiKeyStatus {
22
+ Active = "active",
23
+ Expired = "expired",
24
+ Revoked = "revoked"
25
+ }
26
+ export type ApiKeysRequestParams = {
27
+ name?: string;
28
+ type?: ApiKeyType;
29
+ status?: ApiKeyStatus[];
30
+ expiresAtFrom?: string;
31
+ expiresAtTo?: string;
32
+ lastUsedAtFrom?: string;
33
+ lastUsedAtTo?: string;
34
+ sort?: string;
35
+ page?: number;
36
+ limit?: number;
37
+ };
38
+ export type CreateApiKeyPayload = {
39
+ name: string;
40
+ scopes: string[];
41
+ resources?: {
42
+ projects: string[];
43
+ };
44
+ type?: ApiKeyType;
45
+ expiresAt?: string;
46
+ };
47
+ export type UpdateApiKeyPayload = {
48
+ name?: string;
49
+ scopes?: string[];
50
+ resources?: {
51
+ projects: string[];
52
+ };
53
+ expiresAt?: string | null;
54
+ };
55
+ export type AdminApiKey = Omit<ApiKey, "key"> & {
56
+ user: {
57
+ email: string;
58
+ fullname: string;
59
+ };
60
+ };
61
+ export type AdminApiKeysRequestParams = ApiKeysRequestParams & {
62
+ user?: string;
63
+ userId?: number;
64
+ lastUsedAtFrom?: string;
65
+ lastUsedAtTo?: string;
66
+ };
67
+ export type UpdateAdminApiKeyPayload = {
68
+ name: string;
69
+ expiresAt: string | null;
70
+ };
@@ -1,4 +1,4 @@
1
- import { CameraStatus, DateType, PaginationParams } from "@/types";
1
+ import { CameraStatus, DateType, PaginationParams } from "@evercam/api/types";
2
2
  export declare enum AuditLogActionType {
3
3
  VH_STATUS = "vh_status",
4
4
  CR_UPDATED = "cr_updated",
@@ -12,7 +12,6 @@ export declare enum AuditLogActionType {
12
12
  WAITING_FOR_SITE_VISIT = "waiting_for_site_visit",
13
13
  SMS = "sms",
14
14
  CUSTOM = "custom",
15
- PUBLIC_NOTE = "public_note",
16
15
  SIM = "sim",
17
16
  LOGIN = "login",
18
17
  LOGOUT = "logout",
@@ -30,23 +29,63 @@ export declare enum AuditLogActionType {
30
29
  SHARE_REQUEST = "share_request",
31
30
  DELETE_SHARE_REQUEST = "delete_share_request",
32
31
  TRANSFER_OWNERSHIP = "transfer_ownership",
33
- BIM_NOTE = "bim_note",
34
- GATE_REPORT_NOTE = "gate_report_note"
32
+ OAUTH_AUTHORIZE = "oauth_authorize",
33
+ OAUTH_TOKEN_ISSUE = "oauth_token_issue",
34
+ OAUTH_TOKEN_REFRESH = "oauth_token_refresh",
35
+ OAUTH_TOKEN_REVOKE = "oauth_token_revoke",
36
+ OAUTH_CLIENT_CREATE = "oauth_client_create",
37
+ OAUTH_CLIENT_DELETE = "oauth_client_delete",
38
+ API_KEY_REGENERATE = "api_key_regenerate",
39
+ API_KEY_REVOKE = "api_key_revoke"
35
40
  }
41
+ export declare enum AuditLogEntity {
42
+ Cameras = "cameras",
43
+ Projects = "projects",
44
+ Layers = "layers",
45
+ Routers = "routers",
46
+ Sims = "sims",
47
+ Hdds = "hdds",
48
+ Nvr = "nvr",
49
+ Archives = "archives",
50
+ Users = "users",
51
+ Rois = "rois",
52
+ Kits = "kits",
53
+ Roles = "roles",
54
+ Tags = "tags",
55
+ KitsTags = "kits_tags",
56
+ Oauth = "oauth",
57
+ ApiKeys = "api_keys",
58
+ StorageProviders = "storage_providers"
59
+ }
60
+ export declare enum AuditLogAuthMethod {
61
+ Password = "password",
62
+ ApiKeyV2 = "api_key_v2",
63
+ Widget = "widget",
64
+ OauthAccess = "oauth_access",
65
+ Impersonation = "impersonation",
66
+ Sso = "sso"
67
+ }
68
+ export type AuditLogUserDetails = {
69
+ browser: string;
70
+ country: string;
71
+ countryCode: string;
72
+ device: string | null;
73
+ ip: string;
74
+ os: string | null;
75
+ authMethod?: AuditLogAuthMethod;
76
+ apiKeyId?: number;
77
+ apiKeyName?: string;
78
+ apiKeyMasked?: string;
79
+ widgetId?: number;
80
+ oauthClientId?: string;
81
+ };
36
82
  export type AuditLog = {
37
83
  id: number;
38
84
  action: AuditLogActionType;
39
85
  details: Record<string, any>;
40
86
  insertedAt: DateType;
41
87
  entity: string;
42
- user_details: {
43
- browser: string;
44
- country: string;
45
- countryCode: string;
46
- device: string | null;
47
- ip: string;
48
- os: string | null;
49
- };
88
+ userDetails: AuditLogUserDetails;
50
89
  who: string;
51
90
  };
52
91
  export type AuditLogsParams = PaginationParams & {
@@ -0,0 +1,132 @@
1
+ export declare enum RoleResourceType {
2
+ App = "app",
3
+ Camera = "camera",
4
+ Project = "project"
5
+ }
6
+ export declare enum RoleAssignmentLogAction {
7
+ Assign = "assign",
8
+ Unassign = "unassign"
9
+ }
10
+ export type RoleSubRole = {
11
+ resourceId: string;
12
+ roleId: number;
13
+ roleName?: string;
14
+ permissions?: string[];
15
+ };
16
+ export type Role = {
17
+ id: number;
18
+ name: string;
19
+ description?: string | null;
20
+ resource?: string;
21
+ resourceType: RoleResourceType;
22
+ resourceId?: string | null;
23
+ permissions: string[];
24
+ subRoles?: RoleSubRole[];
25
+ isDefault?: boolean;
26
+ };
27
+ export type ProjectResourceRole = Role & {
28
+ resourceType: RoleResourceType.Project;
29
+ };
30
+ export type CameraResourceRole = Omit<Role, "subRoles"> & {
31
+ resourceType: RoleResourceType.Camera;
32
+ };
33
+ export type ProjectRoleRequestPayload = {
34
+ name: string;
35
+ permissions: string[];
36
+ subRoles?: RoleSubRole[];
37
+ };
38
+ export type AuthzRoleUser = {
39
+ email: string;
40
+ resourceId: string;
41
+ };
42
+ export type AuthzUserRolesResponse = {
43
+ roles: Role[];
44
+ };
45
+ export type AuthzScopePermission = {
46
+ id: number;
47
+ action: string;
48
+ exid: string;
49
+ };
50
+ export type AuthzScope = {
51
+ id: number;
52
+ name: string;
53
+ description: string | null;
54
+ permissions: AuthzScopePermission[];
55
+ app: string;
56
+ exid: string;
57
+ };
58
+ export type AuthzScopeCreatePayload = {
59
+ name: string;
60
+ description?: string;
61
+ permissions: string[];
62
+ };
63
+ export type AuthzScopeUpdatePayload = Partial<AuthzScopeCreatePayload>;
64
+ export declare function isProjectRole(role: Role): role is ProjectResourceRole;
65
+ export declare function isCameraRole(role: Role): role is CameraResourceRole;
66
+ export type RoleAssignmentUserDetails = {
67
+ browser?: string | null;
68
+ device?: string | null;
69
+ os?: string | null;
70
+ country?: string | null;
71
+ countryCode?: string | null;
72
+ ip?: string | null;
73
+ impersonatedBy?: string | null;
74
+ };
75
+ export type RoleAssignmentRowUserDetails = RoleAssignmentUserDetails & {
76
+ via?: string | null;
77
+ inviteId?: number | null;
78
+ inviteEmail?: string | null;
79
+ };
80
+ export type RoleAssignmentLog = {
81
+ id: number;
82
+ action: RoleAssignmentLogAction;
83
+ assignerId: number | null;
84
+ assignerEmail: string | null;
85
+ assigneeId: number | null;
86
+ assigneeEmail: string;
87
+ roleId: number | null;
88
+ roleName: string | null;
89
+ previousRoleId: number | null;
90
+ previousRoleName: string | null;
91
+ scope: RoleResourceType;
92
+ projectExid: string | null;
93
+ cameraExid: string | null;
94
+ cameraName: string | null;
95
+ projectName: string | null;
96
+ ip: string | null;
97
+ userDetails: RoleAssignmentRowUserDetails | null;
98
+ insertedAt: string;
99
+ };
100
+ export type RoleAssignmentResourceRef = {
101
+ exid: string;
102
+ name: string | null;
103
+ };
104
+ export type RoleAssignmentLogBatch = {
105
+ groupId: string;
106
+ batchId: string | null;
107
+ batchSize: number;
108
+ assigneeId: number | null;
109
+ assigneeEmail: string;
110
+ actions: RoleAssignmentLogAction[];
111
+ projects: RoleAssignmentResourceRef[];
112
+ ip: string | null;
113
+ userDetails: RoleAssignmentUserDetails | null;
114
+ insertedAt: string;
115
+ children: RoleAssignmentLog[];
116
+ };
117
+ export type RoleAssignmentLogsParams = {
118
+ page?: number;
119
+ limit?: number;
120
+ sort?: string;
121
+ action?: RoleAssignmentLogAction;
122
+ roleId?: number;
123
+ roleName?: string;
124
+ assigneeEmail?: string;
125
+ assignerEmail?: string;
126
+ scope?: RoleResourceType;
127
+ projectExid?: string;
128
+ cameraExid?: string;
129
+ ip?: string;
130
+ from?: string;
131
+ to?: string;
132
+ };
@@ -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,123 @@
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
+ Weather = "weather"
13
+ }
14
+ export declare enum AutomationWeatherReportType {
15
+ Forecast = "forecast",
16
+ History = "history"
17
+ }
18
+ export declare enum AutomationExportFormat {
19
+ Pdf = "pdf",
20
+ Csv = "csv"
21
+ }
22
+ export declare enum AutomationWeatherDataGranularity {
23
+ Daily = "daily",
24
+ Hourly = "hourly"
25
+ }
26
+ export type AutomationWeatherConfig = {
27
+ reportType: AutomationWeatherReportType;
28
+ exportFormat: AutomationExportFormat;
29
+ dataGranularity?: AutomationWeatherDataGranularity;
30
+ selectedColumns?: string[];
31
+ forecastDays?: number;
32
+ };
33
+ export type AutomationCompareConfig = {
34
+ compareDelay: number;
35
+ };
36
+ export type AutomationEmailRecipient = string | {
37
+ email: string;
38
+ };
39
+ export type AutomationGateReportConfig = {
40
+ projectExid: string;
41
+ vehicleTypes: string[];
42
+ fileType: string;
43
+ period: number;
44
+ columns: string[];
45
+ };
46
+ export type AutomationEmailProviderConfig = {
47
+ cameraExids?: CameraExid[];
48
+ recipients: string | AutomationEmailRecipient[];
49
+ };
50
+ export type AutomationProcoreProviderConfig = {
51
+ companyId: number;
52
+ companyName: string;
53
+ projectId: number;
54
+ projectName: string;
55
+ categoryId: number;
56
+ categoryName: string;
57
+ };
58
+ export type AutomationAconexProviderConfig = {
59
+ projectId: number;
60
+ projectName: string;
61
+ } & Partial<Record<AconexIdentifiers, string | number | boolean>>;
62
+ export type AutomationAutodeskProviderConfig = {
63
+ hubId: number;
64
+ hubName: string;
65
+ projectId: number;
66
+ projectName: string;
67
+ folderId: number;
68
+ accFileType: string;
69
+ accFolderType: string;
70
+ folderName: string;
71
+ };
72
+ export type AutomationProviderConfig = AutomationEmailProviderConfig | AutomationProcoreProviderConfig | AutomationAconexProviderConfig | AutomationAutodeskProviderConfig;
73
+ export type AutomationOptionsConfig = AutomationCompareConfig | AutomationGateReportConfig | AutomationWeatherConfig | {};
74
+ export type AutomationConfig = AutomationProviderConfig & AutomationOptionsConfig;
75
+ export type Automation = {
76
+ id?: number;
77
+ cameraExids: CameraExid[];
78
+ name: string;
79
+ subject?: string;
80
+ provider: AutomationProvider;
81
+ type: AutomationType;
82
+ config: AutomationConfig;
83
+ notifyDays: string[];
84
+ notifyTime: string;
85
+ timezone: string;
86
+ isPaused: boolean;
87
+ restrictedCameraExids?: string[];
88
+ };
89
+ export declare enum AutomationConfigStep {
90
+ Type = "type",
91
+ Cameras = "cameras",
92
+ Settings = "settings",
93
+ Destination = "destination"
94
+ }
95
+ export type AutomationProviderOption = {
96
+ labelTranslationKey: string;
97
+ descriptionTranslationKey: string;
98
+ value: AutomationProvider;
99
+ icon: string;
100
+ iconSize?: string;
101
+ requiresConnection: boolean;
102
+ };
103
+ export type AutomationTypeOption = {
104
+ labelTranslationKey: string;
105
+ descriptionTranslationKey: string;
106
+ label?: string;
107
+ description?: string;
108
+ value: AutomationType;
109
+ icon: string;
110
+ iconType?: string;
111
+ };
112
+ export type FormattedAutomation = {
113
+ cameraExids?: string;
114
+ name: string;
115
+ subject: string;
116
+ provider: AutomationProvider;
117
+ type: AutomationType;
118
+ config: Partial<AutomationProviderConfig> & Partial<AutomationOptionsConfig>;
119
+ notifyDays: string;
120
+ notifyTime: string;
121
+ timezone: string;
122
+ isPaused: boolean;
123
+ };
@@ -1,44 +1,60 @@
1
1
  import type { AxiosError, AxiosInstance, AxiosRequestConfig, AxiosResponse, CancelTokenSource, CancelTokenStatic } from "axios";
2
- export type TimedRequest<T> = Promise<AxiosResponse<T> & {
3
- duration: number;
4
- error?: AxiosError;
5
- }>;
2
+ import { Swr } from "@evercam/api/api/client/swr/Swr";
6
3
  export type AxiosEnvironment = {
7
- isStaging?: boolean;
8
4
  baseUrl?: string | null;
9
5
  stagingAiApiUrl?: string | null;
10
6
  aiApiUrl?: string | null;
11
- ingestApiUrl?: string | null;
7
+ ingestDroneApi?: string | null;
8
+ ingest360Api?: string | null;
9
+ ingestGpuApiUrl?: string | null;
12
10
  posthogApiUrl?: string | null;
13
11
  posthogProjectId?: string | null;
14
- posthogPrivateApiKey?: string | null;
15
12
  firebaseVideowallUrl?: string | null;
16
13
  weatherApiBaseUrl?: string | null;
17
14
  evercamLabsUrl?: string | null;
15
+ isLabsStaging?: boolean;
16
+ workflowsApiUrl?: string | null;
18
17
  firebaseDbLink?: string | null;
18
+ firebaseStorageUrl?: string | null;
19
+ firebaseStorageToken?: string | null;
20
+ forgeTokenServerUrl?: string | null;
19
21
  snapshotsURL?: string | null;
20
22
  app?: string | null;
21
23
  getAuthToken?: () => string | null;
22
24
  errorLogger?: (error: AxiosError) => void;
25
+ swrKey?: string;
23
26
  };
24
27
  export type RequestInterceptor = (req: AxiosRequestConfig, env: AxiosEnvironment) => AxiosRequestConfig & any;
25
28
  export type ResponseInterceptor = (res: AxiosResponse, env: AxiosEnvironment) => AxiosResponse & any;
26
29
  export type ErrorInterceptor = (error: any, env: AxiosEnvironment) => any;
30
+ export type RequestManager = {
31
+ createToken: (key: string) => CancelTokenSource["token"];
32
+ cancelToken: (key: string) => void;
33
+ cancelAll: () => void;
34
+ };
27
35
  export interface ExtendedAxiosInstance extends AxiosInstance {
28
36
  CancelToken: CancelTokenStatic;
29
- isCancel: (value: AxiosResponse | AxiosError | never) => boolean;
37
+ isCancel: (value: AxiosResponse | AxiosError | unknown) => boolean;
30
38
  setToken: (token: string) => void;
31
39
  setHeader: (headerName: string, value: any) => void;
32
- generateCancelTokenSource: () => CancelTokenSource;
33
- addCancelToken: (token: CancelTokenSource) => void;
34
- resetCancelTokens: () => void;
35
- cancelRequests: () => void;
40
+ createRequestManager: () => RequestManager;
41
+ requestManager: RequestManager;
36
42
  env: AxiosEnvironment;
37
43
  addEnvironmentVariables: (vars: Record<string, any>) => void;
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, PaginationParams } from "@evercam/api/types";
2
2
  export declare enum BimModelType {
3
3
  Architectural = "Architectural",
4
4
  Structural = "Structural",
@@ -40,7 +40,7 @@ export type BimCompareExportRequestPayload = {
40
40
  cameraExid: string;
41
41
  snapshotDate: string;
42
42
  bimDate: string;
43
- embed: string;
43
+ embed?: string;
44
44
  compareExid: string;
45
45
  createAnimation: boolean;
46
46
  bimTransparency?: number;
@@ -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;
@@ -95,7 +101,7 @@ export type BIMLayerPostPayload = {
95
101
  layerType: BIMLayerTypes;
96
102
  startAt: DateType;
97
103
  shapes: string;
98
- zIndex: number;
104
+ zIndex?: number;
99
105
  };
100
106
  export type BIMLayer = {
101
107
  id: number;
@@ -131,9 +137,7 @@ export type ProcessPendingImagesBimParams = {
131
137
  apiId: string;
132
138
  apiKey: string;
133
139
  };
134
- export type BimUploadsQueryParams = {
135
- page: number;
136
- limit: number;
140
+ export type BimUploadsQueryParams = PaginationParams & {
137
141
  projectId: string;
138
142
  id: string;
139
143
  uploadedBy: string;
@@ -145,3 +149,28 @@ export type BimUploadPayload = {
145
149
  fileExtension: string;
146
150
  }[];
147
151
  };
152
+ export declare enum ForgeBimUploadMethod {
153
+ FileUpload = "file_upload",
154
+ AutodeskAcc = "autodesk_acc"
155
+ }
156
+ export declare enum ForgeBimFileRejectionReason {
157
+ InvalidType = "invalid_type",
158
+ ExceedsSizeLimit = "exceeds_size_limit"
159
+ }
160
+ export declare enum ForgeBimUploadStage {
161
+ TusUpload = "tus_upload",
162
+ IngestUpload = "ingest_upload"
163
+ }
164
+ export declare enum ForgeBimDialogTrigger {
165
+ UpdateModel = "update_model",
166
+ AddModel = "add_model",
167
+ InitialSetup = "initial_setup"
168
+ }
169
+ export type BimUpdatedWebhookPayload = {
170
+ eventName: "bim.updated";
171
+ projectId: string;
172
+ data: {
173
+ updatedAt: string;
174
+ bimIdentifier: string;
175
+ };
176
+ };