@squonk/account-server-client 2.1.0-rc.2 → 2.1.0-rc.4

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 (77) hide show
  1. package/admin/admin.cjs +14 -7
  2. package/admin/admin.cjs.map +1 -1
  3. package/admin/admin.d.cts +33 -0
  4. package/admin/admin.d.ts +4 -1
  5. package/admin/admin.js +14 -7
  6. package/admin/admin.js.map +1 -1
  7. package/asset/asset.cjs +44 -19
  8. package/asset/asset.cjs.map +1 -1
  9. package/asset/asset.d.cts +243 -0
  10. package/asset/asset.d.ts +49 -23
  11. package/asset/asset.js +37 -12
  12. package/asset/asset.js.map +1 -1
  13. package/{chunk-UZTHSGDT.cjs → chunk-J22A7LHX.cjs} +1 -1
  14. package/chunk-J22A7LHX.cjs.map +1 -0
  15. package/{chunk-3RNIDX7T.js → chunk-UKA7G3OB.js} +1 -1
  16. package/{chunk-3RNIDX7T.js.map → chunk-UKA7G3OB.js.map} +1 -1
  17. package/{custom-instance-35e5d4fd.d.ts → custom-instance-37bb38c1.d.ts} +159 -159
  18. package/event-stream/event-stream.cjs +34 -18
  19. package/event-stream/event-stream.cjs.map +1 -1
  20. package/event-stream/event-stream.d.cts +108 -0
  21. package/event-stream/event-stream.d.ts +16 -4
  22. package/event-stream/event-stream.js +31 -15
  23. package/event-stream/event-stream.js.map +1 -1
  24. package/index.cjs +10 -10
  25. package/index.cjs.map +1 -1
  26. package/index.d.cts +2 -0
  27. package/index.d.ts +1 -1
  28. package/index.js +9 -9
  29. package/index.js.map +1 -1
  30. package/merchant/merchant.cjs +23 -13
  31. package/merchant/merchant.cjs.map +1 -1
  32. package/merchant/merchant.d.cts +57 -0
  33. package/merchant/merchant.d.ts +7 -1
  34. package/merchant/merchant.js +22 -12
  35. package/merchant/merchant.js.map +1 -1
  36. package/organisation/organisation.cjs +50 -25
  37. package/organisation/organisation.cjs.map +1 -1
  38. package/organisation/organisation.d.cts +203 -0
  39. package/organisation/organisation.d.ts +31 -10
  40. package/organisation/organisation.js +44 -19
  41. package/organisation/organisation.js.map +1 -1
  42. package/package.json +12 -12
  43. package/product/product.cjs +80 -44
  44. package/product/product.cjs.map +1 -1
  45. package/product/product.d.cts +280 -0
  46. package/product/product.d.ts +40 -10
  47. package/product/product.js +71 -35
  48. package/product/product.js.map +1 -1
  49. package/src/account-server-api.schemas.ts +268 -276
  50. package/src/admin/admin.ts +72 -78
  51. package/src/asset/asset.ts +453 -560
  52. package/src/event-stream/event-stream.ts +222 -268
  53. package/src/merchant/merchant.ts +125 -136
  54. package/src/organisation/organisation.ts +394 -484
  55. package/src/product/product.ts +557 -682
  56. package/src/state/state.ts +70 -69
  57. package/src/unit/unit.ts +494 -593
  58. package/src/user/user.ts +377 -463
  59. package/state/state.cjs +13 -7
  60. package/state/state.cjs.map +1 -1
  61. package/state/state.d.cts +29 -0
  62. package/state/state.d.ts +4 -1
  63. package/state/state.js +13 -7
  64. package/state/state.js.map +1 -1
  65. package/unit/unit.cjs +59 -28
  66. package/unit/unit.cjs.map +1 -1
  67. package/unit/unit.d.cts +254 -0
  68. package/unit/unit.d.ts +43 -16
  69. package/unit/unit.js +52 -21
  70. package/unit/unit.js.map +1 -1
  71. package/user/user.cjs +52 -21
  72. package/user/user.cjs.map +1 -1
  73. package/user/user.d.cts +220 -0
  74. package/user/user.d.ts +31 -10
  75. package/user/user.js +46 -15
  76. package/user/user.js.map +1 -1
  77. package/chunk-UZTHSGDT.cjs.map +0 -1
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Generated by orval v6.15.0 🍺
2
+ * Generated by orval v6.20.0 🍺
3
3
  * Do not edit manually.
4
4
  * Account Server API
5
5
  * The Informatics Matters Account Server API.
@@ -9,17 +9,17 @@ A service that provides access to the Account Server, which gives *registered* u
9
9
  * OpenAPI spec version: 2.1
10
10
  */
11
11
  export type DetachAssetParams = {
12
- /**
13
- * A Merchant Identity
14
- */
15
- m_id?: QMIdParameter;
12
+ /**
13
+ * A Merchant Identity
14
+ */
15
+ m_id?: QMIdParameter;
16
16
  };
17
17
 
18
18
  export type AttachAssetParams = {
19
- /**
20
- * A Merchant Identity
21
- */
22
- m_id?: QMIdParameter;
19
+ /**
20
+ * A Merchant Identity
21
+ */
22
+ m_id?: QMIdParameter;
23
23
  };
24
24
 
