@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,25 @@
1
+ export type ObservationsTableHeader = {
2
+ isThumbnail?: boolean;
3
+ visible: boolean;
4
+ divider: boolean;
5
+ sortable: boolean;
6
+ text: string;
7
+ value: string;
8
+ class: string;
9
+ align: string;
10
+ };
11
+ export type ObservationsCountDay = {
12
+ day: string;
13
+ };
14
+ export type ObservationsTableOptionsUpdate = {
15
+ page: number;
16
+ sortBy: string[];
17
+ sortDesc: boolean[];
18
+ };
19
+ export type ObservationsEventsTableState = {
20
+ height: number | string;
21
+ };
22
+ export type ObservationTypeOption = {
23
+ value: string;
24
+ label: string;
25
+ };
@@ -0,0 +1,67 @@
1
+ import type { ProjectMember, ProjectInvite, ProjectResourceRole } from "@evercam/api/types";
2
+ export type HasRoleChangedFn<T = ProjectMember | ProjectInvite> = (entity: T, baseRole: ProjectResourceRole) => boolean;
3
+ export type ProjectRoleData = {
4
+ id?: number;
5
+ name: string;
6
+ description?: string | null;
7
+ permissions: string[];
8
+ subRoles?: Array<{
9
+ resourceId: string;
10
+ roleId: number | null;
11
+ }>;
12
+ };
13
+ export type ProjectResourcePermission = {
14
+ id: string;
15
+ name: string;
16
+ description?: string;
17
+ requires?: string;
18
+ };
19
+ export type ProjectResource = {
20
+ id: string;
21
+ name: string;
22
+ permissions: ProjectResourcePermission[];
23
+ };
24
+ export type ProjectPermissionWarning = {
25
+ resourceId: string;
26
+ message: string;
27
+ type?: string;
28
+ cameraExids?: string[];
29
+ accessLevel?: string;
30
+ grantAllPermissions?: boolean;
31
+ };
32
+ export type ProjectDisabledPermission = {
33
+ id: string;
34
+ reason: string;
35
+ };
36
+ export type CameraAccessFilters = {
37
+ memberName: string;
38
+ memberEmail: string;
39
+ cameraName: string;
40
+ };
41
+ export type CameraAccessLevelConfig = {
42
+ id: string;
43
+ name: string;
44
+ description: string;
45
+ permissions: string[];
46
+ };
47
+ export declare enum CameraStatusGroup {
48
+ Active = "active",
49
+ Pending = "pending",
50
+ Archived = "archived"
51
+ }
52
+ export type CameraStatusGroupConfig = {
53
+ text: string;
54
+ icon: string;
55
+ color: string;
56
+ };
57
+ export type CameraFeatureIconConfig = {
58
+ icon: string;
59
+ tooltip: string;
60
+ };
61
+ export type RecipientRule = {
62
+ blocked: string[];
63
+ };
64
+ export type RecipientRules = {
65
+ notExistingRecipients?: RecipientRule;
66
+ notPendingInviteRecipients?: RecipientRule;
67
+ };
@@ -0,0 +1,101 @@
1
+ import type Vue from "vue";
2
+ import type { CancelToken } from "axios";
3
+ import type { Operator } from "@evercam/api/types";
4
+ import type { DateRangeOption } from "@evercam/shared/utils/datePresets";
5
+ export type ReportTableHeaderParams<TItem = unknown> = {
6
+ value: string;
7
+ text: string;
8
+ align?: string;
9
+ sortable?: boolean;
10
+ visible?: boolean;
11
+ width?: number | string;
12
+ copyable?: boolean;
13
+ toStringFn?: (item: TItem, key: string) => string;
14
+ sort?(a: unknown, b: unknown): number;
15
+ togglable?: boolean;
16
+ filterable?: boolean;
17
+ };
18
+ export declare enum ReportSortDirection {
19
+ Asc = "asc",
20
+ Desc = "desc"
21
+ }
22
+ export declare enum ReportFilterComponent {
23
+ Text = "TextFieldSearchFilter",
24
+ Select = "SelectSearchFilter",
25
+ DatePicker = "DatePickerSearchFilter",
26
+ CountField = "CountFieldSearchFilter",
27
+ Tag = "TagSearchFilter"
28
+ }
29
+ export type ReportFilterCell = {
30
+ header: ReportTableHeaderParams;
31
+ field?: ReportFilterField;
32
+ };
33
+ export type OfflineCamerasReportContext = Vue & {
34
+ report: string;
35
+ };
36
+ export type ReportFilterItem = {
37
+ name?: string;
38
+ value: string | number | boolean | null;
39
+ };
40
+ export type ReportSearchParamValue = string | number | boolean | null | undefined | (string | number | boolean | null)[];
41
+ export type ReportSearchParams = Record<string, ReportSearchParamValue>;
42
+ export type ReportItem = Record<string, unknown>;
43
+ export type ReportProviderResponse<TItem = ReportItem> = {
44
+ total?: number;
45
+ [dataField: string]: TItem[] | number | undefined;
46
+ };
47
+ export type ReportTableProvider<TItem = ReportItem> = (request: {
48
+ cancelToken: CancelToken;
49
+ params: ReportSearchParams;
50
+ }) => Promise<ReportProviderResponse<TItem>>;
51
+ export type ReportTableOptions = {
52
+ page?: number;
53
+ itemsPerPage?: number | string;
54
+ sortBy?: string[];
55
+ sortDesc?: boolean[];
56
+ };
57
+ export type ReportFilterFieldNamesMap = {
58
+ fromField: string;
59
+ toField: string;
60
+ };
61
+ export type ReportFilterOperatorItem = {
62
+ value: Operator;
63
+ label: string;
64
+ };
65
+ export type ReportFilterAttributes = {
66
+ items?: ReportFilterItem[];
67
+ multiple?: boolean;
68
+ isAutocomplete?: boolean;
69
+ value?: string | number | string[];
70
+ label?: string;
71
+ textFieldAttrs?: {
72
+ placeholder?: string;
73
+ };
74
+ isRange?: boolean;
75
+ convertToIso?: boolean;
76
+ minDate?: string;
77
+ maxDate?: string;
78
+ options?: DateRangeOption[];
79
+ withOperator?: boolean;
80
+ operatorFieldName?: string;
81
+ operatorLabel?: string;
82
+ operatorItems?: ReportFilterOperatorItem[];
83
+ showToolTip?: boolean;
84
+ toolTipText?: string;
85
+ "menu-props"?: {
86
+ offsetY?: boolean;
87
+ };
88
+ };
89
+ export type ReportFilterField<TItem = ReportItem> = {
90
+ component: ReportFilterComponent;
91
+ name?: string;
92
+ width?: number;
93
+ attributes?: ReportFilterAttributes;
94
+ listeners?: {
95
+ keypress?: (event: KeyboardEvent) => boolean | void;
96
+ };
97
+ fieldNamesMap?: ReportFilterFieldNamesMap;
98
+ isGlobalFilter?: boolean;
99
+ offline?: boolean;
100
+ customFilter?: (item: TItem, fieldName: string, search: ReportSearchParamValue) => boolean;
101
+ };
@@ -0,0 +1,10 @@
1
+ import { TimelineGroupId, type TimelinePlayerGroupConfig } from "./components";
2
+ export interface TimelineGroup {
3
+ id: TimelineGroupId;
4
+ timelineConfig: TimelinePlayerGroupConfig | Record<string, TimelinePlayerGroupConfig>;
5
+ isVisible: boolean;
6
+ isDisabled: boolean;
7
+ isRestricted?: boolean;
8
+ hasMultipleGroups?: boolean;
9
+ isPersistent?: boolean;
10
+ }
@@ -0,0 +1,36 @@
1
+ import type { DateRange, DayMeta } from "@evercam/ui";
2
+ /**
3
+ * EDatePicker works in plain local `Date`s; this app stores dates as
4
+ * "YYYY-MM-DD" strings. Both helpers carry the wall-clock reading across that
5
+ * boundary — never the instant — so a date never shifts by a day.
6
+ */
7
+ export declare function toCalendarDate(value?: string | number | Date | null, { timezone, withHour }?: {
8
+ timezone?: string;
9
+ withHour?: boolean;
10
+ }): Date | undefined;
11
+ export declare function toIsoDay(date?: Date | null): string;
12
+ export declare function toCalendarDayEnd(value?: string | number | Date | null, timezone?: string): Date | undefined;
13
+ export declare function toCalendarRange(value?: string[] | null): DateRange;
14
+ export declare function fromCalendarRange(range?: DateRange | null): string[];
15
+ export declare function toCssColor(color?: string): string | undefined;
16
+ export declare function toDayMeta({ date, events, eventColor, }: {
17
+ date: Date;
18
+ events?: string[] | ((day: string) => boolean);
19
+ eventColor?: string | ((day: string) => string | undefined);
20
+ }): DayMeta | undefined;
21
+ /**
22
+ * Days inside the current selection carry no marker; everything else keeps the
23
+ * "available footage" dot. An empty or half-made selection marks every day.
24
+ */
25
+ export declare function getOutsideRangeColor(day: string, range?: string[] | null, color?: string): string | undefined;
26
+ export declare function orderDayRange(range?: string[] | null): {
27
+ fromDate: string;
28
+ toDate: string;
29
+ } | null;
30
+ export declare function toDayBounds({ fromDate, toDate, }: {
31
+ fromDate: string;
32
+ toDate: string;
33
+ }): {
34
+ fromDate: string;
35
+ toDate: string;
36
+ };
@@ -0,0 +1,31 @@
1
+ import type { DatePreset as EDatePickerPreset, WeekStart } from "@evercam/ui";
2
+ export declare enum DateRangeOption {
3
+ Today = 0,
4
+ Yesterday = -1,
5
+ Last7Days = -7,
6
+ Last30Days = -30,
7
+ Last90Days = -90,
8
+ Last365Days = -365,
9
+ Next7Days = 7,
10
+ Next30Days = 30,
11
+ Next60Days = 60,
12
+ ThisMonth = "__thisMonth__",
13
+ LastCalendarMonth = "__lastCalendarMonth__",
14
+ DataRange = "__dataRange__",
15
+ CalendarRange = "__calendarRange__"
16
+ }
17
+ export declare const DefaultDateRangeOptions: DateRangeOption[];
18
+ export type DateRangePresetOptions = {
19
+ min?: Date;
20
+ max?: Date;
21
+ dataRangeLabel?: string;
22
+ weekStartsOn?: WeekStart;
23
+ };
24
+ export declare function toDateRangePresets(options: DateRangeOption[], $t: (key: string) => string, { min, max, dataRangeLabel, weekStartsOn }?: DateRangePresetOptions): EDatePickerPreset[];
25
+ export declare function matchDateRangePreset({ range, presets, min, max, weekStartsOn, }: {
26
+ range?: string[] | null;
27
+ presets: EDatePickerPreset[];
28
+ min?: Date;
29
+ max?: Date;
30
+ weekStartsOn?: WeekStart;
31
+ }): EDatePickerPreset | null;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@evercam/api",
3
- "version": "1.0.0-91a80705f",
3
+ "version": "1.0.0-9272abbb4",
4
4
  "description": "Evercam API client",
