@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,32 @@
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
+ * The one wallet of this account or organization, in US dollars. It pays overage only: VM time past the plan, saved snapshots past the included count, paid starts and the AI proxy. It never pays the plan. Null on unlimited accounts.
14
+ * @export
15
+ * @interface LimitsFieldsWallet
16
+ */
17
+ export interface LimitsFieldsWallet {
18
+ /**
19
+ * Money in the wallet. Below zero while you owe during the grace period.
20
+ * @type {number}
21
+ * @memberof LimitsFieldsWallet
22
+ */
23
+ balanceDollars?: number;
24
+ }
25
+ /**
26
+ * Check if a given object implements the LimitsFieldsWallet interface.
27
+ */
28
+ export declare function instanceOfLimitsFieldsWallet(value: object): value is LimitsFieldsWallet;
29
+ export declare function LimitsFieldsWalletFromJSON(json: any): LimitsFieldsWallet;
30
+ export declare function LimitsFieldsWalletFromJSONTyped(json: any, ignoreDiscriminator: boolean): LimitsFieldsWallet;
31
+ export declare function LimitsFieldsWalletToJSON(json: any): LimitsFieldsWallet;
32
+ export declare function LimitsFieldsWalletToJSONTyped(value?: LimitsFieldsWallet | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,41 @@
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 LimitsFieldsWallet interface.
16
+ */
17
+ export function instanceOfLimitsFieldsWallet(value) {
18
+ return true;
19
+ }
20
+ export function LimitsFieldsWalletFromJSON(json) {
21
+ return LimitsFieldsWalletFromJSONTyped(json, false);
22
+ }
23
+ export function LimitsFieldsWalletFromJSONTyped(json, ignoreDiscriminator) {
24
+ if (json == null) {
25
+ return json;
26
+ }
27
+ return {
28
+ 'balanceDollars': json['balanceDollars'] == null ? undefined : json['balanceDollars'],
29
+ };
30
+ }
31
+ export function LimitsFieldsWalletToJSON(json) {
32
+ return LimitsFieldsWalletToJSONTyped(json, false);
33
+ }
34
+ export function LimitsFieldsWalletToJSONTyped(value, ignoreDiscriminator = false) {
35
+ if (value == null) {
36
+ return value;
37
+ }
38
+ return {
39
+ 'balanceDollars': value['balanceDollars'],
40
+ };
41
+ }
@@ -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';
@@ -131,6 +135,36 @@ export interface LimitsResponse {
131
135
  * @memberof LimitsResponse
132
136
  */
133
137
  startLimits?: LimitsFieldsStartLimits;
138
+ /**
139
+ *
140
+ * @type {LimitsFieldsWallet}
141
+ * @memberof LimitsResponse
142
+ */
143
+ wallet?: LimitsFieldsWallet;
144
+ /**
145
+ *
146
+ * @type {LimitsFieldsPlanIncluded}
147
+ * @memberof LimitsResponse
148
+ */
149
+ planIncluded?: LimitsFieldsPlanIncluded;
150
+ /**
151
+ *
152
+ * @type {LimitsFieldsOveragePrices}
153
+ * @memberof LimitsResponse
154
+ */
155
+ overagePrices?: LimitsFieldsOveragePrices;
156
+ /**
157
+ * What the next start costs now. 0 inside every limit; null when it would be refused.
158
+ * @type {number}
159
+ * @memberof LimitsResponse
160
+ */
161
+ nextStartDollars?: number;
162
+ /**
163
+ *
164
+ * @type {LimitsFieldsStartLimitsWithWallet}
165
+ * @memberof LimitsResponse
166
+ */
167
+ startLimitsWithWallet?: LimitsFieldsStartLimitsWithWallet;
134
168
  /**
135
169
  *
136
170
  * @type {LimitsFieldsStarts}
@@ -138,21 +172,24 @@ export interface LimitsResponse {
138
172
  */
139
173
  starts?: LimitsFieldsStarts;
140
174
  /**
141
- * Remaining machine time in hours (`creditBalanceSeconds / 3600`). Null on unlimited accounts.
175
+ * Deprecated. Read `planIncluded.vmHoursRemaining` and `wallet.balanceDollars`.
142
176
  * @type {number}
143
177
  * @memberof LimitsResponse
178
+ * @deprecated
144
179
  */
145
180
  creditBalanceHours?: number;
146
181
  /**
147
- * Remaining purchased credit packs in hours.
182
+ * Deprecated. Read `wallet.balanceDollars`.
148
183
  * @type {number}
149
184
  * @memberof LimitsResponse
185
+ * @deprecated
150
186
  */
151
187
  packBalanceHours?: number;
152
188
  /**
153
- * Remaining purchased credit packs in dollars.
189
+ * Deprecated. Read `wallet.balanceDollars`.
154
190
  * @type {number}
155
191
  * @memberof LimitsResponse
192
+ * @deprecated
156
193
  */
157
194
  packBalanceDollars?: number;
158
195
  /**
@@ -161,14 +198,6 @@ export interface LimitsResponse {
161
198
  * @memberof LimitsResponse
162
199
  */
163
200
  hasPaymentHistory?: boolean;
164
- /**
165
- *
166
- * @type {{ [key: string]: any; }}
167
- * @memberof LimitsResponse
168
- */
169
- _package?: {
170
- [key: string]: any;
171
- };
172
201
  /**
173
202
  *
174
203
  * @type {number}
@@ -182,15 +211,17 @@ export interface LimitsResponse {
182
211
  */
183
212
  subscriptionRemainingSeconds?: number;
184
213
  /**
185
- *
214
+ * Deprecated. Read `wallet.balanceDollars`.
186
215
  * @type {number}
187
216
  * @memberof LimitsResponse
217
+ * @deprecated
188
218
  */
189
219
  packBalanceSeconds?: number;
190
220
  /**
191
- *
221
+ * Deprecated.
192
222
  * @type {number}
193
223
  * @memberof LimitsResponse
224
+ * @deprecated
194
225
  */
195
226
  creditPurchasedSeconds?: number;
196
227
  /**
@@ -266,17 +297,23 @@ export interface LimitsResponse {
266
297
  */
267
298
  hasSeatPlan?: boolean;
268
299
  /**
269
- * Machine time used in the last 24 hours, in seconds. Useful to estimate how long the balance lasts.
300
+ * Machine time used in the last 24 hours, in seconds. Useful to estimate how long the included time and the wallet last.
270
301
  * @type {number}
271
302
  * @memberof LimitsResponse
272
303
  */
273
304
  last24hUsageSeconds?: number;
274
305
  /**
275
- * 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.
306
+ * Lifetime VM-time allowance for new sandboxes while the account has not paid, a plan trial included. Null once the account has paid.
276
307
  * @type {number}
277
308
  * @memberof LimitsResponse
278
309
  */
279
310
  trialComputeCapSeconds?: number;
311
+ /**
312
+ * VM time already used against trialComputeCapSeconds. Null once the account has paid.
313
+ * @type {number}
314
+ * @memberof LimitsResponse
315
+ */
316
+ trialComputeUsedSeconds?: number;
280
317
  /**
281
318
  * The trial limits in one readable line. Null on paid accounts.
282
319
  * @type {string}
@@ -332,9 +369,10 @@ export interface LimitsResponse {
332
369
  */
333
370
  subscriptionCurrentPeriodEnd?: Date;
334
371
  /**
335
- *
372
+ * Deprecated. Read `planIncluded.vmHoursRemaining` and `wallet.balanceDollars`.
336
373
  * @type {number}
337
374
  * @memberof LimitsResponse
375
+ * @deprecated
338
376
  */
339
377
  creditBalanceSeconds?: number;
340
378
  /**
@@ -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';
@@ -61,12 +65,16 @@ export function LimitsResponseFromJSONTyped(json, ignoreDiscriminator) {
61
65
  'maxCreationRequestsPerMinute': json['maxCreationRequestsPerMinute'] == null ? undefined : json['maxCreationRequestsPerMinute'],
62
66
  'maxCreationRequestsPerDay': json['maxCreationRequestsPerDay'] == null ? undefined : json['maxCreationRequestsPerDay'],
63
67
  'startLimits': json['startLimits'] == null ? undefined : LimitsFieldsStartLimitsFromJSON(json['startLimits']),
68
+ 'wallet': json['wallet'] == null ? undefined : LimitsFieldsWalletFromJSON(json['wallet']),
69
+ 'planIncluded': json['planIncluded'] == null ? undefined : LimitsFieldsPlanIncludedFromJSON(json['planIncluded']),
70
+ 'overagePrices': json['overagePrices'] == null ? undefined : LimitsFieldsOveragePricesFromJSON(json['overagePrices']),
71
+ 'nextStartDollars': json['nextStartDollars'] == null ? undefined : json['nextStartDollars'],
72
+ 'startLimitsWithWallet': json['startLimitsWithWallet'] == null ? undefined : LimitsFieldsStartLimitsWithWalletFromJSON(json['startLimitsWithWallet']),
64
73
  'starts': json['starts'] == null ? undefined : LimitsFieldsStartsFromJSON(json['starts']),
65
74
  'creditBalanceHours': json['creditBalanceHours'] == null ? undefined : json['creditBalanceHours'],
66
75
  'packBalanceHours': json['packBalanceHours'] == null ? undefined : json['packBalanceHours'],
67
76
  'packBalanceDollars': json['packBalanceDollars'] == null ? undefined : json['packBalanceDollars'],
68
77
  'hasPaymentHistory': json['hasPaymentHistory'] == null ? undefined : json['hasPaymentHistory'],
69
- '_package': json['package'] == null ? undefined : json['package'],
70
78
  'subscriptionQuotaSeconds': json['subscriptionQuotaSeconds'] == null ? undefined : json['subscriptionQuotaSeconds'],
71
79
  'subscriptionRemainingSeconds': json['subscriptionRemainingSeconds'] == null ? undefined : json['subscriptionRemainingSeconds'],
72
80
  'packBalanceSeconds': json['packBalanceSeconds'] == null ? undefined : json['packBalanceSeconds'],
@@ -85,6 +93,7 @@ export function LimitsResponseFromJSONTyped(json, ignoreDiscriminator) {
85
93
  'hasSeatPlan': json['hasSeatPlan'] == null ? undefined : json['hasSeatPlan'],
86
94
  'last24hUsageSeconds': json['last24hUsageSeconds'] == null ? undefined : json['last24hUsageSeconds'],
87
95
  'trialComputeCapSeconds': json['trialComputeCapSeconds'] == null ? undefined : json['trialComputeCapSeconds'],
96
+ 'trialComputeUsedSeconds': json['trialComputeUsedSeconds'] == null ? undefined : json['trialComputeUsedSeconds'],
88
97
  'trialLine': json['trialLine'] == null ? undefined : json['trialLine'],
89
98
  'machineTypes': json['machineTypes'] == null ? undefined : (json['machineTypes'].map(LimitsFieldsMachineTypesInnerFromJSON)),
90
99
  'giftLimit': json['giftLimit'] == null ? undefined : LimitsFieldsGiftLimitFromJSON(json['giftLimit']),
@@ -125,12 +134,16 @@ export function LimitsResponseToJSONTyped(value, ignoreDiscriminator = false) {
125
134
  'maxCreationRequestsPerMinute': value['maxCreationRequestsPerMinute'],
126
135
  'maxCreationRequestsPerDay': value['maxCreationRequestsPerDay'],
127
136
  'startLimits': LimitsFieldsStartLimitsToJSON(value['startLimits']),
137
+ 'wallet': LimitsFieldsWalletToJSON(value['wallet']),
138
+ 'planIncluded': LimitsFieldsPlanIncludedToJSON(value['planIncluded']),
139
+ 'overagePrices': LimitsFieldsOveragePricesToJSON(value['overagePrices']),
140
+ 'nextStartDollars': value['nextStartDollars'],
141
+ 'startLimitsWithWallet': LimitsFieldsStartLimitsWithWalletToJSON(value['startLimitsWithWallet']),
128
142
  'starts': LimitsFieldsStartsToJSON(value['starts']),
129
143
  'creditBalanceHours': value['creditBalanceHours'],
130
144
  'packBalanceHours': value['packBalanceHours'],
131
145
  'packBalanceDollars': value['packBalanceDollars'],
132
146
  'hasPaymentHistory': value['hasPaymentHistory'],
133
- 'package': value['_package'],
134
147
  'subscriptionQuotaSeconds': value['subscriptionQuotaSeconds'],
135
148
  'subscriptionRemainingSeconds': value['subscriptionRemainingSeconds'],
136
149
  'packBalanceSeconds': value['packBalanceSeconds'],
@@ -149,6 +162,7 @@ export function LimitsResponseToJSONTyped(value, ignoreDiscriminator = false) {
149
162
  'hasSeatPlan': value['hasSeatPlan'],
150
163
  'last24hUsageSeconds': value['last24hUsageSeconds'],
151
164
  'trialComputeCapSeconds': value['trialComputeCapSeconds'],
165
+ 'trialComputeUsedSeconds': value['trialComputeUsedSeconds'],
152
166
  'trialLine': value['trialLine'],
153
167
  'machineTypes': value['machineTypes'] == null ? undefined : (value['machineTypes'].map(LimitsFieldsMachineTypesInnerToJSON)),
154
168
  'giftLimit': LimitsFieldsGiftLimitToJSON(value['giftLimit']),
@@ -10,7 +10,7 @@
10
10
  * Do not edit the class manually.
11
11
  */
12
12
  /**
13
- * What the request's wallet (your active organization, `?org=`, or personal) pays for named snapshots. 10 are free per wallet; each one above costs $1.70 a month, charged daily from usage. An organization's count includes every member's names billed to it.
13
+ * What the request's wallet (your active organization, `?org=`, or personal) pays for named snapshots. The plan includes some; each one above costs $0.056 a day from the wallet. An organization's count includes every member's names billed to it.
14
14
  * @export
15
15
  * @interface NamedSnapshotAllowance
16
16
  */
@@ -52,17 +52,23 @@ export interface NamedSnapshotAllowance {
52
52
  */
53
53
  extraMonthlyDollars?: number;
54
54
  /**
55
- * Boat time the extra ones take per day, in dollars (the daily charge).
55
+ * What the wallet pays per day for the extra ones, in dollars.
56
56
  * @type {number}
57
57
  * @memberof NamedSnapshotAllowance
58
58
  */
59
59
  extraDailyDollars?: number;
60
60
  /**
61
- * Monthly price of one extra named snapshot.
61
+ * Price of one extra named snapshot for 30 days (1.68).
62
62
  * @type {number}
63
63
  * @memberof NamedSnapshotAllowance
64
64
  */
65
65
  pricePerExtraMonthlyDollars?: number;
66
+ /**
67
+ * Daily price of one extra named snapshot (0.056).
68
+ * @type {number}
69
+ * @memberof NamedSnapshotAllowance
70
+ */
71
+ pricePerExtraDailyDollars?: number;
66
72
  }
67
73
  /**
68
74
  * Check if a given object implements the NamedSnapshotAllowance interface.
@@ -33,6 +33,7 @@ export function NamedSnapshotAllowanceFromJSONTyped(json, ignoreDiscriminator) {
33
33
  'extraMonthlyDollars': json['extraMonthlyDollars'] == null ? undefined : json['extraMonthlyDollars'],
34
34
  'extraDailyDollars': json['extraDailyDollars'] == null ? undefined : json['extraDailyDollars'],
35
35
  'pricePerExtraMonthlyDollars': json['pricePerExtraMonthlyDollars'] == null ? undefined : json['pricePerExtraMonthlyDollars'],
36
+ 'pricePerExtraDailyDollars': json['pricePerExtraDailyDollars'] == null ? undefined : json['pricePerExtraDailyDollars'],
36
37
  };
37
38
  }
38
39
  export function NamedSnapshotAllowanceToJSON(json) {
@@ -51,5 +52,6 @@ export function NamedSnapshotAllowanceToJSONTyped(value, ignoreDiscriminator = f
51
52
  'extraMonthlyDollars': value['extraMonthlyDollars'],
52
53
  'extraDailyDollars': value['extraDailyDollars'],
53
54
  'pricePerExtraMonthlyDollars': value['pricePerExtraMonthlyDollars'],
55
+ 'pricePerExtraDailyDollars': value['pricePerExtraDailyDollars'],
54
56
  };
55
57
  }
@@ -10,7 +10,7 @@
10
10
  * Do not edit the class manually.
11
11
  */
12
12
  /**
13
- * What the request's wallet (your active organization, `?org=`, or personal) pays for saved snapshots. 10 are free per wallet; each one above costs $1.70 a month, charged daily from usage. An organization's count includes every member's names billed to it.
13
+ * What the request's wallet (your active organization, `?org=`, or personal) pays for saved snapshots. The plan includes some; each one above costs $0.056 a day from the wallet. An organization's count includes every member's names billed to it.
14
14
  * @export
15
15
  * @interface SavedSnapshotAllowance
16
16
  */
@@ -59,17 +59,23 @@ export interface SavedSnapshotAllowance {
59
59
  */
60
60
  extraMonthlyDollars?: number;
61
61
  /**
62
- * Boat time the extra ones take per day, in dollars (the daily charge).
62
+ * What the wallet pays per day for the extra ones, in dollars.
63
63
  * @type {number}
64
64
  * @memberof SavedSnapshotAllowance
65
65
  */
66
66
  extraDailyDollars?: number;
67
67
  /**
68
- * Monthly price of one extra saved snapshot.
68
+ * Price of one extra saved snapshot for 30 days (1.68).
69
69
  * @type {number}
70
70
  * @memberof SavedSnapshotAllowance
71
71
  */
72
72
  pricePerExtraMonthlyDollars?: number;
73
+ /**
74
+ * Daily price of one extra saved snapshot (0.056).
75
+ * @type {number}
76
+ * @memberof SavedSnapshotAllowance
77
+ */
78
+ pricePerExtraDailyDollars?: number;
73
79
  }
74
80
  /**
75
81
  * Check if a given object implements the SavedSnapshotAllowance interface.
@@ -34,6 +34,7 @@ export function SavedSnapshotAllowanceFromJSONTyped(json, ignoreDiscriminator) {
34
34
  'extraMonthlyDollars': json['extraMonthlyDollars'] == null ? undefined : json['extraMonthlyDollars'],
35
35
  'extraDailyDollars': json['extraDailyDollars'] == null ? undefined : json['extraDailyDollars'],
36
36
  'pricePerExtraMonthlyDollars': json['pricePerExtraMonthlyDollars'] == null ? undefined : json['pricePerExtraMonthlyDollars'],
37
+ 'pricePerExtraDailyDollars': json['pricePerExtraDailyDollars'] == null ? undefined : json['pricePerExtraDailyDollars'],
37
38
  };
38
39
  }
39
40
  export function SavedSnapshotAllowanceToJSON(json) {
@@ -53,5 +54,6 @@ export function SavedSnapshotAllowanceToJSONTyped(value, ignoreDiscriminator = f
53
54
  'extraMonthlyDollars': value['extraMonthlyDollars'],
54
55
  'extraDailyDollars': value['extraDailyDollars'],
55
56
  'pricePerExtraMonthlyDollars': value['pricePerExtraMonthlyDollars'],
57
+ 'pricePerExtraDailyDollars': value['pricePerExtraDailyDollars'],
56
58
  };
57
59
  }
@@ -38,7 +38,9 @@ export * from './ConversationsResponse';
38
38
  export * from './CreateCredentialProfileRequest';
39
39
  export * from './CreateSandboxEnvironmentRequest';
40
40
  export * from './CreateSandboxRequest';
41
+ export * from './CreateSandboxRequestFilesInner';
41
42
  export * from './CreateSandboxResponse';
43
+ export * from './CreateSandboxResponseAllOfHostedPortsInner';
42
44
  export * from './CreateScopedApiKey503Response';
43
45
  export * from './CreateScopedApiKeyRequest';
44
46
  export * from './CredentialAccount';
@@ -61,7 +63,21 @@ export * from './ErrorEnvelope';
61
63
  export * from './ErrorEnvelopeError';
62
64
  export * from './ErrorEvent';
63
65
  export * from './EventsResponse';
66
+ export * from './FileDeleteResponse';
67
+ export * from './FileEntry';
68
+ export * from './FileFindResponse';
69
+ export * from './FileFindResponseAllOfMatches';
70
+ export * from './FileFolderRequest';
71
+ export * from './FileInfoResponse';
72
+ export * from './FileListResponse';
73
+ export * from './FileMoveRequest';
74
+ export * from './FileMoveResponse';
75
+ export * from './FilePermissionsRequest';
64
76
  export * from './FileReadResponse';
77
+ export * from './FileReplaceRequest';
78
+ export * from './FileReplaceResponse';
79
+ export * from './FileReplaceResponseAllOfResults';
80
+ export * from './FileSearchResponse';
65
81
  export * from './FileUrlRequest';
66
82
  export * from './FileUrlResponse';
67
83
  export * from './FileWriteRequest';
@@ -73,9 +89,14 @@ export * from './LimitsFields';
73
89
  export * from './LimitsFieldsCurrentLimits';
74
90
  export * from './LimitsFieldsGiftLimit';
75
91
  export * from './LimitsFieldsMachineTypesInner';
92
+ export * from './LimitsFieldsOveragePrices';
93
+ export * from './LimitsFieldsOveragePricesStartBracketsInner';
94
+ export * from './LimitsFieldsPlanIncluded';
76
95
  export * from './LimitsFieldsSandboxPlanTiersInner';
77
96
  export * from './LimitsFieldsStartLimits';
97
+ export * from './LimitsFieldsStartLimitsWithWallet';
78
98
  export * from './LimitsFieldsStarts';
99
+ export * from './LimitsFieldsWallet';
79
100
  export * from './LimitsResponse';
80
101
  export * from './MeResponse';
81
102
  export * from './MeResponseAllOfUser';
@@ -40,7 +40,9 @@ export * from './ConversationsResponse';
40
40
  export * from './CreateCredentialProfileRequest';
41
41
  export * from './CreateSandboxEnvironmentRequest';
42
42
  export * from './CreateSandboxRequest';
43
+ export * from './CreateSandboxRequestFilesInner';
43
44
  export * from './CreateSandboxResponse';
45
+ export * from './CreateSandboxResponseAllOfHostedPortsInner';
44
46
  export * from './CreateScopedApiKey503Response';
45
47
  export * from './CreateScopedApiKeyRequest';
46
48
  export * from './CredentialAccount';
@@ -63,7 +65,21 @@ export * from './ErrorEnvelope';
63
65
  export * from './ErrorEnvelopeError';
64
66
  export * from './ErrorEvent';
65
67
  export * from './EventsResponse';
68
+ export * from './FileDeleteResponse';
69
+ export * from './FileEntry';
70
+ export * from './FileFindResponse';
71
+ export * from './FileFindResponseAllOfMatches';
72
+ export * from './FileFolderRequest';
73
+ export * from './FileInfoResponse';
74
+ export * from './FileListResponse';
75
+ export * from './FileMoveRequest';
76
+ export * from './FileMoveResponse';
77
+ export * from './FilePermissionsRequest';
66
78
  export * from './FileReadResponse';
79
+ export * from './FileReplaceRequest';
80
+ export * from './FileReplaceResponse';
81
+ export * from './FileReplaceResponseAllOfResults';
82
+ export * from './FileSearchResponse';
67
83
  export * from './FileUrlRequest';
68
84
  export * from './FileUrlResponse';
69
85
  export * from './FileWriteRequest';
@@ -75,9 +91,14 @@ export * from './LimitsFields';
75
91
  export * from './LimitsFieldsCurrentLimits';
76
92
  export * from './LimitsFieldsGiftLimit';
77
93
  export * from './LimitsFieldsMachineTypesInner';
94
+ export * from './LimitsFieldsOveragePrices';
95
+ export * from './LimitsFieldsOveragePricesStartBracketsInner';
96
+ export * from './LimitsFieldsPlanIncluded';
78
97
  export * from './LimitsFieldsSandboxPlanTiersInner';
79
98
  export * from './LimitsFieldsStartLimits';
99
+ export * from './LimitsFieldsStartLimitsWithWallet';
80
100
  export * from './LimitsFieldsStarts';
101
+ export * from './LimitsFieldsWallet';
81
102
  export * from './LimitsResponse';
82
103
  export * from './MeResponse';
83
104
  export * from './MeResponseAllOfUser';
@@ -9,6 +9,8 @@
9
9
  * https://openapi-generator.tech
10
10
  * Do not edit the class manually.
11
11
  */
12
+ import type { CreateSandboxRequestFilesInner } from './CreateSandboxRequestFilesInner';
13
+ import type { HostPortRequest } from './HostPortRequest';
12
14
  /**
13
15
  * Options for provisioning a new cloud computer.
14
16
  * @export
@@ -72,11 +74,35 @@ export interface CreateSandboxRequest {
72
74
  */
73
75
  count?: number;
74
76
  /**
75
- * Shell script that runs on the sandbox after it is ready. Ready means "ready to accept the user", not "setup done": the script starts in the background once provisioning completes and never blocks the sandbox becoming usable. It runs as the sandbox user (`user`, not root; `sudo` needs no password) via `bash`, with the sandbox's environment applied, and its output goes to a log file on the sandbox. Observe the outcome as `setupStatus` (pending/running/done/failed) and `setupError` on the sandbox. Rejected with a 400 `invalid_setup_script` error when it is not a string or exceeds 64KB.
77
+ * Shell script that runs on the sandbox after it is ready. Ready means "ready to accept the user", not "setup done": the script starts in the background once provisioning completes and never blocks the sandbox becoming usable. It runs as the sandbox user (`user`, not root; `sudo` needs no password) via `bash`, with the sandbox's environment applied, and its output goes to a log file on the sandbox. Observe the outcome as `setupStatus` (pending/running/done/failed) and `setupError` on the sandbox. Rejected with a 400 `invalid_setup_script` error when it is not a string or exceeds 64KB. When the request also has `files`, the script starts after every file is written.
76
78
  * @type {string}
77
79
  * @memberof CreateSandboxRequest
78
80
  */
79
81
  setupScript?: string;
82
+ /**
83
+ * Display name of the sandbox, the same value `PATCH /sandboxes/{id}` sets. A sandbox created `from` a saved snapshot is named after the snapshot when this is omitted.
84
+ * @type {string}
85
+ * @memberof CreateSandboxRequest
86
+ */
87
+ name?: string;
88
+ /**
89
+ * Who can use a sandbox billed to an organization, with the same rules as the sandbox's `visibility` field. `private`: only you can use it. `shared`: every member can, as long as it holds none of your personal logins (`noEnv`, or an environment that passes nothing). Omitted, the organization's default for new sandboxes applies (`PATCH /orgs/{org}` `newSandboxesPrivate`). It is set before the sandbox gets a machine, so a `private` sandbox is never shared, not even for a moment, and needs no `unshare` call. A personal sandbox is always private: `shared` is refused with 400 `not_org_sandbox`. Change it later with `POST /sandboxes/{id}/share` and `POST /sandboxes/{id}/unshare`.
90
+ * @type {CreateSandboxRequestVisibilityEnum}
91
+ * @memberof CreateSandboxRequest
92
+ */
93
+ visibility?: CreateSandboxRequestVisibilityEnum;
94
+ /**
95
+ * Ports to host on public HTTPS URLs, each exactly as `POST /sandboxes/{id}/host` does. The create waits for the sandbox's machine (up to 60 s, usually under a second), hosts every port at once and answers the URLs in `hostedPorts`. The ports are routed before the sandbox is ready, so a service that starts later is reachable as soon as it listens. Refused with 400 `invalid_hosted_ports` for a bad entry or a duplicate port, with 400 `count_with_hosted_ports` together with `count`, and with 400 `fail_fast_with_hosted_ports` together with `failFast`.
96
+ * @type {Array<HostPortRequest>}
97
+ * @memberof CreateSandboxRequest
98
+ */
99
+ hostedPorts?: Array<HostPortRequest>;
100
+ /**
101
+ * Files to write on the sandbox, each like `PUT /sandboxes/{id}/files` (a path under `/home/user` or `/tmp`, relative paths resolve against `/home/user`; missing folders are created). Boat writes them once the sandbox's disk is in place and before it reports `ready`, so a client that sees `ready`, and the `setupScript`, always find them. They are written once, at the first start: a resume does not write them again. At most 256KB in total; upload bigger files with `POST /sandboxes/{id}/files/upload-url`. `setupStatus` covers them: it stays `pending` until they are written, and a write that fails sets it `failed` with the path and the reason in `setupError` (the setup script then does not run). Refused with 400 `invalid_files` for a bad path, a duplicate path or a body over the limits.
102
+ * @type {Array<CreateSandboxRequestFilesInner>}
103
+ * @memberof CreateSandboxRequest
104
+ */
105
+ files?: Array<CreateSandboxRequestFilesInner>;
80
106
  /**
81
107
  * Bill this sandbox to an organization you belong to (its shared wallet), by id or by name as `GET /orgs` lists it; `personal` or your own account id means personal billing. Omitted, the `X-Boat-Org` / `?org=` request scope applies, then the account's active wallet (`PATCH /orgs/active`), then personal. Listing, snapshots, and environments stay yours: the org is a wallet, not a shared workspace. Takes precedence over `teamId`.
82
108
  * @type {string}
@@ -106,6 +132,14 @@ export declare const CreateSandboxRequestTypeEnum: {
106
132
  readonly Xlarge: 'xlarge';
107
133
  };
108
134
  export type CreateSandboxRequestTypeEnum = typeof CreateSandboxRequestTypeEnum[keyof typeof CreateSandboxRequestTypeEnum];
135
+ /**
136
+ * @export
137
+ */
138
+ export declare const CreateSandboxRequestVisibilityEnum: {
139
+ readonly Private: 'private';
140
+ readonly Shared: 'shared';
141
+ };
142
+ export type CreateSandboxRequestVisibilityEnum = typeof CreateSandboxRequestVisibilityEnum[keyof typeof CreateSandboxRequestVisibilityEnum];
109
143
  /**
110
144
  * Check if a given object implements the CreateSandboxRequest interface.
111
145
  */
@@ -13,12 +13,14 @@
13
13
  * Do not edit the class manually.
14
14
  */
15
15
  Object.defineProperty(exports, "__esModule", { value: true });
16
- exports.CreateSandboxRequestTypeEnum = void 0;
16
+ exports.CreateSandboxRequestVisibilityEnum = exports.CreateSandboxRequestTypeEnum = void 0;
17
17
  exports.instanceOfCreateSandboxRequest = instanceOfCreateSandboxRequest;
18
18
  exports.CreateSandboxRequestFromJSON = CreateSandboxRequestFromJSON;
19
19
  exports.CreateSandboxRequestFromJSONTyped = CreateSandboxRequestFromJSONTyped;
20
20
  exports.CreateSandboxRequestToJSON = CreateSandboxRequestToJSON;
21
21
  exports.CreateSandboxRequestToJSONTyped = CreateSandboxRequestToJSONTyped;
22
+ const CreateSandboxRequestFilesInner_1 = require("./CreateSandboxRequestFilesInner");
23
+ const HostPortRequest_1 = require("./HostPortRequest");
22
24
  /**
23
25
  * @export
24
26
  */
@@ -28,6 +30,13 @@ exports.CreateSandboxRequestTypeEnum = {
28
30
  Large: 'large',
29
31
  Xlarge: 'xlarge'
30
32
  };
33
+ /**
34
+ * @export
35
+ */
36
+ exports.CreateSandboxRequestVisibilityEnum = {
37
+ Private: 'private',
38
+ Shared: 'shared'
39
+ };
31
40
  /**
32
41
  * Check if a given object implements the CreateSandboxRequest interface.
33
42
  */
@@ -52,6 +61,10 @@ function CreateSandboxRequestFromJSONTyped(json, ignoreDiscriminator) {
52
61
  'failFast': json['failFast'] == null ? undefined : json['failFast'],
53
62
  'count': json['count'] == null ? undefined : json['count'],
54
63
  'setupScript': json['setupScript'] == null ? undefined : json['setupScript'],
64
+ 'name': json['name'] == null ? undefined : json['name'],
65
+ 'visibility': json['visibility'] == null ? undefined : json['visibility'],
66
+ 'hostedPorts': json['hostedPorts'] == null ? undefined : (json['hostedPorts'].map(HostPortRequest_1.HostPortRequestFromJSON)),
67
+ 'files': json['files'] == null ? undefined : (json['files'].map(CreateSandboxRequestFilesInner_1.CreateSandboxRequestFilesInnerFromJSON)),
55
68
  'org': json['org'] == null ? undefined : json['org'],
56
69
  'teamId': json['teamId'] == null ? undefined : json['teamId'],
57
70
  'from': json['from'] == null ? undefined : json['from'],
@@ -75,6 +88,10 @@ function CreateSandboxRequestToJSONTyped(value, ignoreDiscriminator = false) {
75
88
  'failFast': value['failFast'],
76
89
  'count': value['count'],
77
90
  'setupScript': value['setupScript'],
91
+ 'name': value['name'],
92
+ 'visibility': value['visibility'],
93
+ 'hostedPorts': value['hostedPorts'] == null ? undefined : (value['hostedPorts'].map(HostPortRequest_1.HostPortRequestToJSON)),
94
+ 'files': value['files'] == null ? undefined : (value['files'].map(CreateSandboxRequestFilesInner_1.CreateSandboxRequestFilesInnerToJSON)),
78
95
  'org': value['org'],
79
96
  'teamId': value['teamId'],
80
97
  'from': value['from'],
@@ -0,0 +1,52 @@
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 CreateSandboxRequestFilesInner
16
+ */
17
+ export interface CreateSandboxRequestFilesInner {
18
+ /**
19
+ *
20
+ * @type {string}
21
+ * @memberof CreateSandboxRequestFilesInner
22
+ */
23
+ path: string;
24
+ /**
25
+ * File contents, as text or base64 (see `encoding`).
26
+ * @type {string}
27
+ * @memberof CreateSandboxRequestFilesInner
28
+ */
29
+ content: string;
30
+ /**
31
+ *
32
+ * @type {CreateSandboxRequestFilesInnerEncodingEnum}
33
+ * @memberof CreateSandboxRequestFilesInner
34
+ */
35
+ encoding?: CreateSandboxRequestFilesInnerEncodingEnum;
36
+ }
37
+ /**
38
+ * @export
39
+ */
40
+ export declare const CreateSandboxRequestFilesInnerEncodingEnum: {
41
+ readonly Utf8: 'utf8';
42
+ readonly Base64: 'base64';
43
+ };
44
+ export type CreateSandboxRequestFilesInnerEncodingEnum = typeof CreateSandboxRequestFilesInnerEncodingEnum[keyof typeof CreateSandboxRequestFilesInnerEncodingEnum];
45
+ /**
46
+ * Check if a given object implements the CreateSandboxRequestFilesInner interface.
47
+ */
48
+ export declare function instanceOfCreateSandboxRequestFilesInner(value: object): value is CreateSandboxRequestFilesInner;
49
+ export declare function CreateSandboxRequestFilesInnerFromJSON(json: any): CreateSandboxRequestFilesInner;
50
+ export declare function CreateSandboxRequestFilesInnerFromJSONTyped(json: any, ignoreDiscriminator: boolean): CreateSandboxRequestFilesInner;
51
+ export declare function CreateSandboxRequestFilesInnerToJSON(json: any): CreateSandboxRequestFilesInner;
52
+ export declare function CreateSandboxRequestFilesInnerToJSONTyped(value?: CreateSandboxRequestFilesInner | null, ignoreDiscriminator?: boolean): any;