@placeos/ts-client 4.5.0 → 4.7.0

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 (93) hide show
  1. package/dist/alerts/functions.d.ts +7 -10
  2. package/dist/alerts/interfaces.d.ts +22 -0
  3. package/dist/api.d.ts +32 -19
  4. package/dist/applications/functions.d.ts +2 -5
  5. package/dist/applications/interfaces.d.ts +5 -11
  6. package/dist/assets/assets.class.d.ts +62 -0
  7. package/dist/assets/functions.d.ts +146 -0
  8. package/dist/assets/interfaces.d.ts +38 -0
  9. package/dist/clusters/functions.d.ts +16 -7
  10. package/dist/clusters/interfaces.d.ts +18 -3
  11. package/dist/domains/functions.d.ts +10 -6
  12. package/dist/drivers/functions.d.ts +3 -5
  13. package/dist/drivers/interfaces.d.ts +9 -7
  14. package/dist/edge/functions.d.ts +8 -7
  15. package/dist/index.cjs.js +2 -2
  16. package/dist/index.cjs.js.map +1 -1
  17. package/dist/index.es.js +2695 -2081
  18. package/dist/index.es.js.map +1 -1
  19. package/dist/index.umd.js +3 -3
  20. package/dist/index.umd.js.map +1 -1
  21. package/dist/ldap-sources/functions.d.ts +2 -5
  22. package/dist/metadata/functions.d.ts +8 -9
  23. package/dist/metadata/interfaces.d.ts +18 -4
  24. package/dist/modules/functions.d.ts +10 -4
  25. package/dist/modules/interfaces.d.ts +14 -12
  26. package/dist/oauth-sources/functions.d.ts +2 -5
  27. package/dist/repositories/functions.d.ts +17 -29
  28. package/dist/repositories/interfaces.d.ts +31 -3
  29. package/dist/resources/interface.d.ts +9 -4
  30. package/dist/saml-sources/functions.d.ts +4 -7
  31. package/dist/settings/functions.d.ts +6 -8
  32. package/dist/settings/interfaces.d.ts +7 -0
  33. package/dist/short-url/functions.d.ts +60 -0
  34. package/dist/short-url/interfaces.d.ts +22 -0
  35. package/dist/short-url/short-url.class.d.ts +17 -0
  36. package/dist/signage/interfaces.d.ts +9 -1
  37. package/dist/storages/functions.d.ts +31 -0
  38. package/dist/storages/interfaces.d.ts +6 -0
  39. package/dist/storages/storage.class.d.ts +18 -0
  40. package/dist/systems/functions.d.ts +38 -10
  41. package/dist/systems/interfaces.d.ts +58 -5
  42. package/dist/triggers/functions.d.ts +5 -7
  43. package/dist/triggers/interfaces.d.ts +9 -0
  44. package/dist/users/functions.d.ts +50 -10
  45. package/dist/users/interfaces.d.ts +35 -2
  46. package/dist/webrtc/functions.d.ts +52 -0
  47. package/dist/webrtc/interfaces.d.ts +73 -0
  48. package/dist/zones/functions.d.ts +12 -6
  49. package/dist/zones/interfaces.d.ts +9 -4
  50. package/package.json +1 -1
  51. package/src/alerts/functions.ts +14 -22
  52. package/src/alerts/interfaces.ts +25 -0
  53. package/src/api.ts +148 -3
  54. package/src/applications/functions.ts +4 -7
  55. package/src/applications/interfaces.ts +6 -12
  56. package/src/assets/assets.class.ts +123 -0
  57. package/src/assets/functions.ts +440 -0
  58. package/src/assets/interfaces.ts +41 -0
  59. package/src/clusters/functions.ts +39 -8
  60. package/src/clusters/interfaces.ts +21 -3
  61. package/src/domains/functions.ts +17 -6
  62. package/src/drivers/functions.ts +4 -6
  63. package/src/drivers/interfaces.ts +11 -7
  64. package/src/edge/functions.ts +18 -10
  65. package/src/ldap-sources/functions.ts +4 -7
  66. package/src/metadata/functions.ts +16 -10
  67. package/src/metadata/interfaces.ts +20 -4
  68. package/src/modules/functions.ts +29 -7
  69. package/src/modules/interfaces.ts +15 -12
  70. package/src/oauth-sources/functions.ts +4 -7
  71. package/src/repositories/functions.ts +35 -35
  72. package/src/repositories/interfaces.ts +35 -3
  73. package/src/resources/interface.ts +9 -4
  74. package/src/saml-sources/functions.ts +6 -9
  75. package/src/settings/functions.ts +14 -10
  76. package/src/settings/interfaces.ts +8 -0
  77. package/src/short-url/functions.ts +155 -0
  78. package/src/short-url/interfaces.ts +25 -0
  79. package/src/short-url/short-url.class.ts +33 -0
  80. package/src/signage/interfaces.ts +10 -1
  81. package/src/storages/functions.ts +88 -0
  82. package/src/storages/interfaces.ts +7 -0
  83. package/src/storages/storage.class.ts +34 -0
  84. package/src/systems/functions.ts +113 -13
  85. package/src/systems/interfaces.ts +65 -5
  86. package/src/triggers/functions.ts +9 -8
  87. package/src/triggers/interfaces.ts +10 -0
  88. package/src/users/functions.ts +104 -9
  89. package/src/users/interfaces.ts +40 -2
  90. package/src/webrtc/functions.ts +120 -0
  91. package/src/webrtc/interfaces.ts +77 -0
  92. package/src/zones/functions.ts +28 -7
  93. package/src/zones/interfaces.ts +10 -4
