@evercam/api 1.0.0-feccd27be → 1.0.0-fefe23b74

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 (39) hide show
  1. package/dist/api/api/3dFirebaseApi.d.ts +51 -17
  2. package/dist/api/api/adminApi.d.ts +5 -4
  3. package/dist/api/api/aiApi.d.ts +29 -2
  4. package/dist/api/api/authzApi.d.ts +4 -1
  5. package/dist/api/api/evercamApi.d.ts +17 -8
  6. package/dist/api/api/evercamLabsApi.d.ts +5 -5
  7. package/dist/api/api/ingestApi.d.ts +7 -0
  8. package/dist/api/types/360.d.ts +117 -3
  9. package/dist/api/types/analytics.d.ts +10 -1
  10. package/dist/api/types/authz.d.ts +46 -0
  11. package/dist/api/types/axios.d.ts +8 -4
  12. package/dist/api/types/bim.d.ts +9 -1
  13. package/dist/api/types/camera.d.ts +2 -1
  14. package/dist/api/types/comments.d.ts +2 -1
  15. package/dist/api/types/connector.d.ts +2 -0
  16. package/dist/api/types/detections.d.ts +1 -0
  17. package/dist/api/types/errors.d.ts +11 -0
  18. package/dist/api/types/gateReport.d.ts +1 -0
  19. package/dist/api/types/hammertech.d.ts +98 -0
  20. package/dist/api/types/index.d.ts +3 -0
  21. package/dist/api/types/ingest.d.ts +11 -0
  22. package/dist/api/types/kit.d.ts +38 -2
  23. package/dist/api/types/media.d.ts +8 -2
  24. package/dist/api/types/observations.d.ts +85 -0
  25. package/dist/api/types/posthog.d.ts +20 -0
  26. package/dist/api/types/recording.d.ts +3 -1
  27. package/dist/api/types/roi.d.ts +2 -1
  28. package/dist/api/types/siteAnalyticsManagement.d.ts +92 -0
  29. package/dist/api/types/siteView.d.ts +0 -1
  30. package/dist/api/types/user.d.ts +1 -3
  31. package/dist/index.js +925 -605
  32. package/dist/index.js.map +1 -1
  33. package/dist/index.umd.cjs +1 -1
  34. package/dist/index.umd.cjs.map +1 -1
  35. package/dist/shared/types/components.d.ts +53 -2
  36. package/dist/shared/types/customDataTableFilters.d.ts +10 -0
  37. package/dist/shared/types/index.d.ts +2 -0
  38. package/dist/shared/types/observations.d.ts +21 -0
  39. package/package.json +3 -1
