@evercam/api 1.0.0-ae46ef99c → 1.0.0-api-fixes-bdf31a1d5

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 (92) hide show
  1. package/README.md +4 -0
  2. package/dist/api/api/3dFirebaseApi.d.ts +170 -5
  3. package/dist/api/api/adminApi.d.ts +170 -99
  4. package/dist/api/api/aiApi.d.ts +99 -82
  5. package/dist/api/api/authzApi.d.ts +31 -15
  6. package/dist/api/api/client/axios.d.ts +2 -1
  7. package/dist/api/api/client/swr/Swr.d.ts +14 -0
  8. package/dist/api/api/client/swr/SwrStore.d.ts +10 -0
  9. package/dist/api/api/evercamApi.d.ts +158 -116
  10. package/dist/api/api/evercamLabsApi.d.ts +6 -4
  11. package/dist/api/api/exNvrApi.d.ts +1 -1
  12. package/dist/api/api/ingestApi.d.ts +119 -33
  13. package/dist/api/api/ptzApi.d.ts +12 -3
  14. package/dist/api/api/videoWallApi.d.ts +7 -7
  15. package/dist/api/api/weatherApi.d.ts +2 -2
  16. package/dist/api/types/360.d.ts +208 -7
  17. package/dist/api/types/aconex.d.ts +106 -7
  18. package/dist/api/types/admin.d.ts +67 -0
  19. package/dist/api/types/aiConfigs.d.ts +154 -0
  20. package/dist/api/types/analytics.d.ts +172 -41
  21. package/dist/api/types/anpr.d.ts +52 -13
  22. package/dist/api/types/auditLogs.d.ts +63 -38
  23. package/dist/api/types/authz.d.ts +61 -0
  24. package/dist/api/types/autodesk.d.ts +7 -7
  25. package/dist/api/types/automation.d.ts +86 -1
  26. package/dist/api/types/axios.d.ts +28 -7
  27. package/dist/api/types/bim.d.ts +77 -43
  28. package/dist/api/types/camera.d.ts +165 -135
  29. package/dist/api/types/comments.d.ts +43 -21
  30. package/dist/api/types/company.d.ts +91 -11
  31. package/dist/api/types/compare.d.ts +40 -21
  32. package/dist/api/types/connector.d.ts +4 -5
  33. package/dist/api/types/coolify.d.ts +20 -2
  34. package/dist/api/types/copilot.d.ts +11 -6
  35. package/dist/api/types/countries.d.ts +0 -7
  36. package/dist/api/types/credentials.d.ts +1 -0
  37. package/dist/api/types/detections.d.ts +23 -34
  38. package/dist/api/types/drone.d.ts +96 -6
  39. package/dist/api/types/errors.d.ts +12 -0
  40. package/dist/api/types/gateReport.d.ts +50 -158
  41. package/dist/api/types/gateReportManagement.d.ts +175 -0
  42. package/dist/api/types/hdd.d.ts +76 -17
  43. package/dist/api/types/index.d.ts +12 -1
  44. package/dist/api/types/ingest.d.ts +104 -3
  45. package/dist/api/types/kit.d.ts +71 -12
  46. package/dist/api/types/map.d.ts +12 -0
  47. package/dist/api/types/media.d.ts +21 -2
  48. package/dist/api/types/notification.d.ts +50 -14
  49. package/dist/api/types/nvr.d.ts +28 -0
  50. package/dist/api/types/oauth.d.ts +63 -0
  51. package/dist/api/types/planner.d.ts +101 -1
  52. package/dist/api/types/posthog.d.ts +15 -0
  53. package/dist/api/types/procore.d.ts +23 -16
  54. package/dist/api/types/progressPhoto.d.ts +30 -41
  55. package/dist/api/types/project.d.ts +182 -20
  56. package/dist/api/types/recording.d.ts +11 -14
  57. package/dist/api/types/recycleBin.d.ts +14 -0
  58. package/dist/api/types/ring.d.ts +53 -0
  59. package/dist/api/types/roi.d.ts +4 -3
  60. package/dist/api/types/routeParams.d.ts +2 -1
  61. package/dist/api/types/router.d.ts +43 -3
  62. package/dist/api/types/shared.d.ts +81 -53
  63. package/dist/api/types/shares.d.ts +6 -144
  64. package/dist/api/types/sim.d.ts +6 -9
  65. package/dist/api/types/siteAnalytics.d.ts +194 -48
  66. package/dist/api/types/siteView.d.ts +73 -0
  67. package/dist/api/types/smartSeach.d.ts +5 -0
  68. package/dist/api/types/snapshots.d.ts +108 -7
  69. package/dist/api/types/sso.d.ts +55 -0
  70. package/dist/api/types/storageProvider.d.ts +31 -0
  71. package/dist/api/types/storyblok.d.ts +40 -0
  72. package/dist/api/types/streaming.d.ts +4 -5
  73. package/dist/api/types/tag.d.ts +1 -1
  74. package/dist/api/types/time.d.ts +4 -18
  75. package/dist/api/types/timelapse.d.ts +46 -17
  76. package/dist/api/types/user.d.ts +174 -88
  77. package/dist/api/types/videoWall.d.ts +47 -14
  78. package/dist/api/types/weather.d.ts +151 -11
  79. package/dist/api/types/widget.d.ts +143 -54
  80. package/dist/api/types/xweather.d.ts +4 -4
  81. package/dist/index.js +2206 -1029
  82. package/dist/index.js.map +1 -1
  83. package/dist/index.umd.cjs +1 -1
  84. package/dist/index.umd.cjs.map +1 -1
  85. package/dist/shared/types/components.d.ts +163 -18
  86. package/dist/shared/types/customDataTableFilters.d.ts +10 -0
  87. package/dist/shared/types/imagePlayer.d.ts +10 -3
  88. package/dist/shared/types/index.d.ts +2 -0
  89. package/dist/shared/types/rbac.d.ts +67 -0
  90. package/dist/shared/types/timeline.d.ts +2 -1
  91. package/package.json +7 -4
  92. package/dist/api/types/storageServers.d.ts +0 -4