@@ -1,7 +1,11 @@
1
1
  import { create, query, remove, show, update } from '../api';
2
- import { PlaceResourceQueryOptions } from '../resources/interface';
3
2
  import { PlaceAlert } from './alert';
4
3
  import { PlaceAlertDashboard } from './dashboard';
4
+ import {
5
+ PlaceAlertDashboardQueryOptions,
6
+ PlaceAlertQueryOptions,
7
+ PlaceAlertShowOptions,
8
+ } from './interfaces';
5
9
 
6
10
  ///////////////////////////////////////////////////////////////
7
11
  ///////////////////// Alert Dashboards ////////////////////
@@ -22,7 +26,7 @@ function processDashboard(item: Partial<PlaceAlertDashboard>) {
22
26
  * @param query_params Query parameters to add the to request URL
23
27
  */
24
28
  export function queryAlertDashboards(
25
- query_params: PlaceResourceQueryOptions = {},
29
+ query_params: PlaceAlertDashboardQueryOptions = {},
26
30
  ) {
27
31
  return query({
28
32
  query_params,
@@ -34,15 +38,11 @@ export function queryAlertDashboards(
34
38
  /**
35
39
  * Get the data for an alert dashboard
36
40
  * @param id ID of the alert dashboard to retrieve
37
- * @param query_params Query parameters to add the to request URL
38
41
  */
39
- export function showAlertDashboard(
40
- id: string,
41
- query_params: Record<string, any> = {},
42
- ) {
42
+ export function showAlertDashboard(id: string) {
43
43
  return show({
44
44
  id,
45
- query_params,
45
+ query_params: {},
46
46
  fn: processDashboard,
47
47
  path: DASHBOARD_PATH,
48
48
  });
@@ -87,13 +87,9 @@ export function addAlertDashboard(form_data: Partial<PlaceAlertDashboard>) {
87
87
  /**
88
88
  * Remove an alert dashboard from the database
89
89
  * @param id ID of the alert dashboard
90
- * @param query_params Query parameters to add the to request URL
91
90
  */
92
- export function removeAlertDashboard(
93
- id: string,
94
- query_params: Record<string, any> = {},
95
- ) {
96
- return remove({ id, query_params, path: DASHBOARD_PATH });
91
+ export function removeAlertDashboard(id: string) {
92
+ return remove({ id, query_params: {}, path: DASHBOARD_PATH });
97
93
  }
98
94
 
99
95
  /**
@@ -126,7 +122,7 @@ function processAlert(item: Partial<PlaceAlert>) {
126
122
  * Query the available alerts
127
123
  * @param query_params Query parameters to add the to request URL
128
124
  */
129
- export function queryAlerts(query_params: PlaceResourceQueryOptions = {}) {
125
+ export function queryAlerts(query_params: PlaceAlertQueryOptions = {}) {
130
126
  return query({
131
127
  query_params,
132
128
  fn: processAlert,
@@ -139,7 +135,7 @@ export function queryAlerts(query_params: PlaceResourceQueryOptions = {}) {
139
135
  * @param id ID of the alert to retrieve
140
136
  * @param query_params Query parameters to add the to request URL
141
137
  */
142
- export function showAlert(id: string, query_params: Record<string, any> = {}) {
138
+ export function showAlert(id: string, query_params: PlaceAlertShowOptions = {}) {
143
139
  return show({
144
140
  id,
145
141
  query_params,
@@ -187,11 +183,7 @@ export function addAlert(form_data: Partial<PlaceAlert>) {
187
183
  /**
188
184
  * Remove an alert from the database
189
185
  * @param id ID of the alert
190
- * @param query_params Query parameters to add the to request URL
191
186
  */
192
- export function removeAlert(
193
- id: string,
194
- query_params: Record<string, any> = {},
195
- ) {
196
- return remove({ id, query_params, path: ALERT_PATH });
187
+ export function removeAlert(id: string) {
188
+ return remove({ id, query_params: {}, path: ALERT_PATH });
197
189
  }
@@ -0,0 +1,25 @@
1
+ import { PlaceResourceQueryOptions } from '../resources/interface';
2
+
3
+ /** Mapping of available query parameters for the alert dashboards index endpoint */
4
+ export interface PlaceAlertDashboardQueryOptions extends PlaceResourceQueryOptions {
5
+ /** Return dashboards for a specific authority */
6
+ authority_id?: string;
7
+ }
8
+
9
+ /** Mapping of available query parameters for the alerts index endpoint */
10
+ export interface PlaceAlertQueryOptions extends PlaceResourceQueryOptions {
11
+ /** Return alerts for a specific dashboard */
12
+ alert_dashboard_id?: string;
13
+ /** Filter by alert severity */
14
+ severity?: string;
15
+ /** Filter by alert type */
16
+ alert_type?: string;
17
+ /** Filter by enabled status */
18
+ enabled?: boolean;
19
+ }
20
+
21
+ /** Mapping of available query parameters for the alerts show endpoint */
22
+ export interface PlaceAlertShowOptions {
23
+ /** Return the dashboard associated with this alert */
24
+ dashboard?: boolean;
25
+ }
package/src/api.ts CHANGED
@@ -32,6 +32,11 @@ export {
32
32
  updateAlert,
33
33
  updateAlertDashboard,
34
34
  } from './alerts/functions';
35
+ export type {
36
+ PlaceAlertDashboardQueryOptions,
37
+ PlaceAlertQueryOptions,
38
+ PlaceAlertShowOptions,
39
+ } from './alerts/interfaces';
35
40
 
36
41
  export { PlaceApplication } from './applications/application';
37
42
  export {
@@ -56,17 +61,25 @@ export {
56
61
 
57
62
  export { PlaceCluster } from './clusters/cluster';
58
63
  export {
64
+ clusterRebalance,
65
+ clusterVersions,
59
66
  queryClusters,
60
67
  queryProcesses,
61
68
  showCluster,
62
69
  terminateProcess,
63
70
  } from './clusters/functions';
64
- export type { PlaceClusterQueryOptions } from './clusters/interfaces';
71
+ export type {
72
+ PlaceClusterQueryOptions,
73
+ PlaceClusterShowOptions,
74
+ PlaceClusterTerminateOptions,
75
+ PlaceClusterVersions,
76
+ } from './clusters/interfaces';
65
77
  export { PlaceProcess } from './clusters/process';
66
78
 
67
79
  export { PlaceDomain } from './domains/domain';
68
80
  export {
69
81
  addDomain,
82
+ lookupDomainByEmail,
70
83
  queryDomains,
71
84
  removeDomain,
72
85
  showDomain,
@@ -89,11 +102,13 @@ export {
89
102
  export type {
90
103
  PlaceDriverDetails,
91
104
  PlaceDriverQueryOptions,
105
+ PlaceDriverShowOptions,
92
106
  } from './drivers/interfaces';
93
107
 
94
108
  export { PlaceEdge } from './edge/edge';
95
109
  export {
96
110
  addEdge,
111
+ edgeControlUrl,
97
112
  queryEdges,
98
113
  removeEdge,
99
114
  retrieveEdgeToken,
@@ -120,6 +135,8 @@ export {
120
135
  updateMetadata,
121
136
  } from './metadata/functions';
122
137
  export type {
138
+ PlaceMetadataDeleteOptions,
139
+ PlaceMetadataHistoryOptions,
123
140
  PlaceMetadataOptions,
124
141
  PlaceZoneMetadataOptions,
125
142
  } from './metadata/interfaces';
@@ -128,6 +145,7 @@ export { PlaceZoneMetadata } from './metadata/zone-metadata';
128
145
 
129
146
  export {
130
147
  addModule,
148
+ executeOnModule,
131
149
  loadModule,
132
150
  lookupModuleState,
133
151
  moduleRuntimeError,
@@ -143,6 +161,7 @@ export {
143
161
  export type {
144
162
  PlaceModulePingOptions,
145
163
  PlaceModuleQueryOptions,
164
+ PlaceModuleShowOptions,
146
165
  } from './modules/interfaces';
147
166
  export { PlaceModule } from './modules/module';
148
167
 
@@ -166,6 +185,7 @@ export {
166
185
  listRepositoryDefaultBranch,
167
186
  listRepositoryDriverDetails,
168
187
  listRepositoryDrivers,
188
+ listRepositoryFolders,
169
189
  pullRepositoryChanges,
170
190
  queryRepositories,
171
191
  removeRepository,
@@ -175,10 +195,14 @@ export {
175
195
  export { PlaceRepositoryType } from './repositories/interfaces';
176
196
  export type {
177
197
  GitCommitDetails,
198
+ PlaceRemoteRepositoryCommitsQuery,
199
+ PlaceRemoteRepositoryQuery,
178
200
  PlaceRepositoryCommit,
179
201
  PlaceRepositoryCommitQuery,
180
202
  PlaceRepositoryDetailsQuery,
203
+ PlaceRepositoryFoldersQuery,
181
204
  PlaceRepositoryPullQuery,
205
+ PlaceRepositoryQueryOptions,
182
206
  } from './repositories/interfaces';
183
207
  export { PlaceRepository } from './repositories/repository';
184
208
 
@@ -192,6 +216,7 @@ export {
192
216
  update,
193
217
  type QueryResponse,
194
218
  } from './resources/functions';
219
+ export type { PlaceResourceQueryOptions } from './resources/interface';
195
220
  export { PlaceResource } from './resources/resource';
196
221
 
197
222
  export {
@@ -213,7 +238,10 @@ export {
213
238
  updateSettings,
214
239
  } from './settings/functions';
215
240
  export { EncryptionLevel } from './settings/interfaces';
216
- export type { PlaceSettingsQueryOptions } from './settings/interfaces';
241
+ export type {
242
+ PlaceSettingsHistoryOptions,
243
+ PlaceSettingsQueryOptions,
244
+ } from './settings/interfaces';
217
245
  export { PlaceSettings } from './settings/settings';
218
246
 
219
247
  export {
@@ -231,17 +259,28 @@ export {
231
259
  removeSystemModule,
232
260
  removeSystemTrigger,
233
261
  showSystem,
262
+ showSystemTrigger,
234
263
  startSystem,
235
264
  stopSystem,
265
+ systemControlUrl,
266
+ systemMetadata,
236
267
  systemModuleState,
237
268
  systemSettings,
238
269
  updateSystem,
270
+ updateSystemTrigger,
239
271
  } from './systems/functions';
240
272
  export type {
241
273
  PlaceModuleFunction,
242
274
  PlaceModuleFunctionMap,
275
+ PlaceSystemControlOptions,
276
+ PlaceSystemMetadataOptions,
243
277
  PlaceSystemShowOptions,
278
+ PlaceSystemStartStopOptions,
279
+ PlaceSystemTriggerShowOptions,
280
+ PlaceSystemTriggersQueryOptions,
281
+ PlaceSystemUpdateOptions,
244
282
  PlaceSystemsQueryOptions,
283
+ PlaceSystemsWithEmailsOptions,
245
284
  } from './systems/interfaces';
246
285
  export { PlaceSystem } from './systems/system';
247
286
 
@@ -260,6 +299,8 @@ export {
260
299
  } from './triggers/interfaces';
261
300
  export type {
262
301
  ExecuteArgs,
302
+ PlaceTriggerQueryOptions,
303
+ PlaceTriggerShowOptions,
263
304
  TriggerActions,
264
305
  TriggerAtTimeCondition,
265
306
  TriggerComparison,
@@ -278,12 +319,26 @@ export { PlaceTrigger } from './triggers/trigger';
278
319
  export {
279
320
  addUser,
280
321
  currentUser,
322
+ currentUserResourceToken,
323
+ queryUserGroups,
281
324
  queryUsers,
282
325
  removeUser,
326
+ removeUserResourceToken,
327
+ reviveUser,
328
+ searchUserMetadata,
283
329
  showUser,
284
330
  updateUser,
331
+ userMetadata,
332
+ userResourceToken,
285
333
  } from './users/functions';
286
- export type { PlaceUserQueryOptions } from './users/interfaces';
334
+ export type {
335
+ PlaceUserDeleteOptions,
336
+ PlaceUserGroupsOptions,
337
+ PlaceUserMetadataOptions,
338
+ PlaceUserMetadataSearchOptions,
339
+ PlaceUserQueryOptions,
340
+ PlaceUserShowOptions,
341
+ } from './users/interfaces';
287
342
  export { PlaceUser } from './users/user';
288
343
  export type { WorktimePreference } from './users/user';
289
344
 
@@ -296,8 +351,10 @@ export {
296
351
  removeZone,
297
352
  showZone,
298
353
  updateZone,
354
+ zoneMetadata,
299
355
  } from './zones/functions';
300
356
  export type {
357
+ PlaceZoneMetadataQueryOptions,
301
358
  PlaceZoneQueryOptions,
302
359
  PlaceZoneShowOptions,
303
360
  } from './zones/interfaces';
@@ -324,6 +381,8 @@ export {
324
381
  export type {
325
382
  SignageMediaQueryOptions,
326
383
  SignageMetrics,
384
+ SignagePlaylistQueryOptions,
385
+ SignagePlaylistRevisionsOptions,
327
386
  } from './signage/interfaces';
328
387
  export {
329
388
  MediaAnimation,
@@ -377,3 +436,89 @@ export type {
377
436
  SurveyShowOptions,
378
437
  } from './staff/surveys/interfaces';
379
438
  export { Survey, type SurveyPage } from './staff/surveys/model';
439
+
440
+ export {
441
+ PlaceAsset,
442
+ PlaceAssetCategory,
443
+ PlaceAssetPurchaseOrder,
444
+ PlaceAssetType,
445
+ } from './assets/assets.class';
446
+ export {
447
+ addAsset,
448
+ addAssetCategory,
449
+ addAssetPurchaseOrder,
450
+ addAssetType,
451
+ addAssets,
452
+ queryAssetCategories,
453
+ queryAssetPurchaseOrders,
454
+ queryAssetTypes,
455
+ queryAssets,
456
+ removeAsset,
457
+ removeAssetCategory,
458
+ removeAssetPurchaseOrder,
459
+ removeAssetType,
460
+ removeAssets,
461
+ showAsset,
462
+ showAssetCategory,
463
+ showAssetPurchaseOrder,
464
+ showAssetType,
465
+ updateAsset,
466
+ updateAssetCategory,
467
+ updateAssetPurchaseOrder,
468
+ updateAssetType,
469
+ updateAssets,
470
+ } from './assets/functions';
471
+ export type {
472
+ PlaceAssetCategoryQueryOptions,
473
+ PlaceAssetPurchaseOrderQueryOptions,
474
+ PlaceAssetQueryOptions,
475
+ PlaceAssetTypeQueryOptions,
476
+ } from './assets/interfaces';
477
+
478
+ export { PlaceShortUrl } from './short-url/short-url.class';
479
+ export {
480
+ addShortUrl,
481
+ generateQrCode,
482
+ getShortUrlQrCodeSvg,
483
+ qrCodeUrl,
484
+ queryShortUrls,
485
+ removeShortUrl,
486
+ shortUrlQrCodePngUrl,
487
+ shortUrlRedirectUrl,
488
+ showShortUrl,
489
+ updateShortUrl,
490
+ } from './short-url/functions';
491
+ export type {
492
+ PlaceQrCodeOptions,
493
+ PlaceShortUrlPngQrOptions,
494
+ PlaceShortUrlQueryOptions,
495
+ QrCodeFormat,
496
+ } from './short-url/interfaces';
497
+
498
+ export { PlaceStorage, type StorageType } from './storages/storage.class';
499
+ export {
500
+ addStorage,
501
+ queryStorages,
502
+ removeStorage,
503
+ showStorage,
504
+ updateStorage,
505
+ } from './storages/functions';
506
+ export type { PlaceStorageQueryOptions } from './storages/interfaces';
507
+
508
+ export {
509
+ queryWebrtcRooms,
510
+ showWebrtcRoom,
511
+ webrtcGuestEntry,
512
+ webrtcGuestExit,
513
+ webrtcKickUser,
514
+ webrtcSessionMembers,
515
+ webrtcSignallerUrl,
516
+ webrtcTransferUser,
517
+ } from './webrtc/functions';
518
+ export type {
519
+ PlaceGuestParticipant,
520
+ PlaceKickReason,
521
+ PlaceWebrtcMember,
522
+ PlaceWebrtcRoomDetails,
523
+ PlaceWebrtcRoomsQueryOptions,
524
+ } from './webrtc/interfaces';
@@ -1,5 +1,4 @@
1
1
  import { create, query, remove, show, update } from '../resources/functions';
2
- import { HashMap } from '../utilities/types';
3
2
  import { PlaceApplication } from './application';
4
3
  import { PlaceApplicationQueryOptions } from './interfaces';
5
4
 
@@ -26,10 +25,9 @@ export function queryApplications(
26
25
  /**
27
26
  * Get the data for an application
28
27
  * @param id ID of the application to retrieve
29
- * @param query_params Query parameters to add the to request URL
30
28
  */
31
- export function showApplication(id: string, query_params: HashMap = {}) {
32
- return show({ id, query_params, fn: process, path: PATH });
29
+ export function showApplication(id: string) {
30
+ return show({ id, query_params: {}, fn: process, path: PATH });
33
31
  }
34
32
 
35
33
  /**
@@ -66,8 +64,7 @@ export function addApplication(form_data: Partial<PlaceApplication>) {
66
64
  /**
67
65
  * Remove an application from the database
68
66
  * @param id ID of the application
69
- * @param query_params Query parameters to add the to request URL
70
67
  */
71
- export function removeApplication(id: string, query_params: HashMap = {}) {
72
- return remove({ id, query_params, path: PATH });
68
+ export function removeApplication(id: string) {
69
+ return remove({ id, query_params: {}, path: PATH });
73
70
  }
@@ -1,13 +1,7 @@
1
- /* tslint:disable */
2
- /** Mapping of available query paramters for the application index endpoint */
3
- export interface PlaceApplicationQueryOptions {
4
- /**
5
- * Search filter supporting the following syntax
6
- * https://www.elastic.co/guide/en/elasticsearch/reference/5.5/query-dsl-simple-query-string-query.html
7
- */
8
- q?: string;
9
- /** Number of results to return. Defaults to `20`. Max `500` */
10
- limit?: number;
11
- /** Offset the page of results. Max `10000` */
12
- offset?: number;
1
+ import { PlaceResourceQueryOptions } from '../resources/interface';
2
+
3
+ /** Mapping of available query parameters for the OAuth apps index endpoint */
4
+ export interface PlaceApplicationQueryOptions extends PlaceResourceQueryOptions {
5
+ /** The ID of the domain to list applications for */
6
+ authority_id?: string;
13
7
  }
@@ -0,0 +1,123 @@
1
+ export class PlaceAssetCategory {
2
+ readonly id: string;
3
+ readonly parent_category_id: string;
4
+ readonly name: string;
5
+ readonly description: string;
6
+ readonly hidden: boolean;
7
+ readonly created_at: number;
8
+ readonly updated_at: number;
9
+
10
+ constructor(data: Partial<PlaceAssetCategory>) {
11
+ this.id = data.id || '';
12
+ this.parent_category_id = data.parent_category_id || '';
13
+ this.name = data.name || '';
14
+ this.description = data.description || '';
15
+ this.hidden = data.hidden || false;
16
+ this.created_at = data.created_at || 0;
17
+ this.updated_at = data.updated_at || 0;
18
+ }
19
+ }
20
+
21
+ export class PlaceAssetPurchaseOrder {
22
+ readonly id: string;
23
+ readonly purchase_order_number: string;
24
+ readonly invoice_number: string;
25
+ readonly supplier_details: Record<string, string>;
26
+ readonly purchase_date: number;
27
+ readonly unit_price: number;
28
+ readonly expected_service_start_date: number;
29
+ readonly expected_service_end_date: number;
30
+ readonly created_at: number;
31
+ readonly updated_at: number;
32
+
33
+ constructor(data: Partial<PlaceAssetPurchaseOrder>) {
34
+ this.id = data.id || '';
35
+ this.purchase_order_number = data.purchase_order_number || '';
36
+ this.invoice_number = data.invoice_number || '';
37
+ this.supplier_details = data.supplier_details || {};
38
+ this.purchase_date = data.purchase_date || 0;
39
+ this.unit_price = data.unit_price || 0;
40
+ this.expected_service_start_date = data.expected_service_start_date || 0;
41
+ this.expected_service_end_date = data.expected_service_end_date || 0;
42
+ this.created_at = data.created_at || 0;
43
+ this.updated_at = data.updated_at || 0;
44
+ }
45
+ }
46
+
47
+ export class PlaceAssetType {
48
+ readonly id: string;
49
+ readonly category_id: string;
50
+ readonly name: string;
51
+ readonly brand: string;
52
+ readonly description: string;
53
+ readonly model_number: string;
54
+ readonly images: string[];
55
+ readonly created_at: number;
56
+ readonly updated_at: number;
57
+
58
+ constructor(data: Partial<PlaceAssetType>) {
59
+ this.id = data.id || '';
60
+ this.category_id = data.category_id || '';
61
+ this.name = data.name || '';
62
+ this.brand = data.brand || '';
63
+ this.description = data.description || '';
64
+ this.model_number = data.model_number || '';
65
+ this.images = data.images || [];
66
+ this.created_at = data.created_at || 0;
67
+ this.updated_at = data.updated_at || 0;
68
+ }
69
+ }
70
+
71
+ export class PlaceAsset {
72
+ readonly id: string;
73
+ readonly parent_id: string;
74
+ readonly asset_type_id: string;
75
+ readonly purchase_order_id: string;
76
+ readonly zone_id: string;
77
+ readonly identifier: string;
78
+ readonly serial_number: string;
79
+ readonly other_data: Record<string, string>;
80
+ readonly barcode: string;
81
+ readonly name: string;
82
+ readonly client_ids: Record<string, string>;
83
+ readonly map_id: string;
84
+ readonly bookable: boolean;
85
+ readonly accessible: boolean;
86
+ readonly zones: string[];
87
+ readonly place_groups: string[];
88
+ readonly assigned_to: string;
89
+ readonly assigned_name: string;
90
+ readonly features: string[];
91
+ readonly images: string[];
92
+ readonly notes: string;
93
+ readonly security_system_groups: string[];
94
+ readonly created_at: number;
95
+ readonly updated_at: number;
96
+
97
+ constructor(data: Partial<PlaceAsset>) {
98
+ this.id = data.id || '';
99
+ this.parent_id = data.parent_id || '';
100
+ this.asset_type_id = data.asset_type_id || '';
101
+ this.purchase_order_id = data.purchase_order_id || '';
102
+ this.zone_id = data.zone_id || '';
103
+ this.identifier = data.identifier || '';
104
+ this.serial_number = data.serial_number || '';
105
+ this.other_data = data.other_data || {};
106
+ this.barcode = data.barcode || '';
107
+ this.name = data.name || '';
108
+ this.client_ids = data.client_ids || {};
109
+ this.map_id = data.map_id || '';
110
+ this.bookable = data.bookable || false;
111
+ this.accessible = data.accessible || false;
112
+ this.zones = data.zones || [];
113
+ this.place_groups = data.place_groups || [];
114
+ this.assigned_to = data.assigned_to || '';
115
+ this.assigned_name = data.assigned_name || '';
116
+ this.features = data.features || [];
117
+ this.images = data.images || [];
118
+ this.notes = data.notes || '';
119
+ this.security_system_groups = data.security_system_groups || [];
120
+ this.created_at = data.created_at || 0;
121
+ this.updated_at = data.updated_at || 0;
122
+ }
123
+ }