25
25
  /**
@@ -33,48 +33,48 @@ export type QUntilParameter = string;
33
33
  export type QFromParameter = string;
34
34
 
35
35
  export type GetOrganisationChargesParams = {
36
- /**
37
- * A date from which to retrieve assets. This can be a date-time string but it is interpreted as a date, i.e. `2020-01-01T00:00:00Z` is interpreted as `2020-01-01`. Any asset that occurs on ar after this date will be returned. UTC is assumed if no timezone is provided
38
- */
39
- from?: QFromParameter;
40
- /**
41
- * A date where assets prior to this will be returned. This can be a date-time string but it is interpreted as a date, i.e. `2020-01-01T00:00:00Z` is interpreted as `2020-01-01`. Any asset that occurs prior this date will be returned. UTC is assumed if no timezone is provided
42
- */
43
- until?: QUntilParameter;
44
- /**
45
- * A charge Prior Billing Period, 0 implies "current" and -23 is for the period 23 months ago.
46
- */
47
- pbp?: QPbpParameter;
36
+ /**
37
+ * A date from which to retrieve assets. This can be a date-time string but it is interpreted as a date, i.e. `2020-01-01T00:00:00Z` is interpreted as `2020-01-01`. Any asset that occurs on ar after this date will be returned. UTC is assumed if no timezone is provided
38
+ */
39
+ from?: QFromParameter;
40
+ /**
41
+ * A date where assets prior to this will be returned. This can be a date-time string but it is interpreted as a date, i.e. `2020-01-01T00:00:00Z` is interpreted as `2020-01-01`. Any asset that occurs prior this date will be returned. UTC is assumed if no timezone is provided
42
+ */
43
+ until?: QUntilParameter;
44
+ /**
45
+ * A charge Prior Billing Period, 0 implies "current" and -23 is for the period 23 months ago.
46
+ */
47
+ pbp?: QPbpParameter;
48
48
  };
49
49
 
50
50
  export type GetProductChargesParams = {
51
- /**
52
- * A date from which to retrieve assets. This can be a date-time string but it is interpreted as a date, i.e. `2020-01-01T00:00:00Z` is interpreted as `2020-01-01`. Any asset that occurs on ar after this date will be returned. UTC is assumed if no timezone is provided
53
- */
54
- from?: QFromParameter;
55
- /**
56
- * A date where assets prior to this will be returned. This can be a date-time string but it is interpreted as a date, i.e. `2020-01-01T00:00:00Z` is interpreted as `2020-01-01`. Any asset that occurs prior this date will be returned. UTC is assumed if no timezone is provided
57
- */
58
- until?: QUntilParameter;
59
- /**
60
- * A charge Prior Billing Period, 0 implies "current" and -23 is for the period 23 months ago.
61
- */
62
- pbp?: QPbpParameter;
51
+ /**
52
+ * A date from which to retrieve assets. This can be a date-time string but it is interpreted as a date, i.e. `2020-01-01T00:00:00Z` is interpreted as `2020-01-01`. Any asset that occurs on ar after this date will be returned. UTC is assumed if no timezone is provided
53
+ */
54
+ from?: QFromParameter;
55
+ /**
56
+ * A date where assets prior to this will be returned. This can be a date-time string but it is interpreted as a date, i.e. `2020-01-01T00:00:00Z` is interpreted as `2020-01-01`. Any asset that occurs prior this date will be returned. UTC is assumed if no timezone is provided
57
+ */
58
+ until?: QUntilParameter;
59
+ /**
60
+ * A charge Prior Billing Period, 0 implies "current" and -23 is for the period 23 months ago.
61
+ */
62
+ pbp?: QPbpParameter;
63
63
  };
64
64
 
65
65
  export type GetChargesParams = {
66
- /**
67
- * A date from which to retrieve assets. This can be a date-time string but it is interpreted as a date, i.e. `2020-01-01T00:00:00Z` is interpreted as `2020-01-01`. Any asset that occurs on ar after this date will be returned. UTC is assumed if no timezone is provided
68
- */
69
- from?: QFromParameter;
70
- /**
71
- * A date where assets prior to this will be returned. This can be a date-time string but it is interpreted as a date, i.e. `2020-01-01T00:00:00Z` is interpreted as `2020-01-01`. Any asset that occurs prior this date will be returned. UTC is assumed if no timezone is provided
72
- */
73
- until?: QUntilParameter;
74
- /**
75
- * A charge Prior Billing Period, 0 implies "current" and -23 is for the period 23 months ago.
76
- */
77
- pbp?: QPbpParameter;
66
+ /**
67
+ * A date from which to retrieve assets. This can be a date-time string but it is interpreted as a date, i.e. `2020-01-01T00:00:00Z` is interpreted as `2020-01-01`. Any asset that occurs on ar after this date will be returned. UTC is assumed if no timezone is provided
68
+ */
69
+ from?: QFromParameter;
70
+ /**
71
+ * A date where assets prior to this will be returned. This can be a date-time string but it is interpreted as a date, i.e. `2020-01-01T00:00:00Z` is interpreted as `2020-01-01`. Any asset that occurs prior this date will be returned. UTC is assumed if no timezone is provided
72
+ */
73
+ until?: QUntilParameter;
74
+ /**
75
+ * A charge Prior Billing Period, 0 implies "current" and -23 is for the period 23 months ago.
76
+ */
77
+ pbp?: QPbpParameter;
78
78
  };
79
79
 
80
80
  /**
@@ -93,22 +93,22 @@ export type QProductIdParameter = string;
93
93
  export type QUnitIdParameter = string;
94
94
 
95
95
  export type GetAssetParams = {
96
- /**
97
- * A User Identity
98
- */
99
- user_id?: QUserIdParameter;
100
- /**
101
- * A Product Identity
102
- */
103
- product_id?: QProductIdParameter;
104
- /**
105
- * A Unit Identity
106
- */
107
- unit_id?: QUnitIdParameter;
108
- /**
109
- * An Organisation Identity
110
- */
111
- org_id?: QOrgIdParameter;
96
+ /**
97
+ * A User Identity
98
+ */
99
+ user_id?: QUserIdParameter;
100
+ /**
101
+ * A Product Identity
102
+ */
103
+ product_id?: QProductIdParameter;
104
+ /**
105
+ * A Unit Identity
106
+ */
107
+ unit_id?: QUnitIdParameter;
108
+ /**
109
+ * An Organisation Identity
110
+ */
111
+ org_id?: QOrgIdParameter;
112
112
  };
113
113
 
