@scaleway/sdk 2.46.0 → 2.47.0

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 (174) hide show
  1. package/dist/api/baremetal/v1/api.gen.cjs +3 -1
  2. package/dist/api/baremetal/v1/api.gen.js +3 -1
  3. package/dist/api/edge_services/v1alpha1/api.gen.cjs +599 -0
  4. package/dist/api/edge_services/v1alpha1/api.gen.js +599 -0
  5. package/dist/api/edge_services/v1alpha1/content.gen.cjs +8 -0
  6. package/dist/api/edge_services/v1alpha1/content.gen.js +8 -0
  7. package/dist/api/edge_services/v1alpha1/index.gen.cjs +7 -0
  8. package/dist/api/edge_services/v1alpha1/index.gen.js +7 -0
  9. package/dist/api/edge_services/v1alpha1/marshalling.gen.cjs +434 -0
  10. package/dist/api/edge_services/v1alpha1/marshalling.gen.js +434 -0
  11. package/dist/api/iam/v1alpha1/marshalling.gen.cjs +1 -0
  12. package/dist/api/iam/v1alpha1/marshalling.gen.js +1 -0
  13. package/dist/api/iam/v1alpha1/types.gen.d.ts +2 -0
  14. package/dist/api/index.d.ts +65 -35
  15. package/dist/api/inference/v1beta1/api.gen.cjs +306 -0
  16. package/dist/api/inference/v1beta1/api.gen.js +306 -0
  17. package/dist/api/inference/v1beta1/content.gen.cjs +8 -0
  18. package/dist/api/inference/v1beta1/content.gen.js +8 -0
  19. package/dist/api/inference/v1beta1/index.gen.cjs +8 -0
  20. package/dist/api/inference/v1beta1/index.gen.js +8 -0
  21. package/dist/api/inference/v1beta1/marshalling.gen.cjs +273 -0
  22. package/dist/api/inference/v1beta1/marshalling.gen.js +273 -0
  23. package/dist/api/inference/v1beta1/validation-rules.gen.cjs +56 -0
  24. package/dist/api/inference/v1beta1/validation-rules.gen.js +56 -0
  25. package/dist/api/k8s/v1/validation-rules.gen.cjs +65 -0
  26. package/dist/api/k8s/v1/validation-rules.gen.d.ts +62 -0
  27. package/dist/api/k8s/v1/validation-rules.gen.js +66 -1
  28. package/dist/api/mnq/index.gen.cjs +4 -0
  29. package/dist/api/mnq/index.gen.js +4 -0
  30. package/dist/api/qaas/v1alpha1/api.gen.cjs +527 -0
  31. package/dist/api/qaas/v1alpha1/api.gen.js +527 -0
  32. package/dist/api/qaas/v1alpha1/content.gen.cjs +19 -0
  33. package/dist/api/qaas/v1alpha1/content.gen.js +19 -0
  34. package/dist/api/qaas/v1alpha1/index.gen.cjs +10 -0
  35. package/dist/api/qaas/v1alpha1/index.gen.js +10 -0
  36. package/dist/api/qaas/v1alpha1/marshalling.gen.cjs +320 -0
  37. package/dist/api/qaas/v1alpha1/marshalling.gen.js +320 -0
  38. package/dist/api/qaas/v1alpha1/validation-rules.gen.cjs +14 -0
  39. package/dist/api/qaas/v1alpha1/validation-rules.gen.js +14 -0
  40. package/dist/api/tem/index.gen.cjs +4 -0
  41. package/dist/api/tem/index.gen.js +4 -0
  42. package/dist/api/tem/v1alpha1/api.gen.cjs +32 -0
  43. package/dist/api/tem/v1alpha1/api.gen.d.ts +17 -1
  44. package/dist/api/tem/v1alpha1/api.gen.js +33 -1
  45. package/dist/api/tem/v1alpha1/index.gen.d.ts +1 -1
  46. package/dist/api/tem/v1alpha1/marshalling.gen.cjs +36 -0
  47. package/dist/api/tem/v1alpha1/marshalling.gen.d.ts +3 -1
  48. package/dist/api/tem/v1alpha1/marshalling.gen.js +36 -0
  49. package/dist/api/tem/v1alpha1/types.gen.d.ts +51 -0
  50. package/dist/api/tem/v1alpha1/validation-rules.gen.cjs +11 -0
  51. package/dist/api/tem/v1alpha1/validation-rules.gen.d.ts +10 -0
  52. package/dist/api/tem/v1alpha1/validation-rules.gen.js +11 -0
  53. package/dist/api/webhosting/index.gen.cjs +6 -0
  54. package/dist/api/webhosting/index.gen.js +6 -0
  55. package/dist/api/webhosting/v1/api.gen.cjs +620 -0
  56. package/dist/api/webhosting/v1/api.gen.js +620 -0
  57. package/dist/api/webhosting/v1/content.gen.cjs +14 -0
  58. package/dist/api/webhosting/v1/content.gen.js +14 -0
  59. package/dist/api/webhosting/v1/index.gen.cjs +15 -0
  60. package/dist/api/webhosting/v1/index.gen.js +15 -0
  61. package/dist/api/webhosting/v1/marshalling.gen.cjs +391 -0
  62. package/dist/api/webhosting/v1/marshalling.gen.js +391 -0
  63. package/dist/api/webhosting/v1/types.gen.d.ts +5 -0
  64. package/dist/api/webhosting/v1/validation-rules.gen.cjs +82 -0
  65. package/dist/api/webhosting/v1/validation-rules.gen.js +82 -0
  66. package/dist/index.cjs +92 -70
  67. package/dist/index.js +92 -70
  68. package/dist/scw/constants.cjs +1 -1
  69. package/dist/scw/constants.d.ts +2 -2
  70. package/dist/scw/constants.js +1 -1
  71. package/package.json +2 -2
  72. package/dist/api/account/index.d.ts +0 -2
  73. package/dist/api/applesilicon/index.d.ts +0 -1
  74. package/dist/api/baremetal/index.d.ts +0 -1
  75. package/dist/api/billing/index.d.ts +0 -2
  76. package/dist/api/block/index.d.ts +0 -1
  77. package/dist/api/cockpit/index.d.ts +0 -2
  78. package/dist/api/container/index.d.ts +0 -1
  79. package/dist/api/dedibox/index.d.ts +0 -1
  80. package/dist/api/document_db/index.d.ts +0 -1
  81. package/dist/api/domain/index.d.ts +0 -1
  82. package/dist/api/edge_services/index.d.ts +0 -1
  83. package/dist/api/flexibleip/index.d.ts +0 -1
  84. package/dist/api/function/index.d.ts +0 -1
  85. package/dist/api/iam/index.d.ts +0 -1
  86. package/dist/api/instance/index.d.ts +0 -1
  87. package/dist/api/iot/index.d.ts +0 -1
  88. package/dist/api/ipam/index.d.ts +0 -1
  89. package/dist/api/ipfs/index.d.ts +0 -1
  90. package/dist/api/jobs/index.d.ts +0 -1
  91. package/dist/api/k8s/index.d.ts +0 -1
  92. package/dist/api/key_manager/index.d.ts +0 -1
  93. package/dist/api/lb/index.d.ts +0 -1
  94. package/dist/api/llm_inference/index.d.ts +0 -1
  95. package/dist/api/marketplace/index.d.ts +0 -1
  96. package/dist/api/mnq/index.d.ts +0 -1
  97. package/dist/api/rdb/index.d.ts +0 -1
  98. package/dist/api/redis/index.d.ts +0 -1
  99. package/dist/api/registry/index.d.ts +0 -1
  100. package/dist/api/secret/index.d.ts +0 -2
  101. package/dist/api/serverless_sqldb/index.d.ts +0 -1
  102. package/dist/api/tem/index.d.ts +0 -1
  103. package/dist/api/test/index.d.ts +0 -1
  104. package/dist/api/vpc/index.d.ts +0 -2
  105. package/dist/api/vpcgw/index.d.ts +0 -1
  106. package/dist/api/webhosting/index.d.ts +0 -1
  107. /package/dist/api/account/{index.cjs → index.gen.cjs} +0 -0
  108. /package/dist/api/account/{index.js → index.gen.js} +0 -0
  109. /package/dist/api/applesilicon/{index.cjs → index.gen.cjs} +0 -0
  110. /package/dist/api/applesilicon/{index.js → index.gen.js} +0 -0
  111. /package/dist/api/baremetal/{index.cjs → index.gen.cjs} +0 -0
  112. /package/dist/api/baremetal/{index.js → index.gen.js} +0 -0
  113. /package/dist/api/billing/{index.cjs → index.gen.cjs} +0 -0
  114. /package/dist/api/billing/{index.js → index.gen.js} +0 -0
  115. /package/dist/api/block/{index.cjs → index.gen.cjs} +0 -0
  116. /package/dist/api/block/{index.js → index.gen.js} +0 -0
  117. /package/dist/api/cockpit/{index.cjs → index.gen.cjs} +0 -0
  118. /package/dist/api/cockpit/{index.js → index.gen.js} +0 -0
  119. /package/dist/api/container/{index.cjs → index.gen.cjs} +0 -0
  120. /package/dist/api/container/{index.js → index.gen.js} +0 -0
  121. /package/dist/api/dedibox/{index.cjs → index.gen.cjs} +0 -0
  122. /package/dist/api/dedibox/{index.js → index.gen.js} +0 -0
  123. /package/dist/api/document_db/{index.cjs → index.gen.cjs} +0 -0
  124. /package/dist/api/document_db/{index.js → index.gen.js} +0 -0
  125. /package/dist/api/domain/{index.cjs → index.gen.cjs} +0 -0
  126. /package/dist/api/domain/{index.js → index.gen.js} +0 -0
  127. /package/dist/api/{flexibleip/index.cjs → edge_services/index.gen.cjs} +0 -0
  128. /package/dist/api/{flexibleip/index.js → edge_services/index.gen.js} +0 -0
  129. /package/dist/api/{iam/index.cjs → flexibleip/index.gen.cjs} +0 -0
  130. /package/dist/api/{iam/index.js → flexibleip/index.gen.js} +0 -0
  131. /package/dist/api/function/{index.cjs → index.gen.cjs} +0 -0
  132. /package/dist/api/function/{index.js → index.gen.js} +0 -0
  133. /package/dist/api/{ipfs/index.cjs → iam/index.gen.cjs} +0 -0
  134. /package/dist/api/{ipfs/index.js → iam/index.gen.js} +0 -0
  135. /package/dist/api/{llm_inference/index.cjs → inference/index.gen.cjs} +0 -0
  136. /package/dist/api/{llm_inference/index.js → inference/index.gen.js} +0 -0
  137. /package/dist/api/instance/{index.cjs → index.gen.cjs} +0 -0
  138. /package/dist/api/instance/{index.js → index.gen.js} +0 -0
  139. /package/dist/api/iot/{index.cjs → index.gen.cjs} +0 -0
  140. /package/dist/api/iot/{index.js → index.gen.js} +0 -0
  141. /package/dist/api/ipam/{index.cjs → index.gen.cjs} +0 -0
  142. /package/dist/api/ipam/{index.js → index.gen.js} +0 -0
  143. /package/dist/api/{jobs/index.cjs → ipfs/index.gen.cjs} +0 -0
  144. /package/dist/api/{jobs/index.js → ipfs/index.gen.js} +0 -0
  145. /package/dist/api/{key_manager/index.cjs → jobs/index.gen.cjs} +0 -0
  146. /package/dist/api/{key_manager/index.js → jobs/index.gen.js} +0 -0
  147. /package/dist/api/k8s/{index.cjs → index.gen.cjs} +0 -0
  148. /package/dist/api/k8s/{index.js → index.gen.js} +0 -0
  149. /package/dist/api/{serverless_sqldb/index.cjs → key_manager/index.gen.cjs} +0 -0
  150. /package/dist/api/{serverless_sqldb/index.js → key_manager/index.gen.js} +0 -0
  151. /package/dist/api/lb/{index.cjs → index.gen.cjs} +0 -0
  152. /package/dist/api/lb/{index.js → index.gen.js} +0 -0
  153. /package/dist/api/{mnq/index.cjs → llm_inference/index.gen.cjs} +0 -0
  154. /package/dist/api/{mnq/index.js → llm_inference/index.gen.js} +0 -0
  155. /package/dist/api/marketplace/{index.cjs → index.gen.cjs} +0 -0
  156. /package/dist/api/marketplace/{index.js → index.gen.js} +0 -0
  157. /package/dist/api/{tem/index.cjs → qaas/index.gen.cjs} +0 -0
  158. /package/dist/api/{tem/index.js → qaas/index.gen.js} +0 -0
  159. /package/dist/api/rdb/{index.cjs → index.gen.cjs} +0 -0
  160. /package/dist/api/rdb/{index.js → index.gen.js} +0 -0
  161. /package/dist/api/redis/{index.cjs → index.gen.cjs} +0 -0
  162. /package/dist/api/redis/{index.js → index.gen.js} +0 -0
  163. /package/dist/api/registry/{index.cjs → index.gen.cjs} +0 -0
  164. /package/dist/api/registry/{index.js → index.gen.js} +0 -0
  165. /package/dist/api/secret/{index.cjs → index.gen.cjs} +0 -0
  166. /package/dist/api/secret/{index.js → index.gen.js} +0 -0
  167. /package/dist/api/{webhosting/index.cjs → serverless_sqldb/index.gen.cjs} +0 -0
  168. /package/dist/api/{webhosting/index.js → serverless_sqldb/index.gen.js} +0 -0
  169. /package/dist/api/test/{index.cjs → index.gen.cjs} +0 -0
  170. /package/dist/api/test/{index.js → index.gen.js} +0 -0
  171. /package/dist/api/vpc/{index.cjs → index.gen.cjs} +0 -0
  172. /package/dist/api/vpc/{index.js → index.gen.js} +0 -0
  173. /package/dist/api/vpcgw/{index.cjs → index.gen.cjs} +0 -0
  174. /package/dist/api/vpcgw/{index.js → index.gen.js} +0 -0
