@boatdev/sdk 1.11.0 → 1.12.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 (175) hide show
  1. package/.openapi-generator/FILES +42 -0
  2. package/dist/apis/BoatApi.d.ts +191 -14
  3. package/dist/apis/BoatApi.js +466 -14
  4. package/dist/esm/apis/BoatApi.d.ts +191 -14
  5. package/dist/esm/apis/BoatApi.js +466 -14
  6. package/dist/esm/models/CreateSandboxRequest.d.ts +35 -1
  7. package/dist/esm/models/CreateSandboxRequest.js +17 -0
  8. package/dist/esm/models/CreateSandboxRequestFilesInner.d.ts +52 -0
  9. package/dist/esm/models/CreateSandboxRequestFilesInner.js +56 -0
  10. package/dist/esm/models/CreateSandboxResponse.d.ts +7 -0
  11. package/dist/esm/models/CreateSandboxResponse.js +3 -0
  12. package/dist/esm/models/CreateSandboxResponseAllOfHostedPortsInner.d.ts +77 -0
  13. package/dist/esm/models/CreateSandboxResponseAllOfHostedPortsInner.js +64 -0
  14. package/dist/esm/models/FileDeleteResponse.d.ts +57 -0
  15. package/dist/esm/models/FileDeleteResponse.js +59 -0
  16. package/dist/esm/models/FileEntry.d.ts +68 -0
  17. package/dist/esm/models/FileEntry.js +67 -0
  18. package/dist/esm/models/FileFindResponse.d.ts +70 -0
  19. package/dist/esm/models/FileFindResponse.js +66 -0
  20. package/dist/esm/models/FileFindResponseAllOfMatches.d.ts +44 -0
  21. package/dist/esm/models/FileFindResponseAllOfMatches.js +51 -0
  22. package/dist/esm/models/FileFolderRequest.d.ts +38 -0
  23. package/dist/esm/models/FileFolderRequest.js +45 -0
  24. package/dist/esm/models/FileInfoResponse.d.ts +95 -0
  25. package/dist/esm/models/FileInfoResponse.js +85 -0
  26. package/dist/esm/models/FileListResponse.d.ts +70 -0
  27. package/dist/esm/models/FileListResponse.js +68 -0
  28. package/dist/esm/models/FileMoveRequest.d.ts +44 -0
  29. package/dist/esm/models/FileMoveRequest.js +49 -0
  30. package/dist/esm/models/FileMoveResponse.d.ts +63 -0
  31. package/dist/esm/models/FileMoveResponse.js +63 -0
  32. package/dist/esm/models/FilePermissionsRequest.d.ts +38 -0
  33. package/dist/esm/models/FilePermissionsRequest.js +47 -0
  34. package/dist/esm/models/FileReplaceRequest.d.ts +44 -0
  35. package/dist/esm/models/FileReplaceRequest.js +51 -0
  36. package/dist/esm/models/FileReplaceResponse.d.ts +58 -0
  37. package/dist/esm/models/FileReplaceResponse.js +60 -0
  38. package/dist/esm/models/FileReplaceResponseAllOfResults.d.ts +50 -0
  39. package/dist/esm/models/FileReplaceResponseAllOfResults.js +51 -0
  40. package/dist/esm/models/FileSearchResponse.d.ts +69 -0
  41. package/dist/esm/models/FileSearchResponse.js +65 -0
  42. package/dist/esm/models/LimitsFields.d.ts +54 -16
  43. package/dist/esm/models/LimitsFields.js +16 -2
  44. package/dist/esm/models/LimitsFieldsOveragePrices.d.ts +51 -0
  45. package/dist/esm/models/LimitsFieldsOveragePrices.js +48 -0
  46. package/dist/esm/models/LimitsFieldsOveragePricesStartBracketsInner.d.ts +44 -0
  47. package/dist/esm/models/LimitsFieldsOveragePricesStartBracketsInner.js +45 -0
  48. package/dist/esm/models/LimitsFieldsPlanIncluded.d.ts +44 -0
  49. package/dist/esm/models/LimitsFieldsPlanIncluded.js +45 -0
  50. package/dist/esm/models/LimitsFieldsStartLimitsWithWallet.d.ts +44 -0
  51. package/dist/esm/models/LimitsFieldsStartLimitsWithWallet.js +45 -0
  52. package/dist/esm/models/LimitsFieldsWallet.d.ts +32 -0
  53. package/dist/esm/models/LimitsFieldsWallet.js +41 -0
  54. package/dist/esm/models/LimitsResponse.d.ts +54 -16
  55. package/dist/esm/models/LimitsResponse.js +16 -2
  56. package/dist/esm/models/NamedSnapshotAllowance.d.ts +9 -3
  57. package/dist/esm/models/NamedSnapshotAllowance.js +2 -0
  58. package/dist/esm/models/SavedSnapshotAllowance.d.ts +9 -3
  59. package/dist/esm/models/SavedSnapshotAllowance.js +2 -0
  60. package/dist/esm/models/index.d.ts +21 -0
  61. package/dist/esm/models/index.js +21 -0
  62. package/dist/models/CreateSandboxRequest.d.ts +35 -1
  63. package/dist/models/CreateSandboxRequest.js +18 -1
  64. package/dist/models/CreateSandboxRequestFilesInner.d.ts +52 -0
  65. package/dist/models/CreateSandboxRequestFilesInner.js +64 -0
  66. package/dist/models/CreateSandboxResponse.d.ts +7 -0
  67. package/dist/models/CreateSandboxResponse.js +3 -0
  68. package/dist/models/CreateSandboxResponseAllOfHostedPortsInner.d.ts +77 -0
  69. package/dist/models/CreateSandboxResponseAllOfHostedPortsInner.js +72 -0
  70. package/dist/models/FileDeleteResponse.d.ts +57 -0
  71. package/dist/models/FileDeleteResponse.js +67 -0
  72. package/dist/models/FileEntry.d.ts +68 -0
  73. package/dist/models/FileEntry.js +74 -0
  74. package/dist/models/FileFindResponse.d.ts +70 -0
  75. package/dist/models/FileFindResponse.js +74 -0
  76. package/dist/models/FileFindResponseAllOfMatches.d.ts +44 -0
  77. package/dist/models/FileFindResponseAllOfMatches.js +58 -0
  78. package/dist/models/FileFolderRequest.d.ts +38 -0
  79. package/dist/models/FileFolderRequest.js +52 -0
  80. package/dist/models/FileInfoResponse.d.ts +95 -0
  81. package/dist/models/FileInfoResponse.js +93 -0
  82. package/dist/models/FileListResponse.d.ts +70 -0
  83. package/dist/models/FileListResponse.js +76 -0
  84. package/dist/models/FileMoveRequest.d.ts +44 -0
  85. package/dist/models/FileMoveRequest.js +56 -0
  86. package/dist/models/FileMoveResponse.d.ts +63 -0
  87. package/dist/models/FileMoveResponse.js +71 -0
  88. package/dist/models/FilePermissionsRequest.d.ts +38 -0
  89. package/dist/models/FilePermissionsRequest.js +54 -0
  90. package/dist/models/FileReplaceRequest.d.ts +44 -0
  91. package/dist/models/FileReplaceRequest.js +58 -0
  92. package/dist/models/FileReplaceResponse.d.ts +58 -0
  93. package/dist/models/FileReplaceResponse.js +68 -0
  94. package/dist/models/FileReplaceResponseAllOfResults.d.ts +50 -0
  95. package/dist/models/FileReplaceResponseAllOfResults.js +58 -0
  96. package/dist/models/FileSearchResponse.d.ts +69 -0
  97. package/dist/models/FileSearchResponse.js +73 -0
  98. package/dist/models/LimitsFields.d.ts +54 -16
  99. package/dist/models/LimitsFields.js +16 -2
  100. package/dist/models/LimitsFieldsOveragePrices.d.ts +51 -0
  101. package/dist/models/LimitsFieldsOveragePrices.js +55 -0
  102. package/dist/models/LimitsFieldsOveragePricesStartBracketsInner.d.ts +44 -0
  103. package/dist/models/LimitsFieldsOveragePricesStartBracketsInner.js +52 -0
  104. package/dist/models/LimitsFieldsPlanIncluded.d.ts +44 -0
  105. package/dist/models/LimitsFieldsPlanIncluded.js +52 -0
  106. package/dist/models/LimitsFieldsStartLimitsWithWallet.d.ts +44 -0
  107. package/dist/models/LimitsFieldsStartLimitsWithWallet.js +52 -0
  108. package/dist/models/LimitsFieldsWallet.d.ts +32 -0
  109. package/dist/models/LimitsFieldsWallet.js +48 -0
  110. package/dist/models/LimitsResponse.d.ts +54 -16
  111. package/dist/models/LimitsResponse.js +16 -2
  112. package/dist/models/NamedSnapshotAllowance.d.ts +9 -3
  113. package/dist/models/NamedSnapshotAllowance.js +2 -0
  114. package/dist/models/SavedSnapshotAllowance.d.ts +9 -3
  115. package/dist/models/SavedSnapshotAllowance.js +2 -0
  116. package/dist/models/index.d.ts +21 -0
  117. package/dist/models/index.js +21 -0
  118. package/docs/BoatApi.md +744 -48
  119. package/docs/CreateSandboxRequest.md +8 -0
  120. package/docs/CreateSandboxRequestFilesInner.md +36 -0
  121. package/docs/CreateSandboxResponse.md +2 -0
  122. package/docs/CreateSandboxResponseAllOfHostedPortsInner.md +44 -0
  123. package/docs/FileDeleteResponse.md +38 -0
  124. package/docs/FileEntry.md +44 -0
  125. package/docs/FileFindResponse.md +42 -0
  126. package/docs/FileFindResponseAllOfMatches.md +36 -0
  127. package/docs/FileFolderRequest.md +34 -0
  128. package/docs/FileInfoResponse.md +50 -0
  129. package/docs/FileListResponse.md +42 -0
  130. package/docs/FileMoveRequest.md +36 -0
  131. package/docs/FileMoveResponse.md +40 -0
  132. package/docs/FilePermissionsRequest.md +34 -0
  133. package/docs/FileReplaceRequest.md +36 -0
  134. package/docs/FileReplaceResponse.md +38 -0
  135. package/docs/FileReplaceResponseAllOfResults.md +38 -0
  136. package/docs/FileSearchResponse.md +42 -0
  137. package/docs/LimitsFields.md +12 -2
  138. package/docs/LimitsFieldsOveragePrices.md +39 -0
  139. package/docs/LimitsFieldsOveragePricesStartBracketsInner.md +36 -0
  140. package/docs/LimitsFieldsPlanIncluded.md +37 -0
  141. package/docs/LimitsFieldsStartLimitsWithWallet.md +37 -0
  142. package/docs/LimitsFieldsWallet.md +33 -0
  143. package/docs/LimitsResponse.md +12 -2
  144. package/docs/NamedSnapshotAllowance.md +3 -1
  145. package/docs/SavedSnapshotAllowance.md +3 -1
  146. package/package.json +1 -1
  147. package/src/apis/BoatApi.ts +721 -14
  148. package/src/models/CreateSandboxRequest.ts +57 -1
  149. package/src/models/CreateSandboxRequestFilesInner.ts +94 -0
  150. package/src/models/CreateSandboxResponse.ts +15 -0
  151. package/src/models/CreateSandboxResponseAllOfHostedPortsInner.ts +128 -0
  152. package/src/models/FileDeleteResponse.ts +102 -0
  153. package/src/models/FileEntry.ts +120 -0
  154. package/src/models/FileFindResponse.ts +127 -0
  155. package/src/models/FileFindResponseAllOfMatches.ts +84 -0
  156. package/src/models/FileFolderRequest.ts +74 -0
  157. package/src/models/FileInfoResponse.ts +158 -0
  158. package/src/models/FileListResponse.ts +128 -0
  159. package/src/models/FileMoveRequest.ts +83 -0
  160. package/src/models/FileMoveResponse.ts +111 -0
  161. package/src/models/FilePermissionsRequest.ts +75 -0
  162. package/src/models/FileReplaceRequest.ts +84 -0
  163. package/src/models/FileReplaceResponse.ts +110 -0
  164. package/src/models/FileReplaceResponseAllOfResults.ts +91 -0
  165. package/src/models/FileSearchResponse.ts +119 -0
  166. package/src/models/LimitsFields.ts +90 -16
  167. package/src/models/LimitsFieldsOveragePrices.ts +97 -0
  168. package/src/models/LimitsFieldsOveragePricesStartBracketsInner.ts +81 -0
  169. package/src/models/LimitsFieldsPlanIncluded.ts +81 -0
  170. package/src/models/LimitsFieldsStartLimitsWithWallet.ts +81 -0
  171. package/src/models/LimitsFieldsWallet.ts +65 -0
  172. package/src/models/LimitsResponse.ts +90 -16
  173. package/src/models/NamedSnapshotAllowance.ts +11 -3
  174. package/src/models/SavedSnapshotAllowance.ts +11 -3
  175. package/src/models/index.ts +21 -0