114
114
  /**
@@ -127,71 +127,70 @@ export type QOrgIdParameter = string;
127
127
  export type QPbpParameter = number;
128
128
 
129
129
  export type GetUnitChargesParams = {
130
- /**
131
- * A date from which to retrieve assets. This can be a date-time string but it is interpreted as a date, i.e. `2020-01-01T00:00:00Z` is interpreted as `2020-01-01`. Any asset that occurs on ar after this date will be returned. UTC is assumed if no timezone is provided
132
- */
133
- from?: QFromParameter;
134
- /**
135
- * A date where assets prior to this will be returned. This can be a date-time string but it is interpreted as a date, i.e. `2020-01-01T00:00:00Z` is interpreted as `2020-01-01`. Any asset that occurs prior this date will be returned. UTC is assumed if no timezone is provided
136
- */
137
- until?: QUntilParameter;
138
- /**
139
- * A charge Prior Billing Period, 0 implies "current" and -23 is for the period 23 months ago.
140
- */
141
- pbp?: QPbpParameter;
130
+ /**
131
+ * A date from which to retrieve assets. This can be a date-time string but it is interpreted as a date, i.e. `2020-01-01T00:00:00Z` is interpreted as `2020-01-01`. Any asset that occurs on ar after this date will be returned. UTC is assumed if no timezone is provided
132
+ */
133
+ from?: QFromParameter;
134
+ /**
135
+ * A date where assets prior to this will be returned. This can be a date-time string but it is interpreted as a date, i.e. `2020-01-01T00:00:00Z` is interpreted as `2020-01-01`. Any asset that occurs prior this date will be returned. UTC is assumed if no timezone is provided
136
+ */
137
+ until?: QUntilParameter;
138
+ /**
139
+ * A charge Prior Billing Period, 0 implies "current" and -23 is for the period 23 months ago.
140
+ */
141
+ pbp?: QPbpParameter;
142
142
  };
143
143
 
144
144
  export type ProductPatchBodyBody = {
145
- /** The name you want to give the Product */
146
- name?: string;
147
145
  /** The Product's built-in coin allowance. Product allowances cannot be reduced */
148
146
  allowance?: number;
149
147
  /** The Product's built-in coin limit. If set it must not be less than the allowance. If not set the allowance is used. The existing product limit cannot be reduced */
150
148
  limit?: number;
149
+ /** The name you want to give the Product */
150
+ name?: string;
151
151
  };
152
152
 
153
153
  /**
154
- * The Flavour of the Product. Used only for Project Tier Products. Do not set this for Storage products
154
+ * The Type of Product. Storage subscriptions require an **Allowance** to be defined and the **Flavour** must not be provided.
155
+
156
+ Project Tier subscriptions have built-in allowances and Limits so you must not provide values for these for these products
155
157
  */
156
- export type UnitProductPostBodyBodyFlavour =
157
- (typeof UnitProductPostBodyBodyFlavour)[keyof typeof UnitProductPostBodyBodyFlavour];
158
+ export type UnitProductPostBodyBodyType = typeof UnitProductPostBodyBodyType[keyof typeof UnitProductPostBodyBodyType];
159
+
158
160
 
159
161
  // eslint-disable-next-line @typescript-eslint/no-redeclare