5
5
  "repository": {
6
6
  "type": "git",
@@ -11,11 +11,11 @@
11
11
  "private": false,
12
12
  "type": "module",
13
13
  "main": "dist/index.umd.js",
14
- "module": "dist/index.mjs",
14
+ "module": "dist/index.js",
15
15
  "types": "./dist/index.d.ts",
16
16
  "exports": {
17
17
  ".": {
18
- "import": "./dist/index.mjs",
18
+ "import": "./dist/index.js",
19
19
  "require": "./dist/index.umd.js"
20
20
  },
21
21
  "./types": "./dist/src/types.ts"
@@ -24,10 +24,12 @@
24
24
  "dist"
25
25
  ],
26
26
  "engines": {
27
- "node": "20.x"
27
+ "node": ">=22"
28
28
  },
29
29
  "readme": "README.md",
30
30
  "scripts": {
31
+ "preinstall": "node ../shared/ci-scripts/check-bootstrap.js",
32
+ "bootstrap": "node ../shared/ci-scripts/bootstrap.js",
31
33
  "clean": "rimraf dist",
32
34
  "typecheck": "tsc --noEmit",
33
35
  "build:types": "tsc --declaration --emitDeclarationOnly",
@@ -36,14 +38,15 @@
36
38
  "publish-api": "cd ../.. && yarn publish-api"
37
39
  },
38
40
  "devDependencies": {
39
- "@types/node": "^22.13.10",
41
+ "@types/node": "^25.9.1",
40
42
  "vite": "latest",
41
43
  "vite-plugin-commonjs": "^0.10.3",
42
- "vite-plugin-dts": "^4.5.3"
44
+ "vite-plugin-dts": "^4.5.4"
43
45
  },
44
46
  "peerDependencies": {
45
47
  "axios": "^1.7.7",
46
48
  "humps": "^2.0.1",
49
+ "idb-keyval": "^6.2.2",
47
50
  "moment-timezone": "^0.5.46"
48
51
  }
49
- }
52
+ }
@@ -1,9 +0,0 @@
1
- import { _360ProjectJsonResponse, DroneProjectJsonResponse, ProjectExid } from "@evercam/api/types";
2
- export declare const _3dFirebaseApi: {
3
- drone: {
4
- getProjectInfo(projectExid: ProjectExid): Promise<DroneProjectJsonResponse>;
5
- };
6
- _360: {
7
- getProjectInfo(projectExid: ProjectExid): Promise<_360ProjectJsonResponse>;
8
- };
9
- };
@@ -1,288 +0,0 @@
1
- import type { CamerasResponsePayload, CameraUpdateRequestPayload, PaginatedItems, AdminCamera, Project, Hdd, AdminUser, ProgressPhotosCreateUpdateRequestPayload, ProgressPhoto, Kit, PatchPayload, StorageServersResponsePayload, MediaFilterQueryParams, Media, MediaDeleteRequestPayload, AuditLogsParams, AuditLog, SnapshotExtractionQyeryParams, SnapshotExtraction, CameraCreateRequestPayload, CameraDeletePayload, SnapshotTestPayload, SnapshotTestResponse, DuplicatedCameraFields, DuplicatedCameraResponse, MergeDuplicatedCameraPayload, FetchCameraQueryParams, DeleteSnapshotQueryParams, SaveNotePayload, CameraNote, CreateCameraNotePayload, CompanyQueryParams, Company, CompanyUpdatePayload, SuppressionsQueryParams, Suppression, SnapshotExtractionType, PaginationParams, GateReportProject, KitQueryParams, KitCreatePayload, AdminKit, CameraLogsQueryParams, CameraLog, CameraAuditLogsQueryParams, CameraAuditLog, NvrQueryParams, Nvr, SiteVisitCamerasQueryParams, OfflineCameraQueryParams, OfflineCamera, OfflineCameraNoteResponse, UserStatsResponse, EntityStatsQueryParams, EntityStat, UserSession, UserCameraResponse, UserProjectResponse, ProjectUsers, ProjectCamera, ProjectsQueryParams, ProjectStatusStats, ProjectCreateRequestPayload, ProjectCreateResponse, ProjectUpdateRequestPayload, RouterQueryParams, Router, RouterCreatePayload, GlobalSearchQueryParams, CameraShareRequestsQueryParams, CameraShareRequest, CameraShareRequestPayload, ShareCreateResponsePayload, ShareQueryParams, AdminShare, SimCreateUpdatePayload, SimsQueryParams, Sim, SendSmsPayload, SendSmsResponse, SmsHistoryResponse, SmsQueryParams, Sms, ProgressPhotosQueryParams, ProgressPhotoItem, progressPhotosHistoryQueryParams, ProgressPhotosHistory, AdminUserUpdateRequestPayload, AdminQueryParams, Admin, ImpersonateUserResponse, AdminUserQueryParams, AdminCompareQueryParams, AdminCompare, NvrCreatePayload } from "@evercam/api/types";
2
- import { KitMetricId } from "@evercam/api/types";
3
- export declare const AdminApi: {
4
- mediaHub: {
5
- getAllMedia(params: {
6
- params: Partial<MediaFilterQueryParams>;
7
- }): Promise<PaginatedItems<Media>>;
8
- deleteMedia(params: Partial<MediaDeleteRequestPayload>): Promise<void>;
9
- };
10
- auditLogs: {
11
- getAuditLogs(params: {
12
- params: Partial<AuditLogsParams>;
13
- }): Promise<PaginatedItems<AuditLog>[]>;
14
- };
15
- cameras: {
16
- getCamerasStats(params: {
17
- params: {
18
- email?: string;
19
- };
20
- }): Promise<CamerasResponsePayload>;
21
- rebootCamera(cameraId: string): Promise<{
22
- message: string;
23
- }>;
24
- focusCamera(cameraId: string, device: string): Promise<{
25
- message: string;
26
- }>;
27
- getStorageServers(): Promise<StorageServersResponsePayload>;
28
- getStorageDetails(): Promise<import("axios").AxiosResponse<any, any>>;
29
- getSnapshotExtractions(params: {
30
- params: Partial<SnapshotExtractionQyeryParams>;
31
- }): Promise<PaginatedItems<SnapshotExtraction>>;
32
- createCameras(payload: CameraCreateRequestPayload): Promise<{
33
- cameras: [AdminCamera];
34
- }>;
35
- deleteCamera(exid: string, payload: CameraDeletePayload): Promise<void>;
36
- testSnapshot(payload: SnapshotTestPayload): Promise<SnapshotTestResponse>;
37
- getDuplicateCameras(params: {
38
- params: {
39
- fields?: DuplicatedCameraFields[];
40
- sort?: string;
41
- };
42
- }): Promise<PaginatedItems<DuplicatedCameraResponse>>;
43
- mergeDuplicateCameras(payload: MergeDuplicatedCameraPayload): Promise<{
44
- success: boolean;
45
- }>;
46
- getCameras(params: {
47
- params: Partial<FetchCameraQueryParams>;
48
- }): Promise<PaginatedItems<AdminCamera>>;
49
- getCompares(params: {
50
- params: AdminCompareQueryParams;
51
- }): Promise<PaginatedItems<AdminCompare[]>>;
52
- getCameraDetails(exid: string): Promise<AdminCamera>;
53
- deleteSnapshots(cameraId: string, params: DeleteSnapshotQueryParams): Promise<void>;
54
- refreshDeviceSettings(cameraId: string): Promise<void>;
55
- saveNote(cameraId: string, params: SaveNotePayload): Promise<CameraNote>;
56
- saveCameraNote(cameraId: string, params: CreateCameraNotePayload): Promise<{
57
- message: string;
58
- }>;
59
- update(cameraId: string, params: CameraUpdateRequestPayload): Promise<CamerasResponsePayload>;
60
- };
61
- companies: {
62
- getCompanies(params: {
63
- params: Partial<CompanyQueryParams>;
64
- }): Promise<PaginatedItems<Company[]>>;
65
- updateCompany(id: string, params: CompanyUpdatePayload): Promise<Omit<CompanyUpdatePayload, "linkedinUrl">>;
66
- deleteCompany(params: {
67
- ids: string | string[];
68
- }): Promise<{
69
- success: true;
70
- }>;
71
- reSyncCompanies(params: {
72
- companyIds: string[];
73
- }): Promise<{
74
- success: true;
75
- }>;
76
- };
77
- emailing: {
78
- performEmailing(template: string, params: Record<string, unknown>): Promise<import("axios").AxiosResponse<any, any>>;
79
- suppressions(params: {
80
- params: SuppressionsQueryParams;
81
- }): Promise<PaginatedItems<Suppression[]>>;
82
- deleteSuppression(id: number): Promise<void>;
83
- };
84
- extractions: {
85
- updateCloudRecordings(cameraId: string, params: Record<string, unknown>): Promise<import("axios").AxiosResponse<any, any>>;
86
- addExtraction(cameraId: string, params: SnapshotExtractionQyeryParams): Promise<PaginatedItems<SnapshotExtraction>>;
87
- getExtractionStatus(cameraId: string, extractionId: number, params: {
88
- type: SnapshotExtractionType;
89
- }): Promise<{
90
- status: string;
91
- jpegs: number;
92
- }>;
93
- deleteSnapshotExtraction(cameraId: string, extractionId: number, params: {
94
- type: SnapshotExtractionType;
95
- }): Promise<void>;
96
- };
97
- gateReport: {
98
- getGateReportProjects(params: {
99
- params: PaginationParams;
100
- }): Promise<PaginatedItems<GateReportProject[]>>;
101
- getGateReportProject(projectExid: string): Promise<Project>;
102
- };
103
- kits: {
104
- getAllKits(params: {
105
- params: KitQueryParams;
106
- }): Promise<PaginatedItems<Kit[]>>;
107
- getKit(kitId: number): Promise<Kit>;
108
- createKit(params: KitCreatePayload): Promise<AdminKit>;
109
- updateKit(id: string, params: PatchPayload<Kit>): Promise<import("axios").AxiosResponse<any, any>>;
110
- deleteKit(id: string, params: Record<string, unknown>): Promise<import("axios").AxiosResponse<any, any>>;
111
- getKitStats({ kitId, metric, fromDate, toDate, }: {
112
- kitId: number;
113
- metric: KitMetricId;
114
- fromDate: string;
115
- toDate: string;
116
- }): Promise<import("axios").AxiosResponse<any, any>>;
117
- };
118
- logs: {
119
- getAllCamerasStatusLogs(params: {
120
- params: CameraLogsQueryParams;
121
- }): Promise<{
122
- data: CameraLog[];
123
- }>;
124
- getCameraLogs(cameraId: string, payload: {
125
- params: CameraAuditLogsQueryParams;
126
- }): Promise<PaginatedItems<CameraAuditLog[]>>;
127
- };
128
- nvrs: {
129
- getNvrs(params: {
130
- params: NvrQueryParams;
131
- }): Promise<PaginatedItems<Nvr[]>>;
132
- createNvr(params: NvrCreatePayload): Promise<import("axios").AxiosResponse<any, any>>;
133
- updateNvr(id: string, params: PatchPayload<Nvr>): Promise<import("axios").AxiosResponse<any, any>>;
134
- rebootNVR(cameraId: string): Promise<{
135
- message: string;
136
- }>;
137
- };
138
- offlineCameras: {
139
- getSiteVisitCameras(params: {
140
- params: Partial<SiteVisitCamerasQueryParams>;
141
- }): Promise<PaginatedItems<AdminCamera>>;
142
- getOfflineCameras(params: {
143
- params: Partial<OfflineCameraQueryParams>;
144
- }): Promise<PaginatedItems<OfflineCamera>>;
145
- getOfflineCamerasLastNote(params: {
146
- cameraIds: number[];
147
- }): Promise<OfflineCameraNoteResponse>;
148
- };
149
- pa: {
150
- getPAUser(id: number, params: Record<string, unknown>): Promise<UserStatsResponse>;
151
- getPAProjectPeriodEvents(id: string | number, payload: EntityStatsQueryParams): Promise<EntityStat[]>;
152
- getPAUserEvents(id: string | number): Promise<UserSession[]>;
153
- getPAUserCameras(id: number): Promise<UserCameraResponse>;
154
- getPAUserProjects(id: number): Promise<UserProjectResponse>;
155
- getPAUserPeriodEvents(id: number, payload: EntityStatsQueryParams): Promise<EntityStat[]>;
156
- getProjectUsers(id: string): Promise<ProjectUsers>;
157
- getPAProject(id: string, params: Record<string, unknown>): Promise<{
158
- data: Project;
159
- }>;
160
- getPAProjectCameras(id: string): Promise<{
161
- data: ProjectCamera[];
162
- }>;
163
- };
164
- projects: {
165
- getAll(params: {
166
- params: Partial<ProjectsQueryParams>;
167
- }): Promise<PaginatedItems<Project>>;
168
- getProject(exid: string): Promise<Project>;
169
- getProjectsStats(): Promise<ProjectStatusStats>;
170
- createProject(params: ProjectCreateRequestPayload): Promise<ProjectCreateResponse>;
171
- updateProject(projectExid: string, params: Partial<ProjectUpdateRequestPayload>): Promise<ProjectCreateResponse>;
172
- deleteProject(projectExid: string): Promise<{
173
- success: boolean;
174
- }>;
175
- addToProject(projectExid: string, params: {
176
- cameraExids: string[];
177
- }): Promise<void>;
178
- };
179
- routers: {
180
- getRouters(params: {
181
- params: Partial<RouterQueryParams>;
182
- }): Promise<PaginatedItems<Router[]>>;
183
- getRouterTypes(): Promise<string[]>;
184
- createRouter(params: RouterCreatePayload): Promise<{
185
- routerId: number;
186
- }>;
187
- updateRouter(id: number, params: RouterCreatePayload): Promise<{
188
- success: boolean;
189
- }>;
190
- deleteRouter(id: number): Promise<void>;
191
- getRouter(id: number): Promise<Router>;
192
- };
193
- search: {
194
- search(params: {
195
- params: GlobalSearchQueryParams;
196
- }): Promise<PaginatedItems<Record<string, unknown>>>;
197
- };
198
- hdds: {
199
- getHdds(payload: {
200
- projectId: string;
201
- companyId: string;
202
- }): Promise<Hdd[]>;
203
- };
204
- shareRequests: {
205
- getShareRequests(params: {
206
- params: Partial<CameraShareRequestsQueryParams>;
207
- }): Promise<PaginatedItems<CameraShareRequest[]>>;
208
- deleteShareRequest(params: {
209
- ids: number[];
210
- }): Promise<{
211
- success: boolean;
212
- }>;
213
- updateShareRequestStatus(params: {
214
- ids: number[];
215
- status: string;
216
- }): Promise<{
217
- success: boolean;
218
- }>;
219
- };
220
- shares: {
221
- createShares(cameraExid: string, payload: CameraShareRequestPayload): Promise<ShareCreateResponsePayload>;
222
- getShares(params: {
223
- params: Partial<ShareQueryParams>;
224
- }): Promise<PaginatedItems<AdminShare[]>>;
225
- deleteShares(ids: number[]): Promise<void>;
226
- };
227
- sims: {
228
- deleteSim(simId: number): Promise<{
229
- deleted: boolean;
230
- }>;
231
- createSim(params: Omit<SimCreateUpdatePayload, "cameraId">): Promise<{
232
- success: boolean;
233
- }>;
234
- updateSim(simId: number, params: CameraShareRequestPayload): Promise<{
235
- success: boolean;
236
- }>;
237
- getSims(params: {
238
- params: Partial<SimsQueryParams>;
239
- }): Promise<PaginatedItems<Sim[]>>;
240
- getSimProviders(): Promise<import("axios").AxiosResponse<any, any>>;
241
- getBillPayers(): Promise<import("axios").AxiosResponse<any, any>>;
242
- };
243
- sms: {
244
- sendSms(number: string, params: SendSmsPayload): Promise<SendSmsResponse>;
245
- getSimHistory(number: string): Promise<SmsHistoryResponse>;
246
- getSms(params: {
247
- params: Partial<SmsQueryParams>;
248
- }): Promise<PaginatedItems<Sms[]>>;
249
- };
250
- progressPhotos: {
251
- getProgressPhotos(params: {
252
- params: Partial<ProgressPhotosQueryParams>;
253
- }): Promise<PaginatedItems<ProgressPhotoItem[]>>;
254
- getProgressPhotosHistory(params: {
255
- params: Partial<progressPhotosHistoryQueryParams>;
256
- }): Promise<ProgressPhotosHistory>;
257
- getProgressPhotoTemplate({ id, }: {
258
- id: string;
259
- }): Promise<{
260
- progressPhoto: string;
261
- }>;
262
- update(id: string, payload: ProgressPhotosCreateUpdateRequestPayload): Promise<ProgressPhoto>;
263
- };
264
- users: {
265
- updateUser(id: number, params: Partial<AdminUserUpdateRequestPayload>): Promise<AdminUser>;
266
- getAdmins(params: {
267
- params: Partial<AdminQueryParams>;
268
- }): Promise<PaginatedItems<Admin[]>>;
269
- deleteAdmin(email: string): Promise<void | {
270
- message: string;
271
- }>;
272
- makeAdmin(email: string): Promise<void | {
273
- message: string;
274
- }>;
275
- deleteUser(email: string, params: {
276
- verifyEmail: string;
277
- }): Promise<void | {
278
- message: string;
279
- }>;
280
- impersonateUser(email: string): Promise<ImpersonateUserResponse>;
281
- getUsers(params: {
282
- params: Partial<AdminUserQueryParams>;
283
- }): Promise<PaginatedItems<AdminUser>>;
284
- getUserPasswordResetLink(email: string): Promise<{
285
- passwordResetLink: string;
286
- }>;
287
- };
288
- };