@evercam/api 1.0.0-cc52e4032 → 1.0.0-cc7d70eb8

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 (79) hide show
  1. package/dist/api/api/3dFirebaseApi.d.ts +7 -1
  2. package/dist/api/api/adminApi.d.ts +80 -83
  3. package/dist/api/api/aiApi.d.ts +57 -84
  4. package/dist/api/api/authzApi.d.ts +27 -17
  5. package/dist/api/api/client/axios.d.ts +2 -1
  6. package/dist/api/api/client/swr/Swr.d.ts +1 -1
  7. package/dist/api/api/evercamApi.d.ts +114 -96
  8. package/dist/api/api/evercamLabsApi.d.ts +4 -3
  9. package/dist/api/api/exNvrApi.d.ts +1 -1
  10. package/dist/api/api/ingestApi.d.ts +99 -46
  11. package/dist/api/api/ptzApi.d.ts +12 -3
  12. package/dist/api/api/videoWallApi.d.ts +2 -2
  13. package/dist/api/api/weatherApi.d.ts +2 -2
  14. package/dist/api/types/360.d.ts +140 -5
  15. package/dist/api/types/aconex.d.ts +9 -9
  16. package/dist/api/types/admin.d.ts +51 -0
  17. package/dist/api/types/analytics.d.ts +113 -48
  18. package/dist/api/types/anpr.d.ts +19 -2
  19. package/dist/api/types/auditLogs.d.ts +1 -1
  20. package/dist/api/types/authz.d.ts +45 -6
  21. package/dist/api/types/autodesk.d.ts +7 -7
  22. package/dist/api/types/automation.d.ts +37 -3
  23. package/dist/api/types/axios.d.ts +10 -5
  24. package/dist/api/types/bim.d.ts +11 -5
  25. package/dist/api/types/camera.d.ts +94 -79
  26. package/dist/api/types/comments.d.ts +4 -8
  27. package/dist/api/types/company.d.ts +42 -1
  28. package/dist/api/types/compare.d.ts +20 -5
  29. package/dist/api/types/connector.d.ts +3 -5
  30. package/dist/api/types/coolify.d.ts +18 -2
  31. package/dist/api/types/copilot.d.ts +11 -6
  32. package/dist/api/types/credentials.d.ts +1 -0
  33. package/dist/api/types/detections.d.ts +20 -8
  34. package/dist/api/types/drone.d.ts +1 -0
  35. package/dist/api/types/gateReport.d.ts +46 -150
  36. package/dist/api/types/hdd.d.ts +26 -1
  37. package/dist/api/types/index.d.ts +6 -1
  38. package/dist/api/types/ingest.d.ts +90 -2
  39. package/dist/api/types/kit.d.ts +31 -5
  40. package/dist/api/types/media.d.ts +2 -1
  41. package/dist/api/types/notification.d.ts +32 -2
  42. package/dist/api/types/oauth.d.ts +62 -0
  43. package/dist/api/types/planner.d.ts +44 -0
  44. package/dist/api/types/posthog.d.ts +15 -0
  45. package/dist/api/types/procore.d.ts +13 -6
  46. package/dist/api/types/progressPhoto.d.ts +6 -2
  47. package/dist/api/types/project.d.ts +100 -22
  48. package/dist/api/types/recording.d.ts +3 -3
  49. package/dist/api/types/recycleBin.d.ts +1 -1
  50. package/dist/api/types/ring.d.ts +53 -0
  51. package/dist/api/types/router.d.ts +20 -1
  52. package/dist/api/types/shared.d.ts +11 -4
  53. package/dist/api/types/shares.d.ts +6 -144
  54. package/dist/api/types/sim.d.ts +6 -6
  55. package/dist/api/types/siteAnalytics.d.ts +170 -46
  56. package/dist/api/types/smartSeach.d.ts +5 -0
  57. package/dist/api/types/snapshots.d.ts +36 -4
  58. package/dist/api/types/storageProvider.d.ts +19 -0
  59. package/dist/api/types/storyblok.d.ts +40 -0
  60. package/dist/api/types/streaming.d.ts +3 -3
  61. package/dist/api/types/tag.d.ts +1 -1
  62. package/dist/api/types/time.d.ts +0 -18
  63. package/dist/api/types/timelapse.d.ts +5 -5
  64. package/dist/api/types/user.d.ts +101 -31
  65. package/dist/api/types/videoWall.d.ts +21 -21
  66. package/dist/api/types/weather.d.ts +75 -11
  67. package/dist/api/types/widget.d.ts +71 -12
  68. package/dist/api/types/xweather.d.ts +4 -4
  69. package/dist/index.js +971 -860
  70. package/dist/index.js.map +1 -1
  71. package/dist/index.umd.cjs +1 -1
  72. package/dist/index.umd.cjs.map +1 -1
  73. package/dist/shared/types/components.d.ts +113 -9
  74. package/dist/shared/types/imagePlayer.d.ts +2 -2
  75. package/dist/shared/types/index.d.ts +1 -0
  76. package/dist/shared/types/rbac.d.ts +67 -0
  77. package/dist/shared/types/timeline.d.ts +2 -1
  78. package/package.json +2 -2
  79. package/dist/api/types/storageServers.d.ts +0 -4
