@boatdev/sdk 1.9.5 → 1.9.7

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 (160) hide show
  1. package/.openapi-generator/FILES +44 -0
  2. package/dist/apis/BoatApi.d.ts +339 -3
  3. package/dist/apis/BoatApi.js +865 -15
  4. package/dist/esm/apis/BoatApi.d.ts +339 -3
  5. package/dist/esm/apis/BoatApi.js +865 -15
  6. package/dist/esm/models/AccountAiUsageResponse.d.ts +83 -0
  7. package/dist/esm/models/AccountAiUsageResponse.js +78 -0
  8. package/dist/esm/models/AiProxySettings.d.ts +81 -0
  9. package/dist/esm/models/AiProxySettings.js +76 -0
  10. package/dist/esm/models/AiProxySettingsAllOfPricing.d.ts +38 -0
  11. package/dist/esm/models/AiProxySettingsAllOfPricing.js +47 -0
  12. package/dist/esm/models/AiUsageRow.d.ts +80 -0
  13. package/dist/esm/models/AiUsageRow.js +75 -0
  14. package/dist/esm/models/AiUsageTotals.d.ts +62 -0
  15. package/dist/esm/models/AiUsageTotals.js +63 -0
  16. package/dist/esm/models/CreateCredentialProfileRequest.d.ts +44 -0
  17. package/dist/esm/models/CreateCredentialProfileRequest.js +47 -0
  18. package/dist/esm/models/CredentialAccount.d.ts +50 -0
  19. package/dist/esm/models/CredentialAccount.js +53 -0
  20. package/dist/esm/models/CredentialAccountsResponse.d.ts +64 -0
  21. package/dist/esm/models/CredentialAccountsResponse.js +65 -0
  22. package/dist/esm/models/CredentialId.d.ts +36 -0
  23. package/dist/esm/models/CredentialId.js +54 -0
  24. package/dist/esm/models/CredentialProfile.d.ts +91 -0
  25. package/dist/esm/models/CredentialProfile.js +79 -0
  26. package/dist/esm/models/CredentialProfileDeletedResponse.d.ts +44 -0
  27. package/dist/esm/models/CredentialProfileDeletedResponse.js +51 -0
  28. package/dist/esm/models/CredentialProfileListResponse.d.ts +45 -0
  29. package/dist/esm/models/CredentialProfileListResponse.js +52 -0
  30. package/dist/esm/models/CredentialProfileOwner.d.ts +58 -0
  31. package/dist/esm/models/CredentialProfileOwner.js +62 -0
  32. package/dist/esm/models/CredentialProfileResponse.d.ts +51 -0
  33. package/dist/esm/models/CredentialProfileResponse.js +56 -0
  34. package/dist/esm/models/ProcessListResponse.d.ts +1 -1
  35. package/dist/esm/models/SandboxAiAccessResponse.d.ts +56 -0
  36. package/dist/esm/models/SandboxAiAccessResponse.js +59 -0
  37. package/dist/esm/models/SandboxAiUsage.d.ts +64 -0
  38. package/dist/esm/models/SandboxAiUsage.js +65 -0
  39. package/dist/esm/models/SandboxAiUsageResponse.d.ts +88 -0
  40. package/dist/esm/models/SandboxAiUsageResponse.js +81 -0
  41. package/dist/esm/models/SandboxEnvironment.d.ts +13 -1
  42. package/dist/esm/models/SandboxEnvironment.js +4 -0
  43. package/dist/esm/models/SetCredentialKeyRequest.d.ts +38 -0
  44. package/dist/esm/models/SetCredentialKeyRequest.js +45 -0
  45. package/dist/esm/models/SetCustomApiRequest.d.ts +38 -0
  46. package/dist/esm/models/SetCustomApiRequest.js +47 -0
  47. package/dist/esm/models/SetSandboxAiAccessRequest.d.ts +32 -0
  48. package/dist/esm/models/SetSandboxAiAccessRequest.js +43 -0
  49. package/dist/esm/models/UpdateAiProxyRequest.d.ts +32 -0
  50. package/dist/esm/models/UpdateAiProxyRequest.js +43 -0
  51. package/dist/esm/models/UpdateCredentialProfileRequest.d.ts +38 -0
  52. package/dist/esm/models/UpdateCredentialProfileRequest.js +43 -0
  53. package/dist/esm/models/UpdateSandboxEnvironmentRequest.d.ts +12 -0
  54. package/dist/esm/models/UpdateSandboxEnvironmentRequest.js +4 -0
  55. package/dist/esm/models/index.d.ts +22 -0
  56. package/dist/esm/models/index.js +22 -0
  57. package/dist/models/AccountAiUsageResponse.d.ts +83 -0
  58. package/dist/models/AccountAiUsageResponse.js +85 -0
  59. package/dist/models/AiProxySettings.d.ts +81 -0
  60. package/dist/models/AiProxySettings.js +83 -0
  61. package/dist/models/AiProxySettingsAllOfPricing.d.ts +38 -0
  62. package/dist/models/AiProxySettingsAllOfPricing.js +54 -0
  63. package/dist/models/AiUsageRow.d.ts +80 -0
  64. package/dist/models/AiUsageRow.js +82 -0
  65. package/dist/models/AiUsageTotals.d.ts +62 -0
  66. package/dist/models/AiUsageTotals.js +70 -0
  67. package/dist/models/CreateCredentialProfileRequest.d.ts +44 -0
  68. package/dist/models/CreateCredentialProfileRequest.js +54 -0
  69. package/dist/models/CredentialAccount.d.ts +50 -0
  70. package/dist/models/CredentialAccount.js +60 -0
  71. package/dist/models/CredentialAccountsResponse.d.ts +64 -0
  72. package/dist/models/CredentialAccountsResponse.js +72 -0
  73. package/dist/models/CredentialId.d.ts +36 -0
  74. package/dist/models/CredentialId.js +62 -0
  75. package/dist/models/CredentialProfile.d.ts +91 -0
  76. package/dist/models/CredentialProfile.js +86 -0
  77. package/dist/models/CredentialProfileDeletedResponse.d.ts +44 -0
  78. package/dist/models/CredentialProfileDeletedResponse.js +58 -0
  79. package/dist/models/CredentialProfileListResponse.d.ts +45 -0
  80. package/dist/models/CredentialProfileListResponse.js +59 -0
  81. package/dist/models/CredentialProfileOwner.d.ts +58 -0
  82. package/dist/models/CredentialProfileOwner.js +70 -0
  83. package/dist/models/CredentialProfileResponse.d.ts +51 -0
  84. package/dist/models/CredentialProfileResponse.js +63 -0
  85. package/dist/models/ProcessListResponse.d.ts +1 -1
  86. package/dist/models/SandboxAiAccessResponse.d.ts +56 -0
  87. package/dist/models/SandboxAiAccessResponse.js +66 -0
  88. package/dist/models/SandboxAiUsage.d.ts +64 -0
  89. package/dist/models/SandboxAiUsage.js +72 -0
  90. package/dist/models/SandboxAiUsageResponse.d.ts +88 -0
  91. package/dist/models/SandboxAiUsageResponse.js +88 -0
  92. package/dist/models/SandboxEnvironment.d.ts +13 -1
  93. package/dist/models/SandboxEnvironment.js +4 -0
  94. package/dist/models/SetCredentialKeyRequest.d.ts +38 -0
  95. package/dist/models/SetCredentialKeyRequest.js +52 -0
  96. package/dist/models/SetCustomApiRequest.d.ts +38 -0
  97. package/dist/models/SetCustomApiRequest.js +54 -0
  98. package/dist/models/SetSandboxAiAccessRequest.d.ts +32 -0
  99. package/dist/models/SetSandboxAiAccessRequest.js +50 -0
  100. package/dist/models/UpdateAiProxyRequest.d.ts +32 -0
  101. package/dist/models/UpdateAiProxyRequest.js +50 -0
  102. package/dist/models/UpdateCredentialProfileRequest.d.ts +38 -0
  103. package/dist/models/UpdateCredentialProfileRequest.js +50 -0
  104. package/dist/models/UpdateSandboxEnvironmentRequest.d.ts +12 -0
  105. package/dist/models/UpdateSandboxEnvironmentRequest.js +4 -0
  106. package/dist/models/index.d.ts +22 -0
  107. package/dist/models/index.js +22 -0
  108. package/docs/AccountAiUsageResponse.md +48 -0
  109. package/docs/AiProxySettings.md +48 -0
  110. package/docs/AiProxySettingsAllOfPricing.md +34 -0
  111. package/docs/AiUsageRow.md +48 -0
  112. package/docs/AiUsageTotals.md +43 -0
  113. package/docs/BoatApi.md +1588 -212
  114. package/docs/CreateCredentialProfileRequest.md +36 -0
  115. package/docs/CredentialAccount.md +39 -0
  116. package/docs/CredentialAccountsResponse.md +42 -0
  117. package/docs/CredentialId.md +31 -0
  118. package/docs/CredentialProfile.md +51 -0
  119. package/docs/CredentialProfileDeletedResponse.md +36 -0
  120. package/docs/CredentialProfileListResponse.md +36 -0
  121. package/docs/CredentialProfileOwner.md +38 -0
  122. package/docs/CredentialProfileResponse.md +38 -0
  123. package/docs/SandboxAiAccessResponse.md +40 -0
  124. package/docs/SandboxAiUsage.md +42 -0
  125. package/docs/SandboxAiUsageResponse.md +50 -0
  126. package/docs/SandboxEnvironment.md +4 -0
  127. package/docs/SetCredentialKeyRequest.md +34 -0
  128. package/docs/SetCustomApiRequest.md +34 -0
  129. package/docs/SetSandboxAiAccessRequest.md +32 -0
  130. package/docs/UpdateAiProxyRequest.md +32 -0
  131. package/docs/UpdateCredentialProfileRequest.md +34 -0
  132. package/docs/UpdateSandboxEnvironmentRequest.md +4 -0
  133. package/package.json +1 -1
  134. package/src/apis/BoatApi.ts +1440 -133
  135. package/src/models/AccountAiUsageResponse.ts +160 -0
  136. package/src/models/AiProxySettings.ts +146 -0
  137. package/src/models/AiProxySettingsAllOfPricing.ts +75 -0
  138. package/src/models/AiUsageRow.ts +138 -0
  139. package/src/models/AiUsageTotals.ts +111 -0
  140. package/src/models/CreateCredentialProfileRequest.ts +82 -0
  141. package/src/models/CredentialAccount.ts +92 -0
  142. package/src/models/CredentialAccountsResponse.ts +128 -0
  143. package/src/models/CredentialId.ts +64 -0
  144. package/src/models/CredentialProfile.ts +168 -0
  145. package/src/models/CredentialProfileDeletedResponse.ts +84 -0
  146. package/src/models/CredentialProfileListResponse.ts +92 -0
  147. package/src/models/CredentialProfileOwner.ts +104 -0
  148. package/src/models/CredentialProfileResponse.ts +101 -0
  149. package/src/models/ProcessListResponse.ts +1 -1
  150. package/src/models/SandboxAiAccessResponse.ts +102 -0
  151. package/src/models/SandboxAiUsage.ts +126 -0
  152. package/src/models/SandboxAiUsageResponse.ts +162 -0
  153. package/src/models/SandboxEnvironment.ts +17 -1
  154. package/src/models/SetCredentialKeyRequest.ts +74 -0
  155. package/src/models/SetCustomApiRequest.ts +75 -0
  156. package/src/models/SetSandboxAiAccessRequest.ts +66 -0
  157. package/src/models/UpdateAiProxyRequest.ts +66 -0
  158. package/src/models/UpdateCredentialProfileRequest.ts +73 -0
  159. package/src/models/UpdateSandboxEnvironmentRequest.ts +16 -0
  160. package/src/models/index.ts +22 -0