@@ -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",
@@ -33,30 +33,54 @@ export declare enum AuditLogActionType {
33
33
  BIM_NOTE = "bim_note",
34
34
  GATE_REPORT_NOTE = "gate_report_note"
35
35
  }
36
+ export declare enum AuditLogEntity {
37
+ Cameras = "cameras",
38
+ Projects = "projects",
39
+ Layers = "layers",
40
+ Routers = "routers",
41
+ Sims = "sims",
42
+ Hdds = "hdds",
43
+ Nvr = "nvr",
44
+ Archives = "archives",
45
+ Users = "users",
46
+ Rois = "rois",
47
+ Kits = "kits",
48
+ Roles = "roles",
49
+ Tags = "tags",
50
+ KitsTags = "kits_tags",
51
+ Oauth = "oauth",
52
+ StorageProviders = "storage_providers"
53
+ }
54
+ export type AuditLogUserDetails = {
55
+ agent?: string;
56
+ country?: string;
57
+ countryCode?: string;
58
+ ip?: string;
59
+ impersonatedBy?: string;
60
+ who?: string;
61
+ };
36
62
  export type AuditLog = {
37
63
  id: number;
38
64
  action: AuditLogActionType;
39
- details: Record<string, any>;
65
+ details: Record<string, unknown>;
40
66
  insertedAt: DateType;
41
67
  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
- };
68
+ userDetails: AuditLogUserDetails;
50
69
  who: string;
51
70
  };
52
71
  export type AuditLogsParams = PaginationParams & {
53
- routerId: number;
54
- cameraId: number;
55
- entity: string;
56
- byRouter: boolean;
57
- byCamera: boolean;
58
- byProject: boolean;
59
- action: string;
72
+ from?: string;
73
+ to?: string;
74
+ action?: string[];
75
+ entity?: string[];
76
+ userId?: number;
77
+ userEmail?: string;
78
+ cameraId?: number;
79
+ routerId?: number;
80
+ byCamera?: string;
81
+ byRouter?: string;
82
+ byProject?: string;
83
+ byIp?: string;
60
84
  };