@@ -16,6 +16,7 @@ export type AxiosEnvironment = {
16
16
  firebaseVideowallUrl?: string | null;
17
17
  weatherApiBaseUrl?: string | null;
18
18
  evercamLabsUrl?: string | null;
19
+ isLabsStaging?: boolean;
19
20
  firebaseDbLink?: string | null;
20
21
  firebaseStorageUrl?: string | null;
21
22
  firebaseStorageToken?: string | null;
@@ -29,15 +30,18 @@ export type AxiosEnvironment = {
29
30
  export type RequestInterceptor = (req: AxiosRequestConfig, env: AxiosEnvironment) => AxiosRequestConfig & any;
30
31
  export type ResponseInterceptor = (res: AxiosResponse, env: AxiosEnvironment) => AxiosResponse & any;
31
32
  export type ErrorInterceptor = (error: any, env: AxiosEnvironment) => any;
33
+ export type RequestManager = {
34
+ createToken: (key: string) => CancelTokenSource["token"];
35
+ cancelToken: (key: string) => void;
36
+ cancelAll: () => void;
37
+ };
32
38
  export interface ExtendedAxiosInstance extends AxiosInstance {
33
39
  CancelToken: CancelTokenStatic;
34
40
  isCancel: (value: AxiosResponse | AxiosError | unknown) => boolean;
35
41
  setToken: (token: string) => void;
36
42
  setHeader: (headerName: string, value: any) => void;
37
- generateCancelTokenSource: () => CancelTokenSource;
38
- addCancelToken: (token: CancelTokenSource) => void;
39
- resetCancelTokens: () => void;
40
- cancelRequests: () => void;
43
+ createRequestManager: () => RequestManager;
44
+ requestManager: RequestManager;
41
45
  env: AxiosEnvironment;
42
46
  addEnvironmentVariables: (vars: Record<string, any>) => void;
43
47
  addRequestInterceptor: (interceptor: RequestInterceptor, errorInterceptor?: ErrorInterceptor) => void;
@@ -101,7 +101,7 @@ export type BIMLayerPostPayload = {
101
101
  layerType: BIMLayerTypes;
102
102
  startAt: DateType;
103
103
  shapes: string;
104
- zIndex: number;
104
+ zIndex?: number;
105
105
  };
106
106
  export type BIMLayer = {
107
107
  id: number;
@@ -168,3 +168,11 @@ export declare enum ForgeBimDialogTrigger {
168
168
  AddModel = "add_model",
169
169
  InitialSetup = "initial_setup"
170
170
  }
171
+ export type BimUpdatedWebhookPayload = {
172
+ eventName: "bim.updated";
173
+ projectId: string;
174
+ data: {
175
+ updatedAt: string;
176
+ bimIdentifier: string;
177
+ };
178
+ };
@@ -1,4 +1,4 @@
1
- import { AuditLogActionType, DateType, EntityByExid, KitAlarm, NvrDeviceType, PaginationParams, PowerSchedule, PowerType, ProjectExid, ProjectFeatureFlag, Schedule, ScheduleLowercase } from "@evercam/api/types";
1
+ import { AuditLogActionType, DateType, EntityByExid, KitAlarm, NvrDeviceType, PaginationParams, PowerSchedule, PowerType, ProjectExid, ProjectFeatureFlag, Schedule, ScheduleLowercase, TimestampPositionCoordinates } from "@evercam/api/types";
2
2
  import { DateRangeFilter } from "@evercam/api/types/time";
3
3
  import { GeoPoint, TuplePoint2D } from "@evercam/api/types/shared";
4
4
  export type CameraExid = string;
@@ -80,6 +80,7 @@ export type Camera = {
80
80
  vendorName: string;
81
81
  isAccessRestricted?: boolean;
82
82
  kitAlarms?: KitAlarm[];
83
+ timestampPosition?: TimestampPositionCoordinates;
83
84
  };
84
85
  export type AdminCamera = {
85
86
  id: number;
@@ -48,9 +48,10 @@ export type CommentCreationRequestPayload = {
48
48
  toDate?: DateType;
49
49
  timestamp?: DateType;
50
50
  scope?: CommentsScope;
51
- projectExid: ProjectExid;
51
+ projectExid?: ProjectExid;
52
52
  cameraExid?: CameraExid;
53
53
  content: string;
54
+ label?: CommentsLabel;
54
55
  position2d?: TuplePoint2D;
55
56
  position3d?: [number, number, number];
56
57
  context?: Record<string, unknown>;
@@ -10,6 +10,8 @@ export declare enum Connector {
10
10
  AutodeskViewer = "autodesk_viewer",
11
11
  VoyageControl = "voyage_control",
12
12
  Ring = "ring",
13
+ Email = "email",
14
+ Hammertech = "hammertech",
13
15
  XWeather = "xweather"
14
16
  }
15
17
  export declare enum ProcoreType {
@@ -102,6 +102,7 @@ export declare enum PpeLabel {
102
102
  Helmet = "helmet",
103
103
  HighVisibilityVest = "high-visibility-vest",
104
104
  SafetyGlasses = "safety-glasses",
105
+ Gloves = "gloves",
105
106
  Person = "person",
106
107
  Man = "man",
107
108
  Woman = "woman"
@@ -46,4 +46,15 @@ type _EvercamApiError = {
46
46
  innerError?: _EvercamApiError;
47
47
  };
48
48
  export type EvercamApiError = AxiosError<_EvercamApiError>;
49
+ export type AppError = {
50
+ statusCode?: number;
51
+ message?: string;
52
+ redirect?: {
53
+ url?: string;
54
+ label?: string;
55
+ delay?: number;
56
+ };
57
+ withSupportMessage?: boolean;
58
+ isWidget?: boolean;
59
+ };
49
60
  export {};
@@ -249,6 +249,7 @@ export type AnprExportBaseParams = {
249
249
  toDate?: string;
250
250
  camerasExid?: CameraExid[];
251
251
  isPublic?: boolean;
252
+ columns?: string[];
252
253
  };
253
254
  export type EventsExportRequestParameters = AnprExportBaseParams & {
254
255
  eventType: GateReportEventType;
@@ -0,0 +1,98 @@
1
+ export declare enum HammertechRegion {
2
+ US = "us",
3
+ AU = "au",
4
+ EU = "eu"
5
+ }
6
+ export type HammertechConnectPayload = {
7
+ email: string;
8
+ password: string;
9
+ tenant: string;
10
+ region: HammertechRegion;
11
+ };
12
+ export type HammertechProject = {
13
+ projectId: string;
14
+ name: string;
15
+ };
16
+ export type HammertechLocation = {
17
+ id: string;
18
+ name: string;
19
+ parentId: string | null;
20
+ };
21
+ export type HammertechCustomFieldDataType = "FreeText" | "TextArea" | "Number" | "Date" | "Time" | "DateTime" | "ExpiryDate" | "Checkbox" | "YesNoRadio" | "YesNoNaRadio" | "Dropdown" | "Radio" | "MultiSelectDropdown" | "ImageUpload" | "FileUpload" | "Signature" | "SignatureWithName" | "Heading" | "BigLabel" | "ExpandingLabel" | "Separator" | "NoMargin" | "Image" | "FileDownload" | "ChildForm" | "SectionStart" | "SectionEnd" | "SystemField" | string;
22
+ export type HammertechCustomField = {
23
+ id: string;
24
+ internalName: string;
25
+ name?: string;
26
+ customFieldType: HammertechCustomFieldDataType;
27
+ isRequired?: boolean;
28
+ answerOptions?: string[];
29
+ };
30
+ export type HammertechCustomFieldForm = {
31
+ id: string;
32
+ customFields: HammertechCustomField[];
33
+ };
34
+ export declare enum HammertechPriority {
35
+ Low = "Low",
36
+ Medium = "Medium",
37
+ High = "High",
38
+ Critical = "Critical"
39
+ }
40
+ export declare enum HammertechClassification {
41
+ Undefined = "Undefined",
42
+ Positive = "Positive",
43
+ Negative = "Negative",
44
+ Neutral = "Neutral"
45
+ }
46
+ export type HammertechIssueType = {
47
+ id: string;
48
+ name: string;
49
+ forcePriority?: boolean;
50
+ suggestedPriority?: HammertechPriority | null;
51
+ canBeNegative?: boolean;
52
+ canBeNeutral?: boolean;
53
+ canBePositive?: boolean;
54
+ openIssueCustomFieldForm?: HammertechCustomFieldForm | null;
55
+ };
56
+ export type HammertechCustomFieldValue = {
57
+ customFieldId: string;
58
+ value?: unknown;
59
+ storedFileId?: string;
60
+ };
61
+ export declare const HAMMERTECH_FILE_FIELD_TYPES: string[];
62
+ export declare function isHammertechFileFieldType(type?: string): boolean;
63
+ export declare function isHammertechSignatureWithName(type?: string): boolean;
64
+ export type HammertechStoredFilePayload = {
65
+ fileName?: string;
66
+ base64FileContent: string;
67
+ annotation?: string;
68
+ id?: string;
69
+ };
70
+ export type HammertechStoredFileResponse = {
71
+ isSuccess: boolean;
72
+ httpStatusCode: number;
73
+ messageText: string;
74
+ createdEntityId: string;
75
+ xRequestId: string;
76
+ };
77
+ export type HammertechFileFieldValue = {
78
+ file: File | null;
79
+ name: string;
80
+ };
81
+ export type HammertechCreateIssuePayload = {
82
+ projectId: string;
83
+ issueTypeId: string;
84
+ snapshot: string;
85
+ issueDate?: string;
86
+ description?: string;
87
+ priority?: HammertechPriority;
88
+ dueDate?: string;
89
+ classification?: HammertechClassification;
90
+ locationId?: string;
91
+ isPositiveObservation?: boolean;
92
+ isPhotoForFixRequired?: boolean;
93
+ openIssueCustomFieldFormId?: string;
94
+ openIssueCustomFieldValues?: HammertechCustomFieldValue[];
95
+ };
96
+ export type HammertechIssueResponse = {
97
+ id: string;
98
+ };
@@ -39,9 +39,11 @@ export * from "./user";
39
39
  export * from "./vendorModel";
40
40
  export * from "./videoWall";
41
41
  export * from "./voyageControl";
42
+ export * from "./hammertech";
42
43
  export * from "./weather";
43
44
  export * from "./comments";
44
45
  export * from "./detections";
46
+ export * from "./observations";
45
47
  export * from "./axios";
46
48
  export * from "./shared";
47
49
  export * from "./company";
@@ -49,6 +51,7 @@ export * from "./kit";
49
51
  export * from "./auditLogs";
50
52
  export * from "./snapshots";
51
53
  export * from "./siteAnalytics";
54
+ export * from "./siteAnalyticsManagement";
52
55
  export * from "./widget";
53
56
  export * from "./countries";
54
57
  export * from "./automation";
@@ -48,11 +48,13 @@ export type DroneUploadItem = {
48
48
  modelZip: string;
49
49
  orthomosaicZip: string;
50
50
  reportPdf: string;
51
+ processingLog: string;
51
52
  uploadedBy: string;
52
53
  processingStatus: IngestProcessingStatus | string;
53
54
  modelCesiumAssetId: string;
54
55
  updatedAt: string;
55
56
  hasTusLinks: boolean;
57
+ aerialShots: AerialShotItem[];
56
58
  };
57
59
  export type DroneUploadsResponse = IngestPaginatedResponse<DroneUploadItem>;
58
60
  export type DroneQueueResponse = {
@@ -88,6 +90,15 @@ export type CalculateMeasuringOperationRequestPayload = {
88
90
  export type FlightImagesQueryParams = Partial<Omit<PaginationParams, "sort">> & {
89
91
  date: DateType;
90
92
  };
93
+ export type AerialShotItem = {
94
+ id: number;
95
+ droneUploadId: number;
96
+ fileLink: string;
97
+ thumbnailLink: string;
98
+ gpsLatitude: string;
99
+ gpsLongitude: string;
100
+ gpsAltitude: string;
101
+ };
91
102
  export type InspectionToolRequestPayload = {
92
103
  date: DateType;
93
104
  gpsAltitude: string;
@@ -22,6 +22,33 @@ export type Kit = {
22
22
  storages: KitStorage[];
23
23
  createdAt: string;
24
24
  };
25
+ export declare enum KitSupportCheckId {
26
+ RouterSmsRoundTrip = "router_sms_round_trip",
27
+ NvrRecordingAllCameras = "nvr_recording_all_cameras",
28
+ CamerasHaveDeviceId = "cameras_have_device_id",
29
+ CamerasRecording = "cameras_recording"
30
+ }
31
+ export declare enum KitSupportCheckStatus {
32
+ Passed = "passed",
33
+ Failed = "failed",
34
+ Skipped = "skipped"
35
+ }
36
+ export type KitSupportCheck = {
37
+ id: KitSupportCheckId;
38
+ name: string;
39
+ status: KitSupportCheckStatus;
40
+ error: string | null;
41
+ };
42
+ export type KitSupportChecklist = {
43
+ checks: KitSupportCheck[];
44
+ };
45
+ export type KitDiagnosticRun = {
46
+ kitId: number;
47
+ kitSerial: string;
48
+ checks: KitSupportCheck[];
49
+ ranAt: string;
50
+ isSeen: boolean;
51
+ };
25
52
  export declare enum KitStatus {
26
53
  New = "new",
27
54
  Active = "active",
@@ -45,11 +72,14 @@ export declare enum KitAlarm {
45
72
  NoHdd = "no_hdd",
46
73
  MissingRouterInfo = "missing_router_info",
47
74
  AcFailure = "ac_failure",
48
- LowBattery = "low_battery"
75
+ LowBattery = "low_battery",
76
+ GeneratorOff = "generator_off"
49
77
  }
50
78
  export declare enum KitMetricId {
51
79
  SolarCharger = "solar_charger",
52
- PanelPower = "panel_power"
80
+ PanelPower = "panel_power",
81
+ Fan = "fan",
82
+ FanTemperature = "fan_temperature"
53
83
  }
54
84
  export declare enum KitMetricPeriod {
55
85
  Last15Minutes = "now-15m",
@@ -312,6 +342,12 @@ export type KitMetricStatsEntry = {
312
342
  panelVoltage: number;
313
343
  panelPower: number;
314
344
  };
345
+ export type KitFanStatsEntry = {
346
+ timestamp: string;
347
+ speed: number;
348
+ internalTemperature: number;
349
+ externalTemperature: number | null;
350
+ };
315
351
  export type KitUpdatePayload = {
316
352
  countryId: number;
317
353
  name: string;
@@ -43,7 +43,8 @@ export declare enum MediaFileType {
43
43
  Mp4 = "mp4",
44
44
  Png = "png",
45
45
  Pdf = "pdf",
46
- Jpeg = "jpeg"
46
+ Jpeg = "jpeg",
47
+ Csv = "csv"
47
48
  }
48
49
  export declare enum MediaStatus {
49
50
  Pending = "Pending",
@@ -93,7 +94,7 @@ export type MediaCreateRequestPayload = {
93
94
  cameraExid?: string;
94
95
  requestedBy?: string;
95
96
  notes?: string;
96
- category?: ClipsCategory;
97
+ category?: MediaCategory | ClipsCategory;
97
98
  isUrgent?: boolean;
98
99
  storeAsType?: MediaType;
99
100
  };
@@ -108,6 +109,11 @@ export declare enum ClipsCategory {
108
109
  Marketing = "marketing",
109
110
  BestPracticies = "best_practices"
110
111
  }
112
+ export declare enum MediaCategory {
113
+ Weather = "weather",
114
+ SmartSearch = "smart_search",
115
+ Copilot = "copilot"
116
+ }
111
117
  export type MediaDeleteRequestPayload = {
112
118
  timelapseIds: (string | number)[];
113
119
  compareIds: (string | number)[];
@@ -0,0 +1,85 @@
1
+ import { type ProjectExid, type CameraExid, type DateType, type BBox, PpeLabel, DownloadFileType } from "@evercam/api/types";
2
+ export declare enum ObservationItemState {
3
+ Absent = 0,
4
+ Present = 1,
5
+ NotVisible = 2
6
+ }
7
+ export type ObservationEventEquipment = {
8
+ score: number;
9
+ bbox: BBox;
10
+ };
11
+ export type ObservationEvent = {
12
+ id: number;
13
+ cameraExid: CameraExid;
14
+ projectExid: ProjectExid;
15
+ capturedAt: DateType;
16
+ personIndex: number;
17
+ personBbox: BBox;
18
+ personScore: number;
19
+ ppe: Partial<Record<PpeLabel, ObservationEventEquipment>>;
20
+ hasHelmet: ObservationItemState | null;
21
+ hasHighVisVest: ObservationItemState | null;
22
+ hasGloves: ObservationItemState | null;
23
+ hasGlasses: ObservationItemState | null;
24
+ modelVersion: string;
25
+ createdAt: DateType;
26
+ compliant: boolean;
27
+ reason: string | null;
28
+ isApproved: boolean | null;
29
+ };
30
+ export type ObservationEventsQueryParams = {
31
+ cameraExid?: CameraExid;
32
+ fromDate?: string;
33
+ toDate?: string;
34
+ required?: string;
35
+ compliant?: boolean;
36
+ hasHelmet?: boolean;
37
+ hasHighVisVest?: boolean;
38
+ hasGloves?: boolean;
39
+ hasGlasses?: boolean;
40
+ sort?: string;
41
+ page?: number;
42
+ limit?: number;
43
+ };
44
+ export type ObservationEventsExportQueryParams = {
45
+ cameraExid?: CameraExid;
46
+ fromDate: string;
47
+ toDate: string;
48
+ required?: string;
49
+ compliant?: boolean;
50
+ fileType: DownloadFileType;
51
+ directDownload?: boolean;
52
+ includeInvalid?: boolean;
53
+ };
54
+ export type ObservationApprovalUpdateResponse = {
55
+ updated: boolean;
56
+ id: number | string | null;
57
+ message: string;
58
+ };
59
+ export declare enum ObservationCountsGranularity {
60
+ Day = "day",
61
+ Week = "week",
62
+ Month = "month"
63
+ }
64
+ export type ObservationEventsCountsQueryParams = {
65
+ cameraExid?: CameraExid;
66
+ fromDate?: string;
67
+ toDate?: string;
68
+ required?: string;
69
+ compliant?: boolean;
70
+ hasHelmet?: boolean;
71
+ hasHighVisVest?: boolean;
72
+ hasGloves?: boolean;
73
+ hasGlasses?: boolean;
74
+ granularity?: ObservationCountsGranularity;
75
+ };
76
+ export type ObservationEventCount = {
77
+ bucket: DateType;
78
+ total: number;
79
+ compliant: number;
80
+ nonCompliant: number;
81
+ };
82
+ export declare enum ObservationRequiredItem {
83
+ Helmet = "has_helmet",
84
+ HighVisVest = "has_high_vis_vest"
85
+ }
@@ -16,6 +16,26 @@ export declare enum ActiveUsersMetric {
16
16
  WAU = "wau",
17
17
  MAU = "mau"
18
18
  }
19
+ export type PosthogUser = {
20
+ id: string;
21
+ email: string;
22
+ isWeeklyActiveUser: number;
23
+ isMonthlyActiveUser: number;
24
+ eventsCount: number;
25
+ };
26
+ export type PosthogUsersRequestParams = {
27
+ companyExid?: string;
28
+ projectExid?: string;
29
+ cameraExid?: string;
30
+ productsActivityOnly?: boolean;
31
+ afterId?: string;
32
+ size?: number;
33
+ };
34
+ export type PosthogUsersResponse = {
35
+ data: PosthogUser[];
36
+ hasMore: boolean;
37
+ size: number;
38
+ };
19
39
  export type PosthogUserParams = {
20
40
  firstname?: string;
21
41
  lastname?: string;
@@ -5,18 +5,20 @@ export type Snapshot = {
5
5
  data: string;
6
6
  status?: string;
7
7
  };
8
- export type NearestSnapshotRequestPayload = {
8
+ export type SnapshotRequestPayload = {
9
9
  apiKey?: string;
10
10
  apiId?: string;
11
11
  token?: string;
12
12
  cancelToken?: object;
13
13
  includeImage?: boolean;
14
+ view?: boolean;
14
15
  };
15
16
  export type AvailableDaysRequestPayload = {
16
17
  cameraId: string;
17
18
  year: string;
18
19
  month: string;
19
20
  payload?: ApiCredentials;
21
+ cancelToken?: CancelToken;
20
22
  };
21
23
  export type AvailableDaysResponsePayload = {
22
24
  days: Array<number>;
@@ -3,7 +3,8 @@ export declare enum RoiType {
3
3
  AnprContext = "anpr_context",
4
4
  ExclusionZone = "exclusion_zone",
5
5
  WorkflowArea = "workflow_area",
6
- SiteAnalytics = "site_analytics"
6
+ SiteAnalytics = "site_analytics",
7
+ Ppe = "ppe_roi"
7
8
  }
8
9
  export declare enum RoiShapeType {
9
10
  Polygon = "polygon",
@@ -0,0 +1,92 @@
1
+ import { CameraExid, DateType, ProjectExid } from "@evercam/api/types";
2
+ export type SiteAnalyticsCoolifyStatus = {
3
+ appUuid: string | null;
4
+ name: string | null;
5
+ serverUuid: string | null;
6
+ serverName: string | null;
7
+ appUrl: string | null;
8
+ status: string | null;
9
+ isRunning: boolean;
10
+ updatedAt: string | null;
11
+ };
12
+ export type SiteAnalyticsProjectMeta = {
13
+ exid: ProjectExid;
14
+ name: string | null;
15
+ timezone: string | null;
16
+ featureFlags: string[] | null;
17
+ };
18
+ export type SiteAnalyticsCameraMeta = {
19
+ exid: CameraExid;
20
+ name: string | null;
21
+ status: string | null;
22
+ featureFlags: string[] | null;
23
+ };
24
+ export type SiteAnalyticsManagedApp = {
25
+ id: number;
26
+ projectExid: ProjectExid;
27
+ cameraExid: CameraExid;
28
+ coolifyAppId: string | null;
29
+ appVersion: string;
30
+ modelId: number | null;
31
+ startDate: DateType | null;
32
+ endDate: DateType | null;
33
+ startHour: number;
34
+ endHour: number;
35
+ source: string;
36
+ override: boolean;
37
+ timeIncreaseFrequency: number;
38
+ insertedAt: DateType | null;
39
+ updatedAt: DateType | null;
40
+ coolify: SiteAnalyticsCoolifyStatus | null;
41
+ project: SiteAnalyticsProjectMeta | null;
42
+ camera: SiteAnalyticsCameraMeta | null;
43
+ lastTrackingAt: DateType | null;
44
+ };
45
+ export type CreateSiteAnalyticsAppPayload = {
46
+ projectExid: ProjectExid;
47
+ cameraExid: CameraExid;
48
+ coolifyServerUuid: string;
49
+ appVersion?: string;
50
+ modelId?: number | null;
51
+ startDate?: DateType | null;
52
+ endDate?: DateType | null;
53
+ startHour?: number;
54
+ endHour?: number;
55
+ source?: string;
56
+ override?: boolean;
57
+ timeIncreaseFrequency?: number;
58
+ };
59
+ export type UpdateSiteAnalyticsAppPayload = Partial<Omit<CreateSiteAnalyticsAppPayload, "projectExid" | "cameraExid" | "coolifyServerUuid">>;
60
+ export type ModelOption = {
61
+ modelId: number;
62
+ version: string;
63
+ };
64
+ export type SiteAnalyticsAppConfigFormValue = {
65
+ appVersion: string;
66
+ modelId: number | null;
67
+ startDate: string | null;
68
+ endDate: string | null;
69
+ startHour: number;
70
+ endHour: number;
71
+ source: string;
72
+ override: boolean;
73
+ timeIncreaseFrequency: number;
74
+ };
75
+ export type SiteAnalyticsManagementListParams = {
76
+ projectExid?: ProjectExid;
77
+ includeStatus?: boolean;
78
+ page?: number;
79
+ limit?: number;
80
+ };
81
+ export type CreateSiteAnalyticsAppResponse = {
82
+ created: boolean;
83
+ id: number | null;
84
+ data: SiteAnalyticsManagedApp | null;
85
+ count: number | null;
86
+ message: string;
87
+ };
88
+ export type DeleteSiteAnalyticsAppResponse = {
89
+ deleted: boolean;
90
+ count: number;
91
+ message: string;
92
+ };
@@ -53,7 +53,6 @@ export type ForgeMarker = {
53
53
  };
54
54
  export type ForgeProjectData = {
55
55
  urns?: ForgeUrn[];
56
- isEvercamAccount?: boolean;
57
56
  accDrawingsAlignments?: Record<string, ForgeAccAlignmentData>;
58
57
  timeline?: TimelineItem[];
59
58
  savedView?: ForgeView;
@@ -193,9 +193,6 @@ export type UserUpdateRequestPayload = {
193
193
  country: string;
194
194
  persona: string;
195
195
  };
196
- export type UserDeleteRequestPayload = {
197
- verifEmail: string;
198
- };
199
196
  export type GoogleAuthRequestPayload = {
200
197
  code: string;
201
198
  redirectUri: string;
@@ -337,6 +334,7 @@ export type ProjectUserWithRole = {
337
334
  name: string;
338
335
  exid: string;
339
336
  };
337
+ persona: Persona;
340
338
  permissions: string[];
341
339
  role: Role;
342
340
  subRoles: RoleSubRole[];