@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,82 @@
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 CreateCredentialProfileRequest
20
+ */
21
+ export interface CreateCredentialProfileRequest {
22
+ /**
23
+ * Unique among the owner's profiles.
24
+ * @type {string}
25
+ * @memberof CreateCredentialProfileRequest
26
+ */
27
+ name: string;
28
+ /**
29
+ * Organization id or name. The profile then belongs to that organization. Omit for a personal profile.
30
+ * @type {string}
31
+ * @memberof CreateCredentialProfileRequest
32
+ */
33
+ org?: string;
34
+ /**
35
+ * Id or name of a profile you manage. The new profile starts with a copy of its credentials.
36
+ * @type {string}
37
+ * @memberof CreateCredentialProfileRequest
38
+ */
39
+ copyFrom?: string;
40
+ }
41
+
42
+ /**
43
+ * Check if a given object implements the CreateCredentialProfileRequest interface.
44
+ */
45
+ export function instanceOfCreateCredentialProfileRequest(value: object): value is CreateCredentialProfileRequest {
46
+ if (!('name' in value) || value['name'] === undefined) return false;
47
+ return true;
48
+ }
49
+
50
+ export function CreateCredentialProfileRequestFromJSON(json: any): CreateCredentialProfileRequest {
51
+ return CreateCredentialProfileRequestFromJSONTyped(json, false);
52
+ }
53
+
54
+ export function CreateCredentialProfileRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): CreateCredentialProfileRequest {
55
+ if (json == null) {
56
+ return json;
57
+ }
58
+ return {
59
+
60
+ 'name': json['name'],
61
+ 'org': json['org'] == null ? undefined : json['org'],
62
+ 'copyFrom': json['copyFrom'] == null ? undefined : json['copyFrom'],
63
+ };
64
+ }
65
+
66
+ export function CreateCredentialProfileRequestToJSON(json: any): CreateCredentialProfileRequest {
67
+ return CreateCredentialProfileRequestToJSONTyped(json, false);
68
+ }
69
+
70
+ export function CreateCredentialProfileRequestToJSONTyped(value?: CreateCredentialProfileRequest | null, ignoreDiscriminator: boolean = false): any {
71
+ if (value == null) {
72
+ return value;
73
+ }
74
+
75
+ return {
76
+
77
+ 'name': value['name'],
78
+ 'org': value['org'],
79
+ 'copyFrom': value['copyFrom'],
80
+ };
81
+ }
82
+
@@ -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
+ /**
17
+ * One account of a credential. Never a secret.
18
+ * @export
19
+ * @interface CredentialAccount
20
+ */
21
+ export interface CredentialAccount {
22
+ /**
23
+ * The account's id. It stays the same across switches.
24
+ * @type {string}
25
+ * @memberof CredentialAccount
26
+ */
27
+ id: string;
28
+ /**
29
+ * The account's email for a sign-in, or the key's last characters (…1234).
30
+ * @type {string}
31
+ * @memberof CredentialAccount
32
+ */
33
+ label: string;
34
+ /**
35
+ * True for the account every sandbox on the profile uses.
36
+ * @type {boolean}
37
+ * @memberof CredentialAccount
38
+ */
39
+ active: boolean;
40
+ /**
41
+ * When the account was set aside (accounts not in use).
42
+ * @type {Date}
43
+ * @memberof CredentialAccount
44
+ */
45
+ addedAt?: Date;
46
+ }
47
+
48
+ /**
49
+ * Check if a given object implements the CredentialAccount interface.
50
+ */
51
+ export function instanceOfCredentialAccount(value: object): value is CredentialAccount {
52
+ if (!('id' in value) || value['id'] === undefined) return false;
53
+ if (!('label' in value) || value['label'] === undefined) return false;
54
+ if (!('active' in value) || value['active'] === undefined) return false;
55
+ return true;
56
+ }
57
+
58
+ export function CredentialAccountFromJSON(json: any): CredentialAccount {
59
+ return CredentialAccountFromJSONTyped(json, false);
60
+ }
61
+
62
+ export function CredentialAccountFromJSONTyped(json: any, ignoreDiscriminator: boolean): CredentialAccount {
63
+ if (json == null) {
64
+ return json;
65
+ }
66
+ return {
67
+
68
+ 'id': json['id'],
69
+ 'label': json['label'],
70
+ 'active': json['active'],
71
+ 'addedAt': json['addedAt'] == null ? undefined : (new Date(json['addedAt'])),
72
+ };
73
+ }
74
+
75
+ export function CredentialAccountToJSON(json: any): CredentialAccount {
76
+ return CredentialAccountToJSONTyped(json, false);
77
+ }
78
+
79
+ export function CredentialAccountToJSONTyped(value?: CredentialAccount | null, ignoreDiscriminator: boolean = false): any {
80
+ if (value == null) {
81
+ return value;
82
+ }
83
+
84
+ return {
85
+
86
+ 'id': value['id'],
87
+ 'label': value['label'],
88
+ 'active': value['active'],
89
+ 'addedAt': value['addedAt'] == null ? value['addedAt'] : value['addedAt'].toISOString(),
90
+ };
91
+ }
92
+
@@ -0,0 +1,128 @@
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 { CredentialId } from './CredentialId';
17
+ import {
18
+ CredentialIdFromJSON,
19
+ CredentialIdFromJSONTyped,
20
+ CredentialIdToJSON,
21
+ CredentialIdToJSONTyped,
22
+ } from './CredentialId';
23
+ import type { CredentialAccount } from './CredentialAccount';
24
+ import {
25
+ CredentialAccountFromJSON,
26
+ CredentialAccountFromJSONTyped,
27
+ CredentialAccountToJSON,
28
+ CredentialAccountToJSONTyped,
29
+ } from './CredentialAccount';
30
+
31
+ /**
32
+ *
33
+ * @export
34
+ * @interface CredentialAccountsResponse
35
+ */
36
+ export interface CredentialAccountsResponse {
37
+ /**
38
+ *
39
+ * @type {boolean}
40
+ * @memberof CredentialAccountsResponse
41
+ */
42
+ ok: boolean;
43
+ /**
44
+ * Stable success envelope discriminator added by v1.
45
+ * @type {string}
46
+ * @memberof CredentialAccountsResponse
47
+ */
48
+ type: string;
49
+ /**
50
+ *
51
+ * @type {boolean}
52
+ * @memberof CredentialAccountsResponse
53
+ */
54
+ success: boolean;
55
+ /**
56
+ *
57
+ * @type {string}
58
+ * @memberof CredentialAccountsResponse
59
+ */
60
+ profileId: string;
61
+ /**
62
+ *
63
+ * @type {CredentialId}
64
+ * @memberof CredentialAccountsResponse
65
+ */
66
+ credential: CredentialId;
67
+ /**
68
+ * In the order the accounts were added, so their numbers stay the same across switches. The one in use is marked `active`.
69
+ * @type {Array<CredentialAccount>}
70
+ * @memberof CredentialAccountsResponse
71
+ */
72
+ accounts: Array<CredentialAccount>;
73
+ }
74
+
75
+
76
+
77
+ /**
78
+ * Check if a given object implements the CredentialAccountsResponse interface.
79
+ */
80
+ export function instanceOfCredentialAccountsResponse(value: object): value is CredentialAccountsResponse {
81
+ if (!('ok' in value) || value['ok'] === undefined) return false;
82
+ if (!('type' in value) || value['type'] === undefined) return false;
83
+ if (!('success' in value) || value['success'] === undefined) return false;
84
+ if (!('profileId' in value) || value['profileId'] === undefined) return false;
85
+ if (!('credential' in value) || value['credential'] === undefined) return false;
86
+ if (!('accounts' in value) || value['accounts'] === undefined) return false;
87
+ return true;
88
+ }
89
+
90
+ export function CredentialAccountsResponseFromJSON(json: any): CredentialAccountsResponse {
91
+ return CredentialAccountsResponseFromJSONTyped(json, false);
92
+ }
93
+
94
+ export function CredentialAccountsResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): CredentialAccountsResponse {
95
+ if (json == null) {
96
+ return json;
97
+ }
98
+ return {
99
+
100
+ 'ok': json['ok'],
101
+ 'type': json['type'],
102
+ 'success': json['success'],
103
+ 'profileId': json['profileId'],
104
+ 'credential': CredentialIdFromJSON(json['credential']),
105
+ 'accounts': ((json['accounts'] as Array<any>).map(CredentialAccountFromJSON)),
106
+ };
107
+ }
108
+
109
+ export function CredentialAccountsResponseToJSON(json: any): CredentialAccountsResponse {
110
+ return CredentialAccountsResponseToJSONTyped(json, false);
111
+ }
112
+
113
+ export function CredentialAccountsResponseToJSONTyped(value?: CredentialAccountsResponse | null, ignoreDiscriminator: boolean = false): any {
114
+ if (value == null) {
115
+ return value;
116
+ }
117
+
118
+ return {
119
+
120
+ 'ok': value['ok'],
121
+ 'type': value['type'],
122
+ 'success': value['success'],
123
+ 'profileId': value['profileId'],
124
+ 'credential': CredentialIdToJSON(value['credential']),
125
+ 'accounts': ((value['accounts'] as Array<any>).map(CredentialAccountToJSON)),
126
+ };
127
+ }
128
+
@@ -0,0 +1,64 @@
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
+
16
+ /**
17
+ * One AI credential in a credential profile. The `*-api-key` ids are API keys you can set with `PUT /credential-profiles/{profile}/keys/{credential}`. The sign-ins (`*-subscription`) and Bedrock (`*-bedrock`) are connected on the dashboard Agents & Proxying page, with the profile picked at the top; you can remove them here.
18
+ * @export
19
+ */
20
+ export const CredentialId = {
21
+ AnthropicApiKey: 'anthropic-api-key',
22
+ OpenaiApiKey: 'openai-api-key',
23
+ OpenrouterApiKey: 'openrouter-api-key',
24
+ LlmgatewayApiKey: 'llmgateway-api-key',
25
+ DeepseekApiKey: 'deepseek-api-key',
26
+ MoonshotApiKey: 'moonshot-api-key',
27
+ MistralApiKey: 'mistral-api-key',
28
+ ClaudeSubscription: 'claude-subscription',
29
+ ChatgptSubscription: 'chatgpt-subscription',
30
+ KimiSubscription: 'kimi-subscription',
31
+ MistralVibeSubscription: 'mistral-vibe-subscription',
32
+ ClaudeBedrock: 'claude-bedrock',
33
+ CodexBedrock: 'codex-bedrock'
34
+ } as const;
35
+ export type CredentialId = typeof CredentialId[keyof typeof CredentialId];
36
+
37
+
38
+ export function instanceOfCredentialId(value: any): boolean {
39
+ for (const key in CredentialId) {
40
+ if (Object.prototype.hasOwnProperty.call(CredentialId, key)) {
41
+ if (CredentialId[key as keyof typeof CredentialId] === value) {
42
+ return true;
43
+ }
44
+ }
45
+ }
46
+ return false;
47
+ }
48
+
49
+ export function CredentialIdFromJSON(json: any): CredentialId {
50
+ return CredentialIdFromJSONTyped(json, false);
51
+ }
52
+
53
+ export function CredentialIdFromJSONTyped(json: any, ignoreDiscriminator: boolean): CredentialId {
54
+ return json as CredentialId;
55
+ }
56
+
57
+ export function CredentialIdToJSON(value?: CredentialId | null): any {
58
+ return value as any;
59
+ }
60
+
61
+ export function CredentialIdToJSONTyped(value: any, ignoreDiscriminator: boolean): CredentialId {
62
+ return value as CredentialId;
63
+ }
64
+
@@ -0,0 +1,168 @@
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 { CredentialId } from './CredentialId';
17
+ import {
18
+ CredentialIdFromJSON,
19
+ CredentialIdFromJSONTyped,
20
+ CredentialIdToJSON,
21
+ CredentialIdToJSONTyped,
22
+ } from './CredentialId';
23
+ import type { CredentialProfileOwner } from './CredentialProfileOwner';
24
+ import {
25
+ CredentialProfileOwnerFromJSON,
26
+ CredentialProfileOwnerFromJSONTyped,
27
+ CredentialProfileOwnerToJSON,
28
+ CredentialProfileOwnerToJSONTyped,
29
+ } from './CredentialProfileOwner';
30
+ import type { CredentialAccount } from './CredentialAccount';
31
+ import {
32
+ CredentialAccountFromJSON,
33
+ CredentialAccountFromJSONTyped,
34
+ CredentialAccountToJSON,
35
+ CredentialAccountToJSONTyped,
36
+ } from './CredentialAccount';
37
+
38
+ /**
39
+ * A named set of AI credentials. Secret values are never returned.
40
+ * @export
41
+ * @interface CredentialProfile
42
+ */
43
+ export interface CredentialProfile {
44
+ /**
45
+ *
46
+ * @type {string}
47
+ * @memberof CredentialProfile
48
+ */
49
+ id: string;
50
+ /**
51
+ *
52
+ * @type {string}
53
+ * @memberof CredentialProfile
54
+ */
55
+ name: string;
56
+ /**
57
+ * True for the one profile of its owner that sandboxes get when nothing names a profile. The dashboard Agents page edits this profile.
58
+ * @type {boolean}
59
+ * @memberof CredentialProfile
60
+ */
61
+ isDefault: boolean;
62
+ /**
63
+ *
64
+ * @type {CredentialProfileOwner}
65
+ * @memberof CredentialProfile
66
+ */
67
+ owner: CredentialProfileOwner;
68
+ /**
69
+ * True when you can change the profile. Org members use an org profile; org owners manage it.
70
+ * @type {boolean}
71
+ * @memberof CredentialProfile
72
+ */
73
+ canManage: boolean;
74
+ /**
75
+ * The credentials the profile holds.
76
+ * @type {Array<CredentialId>}
77
+ * @memberof CredentialProfile
78
+ */
79
+ connected: Array<CredentialId>;
80
+ /**
81
+ * Credentials with several accounts, keyed by credential id. Each lists every account (labels only), the one in use marked `active`.
82
+ * @type {{ [key: string]: Array<CredentialAccount>; }}
83
+ * @memberof CredentialProfile
84
+ */
85
+ accounts?: { [key: string]: Array<CredentialAccount>; };
86
+ /**
87
+ * The names of the profile's custom APIs. Values are never returned.
88
+ * @type {Array<string>}
89
+ * @memberof CredentialProfile
90
+ */
91
+ customApis: Array<string>;
92
+ /**
93
+ *
94
+ * @type {Date}
95
+ * @memberof CredentialProfile
96
+ */
97
+ createdAt: Date;
98
+ /**
99
+ *
100
+ * @type {Date}
101
+ * @memberof CredentialProfile
102
+ */
103
+ updatedAt: Date;
104
+ }
105
+
106
+ /**
107
+ * Check if a given object implements the CredentialProfile interface.
108
+ */
109
+ export function instanceOfCredentialProfile(value: object): value is CredentialProfile {
110
+ if (!('id' in value) || value['id'] === undefined) return false;
111
+ if (!('name' in value) || value['name'] === undefined) return false;
112
+ if (!('isDefault' in value) || value['isDefault'] === undefined) return false;
113
+ if (!('owner' in value) || value['owner'] === undefined) return false;
114
+ if (!('canManage' in value) || value['canManage'] === undefined) return false;
115
+ if (!('connected' in value) || value['connected'] === undefined) return false;
116
+ if (!('customApis' in value) || value['customApis'] === undefined) return false;
117
+ if (!('createdAt' in value) || value['createdAt'] === undefined) return false;
118
+ if (!('updatedAt' in value) || value['updatedAt'] === undefined) return false;
119
+ return true;
120
+ }
121
+
122
+ export function CredentialProfileFromJSON(json: any): CredentialProfile {
123
+ return CredentialProfileFromJSONTyped(json, false);
124
+ }
125
+
126
+ export function CredentialProfileFromJSONTyped(json: any, ignoreDiscriminator: boolean): CredentialProfile {
127
+ if (json == null) {
128
+ return json;
129
+ }
130
+ return {
131
+
132
+ 'id': json['id'],
133
+ 'name': json['name'],
134
+ 'isDefault': json['isDefault'],
135
+ 'owner': CredentialProfileOwnerFromJSON(json['owner']),
136
+ 'canManage': json['canManage'],
137
+ 'connected': ((json['connected'] as Array<any>).map(CredentialIdFromJSON)),
138
+ 'accounts': json['accounts'] == null ? undefined : json['accounts'],
139
+ 'customApis': json['customApis'],
140
+ 'createdAt': (new Date(json['createdAt'])),
141
+ 'updatedAt': (new Date(json['updatedAt'])),
142
+ };
143
+ }
144
+
145
+ export function CredentialProfileToJSON(json: any): CredentialProfile {
146
+ return CredentialProfileToJSONTyped(json, false);
147
+ }
148
+
149
+ export function CredentialProfileToJSONTyped(value?: CredentialProfile | null, ignoreDiscriminator: boolean = false): any {
150
+ if (value == null) {
151
+ return value;
152
+ }
153
+
154
+ return {
155
+
156
+ 'id': value['id'],
157
+ 'name': value['name'],
158
+ 'isDefault': value['isDefault'],
159
+ 'owner': CredentialProfileOwnerToJSON(value['owner']),
160
+ 'canManage': value['canManage'],
161
+ 'connected': ((value['connected'] as Array<any>).map(CredentialIdToJSON)),
162
+ 'accounts': value['accounts'],
163
+ 'customApis': value['customApis'],
164
+ 'createdAt': value['createdAt'].toISOString(),
165
+ 'updatedAt': value['updatedAt'].toISOString(),
166
+ };
167
+ }
168
+
@@ -0,0 +1,84 @@
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 CredentialProfileDeletedResponse
20
+ */
21
+ export interface CredentialProfileDeletedResponse {
22
+ /**
23
+ *
24
+ * @type {boolean}
25
+ * @memberof CredentialProfileDeletedResponse
26
+ */
27
+ ok: boolean;
28
+ /**
29
+ * Stable success envelope discriminator added by v1.
30
+ * @type {string}
31
+ * @memberof CredentialProfileDeletedResponse
32
+ */
33
+ type: string;
34
+ /**
35
+ *
36
+ * @type {boolean}
37
+ * @memberof CredentialProfileDeletedResponse
38
+ */
39
+ success: boolean;
40
+ }
41
+
42
+ /**
43
+ * Check if a given object implements the CredentialProfileDeletedResponse interface.
44
+ */
45
+ export function instanceOfCredentialProfileDeletedResponse(value: object): value is CredentialProfileDeletedResponse {
46
+ if (!('ok' in value) || value['ok'] === undefined) return false;
47
+ if (!('type' in value) || value['type'] === undefined) return false;
48
+ if (!('success' in value) || value['success'] === undefined) return false;
49
+ return true;
50
+ }
51
+
52
+ export function CredentialProfileDeletedResponseFromJSON(json: any): CredentialProfileDeletedResponse {
53
+ return CredentialProfileDeletedResponseFromJSONTyped(json, false);
54
+ }
55
+
56
+ export function CredentialProfileDeletedResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): CredentialProfileDeletedResponse {
57
+ if (json == null) {
58
+ return json;
59
+ }
60
+ return {
61
+
62
+ 'ok': json['ok'],
63
+ 'type': json['type'],
64
+ 'success': json['success'],
65
+ };
66
+ }
67
+
68
+ export function CredentialProfileDeletedResponseToJSON(json: any): CredentialProfileDeletedResponse {
69
+ return CredentialProfileDeletedResponseToJSONTyped(json, false);
70
+ }
71
+
72
+ export function CredentialProfileDeletedResponseToJSONTyped(value?: CredentialProfileDeletedResponse | null, ignoreDiscriminator: boolean = false): any {
73
+ if (value == null) {
74
+ return value;
75
+ }
76
+
77
+ return {
78
+
79
+ 'ok': value['ok'],
80
+ 'type': value['type'],
81
+ 'success': value['success'],
82
+ };
83
+ }
84
+