@@ -0,0 +1,65 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Boat Public API v1
5
+ * Public JSON API for creating, operating, prompting, observing, and exposing sandboxes from backend services, CI jobs, hosted workers, and Boat automation products. The v1 reference intentionally documents the developer integration surface only. Dashboard billing actions are not part of v1.
6
+ *
7
+ * The version of the OpenAPI document: 1.0.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ /**
15
+ * @export
16
+ */
17
+ export const FileSearchResponseTypeEnum = {
18
+ FileSearch: 'file.search'
19
+ };
20
+ /**
21
+ * Check if a given object implements the FileSearchResponse interface.
22
+ */
23
+ export function instanceOfFileSearchResponse(value) {
24
+ if (!('ok' in value) || value['ok'] === undefined)
25
+ return false;
26
+ if (!('type' in value) || value['type'] === undefined)
27
+ return false;
28
+ if (!('files' in value) || value['files'] === undefined)
29
+ return false;
30
+ if (!('truncated' in value) || value['truncated'] === undefined)
31
+ return false;
32
+ return true;
33
+ }
34
+ export function FileSearchResponseFromJSON(json) {
35
+ return FileSearchResponseFromJSONTyped(json, false);
36
+ }
37
+ export function FileSearchResponseFromJSONTyped(json, ignoreDiscriminator) {
38
+ if (json == null) {
39
+ return json;
40
+ }
41
+ return {
42
+ 'ok': json['ok'],
43
+ 'type': json['type'],
44
+ 'success': json['success'] == null ? undefined : json['success'],
45
+ 'files': json['files'],
46
+ 'truncated': json['truncated'],
47
+ 'errors': json['errors'] == null ? undefined : json['errors'],
48
+ };
49
+ }
50
+ export function FileSearchResponseToJSON(json) {
51
+ return FileSearchResponseToJSONTyped(json, false);
52
+ }
53
+ export function FileSearchResponseToJSONTyped(value, ignoreDiscriminator = false) {
54
+ if (value == null) {
55
+ return value;
56
+ }
57
+ return {
58
+ 'ok': value['ok'],
59
+ 'type': value['type'],
60
+ 'success': value['success'],
61
+ 'files': value['files'],
62
+ 'truncated': value['truncated'],
63
+ 'errors': value['errors'],
64
+ };
65
+ }
@@ -9,7 +9,11 @@
9
9
  * https://openapi-generator.tech