61
85
  export type CameraLogsQueryParams = {
62
86
  historyDays: number;
@@ -65,35 +89,36 @@ export type CameraLogsQueryParams = {
65
89
  };
66
90
  export type CameraLogItem = {
67
91
  start: DateType;
68
- state: CameraStatus;
69
92
  end: DateType;
93
+ state: CameraStatus;
94
+ status?: string;
70
95
  };
71
96
  export type CameraLog = {
72
97
  data: CameraLogItem[];
73
98
  measure: string;
74
99
  };
75
100
  export type CameraAuditLog = {
76
- id: number;
77
- action: AuditLogActionType;
78
- details: {
79
- error_body?: string;
80
- exid: string;
81
- id: number;
82
- name: string;
83
- reason?: string;
84
- };
85
- insertedAt: DateType;
86
- entity: string;
87
- user_details: {
88
- ip: string;
89
- country: string;
90
- countryCode: string;
91
- agent: string;
92
- };
93
101
  who: string;
102
+ action: string;
103
+ userDetails: {
104
+ agent?: string;
105
+ country?: string;
106
+ countryCode?: string;
107
+ ip?: string;
108
+ }[];
109
+ details: Record<string, unknown>[];
110
+ entity: string;
111
+ insertedAt: DateType;
94
112
  };
95
113
  export type CameraAuditLogsQueryParams = PaginationParams & {
96
- from: string;
97
- to: string;
98
- action: AuditLogActionType[];
114
+ from?: string;
115
+ to?: string;
116
+ action?: string[];
117
+ entity?: string[];
118
+ userId?: number;
119
+ cameraId?: number;
120
+ routerId?: number;
121
+ byCamera?: string;
122
+ byRouter?: string;
123
+ byProject?: string;
99
124
  };
@@ -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;
@@ -1,3 +1,4 @@
1
+ import { AconexIdentifiers, CameraExid } from "@evercam/api/types";
1
2
  export declare enum AutomationProvider {
2
3
  Aconex = "aconex",
3
4
  Procore = "procore",
@@ -6,5 +7,89 @@ export declare enum AutomationProvider {
6
7
  }
7
8
  export declare enum AutomationType {
8
9
  Photo = "photo",
9
- Compare = "compare"
10
+ Compare = "compare",
11
+ GateReport = "gate_report"
10
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,38 +8,54 @@ 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;
11
13
  ingestGpuApiUrl?: string | null;
12
14
  posthogApiUrl?: string | null;
13
15
  posthogProjectId?: string | null;
14
- posthogPrivateApiKey?: string | null;
15
16
  firebaseVideowallUrl?: string | null;
16
17
  weatherApiBaseUrl?: string | null;
17
18
  evercamLabsUrl?: string | null;
18
19
  firebaseDbLink?: string | null;
20
+ firebaseStorageUrl?: string | null;
21
+ firebaseStorageToken?: string | null;
22
+ forgeTokenServerUrl?: string | null;
19
23
  snapshotsURL?: string | null;
20
24
  app?: string | null;
21
25
  getAuthToken?: () => string | null;
22
26
  errorLogger?: (error: AxiosError) => void;
27
+ swrKey?: string;
23
28
  };
24
29
  export type RequestInterceptor = (req: AxiosRequestConfig, env: AxiosEnvironment) => AxiosRequestConfig & any;
25
30
  export type ResponseInterceptor = (res: AxiosResponse, env: AxiosEnvironment) => AxiosResponse & any;
26
31
  export type ErrorInterceptor = (error: any, env: AxiosEnvironment) => any;
32
+ export type RequestManager = {
33
+ createToken: (key: string) => CancelTokenSource["token"];
34
+ cancelAll: () => void;
35
+ };
27
36
  export interface ExtendedAxiosInstance extends AxiosInstance {
28
37
  CancelToken: CancelTokenStatic;
29
- isCancel: (value: AxiosResponse | AxiosError | never) => boolean;
38
+ isCancel: (value: AxiosResponse | AxiosError | unknown) => boolean;
30
39
  setToken: (token: string) => void;
31
40
  setHeader: (headerName: string, value: any) => void;
32
- generateCancelTokenSource: () => CancelTokenSource;
33
- addCancelToken: (token: CancelTokenSource) => void;
34
- resetCancelTokens: () => void;
35
- cancelRequests: () => void;
41
+ createRequestManager: () => RequestManager;
42
+ requestManager: RequestManager;
36
43
  env: AxiosEnvironment;
37
44
  addEnvironmentVariables: (vars: Record<string, any>) => void;
38
45
  addRequestInterceptor: (interceptor: RequestInterceptor, errorInterceptor?: ErrorInterceptor) => void;
39
46
  addResponseInterceptor: (interceptor: ResponseInterceptor, errorInterceptor?: ErrorInterceptor) => void;
40
47
  addErrorInterceptor: (interceptor: ErrorInterceptor) => void;
48
+ swr: Swr;
41
49
  }
50
+ export type ResponseValue<T> = T | undefined;
51
+ export type SwrResponse<T> = {
52
+ cachedValue: ResponseValue<T>;
53
+ freshPromise: Promise<ResponseValue<T>>;
54
+ };
55
+ export type SwrRequestConfig<T> = Omit<AxiosRequestConfig, "onSwrHit" | "onSwrRefresh"> & {
56
+ onSwrHit?: (data: T) => unknown;
57
+ onSwrRefresh?: (data: T) => unknown;
58
+ };
42
59
  declare module "axios" {
43
60
  interface AxiosRequestConfig {
44
61
  raw?: boolean;
@@ -47,5 +64,9 @@ declare module "axios" {
47
64
  _metadata?: {
48
65
  startTime: number;
49
66
  };
67
+ swr?: boolean;
68
+ onSwrHit?: (data: any) => unknown;
69
+ onSwrRefresh?: (data: any) => unknown;
70
+ onSwrError?: (error: Error) => unknown;
50
71
  }
51
72
  }
@@ -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",
@@ -21,11 +21,12 @@ export type BimModelRequestPayload = {
21
21
  apiId?: string;
22
22
  };
23
23
  export type BimModelResponsePayload = {
24
- dates?: [string];
24
+ id?: number;
25
+ dates?: string[] | null;
25
26
  height?: number;
26
27
  imageUrl?: string;
27
28
  model?: string;
28
- models?: [string];
29
+ models?: string[];
29
30
  rotation?: number;
30
31
  scaleX?: number;
31
32
  scaleY?: number;
@@ -40,22 +41,23 @@ export type BimCompareExportRequestPayload = {
40
41
  cameraExid: string;
41
42
  snapshotDate: string;
42
43
  bimDate: string;
43
- embed: string;
44
- compareExid: string;
45
- createAnimation: boolean;
46
- bimTransparency?: number;
47
- model?: string;
48
- layerId?: number;
49
- maskId?: number;
44
+ embed?: string;
45
+ exid: string;
46
+ createAnimation?: boolean;
47
+ bimTransparency: number;
48
+ model: string;
49
+ layerId: number;
50
+ maskId: number;
50
51
  evercamWatermark?: boolean;
52
+ logo?: CompareLogoPosition;
51
53
  };
52
54
  export type BimLayerResponsePayload = {
53
55
  id: number;
54
56
  name: string;
55
- insertedAt: DateTime;
56
- updatedAt: DateTime;
57
+ insertedAt: string;
58
+ updatedAt: string;
57
59
  shapes: string;
58
- startAt: DateTime;
60
+ startAt: string;
59
61
  };
60
62
  export declare enum BimUploadStatus {
61
63
  Initial = 0,
@@ -65,71 +67,78 @@ export declare enum BimUploadStatus {
65
67
  }
66
68
  export type BimCreationPayload = {
67
69
  title: string;
68
- software: "synchro" | "navisworks" | "revit" | "tekla" | "archicad" | "solibri" | "bim360" | "other";
69
- model: string;
70
- apiKey: string;
71
- apiId: string;
72
- displayName: string;
73
70
  fileUrl: string;
74
- requestor: string;
75
- finalView: boolean;
76
- enableDistortion: boolean;
77
- startAt: string;
71
+ software?: "navisworks" | "synchro";
72
+ model?: string;
73
+ apiKey?: string;
74
+ apiId?: string;
75
+ displayName?: string;
76
+ requestor?: string;
77
+ finalView?: boolean;
78
+ enableDistortion?: boolean;
79
+ startAt?: string;
78
80
  };
79
81
  export declare enum BIMLayerTypes {
80
82
  Mask = "mask",
83
+ BimMask = "bim_mask",
81
84
  MeasuringGrid = "measuring_grid",
82
85
  BimArchitectural = "bim_architectural",
83
86
  BimStructural = "bim_structural",
84
87
  Bim4D = "bim_4d",
85
88
  BimMep = "bim_mep",
86
89
  RecordingsTag = "recordings_tag",
87
- Milestone = "milestone"
90
+ Milestone = "milestone",
91
+ ForgeBimArchitectural = "forge_bim_architectural",
92
+ ForgeBimStructural = "forge_bim_structural",
93
+ ForgeBim4D = "forge_bim_4d",
94
+ ForgeBimMep = "forge_bim_mep"
88
95
  }
89
96
  export type BimLayersQueryParams = {
90
- layerType: BIMLayerTypes;
91
- timestamp: DateType;
97
+ layerType?: BIMLayerTypes;
98
+ timestamp?: DateType;
92
99
  };
93
100
  export type BIMLayerPostPayload = {
94
- name: string;
95
- layerType: BIMLayerTypes;
96
- startAt: DateType;
97
101
  shapes: string;
98
- zIndex: number;
102
+ startAt: DateType;
103
+ name?: string;
104
+ displayName?: string;
105
+ layerType?: BIMLayerTypes;
106
+ zIndex?: number;
99
107
  };
100
108
  export type BIMLayer = {
101
109
  id: number;
102
110
  name: string;
103
111
  layerType: BIMLayerTypes;
112
+ displayName?: string | null;
104
113
  startAt: DateType;
105
114
  insertedAt: DateType;
106
115
  updatedAt: DateType;
107
116
  shapes: string;
108
117
  };
109
118
  export type BimPendingImage = {
110
- url: string;
111
- s3Url: string;
119
+ url?: string;
120
+ key?: string;
112
121
  };
113
122
  export type BimUploadCameraParameters = {
114
- distortionFov: [number];
115
- horizontalFov: number;
116
- verticalFov: number;
117
- focalLength1: number;
118
- focalLength2: number;
119
- centerX: number;
120
- centerY: number;
123
+ distortionCoeffs?: number[][];
124
+ horizontalFov?: number;
125
+ verticalFov?: number;
126
+ focalLength1?: number;
127
+ focalLength2?: number;
128
+ centerX?: number;
129
+ centerY?: number;
121
130
  };
122
131
  export type PendingBimImagesParams = {
123
132
  model: string;
124
- apiKey: string;
125
- apiId: string;
133
+ apiKey?: string;
134
+ apiId?: string;
126
135
  };
127
136
  export type ProcessPendingImagesBimParams = {
128
137
  model: string;
129
138
  names: string[];
130
- enableDistortion: boolean;
131
- apiId: string;
132
- apiKey: string;
139
+ enableDistortion?: boolean;
140
+ apiId?: string;
141
+ apiKey?: string;
133
142
  };
134
143
  export type BimUploadsQueryParams = {
135
144
  page: number;
@@ -145,3 +154,28 @@ export type BimUploadPayload = {
145
154
  fileExtension: string;
146
155
  }[];
147
156
  };
157
+ export declare enum ForgeBimUploadMethod {
158
+ FileUpload = "file_upload",
159
+ AutodeskAcc = "autodesk_acc"
160
+ }
161
+ export declare enum ForgeBimFileRejectionReason {
162
+ InvalidType = "invalid_type",
163
+ ExceedsSizeLimit = "exceeds_size_limit"
164
+ }
165
+ export declare enum ForgeBimUploadStage {
166
+ TusUpload = "tus_upload",
167
+ IngestUpload = "ingest_upload"
168
+ }
169
+ export declare enum ForgeBimDialogTrigger {
170
+ UpdateModel = "update_model",
171
+ AddModel = "add_model",
172
+ InitialSetup = "initial_setup"
173
+ }
174
+ export type BimUpdatedWebhookPayload = {
175
+ eventName: "bim.updated";
176
+ projectId: string;
177
+ data: {
178
+ updatedAt: string;
179
+ bimIdentifier: string;
180
+ };
181
+ };