@squonk/account-server-client 4.2.1 → 4.3.1

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 (84) hide show
  1. package/asset/asset.cjs +99 -126
  2. package/asset/asset.cjs.map +1 -1
  3. package/asset/asset.d.cts +99 -99
  4. package/asset/asset.d.ts +99 -99
  5. package/asset/asset.js +107 -134
  6. package/asset/asset.js.map +1 -1
  7. package/charges/charges.cjs +73 -85
  8. package/charges/charges.cjs.map +1 -1
  9. package/charges/charges.d.cts +47 -47
  10. package/charges/charges.d.ts +47 -47
  11. package/charges/charges.js +78 -90
  12. package/charges/charges.js.map +1 -1
  13. package/chunk-3WKSNKHE.js +25 -0
  14. package/chunk-3WKSNKHE.js.map +1 -0
  15. package/chunk-NY2VJJG7.cjs +25 -0
  16. package/chunk-NY2VJJG7.cjs.map +1 -0
  17. package/{chunk-TKLTUR4R.cjs → chunk-RB2KVIEK.cjs} +1 -1
  18. package/chunk-RB2KVIEK.cjs.map +1 -0
  19. package/{chunk-EBOQPVLG.js → chunk-XYDLYMQ2.js} +1 -1
  20. package/chunk-XYDLYMQ2.js.map +1 -0
  21. package/event-stream/event-stream.cjs +53 -61
  22. package/event-stream/event-stream.cjs.map +1 -1
  23. package/event-stream/event-stream.d.cts +45 -45
  24. package/event-stream/event-stream.d.ts +45 -45
  25. package/event-stream/event-stream.js +58 -66
  26. package/event-stream/event-stream.js.map +1 -1
  27. package/index.cjs +49 -57
  28. package/index.cjs.map +1 -1
  29. package/index.d.cts +796 -773
  30. package/index.d.ts +796 -773
  31. package/index.js +48 -56
  32. package/index.js.map +1 -1
  33. package/merchant/merchant.cjs +38 -45
  34. package/merchant/merchant.cjs.map +1 -1
  35. package/merchant/merchant.d.cts +25 -25
  36. package/merchant/merchant.d.ts +25 -25
  37. package/merchant/merchant.js +42 -49
  38. package/merchant/merchant.js.map +1 -1
  39. package/organisation/organisation.cjs +77 -87
  40. package/organisation/organisation.cjs.map +1 -1
  41. package/organisation/organisation.d.cts +72 -70
  42. package/organisation/organisation.d.ts +72 -70
  43. package/organisation/organisation.js +83 -93
  44. package/organisation/organisation.js.map +1 -1
  45. package/package.json +13 -16
  46. package/product/product.cjs +143 -153
  47. package/product/product.cjs.map +1 -1
  48. package/product/product.d.cts +100 -100
  49. package/product/product.d.ts +100 -100
  50. package/product/product.js +153 -163
  51. package/product/product.js.map +1 -1
  52. package/src/account-server-api.schemas.ts +863 -856
  53. package/src/asset/asset.ts +899 -634
  54. package/src/charges/charges.ts +822 -498
  55. package/src/custom-instance.ts +3 -3
  56. package/src/event-stream/event-stream.ts +531 -345
  57. package/src/index.ts +2 -2
  58. package/src/merchant/merchant.ts +355 -234
  59. package/src/options-mutator.ts +27 -0
  60. package/src/organisation/organisation.ts +812 -504
  61. package/src/product/product.ts +1373 -841
  62. package/src/state/state.ts +174 -127
  63. package/src/unit/unit.ts +1273 -603
  64. package/src/user/user.ts +895 -564
  65. package/state/state.cjs +22 -24
  66. package/state/state.cjs.map +1 -1
  67. package/state/state.d.cts +14 -14
  68. package/state/state.d.ts +14 -14
  69. package/state/state.js +24 -26
  70. package/state/state.js.map +1 -1
  71. package/unit/unit.cjs +171 -106
  72. package/unit/unit.cjs.map +1 -1
  73. package/unit/unit.d.cts +200 -90
  74. package/unit/unit.d.ts +200 -90
  75. package/unit/unit.js +179 -114
  76. package/unit/unit.js.map +1 -1
  77. package/user/user.cjs +94 -110
  78. package/user/user.cjs.map +1 -1
  79. package/user/user.d.cts +77 -77
  80. package/user/user.d.ts +77 -77
  81. package/user/user.js +101 -117
  82. package/user/user.js.map +1 -1
  83. package/chunk-EBOQPVLG.js.map +0 -1
  84. package/chunk-TKLTUR4R.cjs.map +0 -1
package/index.d.ts CHANGED
@@ -2,449 +2,480 @@ import * as axios from 'axios';
2
2
  import { AxiosRequestConfig, AxiosError } from 'axios';
3
3
 
4
4
  /**
5
- * Generated by orval v7.4.1 🍺
5
+ * Generated by orval v7.10.0 🍺
6
6
  * Do not edit manually.
7
7
  * Account Server API
8
8
  * The Informatics Matters Account Server API.
9
9
 
10
10
  A service that provides access to the Account Server, which gives *registered* users access to and management of **Organisations**, **Units**, **Products**, **Users**, and **Assets**.
11
11
 
12
- * OpenAPI spec version: 4.2
12
+ * OpenAPI spec version: 4.3
13
13
  */
14
- type AttachAssetParams = {
15
- /**
16
- * A Merchant Identity
14
+ interface AsError {
15
+ /** Brief error text that can be presented to the user */
16
+ error: string;
17
+ }
18
+ type AssetGetByIdResponse = AssetDetail;
19
+ interface AssetGetResponse {
20
+ /** A list of Assets
17
21
  */
18
- m_id?: QMIdParameter;
19
- };
20
- type GetUnitsParams = {
21
- /**
22
- * An object name
22
+ assets: AssetDetail[];
23
+ /** The number of Assets returned
23
24
  */
24
- name?: QNameParameter;
25
- };
26
- type GetOrganisationsParams = {
27
- /**
28
- * An object name
25
+ count: number;
26
+ }
27
+ interface AssetPostResponse {
28
+ /** The Asset ID
29
29
  */
30
- name?: QNameParameter;
31
- };
32
- /**
33
- * A date where assets prior to this will be returned. Any asset that occurs prior this date will be returned. UTC is assumed if no timezone is provided
34
- */
35
- type QUntilParameter = string;
30
+ id: string;
31
+ }
32
+ interface ChargesGetResponse {
33
+ coins: string;
34
+ count: number;
35
+ summary: ChargeSummary[];
36
+ organisation_charges: OrganisationChargeSummary[];
37
+ }
38
+ interface EventStreamGetPostResponse {
39
+ /** The EventStream ID */
40
+ id: number;
41
+ /** A symbolic name, used internally to identify the stream */
42
+ name: string;
43
+ /** The Event Stream location. This will be a URL where events can be fetched. The protocol is typically a WebSocket, but the protocol is defined by the specific Event Stream Service that has been deployed. */
44
+ location: string;
45
+ /** The Event Stream format. */
46
+ format: string;
47
+ }
36
48
  /**
37
- * A date from which to retrieve assets. Any asset that occurs on ar after this date will be returned. UTC is assumed if no timezone is provided
49
+ * The Event Stream protocol, used to inform the client how to connect to given locations and handle events. At the moment the AS only supports web-sockets.
38
50
  */