@@ -0,0 +1,92 @@
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
+ import { mapValues } from '../runtime';
16
+ import type { CredentialProfile } from './CredentialProfile';
17
+ import {
18
+ CredentialProfileFromJSON,
19
+ CredentialProfileFromJSONTyped,
20
+ CredentialProfileToJSON,
21
+ CredentialProfileToJSONTyped,
22
+ } from './CredentialProfile';
23
+
24
+ /**
25
+ *
26
+ * @export
27
+ * @interface CredentialProfileListResponse
28
+ */
29
+ export interface CredentialProfileListResponse {
30
+ /**
31
+ *
32
+ * @type {boolean}
33
+ * @memberof CredentialProfileListResponse
34
+ */
35
+ ok: boolean;
36
+ /**
37
+ * Stable success envelope discriminator added by v1.
38
+ * @type {string}
39
+ * @memberof CredentialProfileListResponse
40
+ */
41
+ type: string;
42
+ /**
43
+ *
44
+ * @type {Array<CredentialProfile>}
45
+ * @memberof CredentialProfileListResponse
46
+ */
47
+ profiles: Array<CredentialProfile>;
48
+ }
49
+
50
+ /**
51
+ * Check if a given object implements the CredentialProfileListResponse interface.
52
+ */
53
+ export function instanceOfCredentialProfileListResponse(value: object): value is CredentialProfileListResponse {
54
+ if (!('ok' in value) || value['ok'] === undefined) return false;
55
+ if (!('type' in value) || value['type'] === undefined) return false;
56
+ if (!('profiles' in value) || value['profiles'] === undefined) return false;
57
+ return true;
58
+ }
59
+
60
+ export function CredentialProfileListResponseFromJSON(json: any): CredentialProfileListResponse {
61
+ return CredentialProfileListResponseFromJSONTyped(json, false);
62
+ }
63
+
64
+ export function CredentialProfileListResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): CredentialProfileListResponse {
65
+ if (json == null) {
66
+ return json;
67
+ }
68
+ return {
69
+
70
+ 'ok': json['ok'],
71
+ 'type': json['type'],
72
+ 'profiles': ((json['profiles'] as Array<any>).map(CredentialProfileFromJSON)),
73
+ };
74
+ }
75
+
76
+ export function CredentialProfileListResponseToJSON(json: any): CredentialProfileListResponse {
77
+ return CredentialProfileListResponseToJSONTyped(json, false);
78
+ }
79
+
80
+ export function CredentialProfileListResponseToJSONTyped(value?: CredentialProfileListResponse | null, ignoreDiscriminator: boolean = false): any {
81
+ if (value == null) {
82
+ return value;
83
+ }
84
+
85
+ return {
86
+
87
+ 'ok': value['ok'],
88
+ 'type': value['type'],
89
+ 'profiles': ((value['profiles'] as Array<any>).map(CredentialProfileToJSON)),
90
+ };
91
+ }
92
+
@@ -0,0 +1,104 @@
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
+ import { mapValues } from '../runtime';
16
+ /**
17
+ *
18
+ * @export
19
+ * @interface CredentialProfileOwner
20
+ */
21
+ export interface CredentialProfileOwner {
22
+ /**
23
+ * The account that owns the profile, a person or an organization.
24
+ * @type {string}
25
+ * @memberof CredentialProfileOwner
26
+ */
27
+ id: string;
28
+ /**
29
+ *
30
+ * @type {CredentialProfileOwnerKindEnum}
31
+ * @memberof CredentialProfileOwner
32
+ */
33
+ kind: CredentialProfileOwnerKindEnum;
34
+ /**
35
+ *
36
+ * @type {string}
37
+ * @memberof CredentialProfileOwner
38
+ */
39
+ name: string;
40
+ /**
41
+ * True when the owner has the AI credentials proxy on.
42
+ * @type {boolean}
43
+ * @memberof CredentialProfileOwner
44
+ */
45
+ aiProxyEnabled: boolean;
46
+ }
47
+
48
+
49
+ /**
50
+ * @export
51
+ */
52
+ export const CredentialProfileOwnerKindEnum = {
53
+ Personal: 'personal',
54
+ Org: 'org'
55
+ } as const;
56
+ export type CredentialProfileOwnerKindEnum = typeof CredentialProfileOwnerKindEnum[keyof typeof CredentialProfileOwnerKindEnum];
57
+
58
+
59
+ /**
60
+ * Check if a given object implements the CredentialProfileOwner interface.
61
+ */
62
+ export function instanceOfCredentialProfileOwner(value: object): value is CredentialProfileOwner {
63
+ if (!('id' in value) || value['id'] === undefined) return false;
64
+ if (!('kind' in value) || value['kind'] === undefined) return false;
65
+ if (!('name' in value) || value['name'] === undefined) return false;
66
+ if (!('aiProxyEnabled' in value) || value['aiProxyEnabled'] === undefined) return false;
67
+ return true;
68
+ }
69
+
70
+ export function CredentialProfileOwnerFromJSON(json: any): CredentialProfileOwner {
71
+ return CredentialProfileOwnerFromJSONTyped(json, false);
72
+ }
73
+
74
+ export function CredentialProfileOwnerFromJSONTyped(json: any, ignoreDiscriminator: boolean): CredentialProfileOwner {
75
+ if (json == null) {
76
+ return json;
77
+ }
78
+ return {
79
+
80
+ 'id': json['id'],
81
+ 'kind': json['kind'],
82
+ 'name': json['name'],
83
+ 'aiProxyEnabled': json['aiProxyEnabled'],
84
+ };
85
+ }
86
+
87
+ export function CredentialProfileOwnerToJSON(json: any): CredentialProfileOwner {
88
+ return CredentialProfileOwnerToJSONTyped(json, false);
89
+ }
90
+
91
+ export function CredentialProfileOwnerToJSONTyped(value?: CredentialProfileOwner | null, ignoreDiscriminator: boolean = false): any {
92
+ if (value == null) {
93
+ return value;
94
+ }
95
+
96
+ return {
97
+
98
+ 'id': value['id'],
99
+ 'kind': value['kind'],
100
+ 'name': value['name'],
101
+ 'aiProxyEnabled': value['aiProxyEnabled'],
102
+ };
103
+ }
104
+
@@ -0,0 +1,101 @@
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
+ import { mapValues } from '../runtime';
16
+ import type { CredentialProfile } from './CredentialProfile';
17
+ import {
18
+ CredentialProfileFromJSON,
19
+ CredentialProfileFromJSONTyped,
20
+ CredentialProfileToJSON,
21
+ CredentialProfileToJSONTyped,
22
+ } from './CredentialProfile';
23
+
24
+ /**
25
+ *
26
+ * @export
27
+ * @interface CredentialProfileResponse
28
+ */
29
+ export interface CredentialProfileResponse {
30
+ /**
31
+ *
32
+ * @type {boolean}
33
+ * @memberof CredentialProfileResponse
34
+ */
35
+ ok: boolean;
36
+ /**
37
+ * Stable success envelope discriminator added by v1.
38
+ * @type {string}
39
+ * @memberof CredentialProfileResponse
40
+ */
41
+ type: string;
42
+ /**
43
+ *
44
+ * @type {boolean}
45
+ * @memberof CredentialProfileResponse
46
+ */
47
+ success: boolean;
48
+ /**
49
+ *
50
+ * @type {CredentialProfile}
51
+ * @memberof CredentialProfileResponse
52
+ */
53
+ profile: CredentialProfile;
54
+ }
55
+
56
+ /**
57
+ * Check if a given object implements the CredentialProfileResponse interface.
58
+ */
59
+ export function instanceOfCredentialProfileResponse(value: object): value is CredentialProfileResponse {
60
+ if (!('ok' in value) || value['ok'] === undefined) return false;
61
+ if (!('type' in value) || value['type'] === undefined) return false;
62
+ if (!('success' in value) || value['success'] === undefined) return false;
63
+ if (!('profile' in value) || value['profile'] === undefined) return false;
64
+ return true;
65
+ }
66
+
67
+ export function CredentialProfileResponseFromJSON(json: any): CredentialProfileResponse {
68
+ return CredentialProfileResponseFromJSONTyped(json, false);
69
+ }
70
+
71
+ export function CredentialProfileResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): CredentialProfileResponse {
72
+ if (json == null) {
73
+ return json;
74
+ }
75
+ return {
76
+
77
+ 'ok': json['ok'],
78
+ 'type': json['type'],
79
+ 'success': json['success'],
80
+ 'profile': CredentialProfileFromJSON(json['profile']),
81
+ };
82
+ }
83
+
84
+ export function CredentialProfileResponseToJSON(json: any): CredentialProfileResponse {
85
+ return CredentialProfileResponseToJSONTyped(json, false);
86
+ }
87
+
88
+ export function CredentialProfileResponseToJSONTyped(value?: CredentialProfileResponse | null, ignoreDiscriminator: boolean = false): any {
89
+ if (value == null) {
90
+ return value;
91
+ }
92
+
93
+ return {
94
+
95
+ 'ok': value['ok'],
96
+ 'type': value['type'],
97
+ 'success': value['success'],
98
+ 'profile': CredentialProfileToJSON(value['profile']),
99
+ };
100
+ }
101
+
@@ -52,7 +52,7 @@ export interface ProcessListResponse {
52
52
  */
53
53
  sampledAt: Date | null;
54
54
  /**
55
- * Processes on the sandbox. The list holds at most 500
55
+ * Processes on the sandbox. The list holds at most 500, busiest first.
56
56
  * @type {number}
57
57
  * @memberof ProcessListResponse
58
58
  */
@@ -0,0 +1,102 @@
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
+ import { mapValues } from '../runtime';
16
+ /**
17
+ *
18
+ * @export
19
+ * @interface SandboxAiAccessResponse
20
+ */
21
+ export interface SandboxAiAccessResponse {
22
+ /**
23
+ *
24
+ * @type {boolean}
25
+ * @memberof SandboxAiAccessResponse
26
+ */
27
+ ok: boolean;
28
+ /**
29
+ * Stable success envelope discriminator added by v1.
30
+ * @type {string}
31
+ * @memberof SandboxAiAccessResponse
32
+ */
33
+ type: string;
34
+ /**
35
+ *
36
+ * @type {boolean}
37
+ * @memberof SandboxAiAccessResponse
38
+ */
39
+ success: boolean;
40
+ /**
41
+ *
42
+ * @type {string}
43
+ * @memberof SandboxAiAccessResponse
44
+ */
45
+ sandboxId: string;
46
+ /**
47
+ *
48
+ * @type {boolean}
49
+ * @memberof SandboxAiAccessResponse
50
+ */
51
+ blocked: boolean;
52
+ }
53
+
54
+ /**
55
+ * Check if a given object implements the SandboxAiAccessResponse interface.
56
+ */
57
+ export function instanceOfSandboxAiAccessResponse(value: object): value is SandboxAiAccessResponse {
58
+ if (!('ok' in value) || value['ok'] === undefined) return false;
59
+ if (!('type' in value) || value['type'] === undefined) return false;
60
+ if (!('success' in value) || value['success'] === undefined) return false;
61
+ if (!('sandboxId' in value) || value['sandboxId'] === undefined) return false;
62
+ if (!('blocked' in value) || value['blocked'] === undefined) return false;
63
+ return true;
64
+ }
65
+
66
+ export function SandboxAiAccessResponseFromJSON(json: any): SandboxAiAccessResponse {
67
+ return SandboxAiAccessResponseFromJSONTyped(json, false);
68
+ }
69
+
70
+ export function SandboxAiAccessResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): SandboxAiAccessResponse {
71
+ if (json == null) {
72
+ return json;
73
+ }
74
+ return {
75
+
76
+ 'ok': json['ok'],
77
+ 'type': json['type'],
78
+ 'success': json['success'],
79
+ 'sandboxId': json['sandboxId'],
80
+ 'blocked': json['blocked'],
81
+ };
82
+ }
83
+
84
+ export function SandboxAiAccessResponseToJSON(json: any): SandboxAiAccessResponse {
85
+ return SandboxAiAccessResponseToJSONTyped(json, false);
86
+ }
87
+
88
+ export function SandboxAiAccessResponseToJSONTyped(value?: SandboxAiAccessResponse | null, ignoreDiscriminator: boolean = false): any {
89
+ if (value == null) {
90
+ return value;
91
+ }
92
+
93
+ return {
94
+
95
+ 'ok': value['ok'],
96
+ 'type': value['type'],
97
+ 'success': value['success'],
98
+ 'sandboxId': value['sandboxId'],
99
+ 'blocked': value['blocked'],
100
+ };
101
+ }
102
+
@@ -0,0 +1,126 @@
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
+ import { mapValues } from '../runtime';
16
+ import type { AiUsageRow } from './AiUsageRow';
17
+ import {
18
+ AiUsageRowFromJSON,
19
+ AiUsageRowFromJSONTyped,
20
+ AiUsageRowToJSON,
21
+ AiUsageRowToJSONTyped,
22
+ } from './AiUsageRow';
23
+ import type { AiUsageTotals } from './AiUsageTotals';
24
+ import {
25
+ AiUsageTotalsFromJSON,
26
+ AiUsageTotalsFromJSONTyped,
27
+ AiUsageTotalsToJSON,
28
+ AiUsageTotalsToJSONTyped,
29
+ } from './AiUsageTotals';
30
+
31
+ /**
32
+ *
33
+ * @export
34
+ * @interface SandboxAiUsage
35
+ */
36
+ export interface SandboxAiUsage {
37
+ /**
38
+ *
39
+ * @type {string}
40
+ * @memberof SandboxAiUsage
41
+ */
42
+ sandboxId: string | null;
43
+ /**
44
+ *
45
+ * @type {string}
46
+ * @memberof SandboxAiUsage
47
+ */
48
+ name: string | null;
49
+ /**
50
+ *
51
+ * @type {boolean}
52
+ * @memberof SandboxAiUsage
53
+ */
54
+ blocked: boolean;
55
+ /**
56
+ *
57
+ * @type {Array<AiUsageRow>}
58
+ * @memberof SandboxAiUsage
59
+ */
60
+ usage: Array<AiUsageRow>;
61
+ /**
62
+ *
63
+ * @type {AiUsageTotals}
64
+ * @memberof SandboxAiUsage
65
+ */
66
+ totals: AiUsageTotals;
67
+ /**
68
+ * Request charge for the period, at the price per 1,000 requests.
69
+ * @type {number}
70
+ * @memberof SandboxAiUsage
71
+ */
72
+ dollars: number;
73
+ }
74
+
75
+ /**
76
+ * Check if a given object implements the SandboxAiUsage interface.
77
+ */
78
+ export function instanceOfSandboxAiUsage(value: object): value is SandboxAiUsage {
79
+ if (!('sandboxId' in value) || value['sandboxId'] === undefined) return false;
80
+ if (!('name' in value) || value['name'] === undefined) return false;
81
+ if (!('blocked' in value) || value['blocked'] === undefined) return false;
82
+ if (!('usage' in value) || value['usage'] === undefined) return false;
83
+ if (!('totals' in value) || value['totals'] === undefined) return false;
84
+ if (!('dollars' in value) || value['dollars'] === undefined) return false;
85
+ return true;
86
+ }
87
+
88
+ export function SandboxAiUsageFromJSON(json: any): SandboxAiUsage {
89
+ return SandboxAiUsageFromJSONTyped(json, false);
90
+ }
91
+
92
+ export function SandboxAiUsageFromJSONTyped(json: any, ignoreDiscriminator: boolean): SandboxAiUsage {
93
+ if (json == null) {
94
+ return json;
95
+ }
96
+ return {
97
+
98
+ 'sandboxId': json['sandboxId'],
99
+ 'name': json['name'],
100
+ 'blocked': json['blocked'],
101
+ 'usage': ((json['usage'] as Array<any>).map(AiUsageRowFromJSON)),
102
+ 'totals': AiUsageTotalsFromJSON(json['totals']),
103
+ 'dollars': json['dollars'],
104
+ };
105
+ }
106
+
107
+ export function SandboxAiUsageToJSON(json: any): SandboxAiUsage {
108
+ return SandboxAiUsageToJSONTyped(json, false);
109
+ }
110
+
111
+ export function SandboxAiUsageToJSONTyped(value?: SandboxAiUsage | null, ignoreDiscriminator: boolean = false): any {
112
+ if (value == null) {
113
+ return value;
114
+ }
115
+
116
+ return {
117
+
118
+ 'sandboxId': value['sandboxId'],
119
+ 'name': value['name'],
120
+ 'blocked': value['blocked'],
121
+ 'usage': ((value['usage'] as Array<any>).map(AiUsageRowToJSON)),
122
+ 'totals': AiUsageTotalsToJSON(value['totals']),
123
+ 'dollars': value['dollars'],
124
+ };
125
+ }
126
+
@@ -0,0 +1,162 @@
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
+ import { mapValues } from '../runtime';
16
+ import type { AiUsageRow } from './AiUsageRow';
17
+ import {
18
+ AiUsageRowFromJSON,
19
+ AiUsageRowFromJSONTyped,
20
+ AiUsageRowToJSON,
21
+ AiUsageRowToJSONTyped,
22
+ } from './AiUsageRow';
23
+ import type { AiUsageTotals } from './AiUsageTotals';
24
+ import {
25
+ AiUsageTotalsFromJSON,
26
+ AiUsageTotalsFromJSONTyped,
27
+ AiUsageTotalsToJSON,
28
+ AiUsageTotalsToJSONTyped,
29
+ } from './AiUsageTotals';
30
+
31
+ /**
32
+ *
33
+ * @export
34
+ * @interface SandboxAiUsageResponse
35
+ */
36
+ export interface SandboxAiUsageResponse {
37
+ /**
38
+ *
39
+ * @type {boolean}
40
+ * @memberof SandboxAiUsageResponse
41
+ */
42
+ ok: boolean;
43
+ /**
44
+ * Stable success envelope discriminator added by v1.
45
+ * @type {string}
46
+ * @memberof SandboxAiUsageResponse
47
+ */
48
+ type: string;
49
+ /**
50
+ *
51
+ * @type {string}
52
+ * @memberof SandboxAiUsageResponse
53
+ */
54
+ sandboxId: string;
55
+ /**
56
+ * True when the proxy refuses this sandbox's placeholders.
57
+ * @type {boolean}
58
+ * @memberof SandboxAiUsageResponse
59
+ */
60
+ blocked: boolean;
61
+ /**
62
+ * True when the sandbox holds placeholders, not real keys.
63
+ * @type {boolean}
64
+ * @memberof SandboxAiUsageResponse
65
+ */
66
+ proxied: boolean;
67
+ /**
68
+ * The profile the sandbox uses. Null means its owner's default.
69
+ * @type {string}
70
+ * @memberof SandboxAiUsageResponse
71
+ */
72
+ credentialProfileId: string | null;
73
+ /**
74
+ *
75
+ * @type {Date}
76
+ * @memberof SandboxAiUsageResponse
77
+ */
78
+ since: Date;
79
+ /**
80
+ *
81
+ * @type {Array<AiUsageRow>}
82
+ * @memberof SandboxAiUsageResponse
83
+ */
84
+ usage: Array<AiUsageRow>;
85
+ /**
86
+ *
87
+ * @type {AiUsageTotals}
88
+ * @memberof SandboxAiUsageResponse
89
+ */
90
+ totals: AiUsageTotals;
91
+ /**
92
+ *
93
+ * @type {number}
94
+ * @memberof SandboxAiUsageResponse
95
+ */
96
+ dollars: number;
97
+ }
98
+
99
+ /**
100
+ * Check if a given object implements the SandboxAiUsageResponse interface.
101
+ */
102
+ export function instanceOfSandboxAiUsageResponse(value: object): value is SandboxAiUsageResponse {
103
+ if (!('ok' in value) || value['ok'] === undefined) return false;
104
+ if (!('type' in value) || value['type'] === undefined) return false;
105
+ if (!('sandboxId' in value) || value['sandboxId'] === undefined) return false;
106
+ if (!('blocked' in value) || value['blocked'] === undefined) return false;
107
+ if (!('proxied' in value) || value['proxied'] === undefined) return false;
108
+ if (!('credentialProfileId' in value) || value['credentialProfileId'] === undefined) return false;
109
+ if (!('since' in value) || value['since'] === undefined) return false;
110
+ if (!('usage' in value) || value['usage'] === undefined) return false;
111
+ if (!('totals' in value) || value['totals'] === undefined) return false;
112
+ if (!('dollars' in value) || value['dollars'] === undefined) return false;
113
+ return true;
114
+ }
115
+
116
+ export function SandboxAiUsageResponseFromJSON(json: any): SandboxAiUsageResponse {
117
+ return SandboxAiUsageResponseFromJSONTyped(json, false);
118
+ }
119
+
120
+ export function SandboxAiUsageResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): SandboxAiUsageResponse {
121
+ if (json == null) {
122
+ return json;
123
+ }
124
+ return {
125
+
126
+ 'ok': json['ok'],
127
+ 'type': json['type'],
128
+ 'sandboxId': json['sandboxId'],
129
+ 'blocked': json['blocked'],
130
+ 'proxied': json['proxied'],
131
+ 'credentialProfileId': json['credentialProfileId'],
132
+ 'since': (new Date(json['since'])),
133
+ 'usage': ((json['usage'] as Array<any>).map(AiUsageRowFromJSON)),
134
+ 'totals': AiUsageTotalsFromJSON(json['totals']),
135
+ 'dollars': json['dollars'],
136
+ };
137
+ }
138
+
139
+ export function SandboxAiUsageResponseToJSON(json: any): SandboxAiUsageResponse {
140
+ return SandboxAiUsageResponseToJSONTyped(json, false);
141
+ }
142
+
143
+ export function SandboxAiUsageResponseToJSONTyped(value?: SandboxAiUsageResponse | null, ignoreDiscriminator: boolean = false): any {
144
+ if (value == null) {
145
+ return value;
146
+ }
147
+
148
+ return {
149
+
150
+ 'ok': value['ok'],
151
+ 'type': value['type'],
152
+ 'sandboxId': value['sandboxId'],
153
+ 'blocked': value['blocked'],
154
+ 'proxied': value['proxied'],
155
+ 'credentialProfileId': value['credentialProfileId'],
156
+ 'since': value['since'].toISOString().substring(0,10),
157
+ 'usage': ((value['usage'] as Array<any>).map(AiUsageRowToJSON)),
158
+ 'totals': AiUsageTotalsToJSON(value['totals']),
159
+ 'dollars': value['dollars'],
160
+ };
161
+ }
162
+