10
10
  * Do not edit the class manually.
11
11
  */
12
+ import type { LimitsFieldsWallet } from './LimitsFieldsWallet';
13
+ import type { LimitsFieldsStartLimitsWithWallet } from './LimitsFieldsStartLimitsWithWallet';
12
14
  import type { LimitsFieldsGiftLimit } from './LimitsFieldsGiftLimit';
15
+ import type { LimitsFieldsOveragePrices } from './LimitsFieldsOveragePrices';
16
+ import type { LimitsFieldsPlanIncluded } from './LimitsFieldsPlanIncluded';
13
17
  import type { LimitsFieldsCurrentLimits } from './LimitsFieldsCurrentLimits';
14
18
  import type { LimitsFieldsMachineTypesInner } from './LimitsFieldsMachineTypesInner';
15
19
  import type { LimitsFieldsStartLimits } from './LimitsFieldsStartLimits';
@@ -120,6 +124,36 @@ export interface LimitsFields {
120
124
  * @memberof LimitsFields
121
125
  */
122
126
  startLimits?: LimitsFieldsStartLimits;
127
+ /**
128
+ *
129
+ * @type {LimitsFieldsWallet}
130
+ * @memberof LimitsFields
131
+ */
132
+ wallet?: LimitsFieldsWallet;
133
+ /**
134
+ *
135
+ * @type {LimitsFieldsPlanIncluded}
136
+ * @memberof LimitsFields
137
+ */
138
+ planIncluded?: LimitsFieldsPlanIncluded;
139
+ /**
140
+ *
141
+ * @type {LimitsFieldsOveragePrices}
142
+ * @memberof LimitsFields
143
+ */
144
+ overagePrices?: LimitsFieldsOveragePrices;
145
+ /**
146
+ * What the next start costs now. 0 inside every limit; null when it would be refused.
147
+ * @type {number}
148
+ * @memberof LimitsFields
149
+ */
150
+ nextStartDollars?: number | null;
151
+ /**
152
+ *
153
+ * @type {LimitsFieldsStartLimitsWithWallet}
154
+ * @memberof LimitsFields
155
+ */
156
+ startLimitsWithWallet?: LimitsFieldsStartLimitsWithWallet;
123
157
  /**
124
158
  *
125
159
  * @type {LimitsFieldsStarts}
@@ -127,21 +161,24 @@ export interface LimitsFields {
127
161
  */
128
162
  starts?: LimitsFieldsStarts;
129
163
  /**
130
- * Remaining machine time in hours (`creditBalanceSeconds / 3600`). Null on unlimited accounts.
164
+ * Deprecated. Read `planIncluded.vmHoursRemaining` and `wallet.balanceDollars`.
131
165
  * @type {number}
132
166
  * @memberof LimitsFields
167
+ * @deprecated
133
168
  */
134
169
  creditBalanceHours?: number | null;
135
170
  /**
136
- * Remaining purchased credit packs in hours.
171
+ * Deprecated. Read `wallet.balanceDollars`.
137
172
  * @type {number}
138
173
  * @memberof LimitsFields
174
+ * @deprecated
139
175
  */
140
176
  packBalanceHours?: number;
141
177
  /**
142
- * Remaining purchased credit packs in dollars.
178
+ * Deprecated. Read `wallet.balanceDollars`.
143
179
  * @type {number}
144
180
  * @memberof LimitsFields
181
+ * @deprecated
145
182
  */
146
183
  packBalanceDollars?: number;
147
184
  /**
@@ -150,14 +187,6 @@ export interface LimitsFields {
150
187
  * @memberof LimitsFields
151
188
  */
152
189
  hasPaymentHistory?: boolean;
153
- /**
154
- *
155
- * @type {{ [key: string]: any; }}
156
- * @memberof LimitsFields
157
- */
158
- _package?: {
159
- [key: string]: any;
160
- };
161
190
  /**
162
191
  *
163
192
  * @type {number}
@@ -171,15 +200,17 @@ export interface LimitsFields {
171
200
  */
172
201
  subscriptionRemainingSeconds?: number;
173
202
  /**
174
- *
203
+ * Deprecated. Read `wallet.balanceDollars`.
175
204
  * @type {number}
176
205
  * @memberof LimitsFields
206
+ * @deprecated
177
207
  */
178
208
  packBalanceSeconds?: number;
179
209
  /**
180
- *
210
+ * Deprecated.
181
211
  * @type {number}
182
212
  * @memberof LimitsFields
213
+ * @deprecated
183
214
  */
184
215
  creditPurchasedSeconds?: number;
185
216
  /**
@@ -255,17 +286,23 @@ export interface LimitsFields {
255
286
  */
256
287
  hasSeatPlan?: boolean;
257
288
  /**
258
- * Machine time used in the last 24 hours, in seconds. Useful to estimate how long the balance lasts.
289
+ * Machine time used in the last 24 hours, in seconds. Useful to estimate how long the included time and the wallet last.
259
290
  * @type {number}
260
291
  * @memberof LimitsFields
261
292
  */
262
293
  last24hUsageSeconds?: number;
263
294
  /**
264
- * Lifetime Boat-time allowance for new sandboxes while the account has not paid, a plan trial included. Every charge on the wallet counts. Null once the account has paid.
295
+ * Lifetime VM-time allowance for new sandboxes while the account has not paid, a plan trial included. Null once the account has paid.
265
296
  * @type {number}
266
297
  * @memberof LimitsFields
267
298
  */
268
299
  trialComputeCapSeconds?: number | null;
300
+ /**
301
+ * VM time already used against trialComputeCapSeconds. Null once the account has paid.
302
+ * @type {number}
303
+ * @memberof LimitsFields
304
+ */
305
+ trialComputeUsedSeconds?: number | null;
269
306
  /**
270
307
  * The trial limits in one readable line. Null on paid accounts.
271
308
  * @type {string}
@@ -321,9 +358,10 @@ export interface LimitsFields {
321
358
  */
322
359
  subscriptionCurrentPeriodEnd?: Date | null;
323
360
  /**
324
- *
361
+ * Deprecated. Read `planIncluded.vmHoursRemaining` and `wallet.balanceDollars`.
325
362
  * @type {number}
326
363
  * @memberof LimitsFields
364
+ * @deprecated
327
365
  */
328
366
  creditBalanceSeconds?: number;
329
367
  /**
@@ -11,7 +11,11 @@
11
11
  * https://openapi-generator.tech
12
12
  * Do not edit the class manually.
13
13
  */
14
+ import { LimitsFieldsWalletFromJSON, LimitsFieldsWalletToJSON, } from './LimitsFieldsWallet';
15
+ import { LimitsFieldsStartLimitsWithWalletFromJSON, LimitsFieldsStartLimitsWithWalletToJSON, } from './LimitsFieldsStartLimitsWithWallet';
14
16
  import { LimitsFieldsGiftLimitFromJSON, LimitsFieldsGiftLimitToJSON, } from './LimitsFieldsGiftLimit';
17
+ import { LimitsFieldsOveragePricesFromJSON, LimitsFieldsOveragePricesToJSON, } from './LimitsFieldsOveragePrices';
18
+ import { LimitsFieldsPlanIncludedFromJSON, LimitsFieldsPlanIncludedToJSON, } from './LimitsFieldsPlanIncluded';
15
19
  import { LimitsFieldsCurrentLimitsFromJSON, LimitsFieldsCurrentLimitsToJSON, } from './LimitsFieldsCurrentLimits';
16
20
  import { LimitsFieldsMachineTypesInnerFromJSON, LimitsFieldsMachineTypesInnerToJSON, } from './LimitsFieldsMachineTypesInner';
17
21
  import { LimitsFieldsStartLimitsFromJSON, LimitsFieldsStartLimitsToJSON, } from './LimitsFieldsStartLimits';
@@ -56,12 +60,16 @@ export function LimitsFieldsFromJSONTyped(json, ignoreDiscriminator) {
56
60
  'maxCreationRequestsPerMinute': json['maxCreationRequestsPerMinute'] == null ? undefined : json['maxCreationRequestsPerMinute'],
57
61
  'maxCreationRequestsPerDay': json['maxCreationRequestsPerDay'] == null ? undefined : json['maxCreationRequestsPerDay'],
58
62
  'startLimits': json['startLimits'] == null ? undefined : LimitsFieldsStartLimitsFromJSON(json['startLimits']),
63
+ 'wallet': json['wallet'] == null ? undefined : LimitsFieldsWalletFromJSON(json['wallet']),
64
+ 'planIncluded': json['planIncluded'] == null ? undefined : LimitsFieldsPlanIncludedFromJSON(json['planIncluded']),
65
+ 'overagePrices': json['overagePrices'] == null ? undefined : LimitsFieldsOveragePricesFromJSON(json['overagePrices']),
66
+ 'nextStartDollars': json['nextStartDollars'] == null ? undefined : json['nextStartDollars'],
67
+ 'startLimitsWithWallet': json['startLimitsWithWallet'] == null ? undefined : LimitsFieldsStartLimitsWithWalletFromJSON(json['startLimitsWithWallet']),
59
68
  'starts': json['starts'] == null ? undefined : LimitsFieldsStartsFromJSON(json['starts']),
60
69
  'creditBalanceHours': json['creditBalanceHours'] == null ? undefined : json['creditBalanceHours'],
61
70
  'packBalanceHours': json['packBalanceHours'] == null ? undefined : json['packBalanceHours'],
62
71
  'packBalanceDollars': json['packBalanceDollars'] == null ? undefined : json['packBalanceDollars'],
63
72
  'hasPaymentHistory': json['hasPaymentHistory'] == null ? undefined : json['hasPaymentHistory'],
64
- '_package': json['package'] == null ? undefined : json['package'],
65
73
  'subscriptionQuotaSeconds': json['subscriptionQuotaSeconds'] == null ? undefined : json['subscriptionQuotaSeconds'],
66
74
  'subscriptionRemainingSeconds': json['subscriptionRemainingSeconds'] == null ? undefined : json['subscriptionRemainingSeconds'],
67
75
  'packBalanceSeconds': json['packBalanceSeconds'] == null ? undefined : json['packBalanceSeconds'],
@@ -80,6 +88,7 @@ export function LimitsFieldsFromJSONTyped(json, ignoreDiscriminator) {
80
88
  'hasSeatPlan': json['hasSeatPlan'] == null ? undefined : json['hasSeatPlan'],
81
89
  'last24hUsageSeconds': json['last24hUsageSeconds'] == null ? undefined : json['last24hUsageSeconds'],
82
90
  'trialComputeCapSeconds': json['trialComputeCapSeconds'] == null ? undefined : json['trialComputeCapSeconds'],
91
+ 'trialComputeUsedSeconds': json['trialComputeUsedSeconds'] == null ? undefined : json['trialComputeUsedSeconds'],
83
92
  'trialLine': json['trialLine'] == null ? undefined : json['trialLine'],
84
93
  'machineTypes': json['machineTypes'] == null ? undefined : (json['machineTypes'].map(LimitsFieldsMachineTypesInnerFromJSON)),
85
94
  'giftLimit': json['giftLimit'] == null ? undefined : LimitsFieldsGiftLimitFromJSON(json['giftLimit']),
@@ -119,12 +128,16 @@ export function LimitsFieldsToJSONTyped(value, ignoreDiscriminator = false) {
119
128
  'maxCreationRequestsPerMinute': value['maxCreationRequestsPerMinute'],
120
129
  'maxCreationRequestsPerDay': value['maxCreationRequestsPerDay'],
121
130
  'startLimits': LimitsFieldsStartLimitsToJSON(value['startLimits']),
131
+ 'wallet': LimitsFieldsWalletToJSON(value['wallet']),
132
+ 'planIncluded': LimitsFieldsPlanIncludedToJSON(value['planIncluded']),
133
+ 'overagePrices': LimitsFieldsOveragePricesToJSON(value['overagePrices']),
134
+ 'nextStartDollars': value['nextStartDollars'],
135
+ 'startLimitsWithWallet': LimitsFieldsStartLimitsWithWalletToJSON(value['startLimitsWithWallet']),
122
136
  'starts': LimitsFieldsStartsToJSON(value['starts']),
123
137
  'creditBalanceHours': value['creditBalanceHours'],
124
138
  'packBalanceHours': value['packBalanceHours'],
125
139
  'packBalanceDollars': value['packBalanceDollars'],
126
140
  'hasPaymentHistory': value['hasPaymentHistory'],
127
- 'package': value['_package'],
128
141
  'subscriptionQuotaSeconds': value['subscriptionQuotaSeconds'],
129
142
  'subscriptionRemainingSeconds': value['subscriptionRemainingSeconds'],
130
143
  'packBalanceSeconds': value['packBalanceSeconds'],
@@ -143,6 +156,7 @@ export function LimitsFieldsToJSONTyped(value, ignoreDiscriminator = false) {
143
156
  'hasSeatPlan': value['hasSeatPlan'],
144
157
  'last24hUsageSeconds': value['last24hUsageSeconds'],
145
158
  'trialComputeCapSeconds': value['trialComputeCapSeconds'],
159
+ 'trialComputeUsedSeconds': value['trialComputeUsedSeconds'],
146
160
  'trialLine': value['trialLine'],
147
161
  'machineTypes': value['machineTypes'] == null ? undefined : (value['machineTypes'].map(LimitsFieldsMachineTypesInnerToJSON)),
148
162
  'giftLimit': LimitsFieldsGiftLimitToJSON(value['giftLimit']),
@@ -0,0 +1,51 @@
1
+ /**
2
+ * Boat Public API v1
3
+ * Public JSON API for creating, operating, prompting, observing, and exposing sandboxes from backend services, CI jobs, hosted workers, and Boat automation products. The v1 reference intentionally documents the developer integration surface only. Dashboard billing actions are not part of v1.
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ import type { LimitsFieldsOveragePricesStartBracketsInner } from './LimitsFieldsOveragePricesStartBracketsInner';
13
+ /**
14
+ * What the wallet pays past the plan.
15
+ * @export
16
+ * @interface LimitsFieldsOveragePrices
17
+ */
18
+ export interface LimitsFieldsOveragePrices {
19
+ /**
20
+ * Dollars per hour of a `default` machine. `small` is 0.5x, `large` 2x, `xlarge` 5.556x.
21
+ * @type {number}
22
+ * @memberof LimitsFieldsOveragePrices
23
+ */
24
+ vmHourDollars?: number;
25
+ /**
26
+ * Dollars per day for each saved snapshot above the included count.
27
+ * @type {number}
28
+ * @memberof LimitsFieldsOveragePrices
29
+ */
30
+ savedSnapshotDayDollars?: number;
31
+ /**
32
+ * Price of a start above a start limit, by how far past the limit it falls, in each window (minute, hour, day). A start above limits in several windows pays the highest bracket among them.
33
+ * @type {Array<LimitsFieldsOveragePricesStartBracketsInner>}
34
+ * @memberof LimitsFieldsOveragePrices
35
+ */
36
+ startBrackets?: Array<LimitsFieldsOveragePricesStartBracketsInner>;
37
+ /**
38
+ * Paid starts stop at this multiple of each start limit (the last bracket's upToMultiple).
39
+ * @type {number}
40
+ * @memberof LimitsFieldsOveragePrices
41
+ */
42
+ startLimitMultiplier?: number;
43
+ }
44
+ /**
45
+ * Check if a given object implements the LimitsFieldsOveragePrices interface.
46
+ */
47
+ export declare function instanceOfLimitsFieldsOveragePrices(value: object): value is LimitsFieldsOveragePrices;
48
+ export declare function LimitsFieldsOveragePricesFromJSON(json: any): LimitsFieldsOveragePrices;
49
+ export declare function LimitsFieldsOveragePricesFromJSONTyped(json: any, ignoreDiscriminator: boolean): LimitsFieldsOveragePrices;
50
+ export declare function LimitsFieldsOveragePricesToJSON(json: any): LimitsFieldsOveragePrices;
51
+ export declare function LimitsFieldsOveragePricesToJSONTyped(value?: LimitsFieldsOveragePrices | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,48 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Boat Public API v1
5
+ * Public JSON API for creating, operating, prompting, observing, and exposing sandboxes from backend services, CI jobs, hosted workers, and Boat automation products. The v1 reference intentionally documents the developer integration surface only. Dashboard billing actions are not part of v1.
6
+ *
7
+ * The version of the OpenAPI document: 1.0.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ import { LimitsFieldsOveragePricesStartBracketsInnerFromJSON, LimitsFieldsOveragePricesStartBracketsInnerToJSON, } from './LimitsFieldsOveragePricesStartBracketsInner';
15
+ /**
16
+ * Check if a given object implements the LimitsFieldsOveragePrices interface.
17
+ */
18
+ export function instanceOfLimitsFieldsOveragePrices(value) {
19
+ return true;
20
+ }
21
+ export function LimitsFieldsOveragePricesFromJSON(json) {
22
+ return LimitsFieldsOveragePricesFromJSONTyped(json, false);
23
+ }
24
+ export function LimitsFieldsOveragePricesFromJSONTyped(json, ignoreDiscriminator) {
25
+ if (json == null) {
26
+ return json;
27
+ }
28
+ return {
29
+ 'vmHourDollars': json['vmHourDollars'] == null ? undefined : json['vmHourDollars'],
30
+ 'savedSnapshotDayDollars': json['savedSnapshotDayDollars'] == null ? undefined : json['savedSnapshotDayDollars'],
31
+ 'startBrackets': json['startBrackets'] == null ? undefined : (json['startBrackets'].map(LimitsFieldsOveragePricesStartBracketsInnerFromJSON)),
32
+ 'startLimitMultiplier': json['startLimitMultiplier'] == null ? undefined : json['startLimitMultiplier'],
33
+ };
34
+ }
35
+ export function LimitsFieldsOveragePricesToJSON(json) {
36
+ return LimitsFieldsOveragePricesToJSONTyped(json, false);
37
+ }
38
+ export function LimitsFieldsOveragePricesToJSONTyped(value, ignoreDiscriminator = false) {
39
+ if (value == null) {
40
+ return value;
41
+ }
42
+ return {
43
+ 'vmHourDollars': value['vmHourDollars'],
44
+ 'savedSnapshotDayDollars': value['savedSnapshotDayDollars'],
45
+ 'startBrackets': value['startBrackets'] == null ? undefined : (value['startBrackets'].map(LimitsFieldsOveragePricesStartBracketsInnerToJSON)),
46
+ 'startLimitMultiplier': value['startLimitMultiplier'],
47
+ };
48
+ }
@@ -0,0 +1,44 @@
1
+ /**
2
+ * Boat Public API v1
3
+ * Public JSON API for creating, operating, prompting, observing, and exposing sandboxes from backend services, CI jobs, hosted workers, and Boat automation products. The v1 reference intentionally documents the developer integration surface only. Dashboard billing actions are not part of v1.
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ /**
13
+ *
14
+ * @export
15
+ * @interface LimitsFieldsOveragePricesStartBracketsInner
16
+ */
17
+ export interface LimitsFieldsOveragePricesStartBracketsInner {
18
+ /**
19
+ * The bracket starts above this multiple of the limit.
20
+ * @type {number}
21
+ * @memberof LimitsFieldsOveragePricesStartBracketsInner
22
+ */
23
+ aboveMultiple?: number;
24
+ /**
25
+ * The bracket ends at this multiple of the limit (included).
26
+ * @type {number}
27
+ * @memberof LimitsFieldsOveragePricesStartBracketsInner
28
+ */
29
+ upToMultiple?: number;
30
+ /**
31
+ * Dollars per start in this bracket.
32
+ * @type {number}
33
+ * @memberof LimitsFieldsOveragePricesStartBracketsInner
34
+ */
35
+ dollars?: number;
36
+ }
37
+ /**
38
+ * Check if a given object implements the LimitsFieldsOveragePricesStartBracketsInner interface.
39
+ */
40
+ export declare function instanceOfLimitsFieldsOveragePricesStartBracketsInner(value: object): value is LimitsFieldsOveragePricesStartBracketsInner;
41
+ export declare function LimitsFieldsOveragePricesStartBracketsInnerFromJSON(json: any): LimitsFieldsOveragePricesStartBracketsInner;
42
+ export declare function LimitsFieldsOveragePricesStartBracketsInnerFromJSONTyped(json: any, ignoreDiscriminator: boolean): LimitsFieldsOveragePricesStartBracketsInner;
43
+ export declare function LimitsFieldsOveragePricesStartBracketsInnerToJSON(json: any): LimitsFieldsOveragePricesStartBracketsInner;
44
+ export declare function LimitsFieldsOveragePricesStartBracketsInnerToJSONTyped(value?: LimitsFieldsOveragePricesStartBracketsInner | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,45 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Boat Public API v1
5
+ * Public JSON API for creating, operating, prompting, observing, and exposing sandboxes from backend services, CI jobs, hosted workers, and Boat automation products. The v1 reference intentionally documents the developer integration surface only. Dashboard billing actions are not part of v1.
6
+ *
7
+ * The version of the OpenAPI document: 1.0.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ /**
15
+ * Check if a given object implements the LimitsFieldsOveragePricesStartBracketsInner interface.
16
+ */
17
+ export function instanceOfLimitsFieldsOveragePricesStartBracketsInner(value) {
18
+ return true;
19
+ }
20
+ export function LimitsFieldsOveragePricesStartBracketsInnerFromJSON(json) {
21
+ return LimitsFieldsOveragePricesStartBracketsInnerFromJSONTyped(json, false);
22
+ }
23
+ export function LimitsFieldsOveragePricesStartBracketsInnerFromJSONTyped(json, ignoreDiscriminator) {
24
+ if (json == null) {
25
+ return json;
26
+ }
27
+ return {
28
+ 'aboveMultiple': json['aboveMultiple'] == null ? undefined : json['aboveMultiple'],
29
+ 'upToMultiple': json['upToMultiple'] == null ? undefined : json['upToMultiple'],
30
+ 'dollars': json['dollars'] == null ? undefined : json['dollars'],
31
+ };
32
+ }
33
+ export function LimitsFieldsOveragePricesStartBracketsInnerToJSON(json) {
34
+ return LimitsFieldsOveragePricesStartBracketsInnerToJSONTyped(json, false);
35
+ }
36
+ export function LimitsFieldsOveragePricesStartBracketsInnerToJSONTyped(value, ignoreDiscriminator = false) {
37
+ if (value == null) {
38
+ return value;
39
+ }
40
+ return {
41
+ 'aboveMultiple': value['aboveMultiple'],
42
+ 'upToMultiple': value['upToMultiple'],
43
+ 'dollars': value['dollars'],
44
+ };
45
+ }
@@ -0,0 +1,44 @@
1
+ /**
2
+ * Boat Public API v1
3
+ * Public JSON API for creating, operating, prompting, observing, and exposing sandboxes from backend services, CI jobs, hosted workers, and Boat automation products. The v1 reference intentionally documents the developer integration surface only. Dashboard billing actions are not part of v1.
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ /**
13
+ * What the plan includes this billing period. Null on unlimited accounts.
14
+ * @export
15
+ * @interface LimitsFieldsPlanIncluded
16
+ */
17
+ export interface LimitsFieldsPlanIncluded {
18
+ /**
19
+ * VM time included this period, in hours of a `default` machine.
20
+ * @type {number}
21
+ * @memberof LimitsFieldsPlanIncluded
22
+ */
23
+ vmHours?: number;
24
+ /**
25
+ * Included VM time left this period, in hours of a `default` machine.
26
+ * @type {number}
27
+ * @memberof LimitsFieldsPlanIncluded
28
+ */
29
+ vmHoursRemaining?: number;
30
+ /**
31
+ * When the included amounts reset.
32
+ * @type {Date}
33
+ * @memberof LimitsFieldsPlanIncluded
34
+ */
35
+ periodEnd?: Date | null;
36
+ }
37
+ /**
38
+ * Check if a given object implements the LimitsFieldsPlanIncluded interface.
39
+ */
40
+ export declare function instanceOfLimitsFieldsPlanIncluded(value: object): value is LimitsFieldsPlanIncluded;
41
+ export declare function LimitsFieldsPlanIncludedFromJSON(json: any): LimitsFieldsPlanIncluded;
42
+ export declare function LimitsFieldsPlanIncludedFromJSONTyped(json: any, ignoreDiscriminator: boolean): LimitsFieldsPlanIncluded;
43
+ export declare function LimitsFieldsPlanIncludedToJSON(json: any): LimitsFieldsPlanIncluded;
44
+ export declare function LimitsFieldsPlanIncludedToJSONTyped(value?: LimitsFieldsPlanIncluded | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,45 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Boat Public API v1
5
+ * Public JSON API for creating, operating, prompting, observing, and exposing sandboxes from backend services, CI jobs, hosted workers, and Boat automation products. The v1 reference intentionally documents the developer integration surface only. Dashboard billing actions are not part of v1.
6
+ *
7
+ * The version of the OpenAPI document: 1.0.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ /**
15
+ * Check if a given object implements the LimitsFieldsPlanIncluded interface.
16
+ */
17
+ export function instanceOfLimitsFieldsPlanIncluded(value) {
18
+ return true;
19
+ }
20
+ export function LimitsFieldsPlanIncludedFromJSON(json) {
21
+ return LimitsFieldsPlanIncludedFromJSONTyped(json, false);
22
+ }
23
+ export function LimitsFieldsPlanIncludedFromJSONTyped(json, ignoreDiscriminator) {
24
+ if (json == null) {
25
+ return json;
26
+ }
27
+ return {
28
+ 'vmHours': json['vmHours'] == null ? undefined : json['vmHours'],
29
+ 'vmHoursRemaining': json['vmHoursRemaining'] == null ? undefined : json['vmHoursRemaining'],
30
+ 'periodEnd': json['periodEnd'] == null ? undefined : (new Date(json['periodEnd'])),
31
+ };
32
+ }
33
+ export function LimitsFieldsPlanIncludedToJSON(json) {
34
+ return LimitsFieldsPlanIncludedToJSONTyped(json, false);
35
+ }
36
+ export function LimitsFieldsPlanIncludedToJSONTyped(value, ignoreDiscriminator = false) {
37
+ if (value == null) {
38
+ return value;
39
+ }
40
+ return {
41
+ 'vmHours': value['vmHours'],
42
+ 'vmHoursRemaining': value['vmHoursRemaining'],
43
+ 'periodEnd': value['periodEnd'] == null ? value['periodEnd'] : value['periodEnd'].toISOString(),
44
+ };
45
+ }
@@ -0,0 +1,44 @@
1
+ /**
2
+ * Boat Public API v1
3
+ * Public JSON API for creating, operating, prompting, observing, and exposing sandboxes from backend services, CI jobs, hosted workers, and Boat automation products. The v1 reference intentionally documents the developer integration surface only. Dashboard billing actions are not part of v1.
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ /**
13
+ * Start ceilings with paid starts: each start limit times `overagePrices.startLimitMultiplier`. Starts above `startLimits` and up to these ceilings are paid from the wallet at the `overagePrices.startBrackets` prices. Null when paid starts are not available now (before the first payment, an empty wallet, or an unlimited account).
14
+ * @export
15
+ * @interface LimitsFieldsStartLimitsWithWallet
16
+ */
17
+ export interface LimitsFieldsStartLimitsWithWallet {
18
+ /**
19
+ *
20
+ * @type {number}
21
+ * @memberof LimitsFieldsStartLimitsWithWallet
22
+ */
23
+ perMinute?: number;
24
+ /**
25
+ *
26
+ * @type {number}
27
+ * @memberof LimitsFieldsStartLimitsWithWallet
28
+ */
29
+ perHour?: number;
30
+ /**
31
+ *
32
+ * @type {number}
33
+ * @memberof LimitsFieldsStartLimitsWithWallet
34
+ */
35
+ perDay?: number;
36
+ }
37
+ /**
38
+ * Check if a given object implements the LimitsFieldsStartLimitsWithWallet interface.
39
+ */
40
+ export declare function instanceOfLimitsFieldsStartLimitsWithWallet(value: object): value is LimitsFieldsStartLimitsWithWallet;
41
+ export declare function LimitsFieldsStartLimitsWithWalletFromJSON(json: any): LimitsFieldsStartLimitsWithWallet;
42
+ export declare function LimitsFieldsStartLimitsWithWalletFromJSONTyped(json: any, ignoreDiscriminator: boolean): LimitsFieldsStartLimitsWithWallet;
43
+ export declare function LimitsFieldsStartLimitsWithWalletToJSON(json: any): LimitsFieldsStartLimitsWithWallet;
44
+ export declare function LimitsFieldsStartLimitsWithWalletToJSONTyped(value?: LimitsFieldsStartLimitsWithWallet | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,45 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Boat Public API v1
5
+ * Public JSON API for creating, operating, prompting, observing, and exposing sandboxes from backend services, CI jobs, hosted workers, and Boat automation products. The v1 reference intentionally documents the developer integration surface only. Dashboard billing actions are not part of v1.
6
+ *
7
+ * The version of the OpenAPI document: 1.0.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ /**
15
+ * Check if a given object implements the LimitsFieldsStartLimitsWithWallet interface.
16
+ */
17
+ export function instanceOfLimitsFieldsStartLimitsWithWallet(value) {
18
+ return true;
19
+ }
20
+ export function LimitsFieldsStartLimitsWithWalletFromJSON(json) {
21
+ return LimitsFieldsStartLimitsWithWalletFromJSONTyped(json, false);
22
+ }
23
+ export function LimitsFieldsStartLimitsWithWalletFromJSONTyped(json, ignoreDiscriminator) {
24
+ if (json == null) {
25
+ return json;
26
+ }
27
+ return {
28
+ 'perMinute': json['perMinute'] == null ? undefined : json['perMinute'],
29
+ 'perHour': json['perHour'] == null ? undefined : json['perHour'],
30
+ 'perDay': json['perDay'] == null ? undefined : json['perDay'],
31
+ };
32
+ }
33
+ export function LimitsFieldsStartLimitsWithWalletToJSON(json) {
34
+ return LimitsFieldsStartLimitsWithWalletToJSONTyped(json, false);
35
+ }
36
+ export function LimitsFieldsStartLimitsWithWalletToJSONTyped(value, ignoreDiscriminator = false) {
37
+ if (value == null) {
38
+ return value;
39
+ }
40
+ return {
41
+ 'perMinute': value['perMinute'],
42
+ 'perHour': value['perHour'],
43
+ 'perDay': value['perDay'],
44
+ };
45
+ }