39
- type QFromParameter = string;
40
- type GetUnitChargesParams = {
41
- /**
42
- * A date from which to retrieve assets. Any asset that occurs on ar after this date will be returned. UTC is assumed if no timezone is provided
43
- */
44
- from?: QFromParameter;
45
- /**
46
- * A date where assets prior to this will be returned. Any asset that occurs prior this date will be returned. UTC is assumed if no timezone is provided
47
- */
48
- until?: QUntilParameter;
49
- /**
50
- * A charge Prior Billing Period, 0 implies "current" and -23 is for the period 23 months ago.
51
- */
52
- pbp?: QPbpParameter;
51
+ type EventStreamVersionGetResponseProtocol = (typeof EventStreamVersionGetResponseProtocol)[keyof typeof EventStreamVersionGetResponseProtocol];
52
+ declare const EventStreamVersionGetResponseProtocol: {
53
+ readonly ERROR_INTERNAL: "ERROR_INTERNAL";
54
+ readonly SERVICE_NOT_PRESENT: "SERVICE_NOT_PRESENT";
55
+ readonly WEBSOCKET: "WEBSOCKET";
53
56
  };
54
- type GetProductChargesParams = {
55
- /**
56
- * A date from which to retrieve assets. Any asset that occurs on ar after this date will be returned. UTC is assumed if no timezone is provided
57
- */
58
- from?: QFromParameter;
59
- /**
60
- * A date where assets prior to this will be returned. Any asset that occurs prior this date will be returned. UTC is assumed if no timezone is provided
57
+ interface EventStreamVersionGetResponse {
58
+ /** The EventStream implementation version */
59
+ version: string;
60
+ /** The Event Stream protocol, used to inform the client how to connect to given locations and handle events. At the moment the AS only supports web-sockets. */
61
+ protocol: EventStreamVersionGetResponseProtocol;
62
+ /** The name of the Event Stream implementation, often used to identify the service origin and implementation. */
63
+ name: string;
64
+ }
65
+ interface StateGetVersionResponse {
66
+ /** 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
61
67
  */
62
- until?: QUntilParameter;
63
- /**
64
- * A charge Prior Billing Period, 0 implies "current" and -23 is for the period 23 months ago.
68
+ version: string;
69
+ }
70
+ interface OrganisationPostResponse {
71
+ /** The Organisation's unique ID */
72
+ id: string;
73
+ }
74
+ interface UsersGetResponse {
75
+ count: number;
76
+ organisation?: OrganisationDetail;
77
+ unit?: UnitDetail;
78
+ /** The list of Organisation Users
65
79
  */
66
- pbp?: QPbpParameter;
80
+ users: UserDetail[];
81
+ }
82
+ /**
83
+ * The Organisation's default product privacy setting
84
+ */
85
+ type OrganisationGetDefaultResponseDefaultProductPrivacy = (typeof OrganisationGetDefaultResponseDefaultProductPrivacy)[keyof typeof OrganisationGetDefaultResponseDefaultProductPrivacy];
86
+ declare const OrganisationGetDefaultResponseDefaultProductPrivacy: {
87
+ readonly ALWAYS_PUBLIC: "ALWAYS_PUBLIC";
88
+ readonly ALWAYS_PRIVATE: "ALWAYS_PRIVATE";
89
+ readonly DEFAULT_PUBLIC: "DEFAULT_PUBLIC";
90
+ readonly DEFAULT_PRIVATE: "DEFAULT_PRIVATE";
67
91
  };
68
- type GetOrganisationChargesParams = {
69
- /**
70
- * A date from which to retrieve assets. Any asset that occurs on ar after this date will be returned. UTC is assumed if no timezone is provided
71
- */
72
- from?: QFromParameter;
73
- /**
74
- * A date where assets prior to this will be returned. Any asset that occurs prior this date will be returned. UTC is assumed if no timezone is provided
92
+ interface OrganisationGetDefaultResponse {
93
+ /** Whether the user making the API call is a member of the Default Organisation. Only admin users are members of the Default organisation */
94
+ caller_is_member?: boolean;
95
+ /** The Default Organisation ID
75
96
  */
76
- until?: QUntilParameter;
77
- /**
78
- * A charge Prior Billing Period, 0 implies "current" and -23 is for the period 23 months ago.
97
+ id?: string;
98
+ /** The Default Organisation Name
79
99
  */
80
- pbp?: QPbpParameter;
81
- };
82
- type GetChargesParams = {
83
- /**
84
- * A date from which to retrieve assets. Any asset that occurs on ar after this date will be returned. UTC is assumed if no timezone is provided
100
+ name?: string;
101
+ /** 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
85
102
  */
86
- from?: QFromParameter;
87
- /**
88
- * A date where assets prior to this will be returned. Any asset that occurs prior this date will be returned. UTC is assumed if no timezone is provided
103
+ private?: boolean;
104
+ created?: string;
105
+ /** The Organisation's default product privacy setting */
106
+ default_product_privacy?: OrganisationGetDefaultResponseDefaultProductPrivacy;
107
+ }
108
+ interface OrganisationUnitPostResponse {
109
+ /** The unit's unique ID */
110
+ id: string;
111
+ }
112
+ interface PersonalUnitPutResponse {
113
+ /** The unit's Organisation. Used to identify the Default organisation */
114
+ organisation_id: string;
115
+ /** The unit's unique ID */
116
+ id: string;
117
+ }
118
+ interface OrganisationChargeSummary {
119
+ organisation_id: string;
120
+ name: string;
121
+ summary: ChargeSummary[];
122
+ }
123
+ interface OrganisationUnitsGetResponse {
124
+ count?: number;
125
+ organisation: OrganisationAllDetail;
126
+ /** A list of Units
89
127
  */
90
- until?: QUntilParameter;
128
+ units: UnitAllDetail[];
129
+ }
130
+ interface OrganisationChargesGetResponse {
131
+ organisation_id: string;
132
+ name: string;
133
+ coins: string;
134
+ summary: ChargeSummary[];
135
+ unit_charges: OrganisationUnitChargeSummary[];
136
+ }
137
+ interface OrganisationUnitChargeSummary {
138
+ unit_id: string;
139
+ name: string;
91
140
  /**
92
- * A charge Prior Billing Period, 0 implies "current" and -23 is for the period 23 months ago.
141
+ * @minimum 1
142
+ * @maximum 28
93
143
  */
94
- pbp?: QPbpParameter;
144
+ billing_day: number;
145
+ /** The start of the charge period */
146
+ from: string;
147
+ /** The date where of first day after the charge period */
148
+ until: string;
149
+ summary: ChargeSummary[];
150
+ }
151
+ interface OrganisationsGetResponse {
152
+ count: number;
153
+ /** A list of Organisations */
154
+ organisations: OrganisationAllDetail[];
155
+ }
156
+ type OrganisationGetResponse = OrganisationAllDetail;
157
+ type ProductChargesGetResponseProductType = (typeof ProductChargesGetResponseProductType)[keyof typeof ProductChargesGetResponseProductType];
158
+ declare const ProductChargesGetResponseProductType: {
159
+ readonly DATA_MANAGER_PROJECT_TIER_SUBSCRIPTION: "DATA_MANAGER_PROJECT_TIER_SUBSCRIPTION";
160
+ readonly DATA_MANAGER_STORAGE_SUBSCRIPTION: "DATA_MANAGER_STORAGE_SUBSCRIPTION";
95
161
  };
96
- /**
97
- * A User Identity
98
- */
99
- type QUserIdParameter = string;
100
- /**
101
- * A Product Identity
102
- */
103
- type QProductIdParameter = string;
104
- /**
105
- * A Unit Identity
106
- */
107
- type QUnitIdParameter = string;
108
- /**
109
- * An object name
110
- */
111
- type QNameParameter = string;
112
- /**
113
- * A Merchant Identity
114
- */
115
- type QMIdParameter = number;
116
- type DetachAssetParams = {
162
+ interface ProductChargesGetResponse {
163
+ product_id: string;
164
+ product_type: ProductChargesGetResponseProductType;
117
165
  /**
118
- * A Merchant Identity
166
+ * @minimum 1
167
+ * @maximum 28
119
168
  */
120
- m_id?: QMIdParameter;
169
+ billing_day: number;
170
+ /** True if the product can be (needs to be) claimed. */
171
+ claimable: boolean;
172
+ claim?: ProductClaimDetail;
173
+ count: number;
174
+ /** The start of the charge period */
175
+ from: string;
176
+ /** The date where of first day after the charge period */
177
+ until: string;
178
+ /** The total number of coins consumed by this product for the invoice period */
179
+ coins: string;
180
+ processing_charges: ProcessingCharges[];
181
+ storage_charges: StorageCharges;
182
+ }
183
+ type ProductsGetResponseProductsItem = ProductDmStorage | ProductDmProjectTier;
184
+ interface ProductsGetResponse {
185
+ count: number;
186
+ /** All the Products you have access to */
187
+ products: ProductsGetResponseProductsItem[];
188
+ }
189
+ type ProductsGetDefaultStorageCostDefaultStorageCost = {
190
+ cost: string;
191
+ units: string;
192
+ description: string;
121
193
  };
194
+ interface ProductsGetDefaultStorageCost {
195
+ default_storage_cost: ProductsGetDefaultStorageCostDefaultStorageCost;
196
+ }
197
+ interface ProductsGetTypesResponse {
198
+ /** The number of Product Types */
199
+ count: number;
200
+ /** All the Product Types you have access to */
201
+ product_types: ProductType[];
202
+ }
122
203
  /**
123
- * An Organisation Identity
204
+ * The Unit's Product
124
205
  */
125
- type QOrgIdParameter = string;
126
- type GetAssetParams = {
127
- /**
128
- * A User Identity
129
- */
130
- user_id?: QUserIdParameter;
131
- /**
132
- * A Product Identity
133
- */
134
- product_id?: QProductIdParameter;
135
- /**
136
- * A Unit Identity
137
- */
138
- unit_id?: QUnitIdParameter;
139
- /**
140
- * An Organisation Identity
141
- */
142
- org_id?: QOrgIdParameter;
143
- };
144
- /**
145
- * A charge Prior Billing Period, 0 implies "current" and -23 is for the period 23 months ago.
146
- */
147
- type QPbpParameter = number;
148
- type ProductPatchBodyBody = {
149
- /**
150
- * The name you want to give the Product
151
- * @maxLength 80
152
- */
153
- name?: string;
154
- /**
155
- * The Product's built-in coin allowance. Product allowances cannot be reduced
156
- * @minimum 1
157
- */
158
- allowance?: number;
159
- /**
160
- * 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
161
- * @minimum 1
162
- */
163
- limit?: number;
164
- };
165
- /**
166
- * The Flavour of the Product. Used only for Project Tier Products. Do not set this for Storage products
167
- */
168
- type UnitProductPostBodyBodyFlavour = typeof UnitProductPostBodyBodyFlavour[keyof typeof UnitProductPostBodyBodyFlavour];
169
- declare const UnitProductPostBodyBodyFlavour: {
170
- readonly EVALUATION: "EVALUATION";
171
- readonly BRONZE: "BRONZE";
172
- readonly SILVER: "SILVER";
173
- readonly GOLD: "GOLD";
174
- };
175
- /**
176
- * The Type of Product. Storage subscriptions require an **Allowance** to be defined and the **Flavour** must not be provided.
177
-
178
- Project Tier subscriptions have built-in allowances and Limits so you must not provide values for these for these products
179
- */
180
- type UnitProductPostBodyBodyType = typeof UnitProductPostBodyBodyType[keyof typeof UnitProductPostBodyBodyType];
181
- declare const UnitProductPostBodyBodyType: {
182
- readonly DATA_MANAGER_PROJECT_TIER_SUBSCRIPTION: "DATA_MANAGER_PROJECT_TIER_SUBSCRIPTION";
183
- readonly DATA_MANAGER_STORAGE_SUBSCRIPTION: "DATA_MANAGER_STORAGE_SUBSCRIPTION";
184
- };
185
- type UnitProductPostBodyBody = {
186
- /**
187
- * The name you want to give the Product
188
- * @maxLength 80
189
- */
190
- name: string;
191
- /** The Type of Product. Storage subscriptions require an **Allowance** to be defined and the **Flavour** must not be provided.
192
-
193
- Project Tier subscriptions have built-in allowances and Limits so you must not provide values for these for these products */
194
- type: UnitProductPostBodyBodyType;
195
- /** The Flavour of the Product. Used only for Project Tier Products. Do not set this for Storage products */
196
- flavour?: UnitProductPostBodyBodyFlavour;
197
- /**
198
- * The Product's coin allowance. You must provide this for Storage products but you must not provide a value for Project Tier Products
199
- * @minimum 1
200
- */
201
- allowance?: number;
202
- /**
203
- * 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
204
- * @minimum 1
205
- */
206
- limit?: number;
207
- };
208
- /**
209
- * The new default **Product** privacy applied to all products that belong to this Unit. Privacy is also controlled at the **Organisation** level. As an example, the Unit can declare its Products to be `DEFAULT_PRIVATE`, but the Organisation can declare its value to be `DEFAULT_PUBLIC`.
210
-
211
- Whether the privacy can be honoured will depend on the organisation's value
212
- */
213
- type UnitPatchBodyBodyDefaultProductPrivacy = typeof UnitPatchBodyBodyDefaultProductPrivacy[keyof typeof UnitPatchBodyBodyDefaultProductPrivacy];
214
- declare const UnitPatchBodyBodyDefaultProductPrivacy: {
215
- readonly ALWAYS_PUBLIC: "ALWAYS_PUBLIC";
216
- readonly ALWAYS_PRIVATE: "ALWAYS_PRIVATE";
217
- readonly DEFAULT_PUBLIC: "DEFAULT_PUBLIC";
218
- readonly DEFAULT_PRIVATE: "DEFAULT_PRIVATE";
219
- };
220
- type UnitPatchBodyBody = {
221
- /** The new name for the Unit */
222
- name?: string;
223
- /** The new default **Product** privacy applied to all products that belong to this Unit. Privacy is also controlled at the **Organisation** level. As an example, the Unit can declare its Products to be `DEFAULT_PRIVATE`, but the Organisation can declare its value to be `DEFAULT_PUBLIC`.
224
-
225
- Whether the privacy can be honoured will depend on the organisation's value */
226
- default_product_privacy?: UnitPatchBodyBodyDefaultProductPrivacy;
227
- };
228
- /**
229
- * The new default **Product** privacy applied to all products that belong to this Organisation. Privacy is also controlled at the **Unit** level. As an example the Organisation level privacy can be `DEFAULT_PRIVATE`, but the unit can declare its Products to be `ALWAYS_PRIVATE`.
230
-
231
- Whether the privacy can be honoured will depend on the value in any of the organisation's existing units
232
- */
233
- type OrganisationPatchBodyBodyDefaultProductPrivacy = typeof OrganisationPatchBodyBodyDefaultProductPrivacy[keyof typeof OrganisationPatchBodyBodyDefaultProductPrivacy];
234
- declare const OrganisationPatchBodyBodyDefaultProductPrivacy: {
235
- readonly ALWAYS_PUBLIC: "ALWAYS_PUBLIC";
236
- readonly ALWAYS_PRIVATE: "ALWAYS_PRIVATE";
237
- readonly DEFAULT_PUBLIC: "DEFAULT_PUBLIC";
238
- readonly DEFAULT_PRIVATE: "DEFAULT_PRIVATE";
239
- };
240
- type OrganisationPatchBodyBody = {
241
- /** The new name for the Organisational */
206
+ type ProductUnitGetResponseProduct = ProductDmStorage | ProductDmProjectTier;
207
+ interface ProductUnitGetResponse {
208
+ /** The Unit's Product */
209
+ product: ProductUnitGetResponseProduct;
210
+ }
211
+ interface UnitChargesGetResponse {
212
+ /** Whether the user making the API call is a member of the Unit */
213
+ caller_is_member: boolean;
214
+ unit_id: string;
242
215
  name?: string;
243
- /** The new default **Product** privacy applied to all products that belong to this Organisation. Privacy is also controlled at the **Unit** level. As an example the Organisation level privacy can be `DEFAULT_PRIVATE`, but the unit can declare its Products to be `ALWAYS_PRIVATE`.
244
-
245
- Whether the privacy can be honoured will depend on the value in any of the organisation's existing units */
246
- default_product_privacy?: OrganisationPatchBodyBodyDefaultProductPrivacy;
247
- };
248
- /**
249
- * The default product privacy setting for products in the unit. Whether the privacy can be honoured will depend on the organisation's value
250
- */
251
- type OrganisationUnitPostBodyBodyDefaultProductPrivacy = typeof OrganisationUnitPostBodyBodyDefaultProductPrivacy[keyof typeof OrganisationUnitPostBodyBodyDefaultProductPrivacy];
252
- declare const OrganisationUnitPostBodyBodyDefaultProductPrivacy: {
253
- readonly ALWAYS_PUBLIC: "ALWAYS_PUBLIC";
254
- readonly ALWAYS_PRIVATE: "ALWAYS_PRIVATE";
255
- readonly DEFAULT_PUBLIC: "DEFAULT_PUBLIC";
256
- readonly DEFAULT_PRIVATE: "DEFAULT_PRIVATE";
257
- };
258
- type OrganisationUnitPostBodyBody = {
259
- /**
260
- * The name of the unit
261
- * @maxLength 80
262
- */
263
- name: string;
264
- /**
265
- * The day you would like to be billed for the Unit's Products (a value from 1 and 28)
266
- * @minimum 1
267
- * @maximum 28
268
- */
269
- billing_day: number;
270
- /** The default product privacy setting for products in the unit. Whether the privacy can be honoured will depend on the organisation's value */
271
- default_product_privacy?: OrganisationUnitPostBodyBodyDefaultProductPrivacy;
272
- };
273
- type PersonalUnitPutBodyBody = {
216
+ /** The Unit's owner (a username) */
217
+ owner_id: string;
218
+ /** True if the Unit is private */
219
+ private: boolean;
220
+ created: string;
221
+ coins: string;
222
+ count: number;
274
223
  /**
275
- * The day you would like to be billed for the Unit's Products (a value from 1 and 28)
276
224
  * @minimum 1
277
225
  * @maximum 28
278
226
  */
279
227
  billing_day: number;
280
- };
228
+ /** The start of the charge period */
229
+ from: string;
230
+ /** The date where of first day after the charge period */
231
+ until: string;
232
+ summary: UnitChargeSummary;
233
+ products: UnitProductChargeSummary[];
234
+ }
235
+ interface UnitChargeSummary {
236
+ charges: ChargeSummary[];
237
+ }
238
+ interface UnitProductChargeSummary {
239
+ product_id: string;
240
+ product_type: string;
241
+ charges: ChargeSummary[];
242
+ }
281
243
  /**
282
- * The default product privacy setting for the Organisation
244
+ * The type of charge
283
245
  */
284
- type OrganisationPostBodyBodyDefaultProductPrivacy = typeof OrganisationPostBodyBodyDefaultProductPrivacy[keyof typeof OrganisationPostBodyBodyDefaultProductPrivacy];
285
- declare const OrganisationPostBodyBodyDefaultProductPrivacy: {
286
- readonly ALWAYS_PUBLIC: "ALWAYS_PUBLIC";
287
- readonly ALWAYS_PRIVATE: "ALWAYS_PRIVATE";
288
- readonly DEFAULT_PUBLIC: "DEFAULT_PUBLIC";
289
- readonly DEFAULT_PRIVATE: "DEFAULT_PRIVATE";
246
+ type ChargeSummaryType = (typeof ChargeSummaryType)[keyof typeof ChargeSummaryType];
247
+ declare const ChargeSummaryType: {
248
+ readonly PROCESSING: "PROCESSING";
249
+ readonly STORAGE: "STORAGE";
290
250
  };
291
- type OrganisationPostBodyBody = {
292
- /**
293
- * The name of the organisation
294
- * @maxLength 80
251
+ interface ChargeSummary {
252
+ /** The type of charge */
253
+ type: ChargeSummaryType;
254
+ /** The cost, in coins of the charge */
255
+ coins: string;
256
+ }
257
+ interface UnitProductPostResponse {
258
+ /** The Product's unique ID */
259
+ id: string;
260
+ }
261
+ type UnitGetResponse = UnitAllDetail;
262
+ interface UnitsGetResponse {
263
+ /** A list of Units
295
264
  */
296
- name: string;
297
- /** The name of the organisation owner. A user ID */
298
- owner: string;
299
- /** The default product privacy setting for the Organisation */
300
- default_product_privacy?: OrganisationPostBodyBodyDefaultProductPrivacy;
301
- };
302
- type EventStreamPostBodyBodyFormat = typeof EventStreamPostBodyBodyFormat[keyof typeof EventStreamPostBodyBodyFormat];
303
- declare const EventStreamPostBodyBodyFormat: {
304
- readonly PROTOCOL_STRING: "PROTOCOL_STRING";
305
- readonly JSON_STRING: "JSON_STRING";
306
- };
307
- type EventStreamPostBodyBody = {
308
- format?: EventStreamPostBodyBodyFormat;
309
- };
310
- type AssetPostBodyBodyScope = typeof AssetPostBodyBodyScope[keyof typeof AssetPostBodyBodyScope];
311
- declare const AssetPostBodyBodyScope: {
265
+ units: OrganisationUnitsGetResponse[];
266
+ }
267
+ type UserAccountGetResponse = UserAccountDetail;
268
+ type AssetDetailScope = (typeof AssetDetailScope)[keyof typeof AssetDetailScope];
269
+ declare const AssetDetailScope: {
312
270
  readonly USER: "USER";
313
271
  readonly PRODUCT: "PRODUCT";
314
272
  readonly UNIT: "UNIT";
315
273
  readonly ORGANISATION: "ORGANISATION";
316
274
  readonly GLOBAL: "GLOBAL";
317
275
  };
318
- type AssetPostBodyBody = {
319
- /**
320
- * 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
321
- * @maxLength 80
322
- * @pattern ^[a-z0-9-]{1,63}$
323
- */
276
+ interface AssetDetail {
277
+ creator: string;
278
+ id: string;
324
279
  name: string;
325
- /** A file containing the content for the asset. You must provide a value here or in content_string */
326
- content_file?: Blob;
327
- /** The textual content of the asset. You must provide a value here or in content_file */
328
- content_string?: string;
329
- scope: AssetPostBodyBodyScope;
330
- /** 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. */
331
- scope_id?: string;
332
- /** Is this a secret asset? */
280
+ scope: AssetDetailScope;
281
+ scope_id: string;
333
282
  secret: boolean;
334
- /** An optional description for the Asset */
335
- description?: string;
336
- };
337
- type AssetPatchBodyBody = {
338
- /** A file containing the content for the asset. You must provide a value here or in content_string */
339
- content_file?: Blob;
340
- /** The textual content of the asset. You must provide a value here or in content_file */
341
- content_string?: string;
342
- /** An optional description for the Asset */
283
+ disabled: boolean;
284
+ content: string;
285
+ created: string;
286
+ content_modified?: string;
343
287
  description?: string;
344
- };
345
- interface UserDetail {
346
- /** The user identity (username) */
347
- id: string;
288
+ merchants: MerchantDetail[];
348
289
  }
349
- interface UserAccountDetail {
350
- user: UserDetail;
351
- /** Whether the caller has admin privilege */
352
- caller_has_admin_privilege: boolean;
353
- /** The roles assigned to the user recognised by the Account Server */
354
- account_server_roles: string[];
290
+ type ProcessingChargesMerchantKind = (typeof ProcessingChargesMerchantKind)[keyof typeof ProcessingChargesMerchantKind];
291
+ declare const ProcessingChargesMerchantKind: {
292
+ readonly DATA_MANAGER: "DATA_MANAGER";
293
+ };
294
+ interface ProcessingCharges {
295
+ merchant_name: string;
296
+ merchant_kind: ProcessingChargesMerchantKind;
297
+ merchant_api_hostname: string;
298
+ /** The date when the process stopped */
299
+ closed?: string;
300
+ /** 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. */
301
+ final: boolean;
302
+ /** True if charges were received after the charge record was finalised */
303
+ post_final_charges?: boolean;
304
+ charge: ProcessingChargeItem;
355
305
  }
356
- /**
357
- * The Unit's default product privacy setting
358
- */
359
- type UnitDetailDefaultProductPrivacy = typeof UnitDetailDefaultProductPrivacy[keyof typeof UnitDetailDefaultProductPrivacy];
360
- declare const UnitDetailDefaultProductPrivacy: {
361
- readonly ALWAYS_PUBLIC: "ALWAYS_PUBLIC";
362
- readonly ALWAYS_PRIVATE: "ALWAYS_PRIVATE";
363
- readonly DEFAULT_PUBLIC: "DEFAULT_PUBLIC";
364
- readonly DEFAULT_PRIVATE: "DEFAULT_PRIVATE";
306
+ interface ProcessingChargeItem {
307
+ /** The charge record number */
308
+ id: number;
309
+ /** The most recent sequence number for this charge */
310
+ sqn: number;
311
+ name?: string;
312
+ username: string;
313
+ /** The date and time of the processing charge */
314
+ timestamp: string;
315
+ /** The coin-cost of the storage */
316
+ coins: string;
317
+ additional_data?: ChargeAdditionalData;
318
+ }
319
+ interface StorageCharges {
320
+ num_items: number;
321
+ items: StorageChargeItem[];
322
+ }
323
+ interface StorageChargeItem {
324
+ item_number: number;
325
+ /** The date and time of the processing charge */
326
+ date: string;
327
+ /** The coin-cost of the storage */
328
+ coins: string;
329
+ /** The current burn rate, the approximate amount of coins you are currently consuming each day */
330
+ current_burn_rate?: string;
331
+ /** The date when the charges concluded */
332
+ closed?: string;
333
+ additional_data?: ChargeAdditionalData;
334
+ }
335
+ interface ChargeAdditionalData {
336
+ [key: string]: unknown;
337
+ }
338
+ interface ProductDmStorage {
339
+ product: ProductDetail;
340
+ organisation: OrganisationAllDetail;
341
+ unit: UnitAllDetail;
342
+ storage: ProductDmStorageDetail;
343
+ coins: ProductCoinsDetail;
344
+ /** True if the product can be (needs to be) claimed. */
345
+ claimable: boolean;
346
+ }
347
+ interface ProductDmProjectTier {
348
+ product: ProductDetail;
349
+ organisation: OrganisationAllDetail;
350
+ unit: UnitAllDetail;
351
+ storage: ProductDmStorageDetail;
352
+ coins: ProductCoinsDetail;
353
+ instance: ProductInstanceDetail;
354
+ /** True if the product can be (needs to be) claimed. */
355
+ claimable: boolean;
356
+ claim?: ProductClaimDetail;
357
+ }
358
+ type ProductDmStorageDetailSize = {
359
+ /** The humanised size of the peak storage used for the current day. The value is reset at the start of each day */
360
+ peak: string;
361
+ /** The humanised size of the current storage used for the current day and used to calculate the 'burn rate' */
362
+ current: string;
363
+ /** The humanised storage unit. The cost of storage is based on the daily peak of the number of units (or part thereof) used */
364
+ unit_size: string;
365
+ /** The peak number of storage units used today */
366
+ units_used: number;
365
367
  };
366
- interface UnitDetail {
367
- /** Whether the user making the API call is a member of the Unit */
368
- caller_is_member: boolean;
369
- /** The Unit's unique identity */
368
+ type ProductDmStorageDetailCoins = {
369
+ /** The number of coins currently committed for the current day. This is added to the accumulated coins at the start of each day */
370
+ used: number;
371
+ /** The coin cost of a 'unit' of storage or part thereof. The unit size is defined in the storage section of the response */
372
+ unit_cost: number;
373
+ };
374
+ interface ProductDmStorageDetail {
375
+ size: ProductDmStorageDetailSize;
376
+ coins: ProductDmStorageDetailCoins;
377
+ }
378
+ interface ProductClaimDetail {
379
+ /** The service-specific ID that is using this Subscription
380
+ */
370
381
  id: string;
371
- /** The Unit's name */
372
- name: string;
373
- /** The Unit's owner (a username) */
374
- owner_id: string;
375
- /** True if the Unit is private */
376
- private: boolean;
377
- created: string;
378
- /** The Unit's billing day */
382
+ /** A name for the service-specific ID
383
+ */
384
+ name?: string;
385
+ }
386
+ interface ProductCoinsDetail {
387
+ /** The billing allowance. When you exceed this during the current billing period the *cost multiplier* will increase */
388
+ allowance: number;
389
+ /** 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 */
390
+ limit: number;
391
+ /** The total number of coins consumed (in this billing period), excluding the coins that have been consumed for the current day */
392
+ used: number;
393
+ /** 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. */
394
+ at_limit: boolean;
395
+ /** The current burn rate, the approximate amount of coins you are currently consuming each day */
396
+ current_burn_rate: number;
397
+ /** The predicted total billing period amount, if costs continue at the current burn rate until the end of the billing period. This is an estimate */
398
+ billing_prediction: number;
399
+ /** The predicted storage contribution to the billing period amount, if costs continue at the current burn rate until the end of the billing period. This is an estimate */
400
+ billing_prediction_storage_contribution: number;
401
+ /** The day of the month when the bill is due, and the end of the current billing period */
379
402
  billing_day: number;
380
- /** The Unit's default product privacy setting */
381
- default_product_privacy: UnitDetailDefaultProductPrivacy;
403
+ /** A multiplier applied to your coin usage within your allowance */
404
+ allowance_multiplier: number;
405
+ /** A multiplier that will be applied to coin used beyond your allowance */
406
+ overspend_multiplier: number;
407
+ /** The number of days remaining, in the current billing period */
408
+ remaining_days: number;
382
409
  }
383
410
  /**
384
- * The Unit's default product privacy setting
411
+ * The Product Type
412
+
385
413
  */
386
- type UnitAllDetailDefaultProductPrivacy = typeof UnitAllDetailDefaultProductPrivacy[keyof typeof UnitAllDetailDefaultProductPrivacy];
387
- declare const UnitAllDetailDefaultProductPrivacy: {
388
- readonly ALWAYS_PUBLIC: "ALWAYS_PUBLIC";
389
- readonly ALWAYS_PRIVATE: "ALWAYS_PRIVATE";
390
- readonly DEFAULT_PUBLIC: "DEFAULT_PUBLIC";
391
- readonly DEFAULT_PRIVATE: "DEFAULT_PRIVATE";
414
+ type ProductDetailType = (typeof ProductDetailType)[keyof typeof ProductDetailType];
415
+ declare const ProductDetailType: {
416
+ readonly DATA_MANAGER_PROJECT_TIER_SUBSCRIPTION: "DATA_MANAGER_PROJECT_TIER_SUBSCRIPTION";
417
+ readonly DATA_MANAGER_STORAGE_SUBSCRIPTION: "DATA_MANAGER_STORAGE_SUBSCRIPTION";
392
418
  };
393
- interface UnitAllDetail {
394
- /** Whether the user making the API call is a member of the Unit */
395
- caller_is_member: boolean;
396
- /** The Unit's unique identity */
419
+ /**
420
+ * The Product Type flavour. Not all products have flavours
421
+
422
+ */
423
+ type ProductDetailFlavour = (typeof ProductDetailFlavour)[keyof typeof ProductDetailFlavour];
424
+ declare const ProductDetailFlavour: {
425
+ readonly EVALUATION: "EVALUATION";
426
+ readonly BRONZE: "BRONZE";
427
+ readonly SILVER: "SILVER";
428
+ readonly GOLD: "GOLD";
429
+ };
430
+ interface ProductDetail {
431
+ /** The Product ID
432
+ */
397
433
  id: string;
398
- /** The Unit's name */
399
- name: string;
400
- /** The Unit's owner (a username) */
401
- owner_id: string;
402
- /** True if the Unit is private */
403
- private: boolean;
404
434
  created: string;
405
- /** The Unit's billing day */
406
- billing_day: number;
407
- /** The Unit's default product privacy setting */
408
- default_product_privacy: UnitAllDetailDefaultProductPrivacy;
409
- /** A list of users that are members of the Unit */
410
- users: UserDetail[];
435
+ /** The Product Type
436
+ */
437
+ type: ProductDetailType;
438
+ /** The Product Type flavour. Not all products have flavours
439
+ */
440
+ flavour?: ProductDetailFlavour;
441
+ /** The name of the Product
442
+ */
443
+ name?: string;
444
+ }
445
+ type ProductInstanceDetailCoins = {
446
+ /** The number of coins used
447
+ */
448
+ used: number;
449
+ };
450
+ interface ProductInstanceDetail {
451
+ coins: ProductInstanceDetailCoins;
411
452
  }
412
453
  /**
413
- * The kind of Service
454
+ * The kind of service that can use the Product
414
455
  */
415
- type MerchantDetailKind = typeof MerchantDetailKind[keyof typeof MerchantDetailKind];
416
- declare const MerchantDetailKind: {
456
+ type ProductTypeServiceKind = (typeof ProductTypeServiceKind)[keyof typeof ProductTypeServiceKind];
457
+ declare const ProductTypeServiceKind: {
417
458
  readonly DATA_MANAGER: "DATA_MANAGER";
418
459
  };
419
- interface MerchantDetail {
420
- /** The unique ID of the Service */
421
- id: number;
422
- created: string;
423
- /** The kind of Service */
424
- kind: MerchantDetailKind;
425
- /** The name assigned to the Service */
426
- name: string;
427
- /** The hostname used by the Service */
428
- api_hostname: string;
429
- }
430
- type MerchantGetResponse = MerchantDetail;
431
- interface MerchantsGetResponse {
432
- count?: number;
433
- /** The list of known Merchants
434
- */
435
- merchants: MerchantDetail[];
460
+ interface ProductType {
461
+ /** A product type, this is a unique string amongst all types known to the Account Server */
462
+ type: string;
463
+ /** A product flavour. Not all types have a flavour, those that do have a type-specific flavour string */
464
+ flavour?: string;
465
+ /** The kind of service that can use the Product */
466
+ service_kind?: ProductTypeServiceKind;
436
467
  }
437
468
  /**
438
469
  * The Organisation's default product privacy setting
439
470
  */
440
- type OrganisationDetailDefaultProductPrivacy = typeof OrganisationDetailDefaultProductPrivacy[keyof typeof OrganisationDetailDefaultProductPrivacy];
441
- declare const OrganisationDetailDefaultProductPrivacy: {
471
+ type OrganisationAllDetailDefaultProductPrivacy = (typeof OrganisationAllDetailDefaultProductPrivacy)[keyof typeof OrganisationAllDetailDefaultProductPrivacy];
472
+ declare const OrganisationAllDetailDefaultProductPrivacy: {
442
473
  readonly ALWAYS_PUBLIC: "ALWAYS_PUBLIC";
443
474
  readonly ALWAYS_PRIVATE: "ALWAYS_PRIVATE";
444
475
  readonly DEFAULT_PUBLIC: "DEFAULT_PUBLIC";
445
476
  readonly DEFAULT_PRIVATE: "DEFAULT_PRIVATE";
446
477
  };
447
- interface OrganisationDetail {
478
+ interface OrganisationAllDetail {
448
479
  /** Whether the user making the API call is a member of the Unit */
449
480
  caller_is_member: boolean;
450
481
  /** The Organisation's unique ID */
@@ -457,19 +488,21 @@ interface OrganisationDetail {
457
488
  private: boolean;
458
489
  created: string;
459
490
  /** The Organisation's default product privacy setting */
460
- default_product_privacy: OrganisationDetailDefaultProductPrivacy;
491
+ default_product_privacy: OrganisationAllDetailDefaultProductPrivacy;
492
+ /** A list of users that are members of the Organisation */
493
+ users: UserDetail[];
461
494
  }
462
495
  /**
463
496
  * The Organisation's default product privacy setting
464
497
  */
465
- type OrganisationAllDetailDefaultProductPrivacy = typeof OrganisationAllDetailDefaultProductPrivacy[keyof typeof OrganisationAllDetailDefaultProductPrivacy];
466
- declare const OrganisationAllDetailDefaultProductPrivacy: {
498
+ type OrganisationDetailDefaultProductPrivacy = (typeof OrganisationDetailDefaultProductPrivacy)[keyof typeof OrganisationDetailDefaultProductPrivacy];
499
+ declare const OrganisationDetailDefaultProductPrivacy: {
467
500
  readonly ALWAYS_PUBLIC: "ALWAYS_PUBLIC";
468
501
  readonly ALWAYS_PRIVATE: "ALWAYS_PRIVATE";
469
502
  readonly DEFAULT_PUBLIC: "DEFAULT_PUBLIC";
470
503
  readonly DEFAULT_PRIVATE: "DEFAULT_PRIVATE";
471
504
  };
472
- interface OrganisationAllDetail {
505
+ interface OrganisationDetail {
473
506
  /** Whether the user making the API call is a member of the Unit */
474
507
  caller_is_member: boolean;
475
508
  /** The Organisation's unique ID */
@@ -482,461 +515,451 @@ interface OrganisationAllDetail {
482
515
  private: boolean;
483
516
  created: string;
484
517
  /** The Organisation's default product privacy setting */
485
- default_product_privacy: OrganisationAllDetailDefaultProductPrivacy;
486
- /** A list of users that are members of the Organisation */
487
- users: UserDetail[];
518
+ default_product_privacy: OrganisationDetailDefaultProductPrivacy;
519
+ }
520
+ interface MerchantsGetResponse {
521
+ count?: number;
522
+ /** The list of known Merchants
523
+ */
524
+ merchants: MerchantDetail[];
488
525
  }
526
+ type MerchantGetResponse = MerchantDetail;
489
527
  /**
490
- * The kind of service that can use the Product
528
+ * The kind of Service
491
529
  */
492
- type ProductTypeServiceKind = typeof ProductTypeServiceKind[keyof typeof ProductTypeServiceKind];
493
- declare const ProductTypeServiceKind: {
530
+ type MerchantDetailKind = (typeof MerchantDetailKind)[keyof typeof MerchantDetailKind];
531
+ declare const MerchantDetailKind: {
494
532
  readonly DATA_MANAGER: "DATA_MANAGER";
495
533
  };
496
- interface ProductType {
497
- /** A product type, this is a unique string amongst all types known to the Account Server */
498
- type: string;
499
- /** A product flavour. Not all types have a flavour, those that do have a type-specific flavour string */
500
- flavour?: string;
501
- /** The kind of service that can use the Product */
502
- service_kind?: ProductTypeServiceKind;
503
- }
504
- type ProductInstanceDetailCoins = {
505
- /** The number of coins used
506
- */
507
- used: number;
508
- };
509
- interface ProductInstanceDetail {
510
- coins: ProductInstanceDetailCoins;
534
+ interface MerchantDetail {
535
+ /** The unique ID of the Service */
536
+ id: number;
537
+ created: string;
538
+ /** The kind of Service */
539
+ kind: MerchantDetailKind;
540
+ /** The name assigned to the Service */
541
+ name: string;
542
+ /** The hostname used by the Service */
543
+ api_hostname: string;
511
544
  }
512
545
  /**
513
- * The Product Type flavour. Not all products have flavours
514
-
546
+ * The Unit's default product privacy setting
515
547
  */
516
- type ProductDetailFlavour = typeof ProductDetailFlavour[keyof typeof ProductDetailFlavour];
517
- declare const ProductDetailFlavour: {
518
- readonly EVALUATION: "EVALUATION";
519
- readonly BRONZE: "BRONZE";
520
- readonly SILVER: "SILVER";
521
- readonly GOLD: "GOLD";
548
+ type UnitAllDetailDefaultProductPrivacy = (typeof UnitAllDetailDefaultProductPrivacy)[keyof typeof UnitAllDetailDefaultProductPrivacy];
549
+ declare const UnitAllDetailDefaultProductPrivacy: {
550
+ readonly ALWAYS_PUBLIC: "ALWAYS_PUBLIC";
551
+ readonly ALWAYS_PRIVATE: "ALWAYS_PRIVATE";
552
+ readonly DEFAULT_PUBLIC: "DEFAULT_PUBLIC";
553
+ readonly DEFAULT_PRIVATE: "DEFAULT_PRIVATE";
522
554
  };
555
+ interface UnitAllDetail {
556
+ /** Whether the user making the API call is a member of the Unit */
557
+ caller_is_member: boolean;
558
+ /** The Unit's unique identity */
559
+ id: string;
560
+ /** The Unit's name */
561
+ name: string;
562
+ /** The Unit's owner (a username) */
563
+ owner_id: string;
564
+ /** True if the Unit is private */
565
+ private: boolean;
566
+ created: string;
567
+ /** The Unit's billing day */
568
+ billing_day: number;
569
+ /** The Unit's default product privacy setting */
570
+ default_product_privacy: UnitAllDetailDefaultProductPrivacy;
571
+ /** A list of users that are members of the Unit */
572
+ users: UserDetail[];
573
+ }
523
574
  /**
524
- * The Product Type
525
-
575
+ * The Unit's default product privacy setting
526
576
  */
527
- type ProductDetailType = typeof ProductDetailType[keyof typeof ProductDetailType];
528
- declare const ProductDetailType: {
529
- readonly DATA_MANAGER_PROJECT_TIER_SUBSCRIPTION: "DATA_MANAGER_PROJECT_TIER_SUBSCRIPTION";
530
- readonly DATA_MANAGER_STORAGE_SUBSCRIPTION: "DATA_MANAGER_STORAGE_SUBSCRIPTION";
577
+ type UnitDetailDefaultProductPrivacy = (typeof UnitDetailDefaultProductPrivacy)[keyof typeof UnitDetailDefaultProductPrivacy];
578
+ declare const UnitDetailDefaultProductPrivacy: {
579
+ readonly ALWAYS_PUBLIC: "ALWAYS_PUBLIC";
580
+ readonly ALWAYS_PRIVATE: "ALWAYS_PRIVATE";
581
+ readonly DEFAULT_PUBLIC: "DEFAULT_PUBLIC";
582
+ readonly DEFAULT_PRIVATE: "DEFAULT_PRIVATE";
531
583
  };
532
- interface ProductDetail {
533
- /** The Product ID
534
- */
584
+ interface UnitDetail {
585
+ /** Whether the user making the API call is a member of the Unit */
586
+ caller_is_member: boolean;
587
+ /** The Unit's unique identity */
535
588
  id: string;
589
+ /** The Unit's name */
590
+ name: string;
591
+ /** The Unit's owner (a username) */
592
+ owner_id: string;
593
+ /** True if the Unit is private */
594
+ private: boolean;
536
595
  created: string;
537
- /** The Product Type
538
- */
539
- type: ProductDetailType;
540
- /** The Product Type flavour. Not all products have flavours
541
- */
542
- flavour?: ProductDetailFlavour;
543
- /** The name of the Product
544
- */
545
- name?: string;
546
- }
547
- interface ProductCoinsDetail {
548
- /** The billing allowance. When you exceed this during the current billing period the *cost multiplier* will increase */
549
- allowance: number;
550
- /** 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 */
551
- limit: number;
552
- /** The total number of coins consumed (in this billing period), excluding the coins that have been consumed for the current day */
553
- used: number;
554
- /** 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. */
555
- at_limit: boolean;
556
- /** The current burn rate, the approximate amount of coins you are currently consuming each day */
557
- current_burn_rate: number;
558
- /** The predicted total billing period amount, if costs continue at the current burn rate until the end of the billing period. This is an estimate */
559
- billing_prediction: number;
560
- /** The predicted storage contribution to the billing period amount, if costs continue at the current burn rate until the end of the billing period. This is an estimate */
561
- billing_prediction_storage_contribution: number;
562
- /** The day of the month when the bill is due, and the end of the current billing period */
596
+ /** The Unit's billing day */
563
597
  billing_day: number;
564
- /** A multiplier applied to your coin usage within your allowance */
565
- allowance_multiplier: number;
566
- /** A multiplier that will be applied to coin used beyond your allowance */
567
- overspend_multiplier: number;
568
- /** The number of days remaining, in the current billing period */
569
- remaining_days: number;
570
- }
571
- interface ProductClaimDetail {
572
- /** The service-specific ID that is using this Subscription
573
- */
574
- id: string;
575
- /** A name for the service-specific ID
576
- */
577
- name?: string;
578
- }
579
- type ProductDmStorageDetailCoins = {
580
- /** The number of coins currently committed for the current day. This is added to the accumulated coins at the start of each day */
581
- used: number;
582
- /** The coin cost of a 'unit' of storage or part thereof. The unit size is defined in the storage section of the response */
583
- unit_cost: number;
584
- };
585
- type ProductDmStorageDetailSize = {
586
- /** The humanised size of the peak storage used for the current day. The value is reset at the start of each day */
587
- peak: string;
588
- /** The humanised size of the current storage used for the current day and used to calculate the 'burn rate' */
589
- current: string;
590
- /** The humanised storage unit. The cost of storage is based on the daily peak of the number of units (or part thereof) used */
591
- unit_size: string;
592
- /** The peak number of storage units used today */
593
- units_used: number;
594
- };
595
- interface ProductDmStorageDetail {
596
- size: ProductDmStorageDetailSize;
597
- coins: ProductDmStorageDetailCoins;
598
- }
599
- interface ProductDmProjectTier {
600
- product: ProductDetail;
601
- organisation: OrganisationAllDetail;
602
- unit: UnitAllDetail;
603
- storage: ProductDmStorageDetail;
604
- coins: ProductCoinsDetail;
605
- instance: ProductInstanceDetail;
606
- /** True if the product can be (needs to be) claimed. */
607
- claimable: boolean;
608
- claim?: ProductClaimDetail;
609
- }
610
- interface ProductDmStorage {
611
- product: ProductDetail;
612
- organisation: OrganisationAllDetail;
613
- unit: UnitAllDetail;
614
- storage: ProductDmStorageDetail;
615
- coins: ProductCoinsDetail;
616
- /** True if the product can be (needs to be) claimed. */
617
- claimable: boolean;
618
- }
619
- interface ChargeAdditionalData {
620
- [key: string]: unknown;
621
- }
622
- interface StorageChargeItem {
623
- item_number: number;
624
- /** The date and time of the processing charge */
625
- date: string;
626
- /** The coin-cost of the storage */
627
- coins: string;
628
- /** The current burn rate, the approximate amount of coins you are currently consuming each day */
629
- current_burn_rate?: string;
630
- /** The date when the charges concluded */
631
- closed?: string;
632
- additional_data?: ChargeAdditionalData;
598
+ /** The Unit's default product privacy setting */
599
+ default_product_privacy: UnitDetailDefaultProductPrivacy;
633
600
  }
634
- interface StorageCharges {
635
- num_items: number;
636
- items: StorageChargeItem[];
601
+ interface UserAccountDetail {
602
+ user: UserDetail;
603
+ /** Whether the caller has admin privilege */
604
+ caller_has_admin_privilege: boolean;
605
+ /** The roles assigned to the user recognised by the Account Server */
606
+ account_server_roles: string[];
637
607
  }
638
- interface ProcessingChargeItem {
639
- /** The charge record number */
640
- id: number;
641
- /** The most recent sequence number for this charge */
642
- sqn: number;
643
- name?: string;
644
- username: string;
645
- /** The date and time of the processing charge */
646
- timestamp: string;
647
- /** The coin-cost of the storage */
648
- coins: string;
649
- additional_data?: ChargeAdditionalData;
608
+ interface UserDetail {
609
+ /** The user identity (username) */
610
+ id: string;
650
611
  }
651
- type ProcessingChargesMerchantKind = typeof ProcessingChargesMerchantKind[keyof typeof ProcessingChargesMerchantKind];
652
- declare const ProcessingChargesMerchantKind: {
653
- readonly DATA_MANAGER: "DATA_MANAGER";
612
+ type AssetPatchBodyBody = {
613
+ /** A file containing the content for the asset. You must provide a value here or in content_string */
614
+ content_file?: Blob;
615
+ /** The textual content of the asset. You must provide a value here or in content_file */
616
+ content_string?: string;
617
+ /** An optional description for the Asset */
618
+ description?: string;
654
619
  };
655
- interface ProcessingCharges {
656
- merchant_name: string;
657
- merchant_kind: ProcessingChargesMerchantKind;
658
- merchant_api_hostname: string;
659
- /** The date when the process stopped */
660
- closed?: string;
661
- /** 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. */
662
- final: boolean;
663
- /** True if charges were received after the charge record was finalised */
664
- post_final_charges?: boolean;
665
- charge: ProcessingChargeItem;
666
- }
667
- type AssetDetailScope = typeof AssetDetailScope[keyof typeof AssetDetailScope];
668
- declare const AssetDetailScope: {
620
+ /**
621
+ * An enumeration of the scope of the asset. This can be one of `USER`, `PRODUCT`, `UNIT`, `ORGANISATION`, or `GLOBAL`. Assets that are not `GLOBAL` need a scope ID.
622
+ */
623
+ type AssetPostBodyBodyScope = (typeof AssetPostBodyBodyScope)[keyof typeof AssetPostBodyBodyScope];
624
+ declare const AssetPostBodyBodyScope: {
669
625
  readonly USER: "USER";
670
626
  readonly PRODUCT: "PRODUCT";
671
627
  readonly UNIT: "UNIT";
672
628
  readonly ORGANISATION: "ORGANISATION";
673
629
  readonly GLOBAL: "GLOBAL";
674
630
  };
675
- interface AssetDetail {
676
- creator: string;
677
- id: string;
631
+ type AssetPostBodyBody = {
632
+ /**
633
+ * 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
634
+ * @maxLength 80
635
+ * @pattern ^[a-z0-9-]{1,63}$
636
+ */
678
637
  name: string;
679
- scope: AssetDetailScope;
680
- scope_id: string;
638
+ /** A file containing the content for the asset. You must provide a value here or in **content_string** but not both */
639
+ content_file?: Blob;
640
+ /** The textual content of the asset. You must provide a value here or in **content_file** but not both */
641
+ content_string?: string;
642
+ /** An enumeration of the scope of the asset. This can be one of `USER`, `PRODUCT`, `UNIT`, `ORGANISATION`, or `GLOBAL`. Assets that are not `GLOBAL` need a scope ID. */
643
+ scope: AssetPostBodyBodyScope;
644
+ /** 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. */
645
+ scope_id?: string;
646
+ /** Is this a secret asset? Secret assets are not revealed in a subsequent **GET** but are revealed to merchants they are connected to. */
681
647
  secret: boolean;
682
- disabled: boolean;
683
- content: string;
684
- created: string;
685
- content_modified?: string;
648
+ /** An optional description for the Asset */
686
649
  description?: string;
687
- merchants: MerchantDetail[];
688
- }
689
- type UserAccountGetResponse = UserAccountDetail;
690
- interface UnitsGetResponse {
691
- /** A list of Units
692
- */
693
- units: OrganisationUnitsGetResponse[];
694
- }
695
- type UnitGetResponse = UnitAllDetail;
696
- interface UnitProductPostResponse {
697
- /** The Product's unique ID */
698
- id: string;
699
- }
700
- /**
701
- * The type of charge
702
- */
703
- type ChargeSummaryType = typeof ChargeSummaryType[keyof typeof ChargeSummaryType];
704
- declare const ChargeSummaryType: {
705
- readonly PROCESSING: "PROCESSING";
706
- readonly STORAGE: "STORAGE";
707
650
  };
708
- interface ChargeSummary {
709
- /** The type of charge */
710
- type: ChargeSummaryType;
711
- /** The cost, in coins of the charge */
712
- coins: string;
713
- }
714
- interface UnitProductChargeSummary {
715
- product_id: string;
716
- product_type: string;
717
- charges: ChargeSummary[];
718
- }
719
- interface UnitChargeSummary {
720
- charges: ChargeSummary[];
721
- }
722
- interface UnitChargesGetResponse {
723
- /** Whether the user making the API call is a member of the Unit */
724
- caller_is_member: boolean;
725
- unit_id: string;
726
- name?: string;
727
- /** The Unit's owner (a username) */
728
- owner_id: string;
729
- /** True if the Unit is private */
730
- private: boolean;
731
- created: string;
732
- coins: string;
733
- count: number;
651
+ type EventStreamPostBodyBodyFormat = (typeof EventStreamPostBodyBodyFormat)[keyof typeof EventStreamPostBodyBodyFormat];
652
+ declare const EventStreamPostBodyBodyFormat: {
653
+ readonly PROTOCOL_STRING: "PROTOCOL_STRING";
654
+ readonly JSON_STRING: "JSON_STRING";
655
+ };
656
+ type EventStreamPostBodyBody = {
657
+ format?: EventStreamPostBodyBodyFormat;
658
+ };
659
+ /**
660
+ * The default product privacy setting for the Organisation
661
+ */
662
+ type OrganisationPostBodyBodyDefaultProductPrivacy = (typeof OrganisationPostBodyBodyDefaultProductPrivacy)[keyof typeof OrganisationPostBodyBodyDefaultProductPrivacy];
663
+ declare const OrganisationPostBodyBodyDefaultProductPrivacy: {
664
+ readonly ALWAYS_PUBLIC: "ALWAYS_PUBLIC";
665
+ readonly ALWAYS_PRIVATE: "ALWAYS_PRIVATE";
666
+ readonly DEFAULT_PUBLIC: "DEFAULT_PUBLIC";
667
+ readonly DEFAULT_PRIVATE: "DEFAULT_PRIVATE";
668
+ };
669
+ type OrganisationPostBodyBody = {
734
670
  /**
671
+ * The name of the organisation
672
+ * @maxLength 80
673
+ */
674
+ name: string;
675
+ /** The name of the organisation owner. A user ID */
676
+ owner: string;
677
+ /** The default product privacy setting for the Organisation */
678
+ default_product_privacy?: OrganisationPostBodyBodyDefaultProductPrivacy;
679
+ };
680
+ type PersonalUnitPutBodyBody = {
681
+ /**
682
+ * The day you would like to be billed for the Unit's Products (a value from 1 and 28)
735
683
  * @minimum 1
736
684
  * @maximum 28
737
685
  */
738
686
  billing_day: number;
739
- /** The start of the charge period */
740
- from: string;
741
- /** The date where of first day after the charge period */
742
- until: string;
743
- summary: UnitChargeSummary;
744
- products: UnitProductChargeSummary[];
745
- }
687
+ };
746
688
  /**
747
- * The Unit's Product
689
+ * The default product privacy setting for products in the unit. Whether the privacy can be honoured will depend on the organisation's value
748
690
  */
749
- type ProductUnitGetResponseProduct = ProductDmStorage | ProductDmProjectTier;
750
- interface ProductUnitGetResponse {
751
- /** The Unit's Product */
752
- product: ProductUnitGetResponseProduct;
753
- }
754
- interface ProductsGetTypesResponse {
755
- /** The number of Product Types */
756
- count: number;
757
- /** All the Product Types you have access to */
758
- product_types: ProductType[];
759
- }
760
- type ProductsGetDefaultStorageCostDefaultStorageCost = {
761
- cost: string;
762
- units: string;
763
- description: string;
764
- };
765
- interface ProductsGetDefaultStorageCost {
766
- default_storage_cost: ProductsGetDefaultStorageCostDefaultStorageCost;
767
- }
768
- type ProductsGetResponseProductsItem = ProductDmStorage | ProductDmProjectTier;
769
- interface ProductsGetResponse {
770
- count: number;
771
- /** All the Products you have access to */
772
- products: ProductsGetResponseProductsItem[];
773
- }
774
- type ProductChargesGetResponseProductType = typeof ProductChargesGetResponseProductType[keyof typeof ProductChargesGetResponseProductType];
775
- declare const ProductChargesGetResponseProductType: {
776
- readonly DATA_MANAGER_PROJECT_TIER_SUBSCRIPTION: "DATA_MANAGER_PROJECT_TIER_SUBSCRIPTION";
777
- readonly DATA_MANAGER_STORAGE_SUBSCRIPTION: "DATA_MANAGER_STORAGE_SUBSCRIPTION";
691
+ type OrganisationUnitPostBodyBodyDefaultProductPrivacy = (typeof OrganisationUnitPostBodyBodyDefaultProductPrivacy)[keyof typeof OrganisationUnitPostBodyBodyDefaultProductPrivacy];
692
+ declare const OrganisationUnitPostBodyBodyDefaultProductPrivacy: {
693
+ readonly ALWAYS_PUBLIC: "ALWAYS_PUBLIC";
694
+ readonly ALWAYS_PRIVATE: "ALWAYS_PRIVATE";
695
+ readonly DEFAULT_PUBLIC: "DEFAULT_PUBLIC";
696
+ readonly DEFAULT_PRIVATE: "DEFAULT_PRIVATE";
778
697
  };
779
- interface ProductChargesGetResponse {
780
- product_id: string;
781
- product_type: ProductChargesGetResponseProductType;
698
+ type OrganisationUnitPostBodyBody = {
782
699
  /**
783
- * @minimum 1
784
- * @maximum 28
700
+ * The name of the unit
701
+ * @maxLength 80
785
702
  */
786
- billing_day: number;
787
- /** True if the product can be (needs to be) claimed. */
788
- claimable: boolean;
789
- claim?: ProductClaimDetail;
790
- count: number;
791
- /** The start of the charge period */
792
- from: string;
793
- /** The date where of first day after the charge period */
794
- until: string;
795
- /** The total number of coins consumed by this product for the invoice period */
796
- coins: string;
797
- processing_charges: ProcessingCharges[];
798
- storage_charges: StorageCharges;
799
- }
800
- type OrganisationGetResponse = OrganisationAllDetail;
801
- interface OrganisationsGetResponse {
802
- count: number;
803
- /** A list of Organisations */
804
- organisations: OrganisationAllDetail[];
805
- }
806
- interface OrganisationUnitChargeSummary {
807
- unit_id: string;
808
703
  name: string;
809
704
  /**
705
+ * The day you would like to be billed for the Unit's Products (a value from 1 and 28)
810
706
  * @minimum 1
811
707
  * @maximum 28
812
708
  */
813
709
  billing_day: number;
814
- /** The start of the charge period */
815
- from: string;
816
- /** The date where of first day after the charge period */
817
- until: string;
818
- summary: ChargeSummary[];
819
- }
820
- interface OrganisationChargesGetResponse {
821
- organisation_id: string;
822
- name: string;
823
- coins: string;
824
- summary: ChargeSummary[];
825
- unit_charges: OrganisationUnitChargeSummary[];
826
- }
827
- interface OrganisationUnitsGetResponse {
828
- count?: number;
829
- organisation: OrganisationAllDetail;
830
- /** A list of Units
831
- */
832
- units: UnitAllDetail[];
833
- }
834
- interface OrganisationChargeSummary {
835
- organisation_id: string;
836
- name: string;
837
- summary: ChargeSummary[];
838
- }
839
- interface PersonalUnitPutResponse {
840
- /** The unit's Organisation. Used to identify the Default organisation */
841
- organisation_id: string;
842
- /** The unit's unique ID */
843
- id: string;
844
- }
845
- interface OrganisationUnitPostResponse {
846
- /** The unit's unique ID */
847
- id: string;
848
- }
710
+ /** The default product privacy setting for products in the unit. Whether the privacy can be honoured will depend on the organisation's value */
711
+ default_product_privacy?: OrganisationUnitPostBodyBodyDefaultProductPrivacy;
712
+ };
849
713
  /**
850
- * The Organisation's default product privacy setting
714
+ * The new default **Product** privacy applied to all products that belong to this Organisation. Privacy is also controlled at the **Unit** level. As an example the Organisation level privacy can be `DEFAULT_PRIVATE`, but the unit can declare its Products to be `ALWAYS_PRIVATE`.
715
+
716
+ Whether the privacy can be honoured will depend on the value in any of the organisation's existing units
851
717
  */
852
- type OrganisationGetDefaultResponseDefaultProductPrivacy = typeof OrganisationGetDefaultResponseDefaultProductPrivacy[keyof typeof OrganisationGetDefaultResponseDefaultProductPrivacy];
853
- declare const OrganisationGetDefaultResponseDefaultProductPrivacy: {
718
+ type OrganisationPatchBodyBodyDefaultProductPrivacy = (typeof OrganisationPatchBodyBodyDefaultProductPrivacy)[keyof typeof OrganisationPatchBodyBodyDefaultProductPrivacy];
719
+ declare const OrganisationPatchBodyBodyDefaultProductPrivacy: {
854
720
  readonly ALWAYS_PUBLIC: "ALWAYS_PUBLIC";
855
721
  readonly ALWAYS_PRIVATE: "ALWAYS_PRIVATE";
856
722
  readonly DEFAULT_PUBLIC: "DEFAULT_PUBLIC";
857
723
  readonly DEFAULT_PRIVATE: "DEFAULT_PRIVATE";
858
724
  };
859
- interface OrganisationGetDefaultResponse {
860
- /** Whether the user making the API call is a member of the Default Organisation. Only admin users are members of the Default organisation */
861
- caller_is_member?: boolean;
862
- /** The Default Organisation ID
863
- */
864
- id?: string;
865
- /** The Default Organisation Name
866
- */
725
+ type OrganisationPatchBodyBody = {
726
+ /** The new name for the Organisational */
867
727
  name?: string;
868
- /** 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
869
- */
870
- private?: boolean;
871
- created?: string;
872
- /** The Organisation's default product privacy setting */
873
- default_product_privacy?: OrganisationGetDefaultResponseDefaultProductPrivacy;
874
- }
875
- interface UsersGetResponse {
876
- count: number;
877
- organisation?: OrganisationDetail;
878
- unit?: UnitDetail;
879
- /** The list of Organisation Users
880
- */
881
- users: UserDetail[];
882
- }
883
- interface OrganisationPostResponse {
884
- /** The Organisation's unique ID */
885
- id: string;
886
- }
887
- interface StateGetVersionResponse {
888
- /** 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
889
- */
890
- version: string;
891
- }
728
+ /** The new default **Product** privacy applied to all products that belong to this Organisation. Privacy is also controlled at the **Unit** level. As an example the Organisation level privacy can be `DEFAULT_PRIVATE`, but the unit can declare its Products to be `ALWAYS_PRIVATE`.
729
+
730
+ Whether the privacy can be honoured will depend on the value in any of the organisation's existing units */
731
+ default_product_privacy?: OrganisationPatchBodyBodyDefaultProductPrivacy;
732
+ };
892
733
  /**
893
- * The Event Stream protocol, used to inform the client how to connect to given locations and handle events. At the moment the AS only supports web-sockets.
734
+ * The new default **Product** privacy applied to all products that belong to this Unit. Privacy is also controlled at the **Organisation** level. As an example, the Unit can declare its Products to be `DEFAULT_PRIVATE`, but the Organisation can declare its value to be `DEFAULT_PUBLIC`.
735
+
736
+ Whether the privacy can be honoured will depend on the organisation's value
894
737
  */
895
- type EventStreamVersionGetResponseProtocol = typeof EventStreamVersionGetResponseProtocol[keyof typeof EventStreamVersionGetResponseProtocol];
896
- declare const EventStreamVersionGetResponseProtocol: {
897
- readonly SERVICE_NOT_PRESENT: "SERVICE_NOT_PRESENT";
898
- readonly WEBSOCKET: "WEBSOCKET";
738
+ type UnitPatchBodyBodyDefaultProductPrivacy = (typeof UnitPatchBodyBodyDefaultProductPrivacy)[keyof typeof UnitPatchBodyBodyDefaultProductPrivacy];
739
+ declare const UnitPatchBodyBodyDefaultProductPrivacy: {
740
+ readonly ALWAYS_PUBLIC: "ALWAYS_PUBLIC";
741
+ readonly ALWAYS_PRIVATE: "ALWAYS_PRIVATE";
742
+ readonly DEFAULT_PUBLIC: "DEFAULT_PUBLIC";
743
+ readonly DEFAULT_PRIVATE: "DEFAULT_PRIVATE";
899
744
  };
900
- interface EventStreamVersionGetResponse {
901
- /** The EventStream implementation version */
902
- version: string;
903
- /** The Event Stream protocol, used to inform the client how to connect to given locations and handle events. At the moment the AS only supports web-sockets. */
904
- protocol: EventStreamVersionGetResponseProtocol;
905
- /** The name of the Event Stream implementation, often used to identify the service origin and implementation. */
745
+ type UnitPatchBodyBody = {
746
+ /** The new name for the Unit */
747
+ name?: string;
748
+ /** The new default **Product** privacy applied to all products that belong to this Unit. Privacy is also controlled at the **Organisation** level. As an example, the Unit can declare its Products to be `DEFAULT_PRIVATE`, but the Organisation can declare its value to be `DEFAULT_PUBLIC`.
749
+
750
+ Whether the privacy can be honoured will depend on the organisation's value */
751
+ default_product_privacy?: UnitPatchBodyBodyDefaultProductPrivacy;
752
+ };
753
+ /**
754
+ * The Type of Product. Storage subscriptions require an **Allowance** to be defined and the **Flavour** must not be provided.
755
+
756
+ Project Tier subscriptions have built-in allowances and Limits so you must not provide values for these for these products
757
+ */
758
+ type UnitProductPostBodyBodyType = (typeof UnitProductPostBodyBodyType)[keyof typeof UnitProductPostBodyBodyType];
759
+ declare const UnitProductPostBodyBodyType: {
760
+ readonly DATA_MANAGER_PROJECT_TIER_SUBSCRIPTION: "DATA_MANAGER_PROJECT_TIER_SUBSCRIPTION";
761
+ readonly DATA_MANAGER_STORAGE_SUBSCRIPTION: "DATA_MANAGER_STORAGE_SUBSCRIPTION";
762
+ };
763
+ /**
764
+ * The Flavour of the Product. Used only for Project Tier Products. Do not set this for Storage products
765
+ */
766
+ type UnitProductPostBodyBodyFlavour = (typeof UnitProductPostBodyBodyFlavour)[keyof typeof UnitProductPostBodyBodyFlavour];
767
+ declare const UnitProductPostBodyBodyFlavour: {
768
+ readonly EVALUATION: "EVALUATION";
769
+ readonly BRONZE: "BRONZE";
770
+ readonly SILVER: "SILVER";
771
+ readonly GOLD: "GOLD";
772
+ };
773
+ type UnitProductPostBodyBody = {
774
+ /**
775
+ * The name you want to give the Product
776
+ * @maxLength 80
777
+ */
906
778
  name: string;
907
- }
908
- interface EventStreamGetPostResponse {
909
- /** The EventStream ID */
910
- id: number;
911
- /** The Event Stream location. This will be a URL where events can be fetched. The protocol is typically a WebSocket, but the protocol is defined by the specific Event Stream Service that has been deployed. */
912
- location: string;
913
- /** The Event Stream format. */
914
- format: string;
915
- }
916
- interface ChargesGetResponse {
917
- coins: string;
918
- count: number;
919
- summary: ChargeSummary[];
920
- organisation_charges: OrganisationChargeSummary[];
921
- }
922
- interface AssetPostResponse {
923
- /** The Asset ID
924
- */
925
- id: string;
926
- }
927
- interface AssetGetResponse {
928
- /** A list of Assets
929
- */
930
- assets: AssetDetail[];
931
- /** The number of Assets returned
932
- */
933
- count: number;
934
- }
935
- type AssetGetByIdResponse = AssetDetail;
936
- interface AsError {
937
- /** Brief error text that can be presented to the user */
938
- error: string;
939
- }
779
+ /** The Type of Product. Storage subscriptions require an **Allowance** to be defined and the **Flavour** must not be provided.
780
+
781
+ Project Tier subscriptions have built-in allowances and Limits so you must not provide values for these for these products */
782
+ type: UnitProductPostBodyBodyType;
783
+ /** The Flavour of the Product. Used only for Project Tier Products. Do not set this for Storage products */
784
+ flavour?: UnitProductPostBodyBodyFlavour;
785
+ /**
786
+ * The Product's coin allowance. You must provide this for Storage products but you must not provide a value for Project Tier Products
787
+ * @minimum 1
788
+ */
789
+ allowance?: number;
790
+ /**
791
+ * 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
792
+ * @minimum 1
793
+ */
794
+ limit?: number;
795
+ };
796
+ type ProductPatchBodyBody = {
797
+ /**
798
+ * The name you want to give the Product
799
+ * @maxLength 80
800
+ */
801
+ name?: string;
802
+ /**
803
+ * The Product's built-in coin allowance. Product allowances cannot be reduced
804
+ * @minimum 1
805
+ */
806
+ allowance?: number;
807
+ /**
808
+ * 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
809
+ * @minimum 1
810
+ */
811
+ limit?: number;
812
+ };
813
+ /**
814
+ * A charge Prior Billing Period, 0 implies "current" and -23 is for the period 23 months ago.
815
+ */
816
+ type QPbpParameter = number;
817
+ /**
818
+ * An Organisation Identity
819
+ */
820
+ type QOrgIdParameter = string;
821
+ /**
822
+ * A Merchant Identity
823
+ */
824
+ type QMIdParameter = number;
825
+ /**
826
+ * An object name
827
+ */
828
+ type QNameParameter = string;
829
+ /**
830
+ * A Unit Identity
831
+ */
832
+ type QUnitIdParameter = string;
833
+ /**
834
+ * A Product Identity
835
+ */
836
+ type QProductIdParameter = string;
837
+ /**
838
+ * A User Identity
839
+ */
840
+ type QUserIdParameter = string;
841
+ /**
842
+ * A date from which to retrieve assets. Any asset that occurs on ar after this date will be returned. UTC is assumed if no timezone is provided
843
+ */
844
+ type QFromParameter = string;
845
+ /**
846
+ * A date where assets prior to this will be returned. Any asset that occurs prior this date will be returned. UTC is assumed if no timezone is provided
847
+ */
848
+ type QUntilParameter = string;
849
+ type GetChargesParams = {
850
+ /**
851
+ * A date from which to retrieve assets. Any asset that occurs on ar after this date will be returned. UTC is assumed if no timezone is provided
852
+ */
853
+ from?: QFromParameter;
854
+ /**
855
+ * A date where assets prior to this will be returned. Any asset that occurs prior this date will be returned. UTC is assumed if no timezone is provided
856
+ */
857
+ until?: QUntilParameter;
858
+ /**
859
+ * A charge Prior Billing Period, 0 implies "current" and -23 is for the period 23 months ago.
860
+ * @minimum -23
861
+ * @maximum 0
862
+ */
863
+ pbp?: QPbpParameter;
864
+ };
865
+ type GetOrganisationChargesParams = {
866
+ /**
867
+ * A date from which to retrieve assets. Any asset that occurs on ar after this date will be returned. UTC is assumed if no timezone is provided
868
+ */
869
+ from?: QFromParameter;
870
+ /**
871
+ * A date where assets prior to this will be returned. Any asset that occurs prior this date will be returned. UTC is assumed if no timezone is provided
872
+ */
873
+ until?: QUntilParameter;
874
+ /**
875
+ * A charge Prior Billing Period, 0 implies "current" and -23 is for the period 23 months ago.
876
+ * @minimum -23
877
+ * @maximum 0
878
+ */
879
+ pbp?: QPbpParameter;
880
+ };
881
+ type GetProductChargesParams = {
882
+ /**
883
+ * A date from which to retrieve assets. Any asset that occurs on ar after this date will be returned. UTC is assumed if no timezone is provided
884
+ */
885
+ from?: QFromParameter;
886
+ /**
887
+ * A date where assets prior to this will be returned. Any asset that occurs prior this date will be returned. UTC is assumed if no timezone is provided
888
+ */
889
+ until?: QUntilParameter;
890
+ /**
891
+ * A charge Prior Billing Period, 0 implies "current" and -23 is for the period 23 months ago.
892
+ * @minimum -23
893
+ * @maximum 0
894
+ */
895
+ pbp?: QPbpParameter;
896
+ };
897
+ type GetUnitChargesParams = {
898
+ /**
899
+ * A date from which to retrieve assets. Any asset that occurs on ar after this date will be returned. UTC is assumed if no timezone is provided
900
+ */
901
+ from?: QFromParameter;
902
+ /**
903
+ * A date where assets prior to this will be returned. Any asset that occurs prior this date will be returned. UTC is assumed if no timezone is provided
904
+ */
905
+ until?: QUntilParameter;
906
+ /**
907
+ * A charge Prior Billing Period, 0 implies "current" and -23 is for the period 23 months ago.
908
+ * @minimum -23
909
+ * @maximum 0
910
+ */
911
+ pbp?: QPbpParameter;
912
+ };
913
+ type GetOrganisationsParams = {
914
+ /**
915
+ * An object name
916
+ */
917
+ name?: QNameParameter;
918
+ };
919
+ type GetUnitsParams = {
920
+ /**
921
+ * An object name
922
+ */
923
+ name?: QNameParameter;
924
+ };
925
+ type GetAssetParams = {
926
+ /**
927
+ * A User Identity
928
+ * @minLength 3
929
+ * @maxLength 80
930
+ * @pattern ^\w(?:\w*(?:[@.-]\w+)?)*$
931
+ */
932
+ user_id?: QUserIdParameter;
933
+ /**
934
+ * A Product Identity
935
+ * @pattern ^product-[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$
936
+ */
937
+ product_id?: QProductIdParameter;
938
+ /**
939
+ * A Unit Identity
940
+ * @pattern ^unit-[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$
941
+ */
942
+ unit_id?: QUnitIdParameter;
943
+ /**
944
+ * An Organisation Identity
945
+ * @pattern ^org-[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$
946
+ */
947
+ org_id?: QOrgIdParameter;
948
+ };
949
+ type AttachAssetParams = {
950
+ /**
951
+ * A Merchant Identity
952
+ * @minimum 1
953
+ */
954
+ m_id?: QMIdParameter;
955
+ };
956
+ type DetachAssetParams = {
957
+ /**
958
+ * A Merchant Identity
959
+ * @minimum 1
960
+ */
961
+ m_id?: QMIdParameter;
962
+ };
940
963
 
941
964
  declare const AXIOS_INSTANCE: axios.AxiosInstance;
942
965
  /**