@@ -0,0 +1,306 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const intervalRetrier = require("../../../internal/async/interval-retrier.cjs");
4
+ const api = require("../../../scw/api.cjs");
5
+ const marshalling = require("../../../helpers/marshalling.cjs");
6
+ require("../../../vendor/base64/index.cjs");
7
+ const resourcePaginator = require("../../../scw/fetch/resource-paginator.cjs");
8
+ const content_gen = require("./content.gen.cjs");
9
+ const marshalling_gen = require("./marshalling.gen.cjs");
10
+ const jsonContentHeaders = {
11
+ "Content-Type": "application/json; charset=utf-8"
12
+ };
13
+ class API extends api.API {
14
+ /** Lists the available regions of the API. */
15
+ static LOCALITIES = ["fr-par"];
16
+ pageOfListDeployments = (request = {}) => this.client.fetch(
17
+ {
18
+ method: "GET",
19
+ path: `/inference/v1beta1/regions/${marshalling.validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/deployments`,
20
+ urlParams: marshalling.urlParams(
21
+ ["name", request.name],
22
+ ["order_by", request.orderBy],
23
+ ["organization_id", request.organizationId],
24
+ ["page", request.page],
25
+ [
26
+ "page_size",
27
+ request.pageSize ?? this.client.settings.defaultPageSize
28
+ ],
29
+ ["project_id", request.projectId],
30
+ ["tags", request.tags]
31
+ )
32
+ },
33
+ marshalling_gen.unmarshalListDeploymentsResponse
34
+ );
35
+ /**
36
+ * List inference deployments. List all your inference deployments.
37
+ *
38
+ * @param request - The request {@link ListDeploymentsRequest}
39
+ * @returns A Promise of ListDeploymentsResponse
40
+ */
41
+ listDeployments = (request = {}) => resourcePaginator.enrichForPagination("deployments", this.pageOfListDeployments, request);
42
+ /**
43
+ * Get a deployment. Get the deployment for the given ID.
44
+ *
45
+ * @param request - The request {@link GetDeploymentRequest}
46
+ * @returns A Promise of Deployment
47
+ */
48
+ getDeployment = (request) => this.client.fetch(
49
+ {
50
+ method: "GET",
51
+ path: `/inference/v1beta1/regions/${marshalling.validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/deployments/${marshalling.validatePathParam("deploymentId", request.deploymentId)}`
52
+ },
53
+ marshalling_gen.unmarshalDeployment
54
+ );
55
+ /**
56
+ * Waits for {@link Deployment} to be in a final state.
57
+ *
58
+ * @param request - The request {@link GetDeploymentRequest}
59
+ * @param options - The waiting options
60
+ * @returns A Promise of Deployment
61
+ */
62
+ waitForDeployment = (request, options) => intervalRetrier.waitForResource(
63
+ options?.stop ?? ((res) => Promise.resolve(!content_gen.DEPLOYMENT_TRANSIENT_STATUSES.includes(res.status))),
64
+ this.getDeployment,
65
+ request,
66
+ options
67
+ );
68
+ /**
69
+ * Create a deployment. Create a new inference deployment related to a
70
+ * specific model.
71
+ *
72
+ * @param request - The request {@link CreateDeploymentRequest}
73
+ * @returns A Promise of Deployment
74
+ */
75
+ createDeployment = (request) => this.client.fetch(
76
+ {
77
+ body: JSON.stringify(
78
+ marshalling_gen.marshalCreateDeploymentRequest(request, this.client.settings)
79
+ ),
80
+ headers: jsonContentHeaders,
81
+ method: "POST",
82
+ path: `/inference/v1beta1/regions/${marshalling.validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/deployments`
83
+ },
84
+ marshalling_gen.unmarshalDeployment
85
+ );
86
+ /**
87
+ * Update a deployment. Update an existing inference deployment.
88
+ *
89
+ * @param request - The request {@link UpdateDeploymentRequest}
90
+ * @returns A Promise of Deployment
91
+ */
92
+ updateDeployment = (request) => this.client.fetch(
93
+ {
94
+ body: JSON.stringify(
95
+ marshalling_gen.marshalUpdateDeploymentRequest(request, this.client.settings)
96
+ ),
97
+ headers: jsonContentHeaders,
98
+ method: "PATCH",
99
+ path: `/inference/v1beta1/regions/${marshalling.validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/deployments/${marshalling.validatePathParam("deploymentId", request.deploymentId)}`
100
+ },
101
+ marshalling_gen.unmarshalDeployment
102
+ );
103
+ /**
104
+ * Delete a deployment. Delete an existing inference deployment.
105
+ *
106
+ * @param request - The request {@link DeleteDeploymentRequest}
107
+ * @returns A Promise of Deployment
108
+ */
109
+ deleteDeployment = (request) => this.client.fetch(
110
+ {
111
+ method: "DELETE",
112
+ path: `/inference/v1beta1/regions/${marshalling.validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/deployments/${marshalling.validatePathParam("deploymentId", request.deploymentId)}`
113
+ },
114
+ marshalling_gen.unmarshalDeployment
115
+ );
116
+ /**
117
+ * Get the CA certificate. Get the CA certificate used for the deployment of
118
+ * private endpoints. The CA certificate will be returned as a PEM file.
119
+ *
120
+ * @param request - The request {@link GetDeploymentCertificateRequest}
121
+ * @returns A Promise of Blob
122
+ */
123
+ getDeploymentCertificate = (request) => this.client.fetch({
124
+ method: "GET",
125
+ path: `/inference/v1beta1/regions/${marshalling.validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/deployments/${marshalling.validatePathParam("deploymentId", request.deploymentId)}/certificate`,
126
+ urlParams: marshalling.urlParams(["dl", 1]),
127
+ responseType: "blob"
128
+ });
129
+ /**
130
+ * Create an endpoint. Create a new Endpoint related to a specific deployment.
131
+ *
132
+ * @param request - The request {@link CreateEndpointRequest}
133
+ * @returns A Promise of Endpoint
134
+ */
135
+ createEndpoint = (request) => this.client.fetch(
136
+ {
137
+ body: JSON.stringify(
138
+ marshalling_gen.marshalCreateEndpointRequest(request, this.client.settings)
139
+ ),
140
+ headers: jsonContentHeaders,
141
+ method: "POST",
142
+ path: `/inference/v1beta1/regions/${marshalling.validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/endpoints`
143
+ },
144
+ marshalling_gen.unmarshalEndpoint
145
+ );
146
+ /**
147
+ * Update an endpoint. Update an existing Endpoint.
148
+ *
149
+ * @param request - The request {@link UpdateEndpointRequest}
150
+ * @returns A Promise of Endpoint
151
+ */
152
+ updateEndpoint = (request) => this.client.fetch(
153
+ {
154
+ body: JSON.stringify(
155
+ marshalling_gen.marshalUpdateEndpointRequest(request, this.client.settings)
156
+ ),
157
+ headers: jsonContentHeaders,
158
+ method: "PATCH",
159
+ path: `/inference/v1beta1/regions/${marshalling.validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/endpoints/${marshalling.validatePathParam("endpointId", request.endpointId)}`
160
+ },
161
+ marshalling_gen.unmarshalEndpoint
162
+ );
163
+ /**
164
+ * Delete an endpoint. Delete an existing Endpoint.
165
+ *
166
+ * @param request - The request {@link DeleteEndpointRequest}
167
+ */
168
+ deleteEndpoint = (request) => this.client.fetch({
169
+ method: "DELETE",
170
+ path: `/inference/v1beta1/regions/${marshalling.validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/endpoints/${marshalling.validatePathParam("endpointId", request.endpointId)}`
171
+ });
172
+ pageOfListDeploymentACLRules = (request) => this.client.fetch(
173
+ {
174
+ method: "GET",
175
+ path: `/inference/v1beta1/regions/${marshalling.validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/deployments/${marshalling.validatePathParam("deploymentId", request.deploymentId)}/acls`,
176
+ urlParams: marshalling.urlParams(
177
+ ["page", request.page],
178
+ [
179
+ "page_size",
180
+ request.pageSize ?? this.client.settings.defaultPageSize
181
+ ]
182
+ )
183
+ },
184
+ marshalling_gen.unmarshalListDeploymentACLRulesResponse
185
+ );
186
+ /**
187
+ * List your ACLs. List ACLs for a specific deployment.
188
+ *
189
+ * @param request - The request {@link ListDeploymentACLRulesRequest}
190
+ * @returns A Promise of ListDeploymentACLRulesResponse
191
+ */
192
+ listDeploymentACLRules = (request) => resourcePaginator.enrichForPagination("rules", this.pageOfListDeploymentACLRules, request);
193
+ /**
194
+ * Add new ACLs. Add new ACL rules for a specific deployment.
195
+ *
196
+ * @param request - The request {@link AddDeploymentACLRulesRequest}
197
+ * @returns A Promise of AddDeploymentACLRulesResponse
198
+ */
199
+ addDeploymentACLRules = (request) => this.client.fetch(
200
+ {
201
+ body: JSON.stringify(
202
+ marshalling_gen.marshalAddDeploymentACLRulesRequest(request, this.client.settings)
203
+ ),
204
+ headers: jsonContentHeaders,
205
+ method: "POST",
206
+ path: `/inference/v1beta1/regions/${marshalling.validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/deployments/${marshalling.validatePathParam("deploymentId", request.deploymentId)}/acls`
207
+ },
208
+ marshalling_gen.unmarshalAddDeploymentACLRulesResponse
209
+ );
210
+ /**
211
+ * Set new ACL. Set new ACL rules for a specific deployment.
212
+ *
213
+ * @param request - The request {@link SetDeploymentACLRulesRequest}
214
+ * @returns A Promise of SetDeploymentACLRulesResponse
215
+ */
216
+ setDeploymentACLRules = (request) => this.client.fetch(
217
+ {
218
+ body: JSON.stringify(
219
+ marshalling_gen.marshalSetDeploymentACLRulesRequest(request, this.client.settings)
220
+ ),
221
+ headers: jsonContentHeaders,
222
+ method: "PUT",
223
+ path: `/inference/v1beta1/regions/${marshalling.validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/deployments/${marshalling.validatePathParam("deploymentId", request.deploymentId)}/acls`
224
+ },
225
+ marshalling_gen.unmarshalSetDeploymentACLRulesResponse
226
+ );
227
+ /**
228
+ * Delete an exising ACL.
229
+ *
230
+ * @param request - The request {@link DeleteDeploymentACLRuleRequest}
231
+ */
232
+ deleteDeploymentACLRule = (request) => this.client.fetch({
233
+ method: "DELETE",
234
+ path: `/inference/v1beta1/regions/${marshalling.validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/acls/${marshalling.validatePathParam("aclId", request.aclId)}`
235
+ });
236
+ pageOfListModels = (request = {}) => this.client.fetch(
237
+ {
238
+ method: "GET",
239
+ path: `/inference/v1beta1/regions/${marshalling.validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/models`,
240
+ urlParams: marshalling.urlParams(
241
+ ["name", request.name],
242
+ ["order_by", request.orderBy],
243
+ ["page", request.page],
244
+ [
245
+ "page_size",
246
+ request.pageSize ?? this.client.settings.defaultPageSize
247
+ ],
248
+ ["project_id", request.projectId],
249
+ ["tags", request.tags]
250
+ )
251
+ },
252
+ marshalling_gen.unmarshalListModelsResponse
253
+ );
254
+ /**
255
+ * List models. List all available models.
256
+ *
257
+ * @param request - The request {@link ListModelsRequest}
258
+ * @returns A Promise of ListModelsResponse
259
+ */
260
+ listModels = (request = {}) => resourcePaginator.enrichForPagination("models", this.pageOfListModels, request);
261
+ /**
262
+ * Get a model. Get the model for the given ID.
263
+ *
264
+ * @param request - The request {@link GetModelRequest}
265
+ * @returns A Promise of Model
266
+ */
267
+ getModel = (request) => this.client.fetch(
268
+ {
269
+ method: "GET",
270
+ path: `/inference/v1beta1/regions/${marshalling.validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/models/${marshalling.validatePathParam("modelId", request.modelId)}`
271
+ },
272
+ marshalling_gen.unmarshalModel
273
+ );
274
+ getModelEula = (request) => this.client.fetch(
275
+ {
276
+ method: "GET",
277
+ path: `/inference/v1beta1/regions/${marshalling.validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/models/${marshalling.validatePathParam("modelId", request.modelId)}/eula`
278
+ },
279
+ marshalling_gen.unmarshalEula
280
+ );
281
+ pageOfListNodeTypes = (request) => this.client.fetch(
282
+ {
283
+ method: "GET",
284
+ path: `/inference/v1beta1/regions/${marshalling.validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/node-types`,
285
+ urlParams: marshalling.urlParams(
286
+ ["include_disabled_types", request.includeDisabledTypes],
287
+ ["page", request.page],
288
+ [
289
+ "page_size",
290
+ request.pageSize ?? this.client.settings.defaultPageSize
291
+ ]
292
+ )
293
+ },
294
+ marshalling_gen.unmarshalListNodeTypesResponse
295
+ );
296
+ /**
297
+ * List available node types. List all available node types. By default, the
298
+ * node types returned in the list are ordered by creation date in ascending
299
+ * order, though this can be modified via the `order_by` field.
300
+ *
301
+ * @param request - The request {@link ListNodeTypesRequest}
302
+ * @returns A Promise of ListNodeTypesResponse
303
+ */
304
+ listNodeTypes = (request) => resourcePaginator.enrichForPagination("nodeTypes", this.pageOfListNodeTypes, request);
305
+ }
306
+ exports.API = API;
@@ -0,0 +1,306 @@
1
+ import { waitForResource } from "../../../internal/async/interval-retrier.js";
2
+ import { API as API$1 } from "../../../scw/api.js";
3
+ import { validatePathParam, urlParams } from "../../../helpers/marshalling.js";
4
+ import "../../../vendor/base64/index.js";
5
+ import { enrichForPagination } from "../../../scw/fetch/resource-paginator.js";
6
+ import { DEPLOYMENT_TRANSIENT_STATUSES } from "./content.gen.js";
7
+ import { unmarshalListDeploymentsResponse, unmarshalDeployment, marshalCreateDeploymentRequest, marshalUpdateDeploymentRequest, marshalCreateEndpointRequest, unmarshalEndpoint, marshalUpdateEndpointRequest, unmarshalListDeploymentACLRulesResponse, marshalAddDeploymentACLRulesRequest, unmarshalAddDeploymentACLRulesResponse, marshalSetDeploymentACLRulesRequest, unmarshalSetDeploymentACLRulesResponse, unmarshalListModelsResponse, unmarshalModel, unmarshalEula, unmarshalListNodeTypesResponse } from "./marshalling.gen.js";
8
+ const jsonContentHeaders = {
9
+ "Content-Type": "application/json; charset=utf-8"
10
+ };
11
+ class API extends API$1 {
12
+ /** Lists the available regions of the API. */
13
+ static LOCALITIES = ["fr-par"];
14
+ pageOfListDeployments = (request = {}) => this.client.fetch(
15
+ {
16
+ method: "GET",
17
+ path: `/inference/v1beta1/regions/${validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/deployments`,
18
+ urlParams: urlParams(
19
+ ["name", request.name],
20
+ ["order_by", request.orderBy],
21
+ ["organization_id", request.organizationId],
22
+ ["page", request.page],
23
+ [
24
+ "page_size",
25
+ request.pageSize ?? this.client.settings.defaultPageSize
26
+ ],
27
+ ["project_id", request.projectId],
28
+ ["tags", request.tags]
29
+ )
30
+ },
31
+ unmarshalListDeploymentsResponse
32
+ );
33
+ /**
34
+ * List inference deployments. List all your inference deployments.
35
+ *
36
+ * @param request - The request {@link ListDeploymentsRequest}
37
+ * @returns A Promise of ListDeploymentsResponse
38
+ */
39
+ listDeployments = (request = {}) => enrichForPagination("deployments", this.pageOfListDeployments, request);
40
+ /**
41
+ * Get a deployment. Get the deployment for the given ID.
42
+ *
43
+ * @param request - The request {@link GetDeploymentRequest}
44
+ * @returns A Promise of Deployment
45
+ */
46
+ getDeployment = (request) => this.client.fetch(
47
+ {
48
+ method: "GET",
49
+ path: `/inference/v1beta1/regions/${validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/deployments/${validatePathParam("deploymentId", request.deploymentId)}`
50
+ },
51
+ unmarshalDeployment
52
+ );
53
+ /**
54
+ * Waits for {@link Deployment} to be in a final state.
55
+ *
56
+ * @param request - The request {@link GetDeploymentRequest}
57
+ * @param options - The waiting options
58
+ * @returns A Promise of Deployment
59
+ */
60
+ waitForDeployment = (request, options) => waitForResource(
61
+ options?.stop ?? ((res) => Promise.resolve(!DEPLOYMENT_TRANSIENT_STATUSES.includes(res.status))),
62
+ this.getDeployment,
63
+ request,
64
+ options
65
+ );
66
+ /**
67
+ * Create a deployment. Create a new inference deployment related to a
68
+ * specific model.
69
+ *
70
+ * @param request - The request {@link CreateDeploymentRequest}
71
+ * @returns A Promise of Deployment
72
+ */
73
+ createDeployment = (request) => this.client.fetch(
74
+ {
75
+ body: JSON.stringify(
76
+ marshalCreateDeploymentRequest(request, this.client.settings)
77
+ ),
78
+ headers: jsonContentHeaders,
79
+ method: "POST",
80
+ path: `/inference/v1beta1/regions/${validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/deployments`
81
+ },
82
+ unmarshalDeployment
83
+ );
84
+ /**
85
+ * Update a deployment. Update an existing inference deployment.
86
+ *
87
+ * @param request - The request {@link UpdateDeploymentRequest}
88
+ * @returns A Promise of Deployment
89
+ */
90
+ updateDeployment = (request) => this.client.fetch(
91
+ {
92
+ body: JSON.stringify(
93
+ marshalUpdateDeploymentRequest(request, this.client.settings)
94
+ ),
95
+ headers: jsonContentHeaders,
96
+ method: "PATCH",
97
+ path: `/inference/v1beta1/regions/${validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/deployments/${validatePathParam("deploymentId", request.deploymentId)}`
98
+ },
99
+ unmarshalDeployment
100
+ );
101
+ /**
102
+ * Delete a deployment. Delete an existing inference deployment.
103
+ *
104
+ * @param request - The request {@link DeleteDeploymentRequest}
105
+ * @returns A Promise of Deployment
106
+ */
107
+ deleteDeployment = (request) => this.client.fetch(
108
+ {
109
+ method: "DELETE",
110
+ path: `/inference/v1beta1/regions/${validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/deployments/${validatePathParam("deploymentId", request.deploymentId)}`
111
+ },
112
+ unmarshalDeployment
113
+ );
114
+ /**
115
+ * Get the CA certificate. Get the CA certificate used for the deployment of
116
+ * private endpoints. The CA certificate will be returned as a PEM file.
117
+ *
118
+ * @param request - The request {@link GetDeploymentCertificateRequest}
119
+ * @returns A Promise of Blob
120
+ */
121
+ getDeploymentCertificate = (request) => this.client.fetch({
122
+ method: "GET",
123
+ path: `/inference/v1beta1/regions/${validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/deployments/${validatePathParam("deploymentId", request.deploymentId)}/certificate`,
124
+ urlParams: urlParams(["dl", 1]),
125
+ responseType: "blob"
126
+ });
127
+ /**
128
+ * Create an endpoint. Create a new Endpoint related to a specific deployment.
129
+ *
130
+ * @param request - The request {@link CreateEndpointRequest}
131
+ * @returns A Promise of Endpoint
132
+ */
133
+ createEndpoint = (request) => this.client.fetch(
134
+ {
135
+ body: JSON.stringify(
136
+ marshalCreateEndpointRequest(request, this.client.settings)
137
+ ),
138
+ headers: jsonContentHeaders,
139
+ method: "POST",
140
+ path: `/inference/v1beta1/regions/${validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/endpoints`
141
+ },
142
+ unmarshalEndpoint
143
+ );
144
+ /**
145
+ * Update an endpoint. Update an existing Endpoint.
146
+ *
147
+ * @param request - The request {@link UpdateEndpointRequest}
148
+ * @returns A Promise of Endpoint
149
+ */
150
+ updateEndpoint = (request) => this.client.fetch(
151
+ {
152
+ body: JSON.stringify(
153
+ marshalUpdateEndpointRequest(request, this.client.settings)
154
+ ),
155
+ headers: jsonContentHeaders,
156
+ method: "PATCH",
157
+ path: `/inference/v1beta1/regions/${validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/endpoints/${validatePathParam("endpointId", request.endpointId)}`
158
+ },
159
+ unmarshalEndpoint
160
+ );
161
+ /**
162
+ * Delete an endpoint. Delete an existing Endpoint.
163
+ *
164
+ * @param request - The request {@link DeleteEndpointRequest}
165
+ */
166
+ deleteEndpoint = (request) => this.client.fetch({
167
+ method: "DELETE",
168
+ path: `/inference/v1beta1/regions/${validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/endpoints/${validatePathParam("endpointId", request.endpointId)}`
169
+ });
170
+ pageOfListDeploymentACLRules = (request) => this.client.fetch(
171
+ {
172
+ method: "GET",
173
+ path: `/inference/v1beta1/regions/${validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/deployments/${validatePathParam("deploymentId", request.deploymentId)}/acls`,
174
+ urlParams: urlParams(
175
+ ["page", request.page],
176
+ [
177
+ "page_size",
178
+ request.pageSize ?? this.client.settings.defaultPageSize
179
+ ]
180
+ )
181
+ },
182
+ unmarshalListDeploymentACLRulesResponse
183
+ );
184
+ /**
185
+ * List your ACLs. List ACLs for a specific deployment.
186
+ *
187
+ * @param request - The request {@link ListDeploymentACLRulesRequest}
188
+ * @returns A Promise of ListDeploymentACLRulesResponse
189
+ */
190
+ listDeploymentACLRules = (request) => enrichForPagination("rules", this.pageOfListDeploymentACLRules, request);
191
+ /**
192
+ * Add new ACLs. Add new ACL rules for a specific deployment.
193
+ *
194
+ * @param request - The request {@link AddDeploymentACLRulesRequest}
195
+ * @returns A Promise of AddDeploymentACLRulesResponse
196
+ */
197
+ addDeploymentACLRules = (request) => this.client.fetch(
198
+ {
199
+ body: JSON.stringify(
200
+ marshalAddDeploymentACLRulesRequest(request, this.client.settings)
201
+ ),
202
+ headers: jsonContentHeaders,
203
+ method: "POST",
204
+ path: `/inference/v1beta1/regions/${validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/deployments/${validatePathParam("deploymentId", request.deploymentId)}/acls`
205
+ },
206
+ unmarshalAddDeploymentACLRulesResponse
207
+ );
208
+ /**
209
+ * Set new ACL. Set new ACL rules for a specific deployment.
210
+ *
211
+ * @param request - The request {@link SetDeploymentACLRulesRequest}
212
+ * @returns A Promise of SetDeploymentACLRulesResponse
213
+ */
214
+ setDeploymentACLRules = (request) => this.client.fetch(
215
+ {
216
+ body: JSON.stringify(
217
+ marshalSetDeploymentACLRulesRequest(request, this.client.settings)
218
+ ),
219
+ headers: jsonContentHeaders,
220
+ method: "PUT",
221
+ path: `/inference/v1beta1/regions/${validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/deployments/${validatePathParam("deploymentId", request.deploymentId)}/acls`
222
+ },
223
+ unmarshalSetDeploymentACLRulesResponse
224
+ );
225
+ /**
226
+ * Delete an exising ACL.
227
+ *
228
+ * @param request - The request {@link DeleteDeploymentACLRuleRequest}
229
+ */
230
+ deleteDeploymentACLRule = (request) => this.client.fetch({
231
+ method: "DELETE",
232
+ path: `/inference/v1beta1/regions/${validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/acls/${validatePathParam("aclId", request.aclId)}`
233
+ });
234
+ pageOfListModels = (request = {}) => this.client.fetch(
235
+ {
236
+ method: "GET",
237
+ path: `/inference/v1beta1/regions/${validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/models`,
238
+ urlParams: urlParams(
239
+ ["name", request.name],
240
+ ["order_by", request.orderBy],
241
+ ["page", request.page],
242
+ [
243
+ "page_size",
244
+ request.pageSize ?? this.client.settings.defaultPageSize
245
+ ],
246
+ ["project_id", request.projectId],
247
+ ["tags", request.tags]
248
+ )
249
+ },
250
+ unmarshalListModelsResponse
251
+ );
252
+ /**
253
+ * List models. List all available models.
254
+ *
255
+ * @param request - The request {@link ListModelsRequest}
256
+ * @returns A Promise of ListModelsResponse
257
+ */
258
+ listModels = (request = {}) => enrichForPagination("models", this.pageOfListModels, request);
259
+ /**
260
+ * Get a model. Get the model for the given ID.
261
+ *
262
+ * @param request - The request {@link GetModelRequest}
263
+ * @returns A Promise of Model
264
+ */
265
+ getModel = (request) => this.client.fetch(
266
+ {
267
+ method: "GET",
268
+ path: `/inference/v1beta1/regions/${validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/models/${validatePathParam("modelId", request.modelId)}`
269
+ },
270
+ unmarshalModel
271
+ );
272
+ getModelEula = (request) => this.client.fetch(
273
+ {
274
+ method: "GET",
275
+ path: `/inference/v1beta1/regions/${validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/models/${validatePathParam("modelId", request.modelId)}/eula`
276
+ },
277
+ unmarshalEula
278
+ );
279
+ pageOfListNodeTypes = (request) => this.client.fetch(
280
+ {
281
+ method: "GET",
282
+ path: `/inference/v1beta1/regions/${validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/node-types`,
283
+ urlParams: urlParams(
284
+ ["include_disabled_types", request.includeDisabledTypes],
285
+ ["page", request.page],
286
+ [
287
+ "page_size",
288
+ request.pageSize ?? this.client.settings.defaultPageSize
289
+ ]
290
+ )
291
+ },
292
+ unmarshalListNodeTypesResponse
293
+ );
294
+ /**
295
+ * List available node types. List all available node types. By default, the
296
+ * node types returned in the list are ordered by creation date in ascending
297
+ * order, though this can be modified via the `order_by` field.
298
+ *
299
+ * @param request - The request {@link ListNodeTypesRequest}
300
+ * @returns A Promise of ListNodeTypesResponse
301
+ */
302
+ listNodeTypes = (request) => enrichForPagination("nodeTypes", this.pageOfListNodeTypes, request);
303
+ }
304
+ export {
305
+ API
306
+ };
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const DEPLOYMENT_TRANSIENT_STATUSES = [
4
+ "creating",
5
+ "deploying",
6
+ "deleting"
7
+ ];
8
+ exports.DEPLOYMENT_TRANSIENT_STATUSES = DEPLOYMENT_TRANSIENT_STATUSES;
@@ -0,0 +1,8 @@
1
+ const DEPLOYMENT_TRANSIENT_STATUSES = [
2
+ "creating",
3
+ "deploying",
4
+ "deleting"
5
+ ];
6
+ export {
7
+ DEPLOYMENT_TRANSIENT_STATUSES
8
+ };
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const api_gen = require("./api.gen.cjs");
4
+ const content_gen = require("./content.gen.cjs");
5
+ const validationRules_gen = require("./validation-rules.gen.cjs");
6
+ exports.API = api_gen.API;
7
+ exports.DEPLOYMENT_TRANSIENT_STATUSES = content_gen.DEPLOYMENT_TRANSIENT_STATUSES;
8
+ exports.ValidationRules = validationRules_gen;
@@ -0,0 +1,8 @@
1
+ import { API } from "./api.gen.js";
2
+ import { DEPLOYMENT_TRANSIENT_STATUSES } from "./content.gen.js";
3
+ import * as validationRules_gen from "./validation-rules.gen.js";
4
+ export {
5
+ API,
6
+ DEPLOYMENT_TRANSIENT_STATUSES,
7
+ validationRules_gen as ValidationRules
8
+ };