160
- export const UnitProductPostBodyBodyFlavour = {
161
- EVALUATION: "EVALUATION",
162
- BRONZE: "BRONZE",
163
- SILVER: "SILVER",
164
- GOLD: "GOLD",
162
+ export const UnitProductPostBodyBodyType = {
163
+ DATA_MANAGER_PROJECT_TIER_SUBSCRIPTION: 'DATA_MANAGER_PROJECT_TIER_SUBSCRIPTION',
164
+ DATA_MANAGER_STORAGE_SUBSCRIPTION: 'DATA_MANAGER_STORAGE_SUBSCRIPTION',
165
165
  } as const;
166
166
 
167
167
  /**
168
- * The Type of Product. Storage subscriptions require an **Allowance** to be defined and the **Flavour** must not be provided.
169
-
170
- Project Tier subscriptions have built-in allowances and Limits so you must not provide values for these for these products
168
+ * The Flavour of the Product. Used only for Project Tier Products. Do not set this for Storage products
171
169
  */
172
- export type UnitProductPostBodyBodyType =
173
- (typeof UnitProductPostBodyBodyType)[keyof typeof UnitProductPostBodyBodyType];
170
+ export type UnitProductPostBodyBodyFlavour = typeof UnitProductPostBodyBodyFlavour[keyof typeof UnitProductPostBodyBodyFlavour];
171
+
174
172
 
175
173
  // eslint-disable-next-line @typescript-eslint/no-redeclare
176
- export const UnitProductPostBodyBodyType = {
177
- DATA_MANAGER_PROJECT_TIER_SUBSCRIPTION:
178
- "DATA_MANAGER_PROJECT_TIER_SUBSCRIPTION",
179
- DATA_MANAGER_STORAGE_SUBSCRIPTION: "DATA_MANAGER_STORAGE_SUBSCRIPTION",
174
+ export const UnitProductPostBodyBodyFlavour = {
175
+ EVALUATION: 'EVALUATION',
176
+ BRONZE: 'BRONZE',
177
+ SILVER: 'SILVER',
178
+ GOLD: 'GOLD',
180
179
  } as const;
181
180
 
182
181
  export type UnitProductPostBodyBody = {
182
+ /** The Product's coin allowance. You must provide this for Storage products but you must not provide a value for Project Tier Products */
183
+ allowance?: number;
184
+ /** The Flavour of the Product. Used only for Project Tier Products. Do not set this for Storage products */
185
+ flavour?: UnitProductPostBodyBodyFlavour;
186
+ /** The Product's built-in coin limit. If set it must not be less than the allowance. If not set the allowance is used. You can provide this for Storage products but you must not provide a value for Project Tier Products */
187
+ limit?: number;
183
188
  /** The name you want to give the Product */
184
189
  name: string;
185
190
  /** The Type of Product. Storage subscriptions require an **Allowance** to be defined and the **Flavour** must not be provided.
186
191
 
187
192
  Project Tier subscriptions have built-in allowances and Limits so you must not provide values for these for these products */
188
193
  type: UnitProductPostBodyBodyType;
189
- /** The Flavour of the Product. Used only for Project Tier Products. Do not set this for Storage products */
190
- flavour?: UnitProductPostBodyBodyFlavour;
191
- /** The Product's coin allowance. You must provide this for Storage products but you must not provide a value for Project Tier Products */
192
- allowance?: number;
193
- /** The Product's built-in coin limit. If set it must not be less than the allowance. If not set the allowance is used. You can provide this for Storage products but you must not provide a value for Project Tier Products */
194
- limit?: number;
195
194
  };
196
195
 
197
196
  export type UnitPatchBodyBody = {
@@ -205,10 +204,10 @@ export type OrganisationPatchBodyBody = {
205
204
  };
206
205
 
207
206
  export type OrganisationUnitPostBodyBody = {
208
- /** The name of the unit */
209
- name: string;
210
207
  /** The day you would like to be billed for the Unit's Products (a value from 1 and 28) */
211
208
  billing_day: number;
209
+ /** The name of the unit */
210
+ name: string;
212
211
  };
213
212
 
214
213
  export type PersonalUnitPutBodyBody = {
@@ -223,32 +222,32 @@ export type OrganisationPostBodyBody = {
223
222
  owner: string;
224
223
  };
225
224
 
226
- export type AssetPostBodyBodyScope =
227
- (typeof AssetPostBodyBodyScope)[keyof typeof AssetPostBodyBodyScope];
225
+ export type AssetPostBodyBodyScope = typeof AssetPostBodyBodyScope[keyof typeof AssetPostBodyBodyScope];
226
+
228
227
 
229
228
  // eslint-disable-next-line @typescript-eslint/no-redeclare
230
229
  export const AssetPostBodyBodyScope = {
231
- USER: "USER",
232
- PRODUCT: "PRODUCT",
233
- UNIT: "UNIT",
234
- ORGANISATION: "ORGANISATION",
235
- GLOBAL: "GLOBAL",
230
+ USER: 'USER',
231
+ PRODUCT: 'PRODUCT',
232
+ UNIT: 'UNIT',
233
+ ORGANISATION: 'ORGANISATION',
234
+ GLOBAL: 'GLOBAL',
236
235
  } as const;
237
236
 
238
237
  export type AssetPostBodyBody = {
239
- /** The name of the asset. This must be unique within its scope. For example, only one asset can be called "asset-1" within a given Unit. Asset names must be valid RFC 1123 Label Names */
240
- name: string;
241
238
  /** A file containing the content for the asset. You must provide a value here or in content_string */
242
239
  content_file?: Blob;
243
240
  /** The textual content of the asset. You must provide a value here or in content_file */
244
241
  content_string?: string;
242
+ /** An optional description for the Asset */
243
+ description?: string;
244
+ /** The name of the asset. This must be unique within its scope. For example, only one asset can be called "asset-1" within a given Unit. Asset names must be valid RFC 1123 Label Names */
245
+ name: string;
245
246
  scope: AssetPostBodyBodyScope;
246
247
  /** The unique identity based on the Scope of the asset. For example, this will be the Unit ID if it's a UNIT. A scope_id is required if the scope is USER as it will be automatically set to your username. Global assets do not have a scope. */
247
248
  scope_id?: string;
248
249
  /** Is this a secret asset? */
249
250
  secret: boolean;
250
- /** An optional description for the Asset */
251
- description?: string;
252
251
  };
253
252
 
254
253
  export type AssetPatchBodyBody = {
@@ -266,16 +265,19 @@ export interface UserDetail {
266
265
  }
267
266
 
268
267
  export interface UserAccountDetail {
269
- user: UserDetail;
270
- /** Whether the caller has admin privilege */
271
- caller_has_admin_privilege: boolean;
272
268
  /** The roles assigned to the user recognised by the Account Server */
273
269
  account_server_roles: string[];
270
+ /** Whether the caller has admin privilege */
271
+ caller_has_admin_privilege: boolean;
272
+ user: UserDetail;
274
273
  }
275
274
 
276
275
  export interface UnitDetail {
276
+ /** The Unit's billing day */
277
+ billing_day: number;
277
278
  /** Whether the user making the API call is a member of the Unit */
278
279
  caller_is_member: boolean;
280
+ created: string;
279
281
  /** The Unit's unique identity */
280
282
  id: string;
281
283
  /** The Unit's name */
@@ -284,45 +286,43 @@ export interface UnitDetail {
284
286
  owner_id: string;
285
287
  /** True if the Unit is private */
286
288
  private: boolean;
287
- created: string;
288
- /** The Unit's billing day */
289
- billing_day: number;
290
289
  }
291
290
 
292
291
  /**
293
292
  * The kind of Service
294
293
  */
295
- export type MerchantDetailKind =
296
- (typeof MerchantDetailKind)[keyof typeof MerchantDetailKind];
294
+ export type MerchantDetailKind = typeof MerchantDetailKind[keyof typeof MerchantDetailKind];
295
+
297
296
 
298
297
  // eslint-disable-next-line @typescript-eslint/no-redeclare
299
298
  export const MerchantDetailKind = {
300
- DATA_MANAGER: "DATA_MANAGER",
299
+ DATA_MANAGER: 'DATA_MANAGER',
301
300
  } as const;
302
301
 
303
302
  export interface MerchantDetail {
303
+ /** The hostname used by the Service */
304
+ api_hostname: string;
305
+ created: string;
304
306
  /** The unique ID of the Service */
305
307
  id: number;
306
- created: string;
307
308
  /** The kind of Service */
308
309
  kind: MerchantDetailKind;
309
310
  /** The name assigned to the Service */
310
311
  name: string;
311
- /** The hostname used by the Service */
312
- api_hostname: string;
313
312
  }
314
313
 
315
314
  export type MerchantGetResponse = MerchantDetail;
316
315
 
317
316
  export interface MerchantsGetResponse {
318
317
  /** The list of known Merchants
319
- */
318
+ */
320
319
  merchants: MerchantDetail[];
321
320
  }
322
321
 
323
322
  export interface OrganisationDetail {
324
323
  /** Whether the user making the API call is a member of the Unit */
325
324
  caller_is_member: boolean;
325
+ created: string;
326
326
  /** The Organisation's unique ID */
327
327
  id: string;
328
328
  /** The Organisation's name */
@@ -331,32 +331,31 @@ export interface OrganisationDetail {
331
331
  owner_id?: string;
332
332
  /** True if the Unit is private */
333
333
  private: boolean;
334
- created: string;
335
334
  }
336
335
 
337
336
  /**
338
337
  * The kind of service that can use the Product
339
338
  */
340
- export type ProductTypeServiceKind =
341
- (typeof ProductTypeServiceKind)[keyof typeof ProductTypeServiceKind];
339
+ export type ProductTypeServiceKind = typeof ProductTypeServiceKind[keyof typeof ProductTypeServiceKind];
340
+
342
341
 
343
342
  // eslint-disable-next-line @typescript-eslint/no-redeclare
344
343
  export const ProductTypeServiceKind = {
345
- DATA_MANAGER: "DATA_MANAGER",
344
+ DATA_MANAGER: 'DATA_MANAGER',
346
345
  } as const;
347
346
 
348
347
  export interface ProductType {
349
- /** A product type, this is a unique string amongst all types known to the Account Server */
350
- type: string;
351
348
  /** A product flavour. Not all types have a flavour, those that do have a type-specific flavour string */
352
349
  flavour?: string;
353
350
  /** The kind of service that can use the Product */
354
351
  service_kind?: ProductTypeServiceKind;
352
+ /** A product type, this is a unique string amongst all types known to the Account Server */
353
+ type: string;
355
354
  }
356
355
 
357
356
  export type ProductInstanceDetailCoins = {
358
357
  /** The number of coins used
359
- */
358
+ */
360
359
  used: number;
361
360
  };
362
361
 
@@ -365,214 +364,211 @@ export interface ProductInstanceDetail {
365
364
  }
366
365
 
367
366
  /**
368
- * The Product Type flavour. Not all products have flavours
367
+ * The Product Type
369
368
 
370
369
  */
371
- export type ProductDetailFlavour =
372
- (typeof ProductDetailFlavour)[keyof typeof ProductDetailFlavour];
370
+ export type ProductDetailType = typeof ProductDetailType[keyof typeof ProductDetailType];
371
+
373
372
 
374
373
  // eslint-disable-next-line @typescript-eslint/no-redeclare
375
- export const ProductDetailFlavour = {
376
- EVALUATION: "EVALUATION",
377
- BRONZE: "BRONZE",
378
- SILVER: "SILVER",
379
- GOLD: "GOLD",
374
+ export const ProductDetailType = {
375
+ DATA_MANAGER_PROJECT_TIER_SUBSCRIPTION: 'DATA_MANAGER_PROJECT_TIER_SUBSCRIPTION',
376
+ DATA_MANAGER_STORAGE_SUBSCRIPTION: 'DATA_MANAGER_STORAGE_SUBSCRIPTION',
380
377
  } as const;
381
378
 
382
379
  /**
383
- * The Product Type
380
+ * The Product Type flavour. Not all products have flavours
384
381
 
385
382
  */
386
- export type ProductDetailType =
387
- (typeof ProductDetailType)[keyof typeof ProductDetailType];
383
+ export type ProductDetailFlavour = typeof ProductDetailFlavour[keyof typeof ProductDetailFlavour];
384
+
388
385
 
389
386
  // eslint-disable-next-line @typescript-eslint/no-redeclare
390
- export const ProductDetailType = {
391
- DATA_MANAGER_PROJECT_TIER_SUBSCRIPTION:
392
- "DATA_MANAGER_PROJECT_TIER_SUBSCRIPTION",
393
- DATA_MANAGER_STORAGE_SUBSCRIPTION: "DATA_MANAGER_STORAGE_SUBSCRIPTION",
387
+ export const ProductDetailFlavour = {
388
+ EVALUATION: 'EVALUATION',
389
+ BRONZE: 'BRONZE',
390
+ SILVER: 'SILVER',
391
+ GOLD: 'GOLD',
394
392
  } as const;
395
393
 
396
394
  export interface ProductDetail {
397
- /** The Product ID
398
- */
399
- id: string;
400
395
  created: string;
401
- /** The Product Type
402
- */
403
- type: ProductDetailType;
404
396
  /** The Product Type flavour. Not all products have flavours
405
- */
397
+ */
406
398
  flavour?: ProductDetailFlavour;
399
+ /** The Product ID
400
+ */
401
+ id: string;
407
402
  /** The name of the Product
408
- */
403
+ */
409
404
  name?: string;
405
+ /** The Product Type
406
+ */
407
+ type: ProductDetailType;
410
408
  }
411
409
 
412
410
  export interface ProductCoinsDetail {
413
411
  /** The billing allowance. When you exceed this during the current billing period the *cost multiplier* will increase */
414
412
  allowance: number;
415
- /** The limit on your billing period spend. You can exceed the allowance but you cannot exceed the spend limit. Once reached the dependent may be restricted */
416
- limit: number;
417
- /** The total number of coins consumed (in this billing period), excluding the coins that have been consumed for the current day */
418
- used: number;
413
+ /** A multiplier applied to your coin usage within your allowance */
414
+ allowance_multiplier: number;
419
415
  /** True if the product is operating at or beyond its coin limit. When it is authority to perform actions using the product are severely limited. */
420
416
  at_limit: boolean;
421
- /** The current burn rate, the approximate amount of coins you are currently consuming each day */
422
- current_burn_rate: number;
423
- /** The predicted billing period amount, if costs continue at the current burn rate until the end of the billing period */
424
- billing_prediction: number;
425
417
  /** The day of the month when the bill is due, and the end of the current billing period */
426
418
  billing_day: number;
427
- /** A multiplier applied to your coin usage within your allowance */
428
- allowance_multiplier: number;
419
+ /** The predicted billing period amount, if costs continue at the current burn rate until the end of the billing period */
420
+ billing_prediction: number;
421
+ /** The current burn rate, the approximate amount of coins you are currently consuming each day */
422
+ current_burn_rate: number;
423
+ /** The limit on your billing period spend. You can exceed the allowance but you cannot exceed the spend limit. Once reached the dependent may be restricted */
424
+ limit: number;
429
425
  /** A multiplier that will be applied to coin used beyond your allowance */
430
426
  overspend_multiplier: number;
431
427
  /** The number of days remaining, in the current billing period */
432
428
  remaining_days: number;
429
+ /** The total number of coins consumed (in this billing period), excluding the coins that have been consumed for the current day */
430
+ used: number;
433
431
  }
434
432
 
435
433
  export interface ProductClaimDetail {
436
434
  /** The service-specific ID that is using this Subscription
437
- */
435
+ */
438
436
  id: string;
439
437
  /** A name for the service-specific ID
440
- */
438
+ */
441
439
  name?: string;
442
440
  }
443
441
 
444
- export type ProductDmStorageDetailCoins = {
445
- /** The number of coins currently committed for the current day. This is added to the accumulated coins at the start of each day */
446
- used: number;
447
- /** The coin cost of a 'unit' of storage or part thereof. The unit size is defined in the storage section of the response */
448
- unit_cost: number;
449
- };
450
-
451
442
  export type ProductDmStorageDetailSize = {
452
- /** The humanised size of the peak storage used for the current day. The value is reset at the start of each day */
453
- peak: string;
454
443
  /** The humanised size of the current storage used for the current day and used to calculate the 'burn rate' */
455
444
  current: string;
445
+ /** The humanised size of the peak storage used for the current day. The value is reset at the start of each day */
446
+ peak: string;
456
447
  /** The humanised storage unit. The cost of storage is based on the daily peak of the number of units (or part thereof) used */
457
448
  unit_size: string;
458
449
  /** The peak number of storage units used today */
459
450
  units_used: number;
460
451
  };
461
452
 
453
+ export type ProductDmStorageDetailCoins = {
454
+ /** The coin cost of a 'unit' of storage or part thereof. The unit size is defined in the storage section of the response */
455
+ unit_cost: number;
456
+ /** The number of coins currently committed for the current day. This is added to the accumulated coins at the start of each day */
457
+ used: number;
458
+ };
459
+
462
460
  export interface ProductDmStorageDetail {
463
- size: ProductDmStorageDetailSize;
464
461
  coins: ProductDmStorageDetailCoins;
462
+ size: ProductDmStorageDetailSize;
465
463
  }
466
464
 
467
465
  export interface ProductDmProjectTier {
468
- product: ProductDetail;
469
- organisation: OrganisationDetail;
470
- unit: UnitDetail;
471
- storage: ProductDmStorageDetail;
472
- coins: ProductCoinsDetail;
473
- instance: ProductInstanceDetail;
466
+ claim?: ProductClaimDetail;
474
467
  /** True if the product can be (needs to be) claimed. */
475
468
  claimable: boolean;
476
- claim?: ProductClaimDetail;
469
+ coins: ProductCoinsDetail;
470
+ instance: ProductInstanceDetail;
471
+ organisation: OrganisationDetail;
472
+ product: ProductDetail;
473
+ storage: ProductDmStorageDetail;
474
+ unit: UnitDetail;
477
475
  }
478
476
 
479
477
  export interface ProductDmStorage {
480
- product: ProductDetail;
481
- organisation: OrganisationDetail;
482
- unit: UnitDetail;
483
- storage: ProductDmStorageDetail;
484
- coins: ProductCoinsDetail;
485
478
  /** True if the product can be (needs to be) claimed. */
486
479
  claimable: boolean;
480
+ coins: ProductCoinsDetail;
481
+ organisation: OrganisationDetail;
482
+ product: ProductDetail;
483
+ storage: ProductDmStorageDetail;
484
+ unit: UnitDetail;
487
485
  }
488
486
 
489
- export interface ChargeAdditionalData {
490
- [key: string]: any;
491
- }
487
+ export interface ChargeAdditionalData { [key: string]: any }
492
488
 
493
489
  export interface StorageChargeItem {
494
- item_number: number;
495
- /** The date and time of the processing charge */
496
- date: string;
497
- /** The coin-cost of the storage */
498
- coins: string;
490
+ additional_data?: ChargeAdditionalData;
499
491
  /** The date when the charges concluded */
500
492
  closed?: string;
501
- additional_data?: ChargeAdditionalData;
493
+ /** The coin-cost of the storage */
494
+ coins: string;
495
+ /** The date and time of the processing charge */
496
+ date: string;
497
+ item_number: number;
502
498
  }
503
499
 
504
500
  export interface StorageCharges {
505
- num_items: number;
506
501
  items: StorageChargeItem[];
502
+ num_items: number;
507
503
  }
508
504
 
509
505
  export interface ProcessingChargeItem {
506
+ additional_data?: ChargeAdditionalData;
507
+ /** The coin-cost of the storage */
508
+ coins: string;
510
509
  /** The charge record number */
511
510
  id: number;
511
+ name?: string;
512
512
  /** The most recent sequence number for this charge */
513
513
  sqn: number;
514
- name?: string;
515
- username: string;
516
514
  /** The date and time of the processing charge */
517
515
  timestamp: string;
518
- /** The coin-cost of the storage */
519
- coins: string;
520
- additional_data?: ChargeAdditionalData;
516
+ username: string;
521
517
  }
522
518
 
523
- export type ProcessingChargesMerchantKind =
524
- (typeof ProcessingChargesMerchantKind)[keyof typeof ProcessingChargesMerchantKind];
519
+ export type ProcessingChargesMerchantKind = typeof ProcessingChargesMerchantKind[keyof typeof ProcessingChargesMerchantKind];
520
+
525
521
 
526
522
  // eslint-disable-next-line @typescript-eslint/no-redeclare
527
523
  export const ProcessingChargesMerchantKind = {
528
- DATA_MANAGER: "DATA_MANAGER",
524
+ DATA_MANAGER: 'DATA_MANAGER',
529
525
  } as const;
530
526
 
531
527
  export interface ProcessingCharges {
532
- merchant_name: string;
533
- merchant_kind: ProcessingChargesMerchantKind;
534
- merchant_api_hostname: string;
528
+ charge: ProcessingChargeItem;
535
529
  /** The date when the process stopped */
536
530
  closed?: string;
537
531
  /** True if no further change to the charges can occur. Typically True after the charge has been closed for a pre-configured period of time. */
538
532
  final: boolean;
533
+ merchant_api_hostname: string;
534
+ merchant_kind: ProcessingChargesMerchantKind;
535
+ merchant_name: string;
539
536
  /** True if charges were received after the charge record was finalised */
540
537
  post_final_charges?: boolean;
541
- charge: ProcessingChargeItem;
542
538
  }
543
539
 
544
- export type AssetDetailScope =
545
- (typeof AssetDetailScope)[keyof typeof AssetDetailScope];
540
+ export type AssetDetailScope = typeof AssetDetailScope[keyof typeof AssetDetailScope];
541
+
546
542
 
547
543
  // eslint-disable-next-line @typescript-eslint/no-redeclare
548
544
  export const AssetDetailScope = {
549
- USER: "USER",
550
- PRODUCT: "PRODUCT",
551
- UNIT: "UNIT",
552
- ORGANISATION: "ORGANISATION",
553
- GLOBAL: "GLOBAL",
545
+ USER: 'USER',
546
+ PRODUCT: 'PRODUCT',
547
+ UNIT: 'UNIT',
548
+ ORGANISATION: 'ORGANISATION',
549
+ GLOBAL: 'GLOBAL',
554
550
  } as const;
555
551
 
556
552
  export interface AssetDetail {
553
+ content: string;
554
+ content_modified?: string;
555
+ created: string;
557
556
  creator: string;
557
+ description?: string;
558
+ disabled: boolean;
558
559
  id: string;
560
+ merchants: MerchantDetail[];
559
561
  name: string;
560
562
  scope: AssetDetailScope;
561
563
  scope_id: string;
562
564
  secret: boolean;
563
- disabled: boolean;
564
- content: string;
565
- created: string;
566
- content_modified?: string;
567
- description?: string;
568
- merchants: MerchantDetail[];
569
565
  }
570
566
 
571
567
  export type UserAccountGetResponse = UserAccountDetail;
572
568
 
573
569
  export interface UnitsGetResponse {
574
570
  /** A list of Units
575
- */
571
+ */
576
572
  units: OrganisationUnitsGetResponse[];
577
573
  }
578
574
 
@@ -586,26 +582,26 @@ export interface UnitProductPostResponse {
586
582
  /**
587
583
  * The type of charge
588
584
  */
589
- export type ChargeSummaryType =
590
- (typeof ChargeSummaryType)[keyof typeof ChargeSummaryType];
585
+ export type ChargeSummaryType = typeof ChargeSummaryType[keyof typeof ChargeSummaryType];
586
+
591
587
 
592
588
  // eslint-disable-next-line @typescript-eslint/no-redeclare
593
589
  export const ChargeSummaryType = {
594
- PROCESSING: "PROCESSING",
595
- STORAGE: "STORAGE",
590
+ PROCESSING: 'PROCESSING',
591
+ STORAGE: 'STORAGE',
596
592
  } as const;
597
593
 
598
594
  export interface ChargeSummary {
599
- /** The type of charge */
600
- type: ChargeSummaryType;
601
595
  /** The cost, in coins of the charge */
602
596
  coins: string;
597
+ /** The type of charge */
598
+ type: ChargeSummaryType;
603
599
  }
604
600
 
605
601
  export interface UnitProductChargeSummary {
602
+ charges: ChargeSummary[];
606
603
  product_id: string;
607
604
  product_type: string;
608
- charges: ChargeSummary[];
609
605
  }
610
606
 
611
607
  export interface UnitChargeSummary {
@@ -613,31 +609,29 @@ export interface UnitChargeSummary {
613
609
  }
614
610
 
615
611
  export interface UnitChargesGetResponse {
612
+ billing_day: number;
616
613
  /** Whether the user making the API call is a member of the Unit */
617
614
  caller_is_member: boolean;
618
- unit_id: string;
615
+ coins: string;
616
+ created: string;
617
+ /** The start of the charge period */
618
+ from: string;
619
619
  name?: string;
620
620
  /** The Unit's owner (a username) */
621
621
  owner_id: string;
622
622
  /** True if the Unit is private */
623
623
  private: boolean;
624
- created: string;
625
- coins: string;
626
- billing_day: number;
627
- /** The start of the charge period */
628
- from: string;
624
+ products: UnitProductChargeSummary[];
625
+ summary: UnitChargeSummary;
626
+ unit_id: string;
629
627
  /** The date where of first day after the charge period */
630
628
  until: string;
631
- summary: UnitChargeSummary;
632
- products: UnitProductChargeSummary[];
633
629
  }
634
630
 
635
631
  /**
636
632
  * The Unit's Product
637
633
  */
638
- export type ProductUnitGetResponseProduct =
639
- | ProductDmStorage
640
- | ProductDmProjectTier;
634
+ export type ProductUnitGetResponseProduct = ProductDmStorage | ProductDmProjectTier;
641
635
 
642
636
  export interface ProductUnitGetResponse {
643
637
  /** The Unit's Product */
@@ -651,48 +645,45 @@ export interface ProductsGetTypesResponse {
651
645
 
652
646
  export type ProductsGetDefaultStorageCostDefaultStorageCost = {
653
647
  cost: string;
654
- units: string;
655
648
  description: string;
649
+ units: string;
656
650
  };
657
651
 
658
652
  export interface ProductsGetDefaultStorageCost {
659
653
  default_storage_cost: ProductsGetDefaultStorageCostDefaultStorageCost;
660
654
  }
661
655
 
662
- export type ProductsGetResponseProductsItem =
663
- | ProductDmStorage
664
- | ProductDmProjectTier;
656
+ export type ProductsGetResponseProductsItem = ProductDmStorage | ProductDmProjectTier;
665
657
 
666
658
  export interface ProductsGetResponse {
667
659
  /** All the Products you have access to */
668
660
  products: ProductsGetResponseProductsItem[];
669
661
  }
670
662
 
671
- export type ProductChargesGetResponseProductType =
672
- (typeof ProductChargesGetResponseProductType)[keyof typeof ProductChargesGetResponseProductType];
663
+ export type ProductChargesGetResponseProductType = typeof ProductChargesGetResponseProductType[keyof typeof ProductChargesGetResponseProductType];
664
+
673
665
 
674
666
  // eslint-disable-next-line @typescript-eslint/no-redeclare
675
667
  export const ProductChargesGetResponseProductType = {
676
- DATA_MANAGER_PROJECT_TIER_SUBSCRIPTION:
677
- "DATA_MANAGER_PROJECT_TIER_SUBSCRIPTION",
678
- DATA_MANAGER_STORAGE_SUBSCRIPTION: "DATA_MANAGER_STORAGE_SUBSCRIPTION",
668
+ DATA_MANAGER_PROJECT_TIER_SUBSCRIPTION: 'DATA_MANAGER_PROJECT_TIER_SUBSCRIPTION',
669
+ DATA_MANAGER_STORAGE_SUBSCRIPTION: 'DATA_MANAGER_STORAGE_SUBSCRIPTION',
679
670
  } as const;
680
671
 
681
672
  export interface ProductChargesGetResponse {
682
- product_id: string;
683
- product_type: ProductChargesGetResponseProductType;
684
673
  billing_day: number;
674
+ claim?: ProductClaimDetail;
685
675
  /** True if the product can be (needs to be) claimed. */
686
676
  claimable: boolean;
687
- claim?: ProductClaimDetail;
688
- /** The start of the charge period */
689
- from: string;
690
- /** The date where of first day after the charge period */
691
- until: string;
692
677
  /** The total number of coins consumed by this product for the invoice period */
693
678
  coins: string;
679
+ /** The start of the charge period */
680
+ from: string;
694
681
  processing_charges: ProcessingCharges[];
682
+ product_id: string;
683
+ product_type: ProductChargesGetResponseProductType;
695
684
  storage_charges: StorageCharges;
685
+ /** The date where of first day after the charge period */
686
+ until: string;
696
687
  }
697
688
 
698
689
  export type OrganisationGetResponse = OrganisationDetail;
@@ -703,20 +694,20 @@ export interface OrganisationsGetResponse {
703
694
  }
704
695
 
705
696
  export interface OrganisationUnitChargeSummary {
706
- unit_id: string;
707
- name: string;
708
697
  billing_day: number;
709
698
  /** The start of the charge period */
710
699
  from: string;
700
+ name: string;
701
+ summary: ChargeSummary[];
702
+ unit_id: string;
711
703
  /** The date where of first day after the charge period */
712
704
  until: string;
713
- summary: ChargeSummary[];
714
705
  }
715
706
 
716
707
  export interface OrganisationChargesGetResponse {
717
- organisation_id: string;
718
- name: string;
719
708
  coins: string;
709
+ name: string;
710
+ organisation_id: string;
720
711
  summary: ChargeSummary[];
721
712
  unit_charges: OrganisationUnitChargeSummary[];
722
713
  }
@@ -724,21 +715,21 @@ export interface OrganisationChargesGetResponse {
724
715
  export interface OrganisationUnitsGetResponse {
725
716
  organisation: OrganisationDetail;
726
717
  /** A list of Units
727
- */
718
+ */
728
719
  units: UnitDetail[];
729
720
  }
730
721
 
731
722
  export interface OrganisationChargeSummary {
732
- organisation_id: string;
733
723
  name: string;
724
+ organisation_id: string;
734
725
  summary: ChargeSummary[];
735
726
  }
736
727
 
737
728
  export interface PersonalUnitPutResponse {
738
- /** The unit's Organisation. Used to identify the Default organisation */
739
- organisation_id: string;
740
729
  /** The unit's unique ID */
741
730
  id: string;
731
+ /** The unit's Organisation. Used to identify the Default organisation */
732
+ organisation_id: string;
742
733
  }
743
734
 
744
735
  export interface OrganisationUnitPostResponse {
@@ -749,23 +740,23 @@ export interface OrganisationUnitPostResponse {
749
740
  export interface OrganisationGetDefaultResponse {
750
741
  /** Whether the user making the API call is a member of the Default Organisation. Only admin users are members of the Default organisation */
751
742
  caller_is_member: boolean;
743
+ created: string;
752
744
  /** The Default Organisation ID
753
- */
745
+ */
754
746
  id: string;
755
747
  /** The Default Organisation Name
756
- */
748
+ */
757
749
  name: string;
758
750
  /** True if the Organisation is private. The Default organisation is always public, although it does not contain a membership (unless you're admin) and only houses Personal Units
759
- */
751
+ */
760
752
  private: boolean;
761
- created: string;
762
753
  }
763
754
 
764
755
  export interface UsersGetResponse {
765
756
  organisation?: OrganisationDetail;
766
757
  unit?: UnitDetail;
767
758
  /** The list of Organisation Users
768
- */
759
+ */
769
760
  users: UserDetail[];
770
761
  }
771
762
 
@@ -776,7 +767,7 @@ export interface OrganisationPostResponse {
776
767
 
777
768
  export interface StateGetVersionResponse {
778
769
  /** The Account Server version. This is guaranteed to be a valid semantic version for official (tagged) images. The version value format for unofficial images is a string but otherwise undefined
779
- */
770
+ */
780
771
  version: string;
781
772
  }
782
773
 
@@ -789,19 +780,19 @@ export interface EventStreamGetPostResponse {
789
780
 
790
781
  export interface ChargesGetResponse {
791
782
  coins: string;
792
- summary: ChargeSummary[];
793
783
  organisation_charges: OrganisationChargeSummary[];
784
+ summary: ChargeSummary[];
794
785
  }
795
786
 
796
787
  export interface AssetPostResponse {
797
788
  /** The Asset ID
798
- */
789
+ */
799
790
  id: string;
800
791
  }
801
792
 
802
793
  export interface AssetGetResponse {
803
794
  /** A list of Assets
804
- */
795
+ */
805
796
  assets: AssetDetail[];
806
797
  }
807
798
 
@@ -809,3 +800,4 @@ export interface AsError {
809
800
  /** Brief error text that can be presented to the user */
810
801
  error: string;
811
802
  }
803
+