@evercam/api 1.0.0-003291add

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 (104) hide show
  1. package/README.md +6 -0
  2. package/dist/api/api/3dFirebaseApi.d.ts +183 -0
  3. package/dist/api/api/adminApi.d.ts +377 -0
  4. package/dist/api/api/aiApi.d.ts +128 -0
  5. package/dist/api/api/authzApi.d.ts +37 -0
  6. package/dist/api/api/client/axios.d.ts +14 -0
  7. package/dist/api/api/client/customErrors.d.ts +90 -0
  8. package/dist/api/api/client/index.d.ts +5 -0
  9. package/dist/api/api/client/interceptors.d.ts +10 -0
  10. package/dist/api/api/client/swr/Swr.d.ts +14 -0
  11. package/dist/api/api/client/swr/SwrStore.d.ts +10 -0
  12. package/dist/api/api/evercamApi.d.ts +337 -0
  13. package/dist/api/api/evercamLabsApi.d.ts +45 -0
  14. package/dist/api/api/exNvrApi.d.ts +43 -0
  15. package/dist/api/api/index.d.ts +13 -0
  16. package/dist/api/api/ingestApi.d.ts +148 -0
  17. package/dist/api/api/ptzApi.d.ts +45 -0
  18. package/dist/api/api/videoWallApi.d.ts +9 -0
  19. package/dist/api/api/weatherApi.d.ts +9 -0
  20. package/dist/api/api/webRtcApi.d.ts +22 -0
  21. package/dist/api/index.d.ts +3 -0
  22. package/dist/api/types/360.d.ts +281 -0
  23. package/dist/api/types/aconex.d.ts +143 -0
  24. package/dist/api/types/admin.d.ts +51 -0
  25. package/dist/api/types/analytics.d.ts +597 -0
  26. package/dist/api/types/anpr.d.ts +114 -0
  27. package/dist/api/types/auditLogs.d.ts +99 -0
  28. package/dist/api/types/authz.d.ts +61 -0
  29. package/dist/api/types/autodesk.d.ts +29 -0
  30. package/dist/api/types/automation.d.ts +95 -0
  31. package/dist/api/types/axios.d.ts +71 -0
  32. package/dist/api/types/bim.d.ts +153 -0
  33. package/dist/api/types/camera.d.ts +535 -0
  34. package/dist/api/types/comments.d.ts +55 -0
  35. package/dist/api/types/company.d.ts +115 -0
  36. package/dist/api/types/compare.d.ts +72 -0
  37. package/dist/api/types/connector.d.ts +19 -0
  38. package/dist/api/types/coolify.d.ts +36 -0
  39. package/dist/api/types/copilot.d.ts +162 -0
  40. package/dist/api/types/countries.d.ts +500 -0
  41. package/dist/api/types/credentials.d.ts +6 -0
  42. package/dist/api/types/detections.d.ts +124 -0
  43. package/dist/api/types/drone.d.ts +106 -0
  44. package/dist/api/types/errors.d.ts +49 -0
  45. package/dist/api/types/gateReport.d.ts +332 -0
  46. package/dist/api/types/hdd.d.ts +88 -0
  47. package/dist/api/types/index.d.ts +65 -0
  48. package/dist/api/types/ingest.d.ts +147 -0
  49. package/dist/api/types/kit.d.ts +383 -0
  50. package/dist/api/types/map.d.ts +16 -0
  51. package/dist/api/types/media.d.ts +115 -0
  52. package/dist/api/types/notification.d.ts +57 -0
  53. package/dist/api/types/nvr.d.ts +36 -0
  54. package/dist/api/types/oauth.d.ts +62 -0
  55. package/dist/api/types/planner.d.ts +133 -0
  56. package/dist/api/types/posthog.d.ts +33 -0
  57. package/dist/api/types/procore.d.ts +229 -0
  58. package/dist/api/types/progressPhoto.d.ts +78 -0
  59. package/dist/api/types/project.d.ts +247 -0
  60. package/dist/api/types/recording.d.ts +125 -0
  61. package/dist/api/types/recycleBin.d.ts +14 -0
  62. package/dist/api/types/ring.d.ts +53 -0
  63. package/dist/api/types/roi.d.ts +27 -0
  64. package/dist/api/types/routeParams.d.ts +52 -0
  65. package/dist/api/types/router.d.ts +86 -0
  66. package/dist/api/types/shared.d.ts +219 -0
  67. package/dist/api/types/shares.d.ts +58 -0
  68. package/dist/api/types/sim.d.ts +114 -0
  69. package/dist/api/types/siteAnalytics.d.ts +287 -0
  70. package/dist/api/types/siteView.d.ts +74 -0
  71. package/dist/api/types/smartSeach.d.ts +5 -0
  72. package/dist/api/types/snapshots.d.ts +91 -0
  73. package/dist/api/types/sso.d.ts +55 -0
  74. package/dist/api/types/storageProvider.d.ts +19 -0
  75. package/dist/api/types/storyblok.d.ts +40 -0
  76. package/dist/api/types/streaming.d.ts +97 -0
  77. package/dist/api/types/systemCheck.d.ts +11 -0
  78. package/dist/api/types/tag.d.ts +12 -0
  79. package/dist/api/types/time.d.ts +7 -0
  80. package/dist/api/types/timelapse.d.ts +106 -0
  81. package/dist/api/types/user.d.ts +345 -0
  82. package/dist/api/types/vendorModel.d.ts +15 -0
  83. package/dist/api/types/videoWall.d.ts +66 -0
  84. package/dist/api/types/voyageControl.d.ts +6 -0
  85. package/dist/api/types/weather.d.ts +153 -0
  86. package/dist/api/types/widget.d.ts +252 -0
  87. package/dist/api/types/xweather.d.ts +12 -0
  88. package/dist/api/utils.d.ts +10 -0
  89. package/dist/index.d.ts +2 -0
  90. package/dist/index.js +3707 -0
  91. package/dist/index.js.map +1 -0
  92. package/dist/index.umd.cjs +2 -0
  93. package/dist/index.umd.cjs.map +1 -0
  94. package/dist/shared/api/index.d.ts +3 -0
  95. package/dist/shared/components/timelinePlayer/providers/index.d.ts +3 -0
  96. package/dist/shared/components/timelinePlayer/providers/timelineAnprProvider.d.ts +17 -0
  97. package/dist/shared/components/timelinePlayer/providers/timelineDataProvider.d.ts +13 -0
  98. package/dist/shared/components/timelinePlayer/providers/timelineLuminanceProvider.d.ts +16 -0
  99. package/dist/shared/types/components.d.ts +301 -0
  100. package/dist/shared/types/imagePlayer.d.ts +34 -0
  101. package/dist/shared/types/index.d.ts +5 -0
  102. package/dist/shared/types/rbac.d.ts +67 -0
  103. package/dist/shared/types/timeline.d.ts +10 -0
  104. package/package.json +50 -0