@@ -1,4 +1,4 @@
1
- import { DateType, Schedule } from "@/types";
1
+ import { DateType, Schedule } from "@evercam/api/types";
2
2
  export declare enum TimelapseStatus {
3
3
  Pending = 11,
4
4
  Completed = 5,
@@ -7,7 +7,8 @@ export declare enum TimelapseStatus {
7
7
  export declare enum TimelapseDuration {
8
8
  ThirtySeconds = 30,
9
9
  SixtySeconds = 60,
10
- NintySeconds = 90
10
+ NintySeconds = 90,
11
+ TwoMinutes = 120
11
12
  }
12
13
  export type TimelapseVideoOptions = {
13
14
  width?: number;
@@ -24,13 +25,12 @@ export type TimestampPositionCoordinates = {
24
25
  h: number;
25
26
  };
26
27
  export type TimelapseLogoOptions = {
27
- id: number;
28
+ id?: number;
28
29
  x: number;
29
30
  y: number;
30
31
  width: number;
31
32
  height: number;
32
33
  };
33
- export type TimelapseSchedules = string | Schedule;
34
34
  export declare enum TimelapseScheduleType {
35
35
  Continuous = "continuous",
36
36
  WorkingHours = "workingHours",
@@ -56,7 +56,7 @@ export type TimelapseFilterQueryParams = {
56
56
  to?: DateType;
57
57
  period?: TimelapsePeriod;
58
58
  duration?: number;
59
- schedule?: TimelapseSchedules;
59
+ schedule?: Schedule;
60
60
  };
61
61
  export type TimelapseCreationRequestPayload = {
62
62
  title: string;
@@ -1,4 +1,5 @@
1
- import type { DateTime, PaginationParams } from "@/types";
1
+ import type { CameraExid, PaginationParams } from "@evercam/api/types";
2
+ import { Role, RoleSubRole } from "@evercam/api/types/authz";
2
3
  export type User = {
3
4
  id?: number;
4
5
  fullname?: string;
@@ -9,10 +10,16 @@ export type User = {
9
10
  country: string;
10
11
  isAdmin: boolean;
11
12
  persona: Persona;
12
- companyId?: string;
13
+ companyId?: string | number;
13
14
  companyName?: string;
14
15
  companyExid?: string;
15
16
  features?: Array<UserFeatureFlag>;
17
+ confirmedAt?: string;
18
+ createdAt?: string;
19
+ lastLoginAt?: string;
20
+ token?: string;
21
+ updatedAt?: string;
22
+ evercamAccount?: boolean;
16
23
  };
17
24
  export type AdminUser = {
18
25
  id: number;
@@ -32,9 +39,9 @@ export type AdminUser = {
32
39
  camerasOwned: number;
33
40
  countryId: number;
34
41
  countryName: string;
35
- createdAt: DateTime;
42
+ createdAt: string;
36
43
  integrations: string[];
37
- lastSeenAt: DateTime;
44
+ lastSeenAt: string;
38
45
  lastLoginAt: string;
39
46
  lastname: string;
40
47
  persona: string;
@@ -48,7 +55,6 @@ export declare enum UserFeatureFlag {
48
55
  CompanyAdmin = "company-admin",
49
56
  VideoWalls = "video-walls",
50
57
  MassCameraSharing = "mass-camera-sharing",
51
- Copilot = "copilot",
52
58
  ProjectSharing = "project-sharing"
53
59
  }
54
60
  export type ProjectUser = User & {
@@ -89,26 +95,44 @@ export type RemotePasswordUpdateRequestPayload = {
89
95
  currentPassword: string;
90
96
  newPassword: string;
91
97
  };
92
- export type LoginResponsePayload = {
93
- confirmedAt?: string;
94
- country?: string;
95
- createdAt?: string;
96
- email?: string;
97
- firstname?: string;
98
- id?: string;
99
- isAdmin?: boolean;
100
- lastLoginAt?: string;
101
- lastname?: string;
102
- persona?: Persona;
103
- telephone?: string;
104
- token?: string;
105
- updatedAt?: string;
106
- evercamAccount?: string;
98
+ export type AuthPasswordOption = {
99
+ type: "password";
100
+ };
101
+ export type AuthSsoOption = {
102
+ type: "sso";
103
+ name: string;
104
+ scope: string;
105
+ prompt: string | null;
106
+ exid: string;
107
+ clientId: string;
108
+ iconUrl: string;
109
+ loginUrl: string;
110
+ responseType: string;
111
+ };
112
+ export type AuthOption = AuthPasswordOption | AuthSsoOption;
113
+ export type AuthOptionsResponsePayload = {
114
+ options: AuthOption[];
115
+ };
116
+ export type AuthProviderConfigPayload = {
117
+ name: string;
118
+ scope: string;
119
+ prompt: string | null;
120
+ exid: string;
121
+ clientId: string;
122
+ iconUrl: string;
123
+ loginUrl: string;
124
+ responseType: string;
107
125
  };
108
126
  export type LogoutParams = {
109
127
  token: string;
110
128
  fromAdmin?: boolean;
111
129
  };
130
+ export type ConfirmUserRequestPayload = {
131
+ c: string;
132
+ };
133
+ export type DeleteActiveSessionRequestPayload = {
134
+ authorization: string;
135
+ };
112
136
  export type UserSession = {
113
137
  browser: string;
114
138
  createdAt: string;
@@ -177,6 +201,16 @@ export type GoogleAuthRequestPayload = {
177
201
  code: string;
178
202
  redirectUri: string;
179
203
  };
204
+ export type ProjectContact = {
205
+ name: string;
206
+ role: ContactRole | string;
207
+ email?: string;
208
+ phone?: string;
209
+ photo?: string;
210
+ };
211
+ export type ProjectContactsResponsePayload = {
212
+ data: ProjectContact[];
213
+ };
180
214
  export type UserStatsResponse = {
181
215
  data: {
182
216
  userStats: AdminUser;
@@ -197,7 +231,7 @@ export type UserProject = {
197
231
  id: number;
198
232
  exid: string;
199
233
  name: string;
200
- startedAt: DateTime;
234
+ startedAt: string;
201
235
  };
202
236
  export type UserProjectResponse = {
203
237
  data: UserProject[];
@@ -217,9 +251,9 @@ export type Admin = {
217
251
  id: number;
218
252
  fullname: string;
219
253
  email: string;
220
- createdAt: DateTime;
221
- updatedAt: DateTime;
222
- lastSignInAt: DateTime;
254
+ createdAt: string;
255
+ updatedAt: string;
256
+ lastSignInAt: string;
223
257
  signInCount: number;
224
258
  lastSignInIp: string;
225
259
  apiId: string;
@@ -231,17 +265,17 @@ export type ImpersonateUserResponse = {
231
265
  lastname: string;
232
266
  telephone: string;
233
267
  email: string;
234
- is_admin: boolean;
268
+ isAdmin: boolean;
235
269
  persona: Persona;
236
270
  country: string;
237
271
  companyId: number;
238
272
  companyExid: string;
239
273
  companyName: string;
240
274
  evercamAccount: boolean;
241
- createdAt: DateTime;
242
- updatedAt: DateTime;
243
- confirmedAt: DateTime;
244
- last_loginAt: DateTime;
275
+ createdAt: string;
276
+ updatedAt: string;
277
+ confirmedAt: string;
278
+ lastLoginAt: string;
245
279
  features: UserFeatureFlag[];
246
280
  token: string;
247
281
  };
@@ -270,6 +304,42 @@ export type Suppression = {
270
304
  id: number;
271
305
  email: string;
272
306
  source: string;
273
- insertedAt: DateTime;
274
- updatedAt: DateTime;
307
+ insertedAt: string;
308
+ updatedAt: string;
309
+ };
310
+ type Email = string;
311
+ export type WsAccessRestrictionUpdate = {
312
+ camera_id: CameraExid;
313
+ is_access_restricted: boolean;
314
+ };
315
+ export type WsUserRestrictionItem = {
316
+ user_id: number;
317
+ camera_id: CameraExid;
318
+ is_user_access_restricted: boolean;
319
+ };
320
+ export type WsUserRestrictionUpdate = WsUserRestrictionItem[];
321
+ /**
322
+ * Backend WebSocket event payload:
323
+ * {
324
+ * user: {
325
+ * "someone@domain.com": {camera_id, is_access_restricted} OR [{...}, {...}]
326
+ * }
327
+ * }
328
+ */
329
+ export type WsRestrictionChangedPayload = {
330
+ user: Record<Email, WsAccessRestrictionUpdate | WsUserRestrictionUpdate>;
331
+ };
332
+ export type ProjectUserWithRole = {
333
+ id: number;
334
+ email: string;
335
+ fullname: string;
336
+ company: {
337
+ id: number;
338
+ name: string;
339
+ exid: string;
340
+ };
341
+ permissions: string[];
342
+ role: Role;
343
+ subRoles: RoleSubRole[];
275
344
  };
345
+ export {};
@@ -1,25 +1,16 @@
1
- import { Camera, Media, PaginationParams } from "@/types";
1
+ import { Camera, Media, PaginationParams } from "@evercam/api/types";
2
2
  export declare enum VideoWallItemType {
3
3
  LiveView = "live",
4
4
  Video = "video",
5
5
  Image = "image"
6
6
  }
7
- export type VideoWallItem<T extends Camera | Media> = {
7
+ export type VideoWallItem<T extends Camera | Media = Camera> = {
8
8
  value: T;
9
9
  type: VideoWallItemType;
10
10
  };
11
- export type VideoWallPresetItemConfig = {
12
- camera: Camera;
13
- h: number;
14
- i: string | number;
15
- moved: boolean;
16
- w: number;
17
- x: number;
18
- y: number;
19
- };
20
- export type VideoWallPreset = {
21
- name?: string;
22
- configuration: Array<VideoWallPresetItemConfig>;
11
+ export type VideoWallPresetGridConfig = {
12
+ items: VideoWallPresetItem[];
13
+ meta?: VideoWallPresetMeta;
23
14
  };
24
15
  export type VideoWallPresetItem = {
25
16
  i: string | number;
@@ -30,6 +21,14 @@ export type VideoWallPresetItem = {
30
21
  camera: Camera;
31
22
  weather?: Record<string, unknown>;
32
23
  media?: Media;
24
+ moved?: boolean;
25
+ };
26
+ export type VideoWallPresetMeta = {
27
+ colNum: number;
28
+ rowCount: number;
29
+ tile: number;
30
+ template: string;
31
+ gridSize: number;
33
32
  };
34
33
  export type VideoWallSource = "default" | "widget";
35
34
  export interface VideoWall {
@@ -38,8 +37,8 @@ export interface VideoWall {
38
37
  name: string;
39
38
  source: VideoWallSource;
40
39
  config: Record<string, any>;
41
- inserted_at: string;
42
- updated_at: string;
40
+ insertedAt: string;
41
+ updatedAt: string;
43
42
  user: {
44
43
  id: number;
45
44
  firstname: string;
@@ -47,20 +46,21 @@ export interface VideoWall {
47
46
  email: string;
48
47
  };
49
48
  }
50
- export interface ListParams extends PaginationParams {
51
- project_exid?: string;
49
+ export interface VideoWallListParams extends PaginationParams {
50
+ projectExid?: string;
52
51
  id?: number;
53
52
  exid?: string;
54
- project_id?: number;
55
- user_id?: number;
53
+ projectId?: number;
54
+ userId?: number;
56
55
  name?: string;
57
56
  project?: string;
58
57
  user?: string;
59
58
  source?: VideoWallSource;
60
59
  }
61
60
  export type VideoWallCreateUpdatePayload = {
62
- project_exid: string;
61
+ projectExid?: string;
63
62
  name: string;
64
63
  source?: VideoWallSource;
65
64
  config: Record<string, unknown>;
65
+ scope?: string;
66
66
  };
@@ -1,31 +1,95 @@
1
- import { Date_YYYY_MM_DD, DateType } from "@/types/time";
1
+ import { DateType } from "@evercam/api/types/time";
2
2
  export type HistoryWeatherRequestPayload = {
3
3
  day: string;
4
4
  provider: WeatherProvider;
5
5
  };
6
+ export type WeatherReportParams = {
7
+ startDate: string;
8
+ endDate: string;
9
+ weatherConditionIds?: number[];
10
+ minMinTemp?: number;
11
+ maxMinTemp?: number;
12
+ minMaxTemp?: number;
13
+ maxMaxTemp?: number;
14
+ minMinPrecip?: number;
15
+ maxMinPrecip?: number;
16
+ minMaxPrecip?: number;
17
+ maxMaxPrecip?: number;
18
+ minMinWindSpeed?: number;
19
+ maxMinWindSpeed?: number;
20
+ minMaxWindSpeed?: number;
21
+ maxMaxWindSpeed?: number;
22
+ minMinHumidity?: number;
23
+ maxMinHumidity?: number;
24
+ minMaxHumidity?: number;
25
+ maxMaxHumidity?: number;
26
+ minMinPressure?: number;
27
+ maxMinPressure?: number;
28
+ minMaxPressure?: number;
29
+ maxMaxPressure?: number;
30
+ minMinClouds?: number;
31
+ maxMinClouds?: number;
32
+ minMaxClouds?: number;
33
+ maxMaxClouds?: number;
34
+ minMaxUvIndex?: number;
35
+ maxMaxUvIndex?: number;
36
+ };
37
+ export declare enum WeatherReportScope {
38
+ Daily = "daily"
39
+ }
40
+ export type WeatherReportRequestPayload = WeatherReportParams & {
41
+ scope: WeatherReportScope;
42
+ includeRecent: boolean;
43
+ };
6
44
  export type CurrentWeatherRequestPayload = {
7
45
  provider: WeatherProvider;
8
46
  includeForecast?: boolean;
9
47
  forecastDays?: number;
10
48
  };
11
- export type WeatherResponsePayload = Array<{
12
- hour?: number;
13
- temp?: number;
49
+ export type WeatherHourlyItem = {
50
+ chanceoffog: number;
51
+ chanceoffrost: number;
52
+ chanceofhightemp: number;
53
+ chanceofovercast: number;
54
+ chanceofrain: number;
55
+ chanceofremdry: number;
56
+ chanceofsnow: number;
57
+ chanceofsunshine: number;
58
+ chanceofthunder: number;
59
+ chanceofwindy: number;
14
60
  clouds?: number;
61
+ dewpoint: number;
15
62
  feelsLike?: number;
16
- pressure?: number;
63
+ heatindex: number;
64
+ hour?: number;
17
65
  humidity?: number;
18
- windSpeed?: number;
19
- windDegree?: number;
20
- weather?: [WeatherSummary];
66
+ isRequestedWeather?: boolean;
67
+ precip: number;
68
+ pressure?: number;
21
69
  rain?: HourlyReading;
22
70
  snow?: HourlyReading;
23
- }>;
71
+ source: string;
72
+ temp?: number;
73
+ uvIndex: number;
74
+ weather?: WeatherSummary;
75
+ windchill: number;
76
+ windDegree?: number;
77
+ windDir: string;
78
+ windgust: number;
79
+ windSpeed?: number;
80
+ wind?: {
81
+ speed: number;
82
+ };
83
+ };
84
+ export type WeatherResponsePayload = Array<WeatherHourlyItem>;
24
85
  export type WeatherSummary = {
25
86
  id?: number;
26
87
  main?: string;
27
88
  description?: string;
28
- icon?: string;
89
+ temperature?: number;
90
+ icon?: string | string[];
91
+ weatherIndex?: number;
92
+ rain?: HourlyReading;
29
93
  };
30
94
  export type HourlyReading = {
31
95
  "1h"?: number;
@@ -78,7 +142,7 @@ export type WeatherDataResponse = {
78
142
  uvIndex: number;
79
143
  maxHeatindex: number;
80
144
  minTemp: number;
81
- date: Date_YYYY_MM_DD;
145
+ date: string;
82
146
  totalsnow: number;
83
147
  maxPressure: number;
84
148
  maxWindchill: number;
@@ -1,6 +1,6 @@
1
- import type { DateTime } from "@evercam/api/types/time";
2
- import { PaginationParams } from "@/types";
3
- import { VideoWallPresetItemConfig } from "@evercam/api/types/videoWall";
1
+ import { CameraExid, PaginationParams } from "@evercam/api/types";
2
+ import type { JsonObject } from "@evercam/api/types";
3
+ import { VideoWallPresetGridConfig } from "@evercam/api/types/videoWall";
4
4
  export declare enum DelayUnit {
5
5
  Minute = "Minutes",
6
6
  Hour = "Hours",
@@ -79,7 +79,7 @@ export type RecordingsWidgetSettings = CommonWidgetSettings & {
79
79
  delay: number;
80
80
  delayUnit: DelayUnit;
81
81
  hasRange: boolean;
82
- dateRange: [DateTime, DateTime] | null;
82
+ dateRange: [string, string] | null;
83
83
  };
84
84
  export type LiveViewWidgetSettings = CommonWidgetSettings & {
85
85
  fullscreen: boolean;
@@ -92,16 +92,24 @@ export type BimCompareWidgetSettings = CommonWidgetSettings & {
92
92
  timeline: boolean;
93
93
  darkMode: boolean;
94
94
  };
95
- export type VideoWallWidgetSettings = CommonWidgetSettings & {
96
- preset: VideoWallPresetItemConfig;
95
+ export type VideoWallWidgetSettingsObject = CommonWidgetSettings & {
96
+ preset: VideoWallPresetGridConfig;
97
97
  refreshRate: number;
98
+ allowCellFullscreen: boolean;
99
+ allowFitContent: boolean;
100
+ allowForceAspectRatio: boolean;
101
+ allowFullscreen: boolean;
102
+ cameras: CameraExid[];
103
+ description: string;
104
+ global: boolean;
105
+ visibility: string;
98
106
  };
99
107
  export type ThreeSixtyWidgetSettings = CommonWidgetSettings & {
100
108
  dateId: string;
101
109
  floorId: string;
102
110
  markerId: string;
103
111
  };
104
- export type WidgetSettings = RecordingsWidgetSettings | LiveViewWidgetSettings | BimCompareWidgetSettings | VideoWallWidgetSettings | ThreeSixtyWidgetSettings;
112
+ export type WidgetSettings = RecordingsWidgetSettings | LiveViewWidgetSettings | BimCompareWidgetSettings | VideoWallWidgetSettingsObject | ThreeSixtyWidgetSettings;
105
113
  export declare enum WidgetType {
106
114
  LiveWidget = "Live View",
107
115
  Recording = "Recordings",
@@ -148,8 +156,8 @@ export type Widget = {
148
156
  firstname: string;
149
157
  lastname: string;
150
158
  };
151
- insertedAt: DateTime;
152
- updatedAt: DateTime;
159
+ insertedAt: string;
160
+ updatedAt: string;
153
161
  };
154
162
  export type WidgetFull = {
155
163
  id: number;
@@ -174,11 +182,62 @@ export type WidgetFull = {
174
182
  email: string;
175
183
  };
176
184
  settings: WidgetSettings;
177
- sessionSettings: any;
185
+ sessionSettings: JsonObject | null;
178
186
  allowedOrigin: string;
179
187
  domainRestricted: boolean;
180
- insertedAt: DateTime;
181
- updatedAt: DateTime;
188
+ insertedAt: string;
189
+ updatedAt: string;
190
+ };
191
+ export type WidgetSessionSettingsPayload = {
192
+ sessionSettings: JsonObject;
193
+ };
194
+ export type AdminWidgetResourceCamera = {
195
+ id: number;
196
+ exid: string;
197
+ name: string;
198
+ };
199
+ export type AdminWidgetResourceProject = {
200
+ id: number;
201
+ exid: string;
202
+ name: string;
203
+ featureFlags: string[];
204
+ };
205
+ export type AdminWidgetResourcePreset = {
206
+ id: number;
207
+ name: string;
208
+ exid: string;
209
+ config: JsonObject;
210
+ };
211
+ export type AdminWidgetResources = {
212
+ camera?: AdminWidgetResourceCamera | null;
213
+ project?: AdminWidgetResourceProject | null;
214
+ preset?: AdminWidgetResourcePreset | null;
215
+ };
216
+ export type AdminWidgetUser = {
217
+ id: number;
218
+ email: string;
219
+ firstname: string;
220
+ lastname: string;
221
+ };
222
+ export type AdminWidget = {
223
+ id: number;
224
+ active: boolean;
225
+ public: boolean;
226
+ user: AdminWidgetUser;
227
+ description: string | null;
228
+ insertedAt: string;
229
+ updatedAt: string;
230
+ settings: WidgetSettings;
231
+ ressources: AdminWidgetResources;
232
+ seenAt?: string;
233
+ showDashboardLink?: boolean;
234
+ domainRestricted: boolean;
235
+ widgetType: WidgetType;
236
+ allowedOrigin: string | null;
237
+ };
238
+ export type AdminWidgetFull = AdminWidget & {
239
+ widgetKey: string;
240
+ widgetId: string;
182
241
  };
183
242
  export type WidgetPayload = {
184
243
  ressources: {
@@ -4,9 +4,9 @@ export type XWeatherCreatePayload = {
4
4
  clientSecret: string;
5
5
  };
6
6
  export type XWeatherResponse = {
7
- id: number;
8
- provider: string;
7
+ id?: number;
8
+ provider: "xweather";
9
9
  config: object;
10
- insertedAt: string;
11
- updatedAt: string;
10
+ insertedAt?: string;
11
+ updatedAt?: string;
12
12
  };