@@ -0,0 +1,45 @@
1
+ import { CameraExid, CopilotConversation, CopilotMessage, CopilotMessageStep, FeedbackPayload, GrafanaKitMetrics, LabsPaginationParams, LuminanceReading, PaginatedItems, ActiveUsersResponsePayload, ActiveUsersRequestPayload, HeatmapIntersectionsRequestParams, SmartSearchHeatmapPoint, SiteAnalyticsProcessingStatusPayload, SiteAnalyticsProcessingStatus } from "@evercam/api/types";
2
+ import { GrafanaMetricId, KitMetricPeriod } from "@evercam/api/types";
3
+ import type { SwrRequestConfig } from "@evercam/api/types";
4
+ export declare function getLabsBaseUrl(): string | null | undefined;
5
+ export declare const EvercamLabsApi: {
6
+ posthog: {
7
+ getEvents(params: any): Promise<PaginatedItems<any>>;
8
+ getUsers(params: any): Promise<any>;
9
+ getActiveUsers(params: ActiveUsersRequestPayload): Promise<ActiveUsersResponsePayload>;
10
+ };
11
+ copilot: {
12
+ getAllConversations(params: LabsPaginationParams & {
13
+ cameraExid?: string;
14
+ projectExid?: string;
15
+ user?: string;
16
+ }): Promise<PaginatedItems<CopilotConversation>>;
17
+ getOneConversation(conversationId: number): Promise<PaginatedItems<CopilotConversation>>;
18
+ getConversationMessages(conversationId: number, params: LabsPaginationParams): Promise<PaginatedItems<CopilotMessage>>;
19
+ getMessageSteps(message: CopilotMessage): Promise<CopilotMessageStep[]>;
20
+ submitMessageFeedback({ conversationId, messageId, ...params }: FeedbackPayload): Promise<import("axios").AxiosResponse<any, any>>;
21
+ };
22
+ siteAnalytics: {
23
+ getProcessingStatus(params?: SiteAnalyticsProcessingStatusPayload, config?: SwrRequestConfig<SiteAnalyticsProcessingStatus[]>): Promise<SiteAnalyticsProcessingStatus[]>;
24
+ getIntersectionsHeatmapData(params: HeatmapIntersectionsRequestParams): Promise<SmartSearchHeatmapPoint[]>;
25
+ };
26
+ googleCloudStorage: {
27
+ listFiles(prefix?: string): Promise<{
28
+ files: string[];
29
+ folders: string[];
30
+ }>;
31
+ getSignedUrl(fileName: string): Promise<{
32
+ url: string;
33
+ }>;
34
+ };
35
+ luminance: {
36
+ getReadings(params: {
37
+ cameraExid: CameraExid;
38
+ fromDate: string;
39
+ toDate: string;
40
+ }): Promise<LuminanceReading[]>;
41
+ };
42
+ kits: {
43
+ getMetrics(kitId: string, metrics: GrafanaMetricId[], period?: KitMetricPeriod): Promise<GrafanaKitMetrics>;
44
+ };
45
+ };
@@ -0,0 +1,43 @@
1
+ import { ExNvrDeviceConfig, ExNvrLoginResponse, ExNvrRecordingInterval, ExNvrSystemStatus } from "@evercam/api/types";
2
+ export declare const ExNvrApi: {
3
+ users: {
4
+ login({ apiUrl, username, password, }: {
5
+ apiUrl: string;
6
+ username: string;
7
+ password: string;
8
+ }, config?: {
9
+ timing?: boolean;
10
+ }): Promise<ExNvrLoginResponse>;
11
+ };
12
+ devices: {
13
+ getDevices({ apiUrl, token, }: {
14
+ apiUrl: string;
15
+ token: string;
16
+ }): Promise<ExNvrDeviceConfig>;
17
+ getSystemStatus({ apiUrl, token }: {
18
+ apiUrl: string;
19
+ token: string;
20
+ }, config?: Record<string, string>): Promise<ExNvrSystemStatus>;
21
+ getDeviceConfig({ apiUrl, deviceId, token, }: {
22
+ apiUrl: string;
23
+ deviceId: string;
24
+ token: string;
25
+ }, config?: {
26
+ timing?: boolean;
27
+ }): Promise<ExNvrDeviceConfig>;
28
+ getAvailableRecordings({ apiUrl, deviceId, token, }: {
29
+ apiUrl: string;
30
+ deviceId: string;
31
+ token: string;
32
+ }, config?: {
33
+ timing?: boolean;
34
+ }): Promise<ExNvrRecordingInterval[]>;
35
+ downloadFootage({ apiUrl, deviceId, token, startDate, duration, }: {
36
+ apiUrl: string;
37
+ deviceId: string;
38
+ token: string;
39
+ startDate: string;
40
+ duration: number;
41
+ }): Promise<Blob>;
42
+ };
43
+ };
@@ -0,0 +1,13 @@
1
+ export * from "./client";
2
+ export * from "./adminApi";
3
+ export * from "./videoWallApi";
4
+ export * from "./3dFirebaseApi";
5
+ export * from "./aiApi";
6
+ export * from "./webRtcApi";
7
+ export * from "./weatherApi";
8
+ export * from "./evercamLabsApi";
9
+ export * from "./evercamApi";
10
+ export * from "./ptzApi";
11
+ export * from "./ingestApi";
12
+ export * from "./exNvrApi";
13
+ export * from "./authzApi";
@@ -0,0 +1,148 @@
1
+ import type { AxiosRequestConfig } from "axios";
2
+ import type { SwrRequestConfig } from "@evercam/api/types";
3
+ import type { _360AssetsQueryParams, _360AssetsRequestPayload, _360QueueQueryParams, _360AssetsUploadPayload, _360AssetsResponse, _360AssetsCountsResponse, _360QueueResponse, _360FloorsResponse, DroneQueueResponse, DroneUploadsResponse, IngestUploadInitResponse, BimUploadsResponse, MobileAssetsQueryParams, MobileCaptureAssetsResponse, BimUploadPayload, BimUploadsQueryParams, CalculateMeasuringOperationRequestPayload, DrawingsRequestPayload, DronesQueryParams, DroneUploadUpdateRequestPayload, FlightImagesQueryParams, Generate360MapRequestPayload, GenerateFloorPayload, InspectionToolRequestPayload, JsonObject, _360WalkV2, _360FloorV2 } from "@evercam/api/types";
4
+ import { IngestVersions, IngestTypes } from "@evercam/api/types";
5
+ export declare const getIngestApiUrls: (type: string) => string[];
6
+ export declare const IngestApi: {
7
+ drone: {
8
+ createUpload(projectId: string, params: {
9
+ uploadedBy: string;
10
+ }): Promise<IngestUploadInitResponse>;
11
+ reprocessDrone(id: number, params?: JsonObject): Promise<void>;
12
+ getDrones(params: {
13
+ params: Partial<DronesQueryParams>;
14
+ }): Promise<DroneUploadsResponse>;
15
+ getArchive(id: number, params: {
16
+ dataType: string;
17
+ }): Promise<Blob>;
18
+ deleteUpload(id: number): Promise<void>;
19
+ prepareForUpload(projectId: string, params: {
20
+ uploadedBy: string;
21
+ token: string;
22
+ }): Promise<void>;
23
+ upload(projectId: string, params: {
24
+ uploadedBy: string;
25
+ token: string;
26
+ }, payload: DroneUploadUpdateRequestPayload): Promise<void>;
27
+ verifyToken(projectId: string, params: {
28
+ token: string;
29
+ }): Promise<JsonObject>;
30
+ calculateMeasuringOperation(projectId: string, params: CalculateMeasuringOperationRequestPayload): Promise<JsonObject>;
31
+ inspectionTool(projectId: string, params: InspectionToolRequestPayload): Promise<JsonObject>;
32
+ isInspectionEnabled(projectId: string, params?: JsonObject): Promise<JsonObject>;
33
+ getDroneQueueSize(droneUrl: string): Promise<DroneQueueResponse>;
34
+ getFlightImages(projectId: string, params: FlightImagesQueryParams): Promise<JsonObject>;
35
+ checkFlightAvailableFeatures(projectId: string, params: JsonObject): Promise<JsonObject>;
36
+ };
37
+ assets360: {
38
+ get360Assets(params: {
39
+ params: Partial<_360AssetsQueryParams>;
40
+ }): Promise<_360AssetsResponse>;
41
+ get360AssetsCounts(projectId: string, params: {
42
+ uploadedBy: string;
43
+ }): Promise<_360AssetsCountsResponse>;
44
+ get360AssetLink(projectId: string, date: string, floor: string, assetType: string, drawingId: string, marker: string | null): Promise<string>;
45
+ update360(id: number, payload: _360AssetsRequestPayload): Promise<_360WalkV2>;
46
+ update360ByProjectDateName(projectId: string, date: string, floor: string, payload: _360AssetsRequestPayload): Promise<_360WalkV2>;
47
+ deleteUpload(id: number): Promise<void>;
48
+ getArchive(id: number, params: {
49
+ dateType: string;
50
+ }): Promise<Blob>;
51
+ createUpload(projectId: string, params: _360AssetsRequestPayload): Promise<IngestUploadInitResponse>;
52
+ upload(id: number, params: JsonObject, payload: _360AssetsUploadPayload): Promise<_360WalkV2>;
53
+ reprocess360(id: number): Promise<void>;
54
+ drawingExists(payload: {
55
+ params: {
56
+ name: string;
57
+ project_id: string;
58
+ };
59
+ }): Promise<JsonObject>;
60
+ getDrawings(payload: {
61
+ params: DrawingsRequestPayload;
62
+ config?: SwrRequestConfig<_360FloorsResponse>;
63
+ }): Promise<_360FloorsResponse>;
64
+ getDrawingById(id: number, projectExid: string): Promise<_360FloorV2>;
65
+ updateDrawing(id: number, projectExid: string, payload: GenerateFloorPayload): Promise<_360FloorV2>;
66
+ deleteDrawing(id: number): Promise<void>;
67
+ transferWalks(sourceId: number, targetId: number, projectExid: string): Promise<void>;
68
+ createDrawing(projectExid: string, payload: GenerateFloorPayload, createdBy: string): Promise<_360FloorV2>;
69
+ fetchDrawingOverlay(id: number, params: {
70
+ view: boolean;
71
+ }, onDownloadProgress: (progress: ProgressEvent) => void): Promise<Blob>;
72
+ getFloorArchive(id: number): Promise<string>;
73
+ generate360map(projectId: string, params: Generate360MapRequestPayload): Promise<JsonObject>;
74
+ get360QueueSize(ingestUrl: string, params?: _360QueueQueryParams): Promise<_360QueueResponse>;
75
+ };
76
+ bim: {
77
+ createUpload(projectId: string, params: {
78
+ uploadedBy: string;
79
+ }): Promise<IngestUploadInitResponse>;
80
+ getBIMs(params: {
81
+ params: Partial<BimUploadsQueryParams>;
82
+ }): Promise<BimUploadsResponse>;
83
+ getArchive(id: number): Promise<Blob>;
84
+ deleteUpload(id: number): Promise<void>;
85
+ upload(projectId: string, params: {
86
+ id: string;
87
+ name: string;
88
+ }, payload: BimUploadPayload): Promise<void>;
89
+ };
90
+ mobileCapture: {
91
+ getProjectMobileAssets(params: MobileAssetsQueryParams, extraConfig?: AxiosRequestConfig): Promise<MobileCaptureAssetsResponse>;
92
+ getMobileAssetPhoto(assetId: string | number, params: {
93
+ projectId?: string;
94
+ project_id?: string;
95
+ isThumbnail?: boolean;
96
+ is_thumbnail?: boolean;
97
+ }): Promise<string>;
98
+ deleteAsset(assetId: string | number): Promise<void>;
99
+ };
100
+ utils: {
101
+ loadAllAssetsInQueue(): Promise<({
102
+ ingestVersion: string;
103
+ id: number;
104
+ projectId: string;
105
+ consumed: boolean;
106
+ token: string;
107
+ flightDate: string;
108
+ flightGeolocation: string;
109
+ modelZip: string;
110
+ orthomosaicZip: string;
111
+ reportPdf: string;
112
+ uploadedBy: string;
113
+ processingStatus: import("@evercam/api/types").IngestProcessingStatus | string;
114
+ modelCesiumAssetId: string;
115
+ updatedAt: string;
116
+ hasTusLinks: boolean;
117
+ } | {
118
+ ingestVersion: string;
119
+ archive: string;
120
+ date: string;
121
+ deviceSerial: string | null;
122
+ endPosition: unknown | null;
123
+ floor: string;
124
+ floorId: number;
125
+ id: number;
126
+ images: string[];
127
+ insertedAt: string;
128
+ mobileAudios: string[];
129
+ mobileAudiosArchive: string;
130
+ mobilePhotos: string[];
131
+ mobilePhotosArchive: string;
132
+ model: string;
133
+ name: string;
134
+ processingStatus: string;
135
+ projectId: string;
136
+ report: string;
137
+ route: unknown | null;
138
+ startPosition: unknown | null;
139
+ tusLinks: unknown | null;
140
+ updatedAt: string;
141
+ uploadedBy: string;
142
+ videoArchive: string;
143
+ videos: string[];
144
+ })[]>;
145
+ getIngestVersion(ingestUrl: string): IngestVersions;
146
+ chooseIngestApiUrl(type: IngestTypes): Promise<string>;
147
+ };
148
+ };
@@ -0,0 +1,45 @@
1
+ import { MoveParams, ZoomParams } from "@evercam/api/types";
2
+ export declare const PtzApi: {
3
+ presets: {
4
+ index({ cameraExid, }: {
5
+ cameraExid: string;
6
+ }): Promise<{
7
+ presets: Array<{
8
+ name: string;
9
+ token: string;
10
+ }>;
11
+ }>;
12
+ go({ cameraExid, presetId, }: {
13
+ cameraExid: string;
14
+ presetId: string | number;
15
+ }): Promise<import("axios").AxiosResponse<any, any>>;
16
+ home({ cameraExid, isRecordingFromNvr, }: {
17
+ cameraExid: string;
18
+ isRecordingFromNvr: boolean;
19
+ }): Promise<import("axios").AxiosResponse<any, any>>;
20
+ create({ cameraExid, presetName, }: {
21
+ cameraExid: string;
22
+ presetName: string;
23
+ }): Promise<import("axios").AxiosResponse<any, any>>;
24
+ update({ cameraExid, presetId, presetName, }: {
25
+ cameraExid: string;
26
+ presetId: string | number;
27
+ presetName: string;
28
+ }): Promise<import("axios").AxiosResponse<any, any>>;
29
+ updateHome({ cameraExid, presetName, }: {
30
+ cameraExid: string;
31
+ presetName: string;
32
+ }): Promise<import("axios").AxiosResponse<any, any>>;
33
+ delete({ cameraExid, presetId, }: {
34
+ cameraExid: string;
35
+ presetId: string | number;
36
+ }): Promise<import("axios").AxiosResponse<any, any>>;
37
+ };
38
+ controls: {
39
+ move({ cameraExid, direction, useContinuous }: MoveParams): Promise<import("axios").AxiosResponse<any, any>>;
40
+ zoom({ cameraExid, direction, isRecordingFromNvr }: ZoomParams): Promise<import("axios").AxiosResponse<any, any>>;
41
+ stop({ cameraExid }: {
42
+ cameraExid: string;
43
+ }): Promise<import("axios").AxiosResponse<any, any>>;
44
+ };
45
+ };
@@ -0,0 +1,9 @@
1
+ import { type PaginatedItems } from "@evercam/shared/types";
2
+ import { VideoWall, VideoWallListParams, VideoWallCreateUpdatePayload } from "@evercam/api/types/videoWall";
3
+ export declare const VideoWallApi: {
4
+ list(params?: VideoWallListParams): Promise<import("axios").AxiosResponse<PaginatedItems<VideoWall>, any>>;
5
+ create(body: VideoWallCreateUpdatePayload): Promise<import("axios").AxiosResponse<VideoWall, any>>;
6
+ get(exid: string | number): Promise<import("axios").AxiosResponse<VideoWall, any>>;
7
+ update(exid: string | number, body: Partial<VideoWallCreateUpdatePayload>): Promise<import("axios").AxiosResponse<VideoWall, any>>;
8
+ delete(exid: string | number): Promise<import("axios").AxiosResponse<any, any>>;
9
+ };
@@ -0,0 +1,9 @@
1
+ import { CurrentWeatherRequestPayload, HistoryWeatherRequestPayload, WeatherDataResponse, WeatherReportRequestPayload, WeatherResponsePayload } from "@evercam/api/types";
2
+ import { AxiosRequestConfig } from "axios";
3
+ export declare const WeatherApi: {
4
+ current(projectExid: string, payload: CurrentWeatherRequestPayload): Promise<WeatherResponsePayload> | undefined;
5
+ historical(projectExid: string, payload: HistoryWeatherRequestPayload): Promise<WeatherResponsePayload> | undefined;
6
+ report(projectExid: string, payload: WeatherReportRequestPayload, config?: AxiosRequestConfig): Promise<{
7
+ data: WeatherDataResponse[];
8
+ }> | undefined;
9
+ };
@@ -0,0 +1,22 @@
1
+ export declare const WebRtcApi: {
2
+ webRtc: {
3
+ requestIceServers({ url, token }: {
4
+ url: string;
5
+ token: string;
6
+ }): import("axios").AxiosPromise<any>;
7
+ sendLocalOffer({ url, token, data, }: {
8
+ url: string;
9
+ token: string;
10
+ data: {
11
+ sdp: string;
12
+ type: string;
13
+ };
14
+ }): import("axios").AxiosPromise<any>;
15
+ sendLocalCandidates({ url, token, data, tag, }: {
16
+ url: string;
17
+ token: string;
18
+ data: Record<string, unknown>;
19
+ tag: string;
20
+ }): import("axios").AxiosPromise<any>;
21
+ };
22
+ };
@@ -0,0 +1,3 @@
1
+ export * from "./api";
2
+ export * from "./types";
3
+ export * from "./utils";
@@ -0,0 +1,281 @@
1
+ import { DateType } from "@evercam/api/types/time";
2
+ import { GeoPoint, Point3D } from "@evercam/api/types/shared";
3
+ export type _360OverlayPosition = {
4
+ northEast: GeoPoint;
5
+ northWest: GeoPoint;
6
+ southEast: GeoPoint;
7
+ southWest: GeoPoint;
8
+ };
9
+ export type ForgeViewport = {
10
+ name: string;
11
+ eye: number[];
12
+ target: number[];
13
+ worldUpVector?: number[];
14
+ };
15
+ export type ForgeView = {
16
+ name: string;
17
+ viewport: ForgeViewport;
18
+ timestamp: string;
19
+ };
20
+ export type _360CameraRotation = {
21
+ azimuthAngle: number;
22
+ polarAngle: number;
23
+ };
24
+ export type _360Geolocation = {
25
+ latitude: number;
26
+ longitude: number;
27
+ };
28
+ export type _360Marker3D = {
29
+ cameraPosition: Point3D;
30
+ geolocation: _360Geolocation;
31
+ nextRoomId: _360MakerId;
32
+ position: Point3D;
33
+ rotation: {
34
+ _order: "XYZ" | string;
35
+ _x: number;
36
+ _y: number;
37
+ _z: number;
38
+ isEuler: boolean;
39
+ };
40
+ };
41
+ export type _360Tag = {
42
+ id: string;
43
+ tagType: string;
44
+ comment: string;
45
+ creationDate: number;
46
+ currentRoom: _360MakerId;
47
+ position: Point3D;
48
+ cameraRotation: _360CameraRotation;
49
+ };
50
+ export type _360FloorId = string | number;
51
+ export type _360Walk = Record<_360FloorId, _360Floor>;
52
+ export type _360MakerId = string;
53
+ export type _360Floor = {
54
+ _3DMarkers: _360Marker3D[];
55
+ cameraRotation: _360CameraRotation;
56
+ fbxModel: string;
57
+ fbxModelHQ?: string;
58
+ pointCloudModelHQ?: string;
59
+ initialMarker: _360MakerId;
60
+ modelViewerFeatureFlag: boolean;
61
+ imagesOnlyFeatureFlag?: boolean;
62
+ forgeBIMFeatureFlag?: boolean;
63
+ isForgeGravityEnabled?: boolean;
64
+ initialForgeView?: ForgeView | null;
65
+ enhancedLightFeatureFlag?: boolean;
66
+ calibrationDetails?: Record<string, unknown>;
67
+ route: {
68
+ cameraHeadingOffset: string;
69
+ overlayID: number;
70
+ track: string;
71
+ };
72
+ sceneScale: number;
73
+ steps: number;
74
+ tags?: Record<string, _360Tag>;
75
+ };
76
+ export type _360WalkV2 = {
77
+ archive: string;
78
+ date: string;
79
+ deviceSerial: string | null;
80
+ endPosition: unknown | null;
81
+ floor: string;
82
+ floorId: number;
83
+ id: number;
84
+ images: string[];
85
+ insertedAt: string;
86
+ mobileAudios: string[];
87
+ mobileAudiosArchive: string;
88
+ mobilePhotos: string[];
89
+ mobilePhotosArchive: string;
90
+ model: string;
91
+ name: string;
92
+ processingStatus: string;
93
+ projectId: string;
94
+ report: string;
95
+ route: unknown | null;
96
+ startPosition: unknown | null;
97
+ tusLinks: unknown | null;
98
+ updatedAt: string;
99
+ uploadedBy: string;
100
+ videoArchive: string;
101
+ videos: string[];
102
+ };
103
+ export type _360FloorV2 = {
104
+ id: _360FloorId;
105
+ assets: _360WalkV2[];
106
+ projectId: string;
107
+ name: string;
108
+ mapStyle: string;
109
+ hasOverlay: boolean;
110
+ isCalibrated: boolean;
111
+ createdBy: string | null;
112
+ overlayPosition: _360OverlayPosition;
113
+ insertedAt: string;
114
+ updatedAt: string;
115
+ };
116
+ export type _360Scene = {
117
+ date: string;
118
+ dateID: number;
119
+ floors: {
120
+ floorID: _360FloorId;
121
+ name: string;
122
+ }[];
123
+ polarAngle: number;
124
+ azimuthAngle: number;
125
+ };
126
+ export declare enum _360PinType {
127
+ Default = "Default"
128
+ }
129
+ export type _360Pin = {
130
+ position: Point3D;
131
+ pinType: _360PinType;
132
+ pinId?: string;
133
+ cameraExid?: string;
134
+ name: string;
135
+ currentRoom?: _360MakerId;
136
+ cameraRotation?: _360CameraRotation;
137
+ };
138
+ export type _360SceneRoute = {
139
+ cameraHeadingOffset?: number;
140
+ overlayID?: number;
141
+ track?: string;
142
+ };
143
+ export type _360ProjectListItem = {
144
+ integrationType: string;
145
+ projectId: string;
146
+ projectName: string;
147
+ providerID: string;
148
+ providerPrefix: string;
149
+ providerSuffix: string;
150
+ timeline: string;
151
+ uniqueId: string;
152
+ };
153
+ export type _360FullProject = {
154
+ dates: _360SceneWithFloors[];
155
+ integrationType: string;
156
+ projectId: string;
157
+ projectName: string;
158
+ providerID: string;
159
+ providerPrefix: string;
160
+ providerSuffix: string;
161
+ timeline: string;
162
+ uniqueId: string;
163
+ };
164
+ export type _360FullFloor = _360Floor & {
165
+ id: _360FloorId;
166
+ name: string;
167
+ };
168
+ export type _360SceneWithFloors = _360Scene & {
169
+ floors: _360FullFloor[];
170
+ };
171
+ export type _360ProjectJsonResponse = {
172
+ dates: _360Scene[];
173
+ [key: string]: any;
174
+ };
175
+ export type MobileCaptureSnapshot = {
176
+ id: string | number;
177
+ projectId?: string;
178
+ uploadedBy: string;
179
+ updatedAt: string;
180
+ assetType: string;
181
+ thumbnailUrl: string;
182
+ };
183
+ export declare enum _360UrlParams {
184
+ DateId = "date_id",
185
+ Date = "date",
186
+ Floor = "floor",
187
+ Marker = "marker",
188
+ PolarAngle = "polarAngle",
189
+ AzimuthAngle = "azimuthAngle"
190
+ }
191
+ export declare enum _360AssetType {
192
+ Video = "video",
193
+ Image = "image",
194
+ Model = "model",
195
+ Route = "route",
196
+ MobilePhoto = "mobile_photos",
197
+ MobileAudio = "mobile_audios"
198
+ }
199
+ export declare enum _360AssetLabel {
200
+ Walks = "walks",
201
+ MobilePhotos = "mobilePhotos"
202
+ }
203
+ export declare enum _360Feature {
204
+ BIM = "BIM",
205
+ Minimap = "Minimap",
206
+ Minimodel = "Minimodel"
207
+ }
208
+ export declare enum _360IntergrationType {
209
+ Evercam = "Evercam",
210
+ Matterport = "Matterport",
211
+ OpenSpace = "Openspace",
212
+ HoloBuilder = "Holobuilder",
213
+ DroneDeploy = "Dronedeploy"
214
+ }
215
+ export declare enum PathMarkerColor {
216
+ Start = "#00e74c",
217
+ End = "#fd7567",
218
+ Default = "#2196F3"
219
+ }
220
+ export type _360AssetsQueryParams = {
221
+ page: number;
222
+ limit: number;
223
+ projectID: string;
224
+ date: DateType;
225
+ floor: string;
226
+ id: string;
227
+ };
228
+ export type _360AssetsRequestPayload = {
229
+ projectId: string;
230
+ date: DateType;
231
+ floor: string;
232
+ uploadedBy?: string;
233
+ };
234
+ export type DrawingsRequestPayload = {
235
+ projectId?: string;
236
+ name?: string;
237
+ changedBy?: string;
238
+ mapStyle?: string;
239
+ startDate?: string;
240
+ endDate?: string;
241
+ id?: number;
242
+ page?: number;
243
+ limit?: number;
244
+ paginate?: boolean;
245
+ withAsset?: boolean;
246
+ };
247
+ export type GenerateFloorPayload = {
248
+ overlay?: {
249
+ url: string;
250
+ title: string;
251
+ fileExtension: string;
252
+ };
253
+ changedBy: string;
254
+ name?: string;
255
+ mapStyle?: string;
256
+ overlayPositionCorners: _360OverlayPosition;
257
+ };
258
+ export type _360QueueQueryParams = {
259
+ projectId?: string;
260
+ };
261
+ export type _360AssetsUploadPayload = {
262
+ targetPointsCount: number;
263
+ assetType: string;
264
+ upload: {
265
+ url: string;
266
+ title: string;
267
+ fileExtension: string;
268
+ }[];
269
+ deviceSerial: string;
270
+ startPosition: string;
271
+ endPosition: string;
272
+ isTimelapse: boolean;
273
+ isImagesOnly: boolean;
274
+ };
275
+ export type Generate360MapRequestPayload = {
276
+ dateId: string;
277
+ floorId: string;
278
+ cameraOffset: string;
279
+ startPoint: string;
280
+ endPoint: string;
281
+ };