@scaleway/sdk 2.45.0 → 2.46.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.
- package/dist/api/account/index.gen.d.ts +6 -0
- package/dist/api/applesilicon/index.gen.d.ts +5 -0
- package/dist/api/baremetal/index.gen.d.ts +5 -0
- package/dist/api/baremetal/v1/index.gen.d.ts +1 -1
- package/dist/api/baremetal/v1/marshalling.gen.cjs +61 -1
- package/dist/api/baremetal/v1/marshalling.gen.js +61 -1
- package/dist/api/baremetal/v1/types.gen.d.ts +120 -1
- package/dist/api/billing/index.gen.d.ts +6 -0
- package/dist/api/block/index.gen.d.ts +5 -0
- package/dist/api/cockpit/index.gen.d.ts +6 -0
- package/dist/api/cockpit/v1/types.gen.d.ts +1 -1
- package/dist/api/container/index.gen.d.ts +5 -0
- package/dist/api/container/v1beta1/api.gen.cjs +0 -23
- package/dist/api/container/v1beta1/api.gen.d.ts +1 -9
- package/dist/api/container/v1beta1/api.gen.js +1 -24
- package/dist/api/container/v1beta1/index.gen.d.ts +1 -1
- package/dist/api/container/v1beta1/types.gen.d.ts +0 -12
- package/dist/api/dedibox/index.gen.d.ts +5 -0
- package/dist/api/document_db/index.gen.d.ts +5 -0
- package/dist/api/domain/index.gen.d.ts +5 -0
- package/dist/api/edge_services/index.gen.d.ts +5 -0
- package/dist/api/flexibleip/index.gen.d.ts +5 -0
- package/dist/api/function/index.gen.d.ts +5 -0
- package/dist/api/function/v1beta1/api.gen.cjs +0 -23
- package/dist/api/function/v1beta1/api.gen.d.ts +1 -9
- package/dist/api/function/v1beta1/api.gen.js +1 -24
- package/dist/api/function/v1beta1/index.gen.d.ts +1 -1
- package/dist/api/function/v1beta1/types.gen.d.ts +0 -12
- package/dist/api/iam/index.gen.d.ts +5 -0
- package/dist/api/iam/v1alpha1/api.gen.cjs +1 -1
- package/dist/api/iam/v1alpha1/api.gen.d.ts +1 -1
- package/dist/api/iam/v1alpha1/api.gen.js +1 -1
- package/dist/api/iam/v1alpha1/index.gen.d.ts +1 -1
- package/dist/api/iam/v1alpha1/marshalling.gen.cjs +16 -3
- package/dist/api/iam/v1alpha1/marshalling.gen.js +16 -3
- package/dist/api/iam/v1alpha1/types.gen.d.ts +25 -3
- package/dist/api/iam/v1alpha1/validation-rules.gen.cjs +12 -0
- package/dist/api/iam/v1alpha1/validation-rules.gen.d.ts +11 -0
- package/dist/api/iam/v1alpha1/validation-rules.gen.js +12 -0
- package/dist/api/index.gen.d.ts +43 -0
- package/dist/api/inference/index.gen.d.ts +5 -0
- package/dist/api/instance/index.gen.d.ts +5 -0
- package/dist/api/instance/v1/marshalling.gen.cjs +1 -0
- package/dist/api/instance/v1/marshalling.gen.js +1 -0
- package/dist/api/instance/v1/types.gen.d.ts +22 -8
- package/dist/api/instance/v1/types.private.gen.d.ts +2 -2
- package/dist/api/iot/index.gen.d.ts +5 -0
- package/dist/api/ipam/index.gen.d.ts +5 -0
- package/dist/api/ipam/v1/api.gen.cjs +67 -2
- package/dist/api/ipam/v1/api.gen.d.ts +38 -3
- package/dist/api/ipam/v1/api.gen.js +68 -3
- package/dist/api/ipam/v1/index.gen.d.ts +1 -1
- package/dist/api/ipam/v1/marshalling.gen.cjs +18 -0
- package/dist/api/ipam/v1/marshalling.gen.d.ts +4 -1
- package/dist/api/ipam/v1/marshalling.gen.js +18 -0
- package/dist/api/ipam/v1/types.gen.d.ts +59 -5
- package/dist/api/ipfs/index.gen.d.ts +5 -0
- package/dist/api/jobs/index.gen.d.ts +5 -0
- package/dist/api/k8s/index.gen.d.ts +5 -0
- package/dist/api/k8s/v1/api.gen.cjs +17 -0
- package/dist/api/k8s/v1/api.gen.d.ts +10 -1
- package/dist/api/k8s/v1/api.gen.js +17 -0
- package/dist/api/k8s/v1/index.gen.d.ts +1 -1
- package/dist/api/k8s/v1/types.gen.d.ts +13 -0
- package/dist/api/key_manager/index.gen.d.ts +5 -0
- package/dist/api/key_manager/v1alpha1/api.gen.cjs +31 -0
- package/dist/api/key_manager/v1alpha1/api.gen.d.ts +17 -1
- package/dist/api/key_manager/v1alpha1/api.gen.js +32 -1
- package/dist/api/key_manager/v1alpha1/index.gen.d.ts +1 -1
- package/dist/api/key_manager/v1alpha1/marshalling.gen.cjs +7 -0
- package/dist/api/key_manager/v1alpha1/marshalling.gen.d.ts +2 -1
- package/dist/api/key_manager/v1alpha1/marshalling.gen.js +7 -0
- package/dist/api/key_manager/v1alpha1/types.gen.d.ts +33 -0
- package/dist/api/lb/index.gen.d.ts +5 -0
- package/dist/api/llm_inference/index.gen.d.ts +5 -0
- package/dist/api/marketplace/index.gen.d.ts +5 -0
- package/dist/api/mnq/index.gen.d.ts +5 -0
- package/dist/api/qaas/index.gen.d.ts +5 -0
- package/dist/api/qaas/v1alpha1/api.gen.d.ts +256 -0
- package/dist/api/qaas/v1alpha1/content.gen.d.ts +7 -0
- package/dist/api/qaas/v1alpha1/index.gen.d.ts +4 -0
- package/dist/api/qaas/v1alpha1/marshalling.gen.d.ts +22 -0
- package/dist/api/qaas/v1alpha1/types.gen.d.ts +470 -0
- package/dist/api/qaas/v1alpha1/validation-rules.gen.d.ts +10 -0
- package/dist/api/rdb/index.gen.d.ts +5 -0
- package/dist/api/redis/index.gen.d.ts +5 -0
- package/dist/api/registry/index.gen.d.ts +5 -0
- package/dist/api/secret/index.gen.d.ts +6 -0
- package/dist/api/serverless_sqldb/index.gen.d.ts +5 -0
- package/dist/api/tem/index.gen.d.ts +5 -0
- package/dist/api/tem/v1alpha1/content.gen.cjs +4 -1
- package/dist/api/tem/v1alpha1/content.gen.js +4 -1
- package/dist/api/tem/v1alpha1/types.gen.d.ts +1 -1
- package/dist/api/test/index.gen.d.ts +5 -0
- package/dist/api/vpc/index.gen.d.ts +6 -0
- package/dist/api/vpc/v2/marshalling.gen.cjs +1 -0
- package/dist/api/vpc/v2/marshalling.gen.js +1 -0
- package/dist/api/vpc/v2/types.gen.d.ts +3 -0
- package/dist/api/vpcgw/index.gen.d.ts +5 -0
- package/dist/api/webhosting/index.gen.d.ts +6 -0
- package/dist/api/webhosting/v1/api.gen.d.ts +326 -0
- package/dist/api/webhosting/v1/content.gen.d.ts +5 -0
- package/dist/api/webhosting/v1/index.gen.d.ts +4 -0
- package/dist/api/webhosting/v1/marshalling.gen.d.ts +29 -0
- package/dist/api/webhosting/v1/types.gen.d.ts +693 -0
- package/dist/api/webhosting/v1/validation-rules.gen.d.ts +72 -0
- package/dist/scw/constants.cjs +1 -1
- package/dist/scw/constants.d.ts +2 -2
- package/dist/scw/constants.js +1 -1
- package/package.json +2 -2
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { API as ParentAPI } from '../../../bridge';
|
|
2
2
|
import type { Region } from '../../../bridge';
|
|
3
|
-
import type { BookIPRequest, GetIPRequest, IP, ListIPsRequest, ListIPsResponse, ReleaseIPRequest, ReleaseIPSetRequest, UpdateIPRequest } from './types.gen';
|
|
3
|
+
import type { AttachIPRequest, BookIPRequest, DetachIPRequest, GetIPRequest, IP, ListIPsRequest, ListIPsResponse, MoveIPRequest, ReleaseIPRequest, ReleaseIPSetRequest, UpdateIPRequest } from './types.gen';
|
|
4
4
|
/**
|
|
5
5
|
* IPAM API.
|
|
6
6
|
*
|
|
@@ -11,8 +11,8 @@ export declare class API extends ParentAPI {
|
|
|
11
11
|
/** Lists the available regions of the API. */
|
|
12
12
|
static readonly LOCALITIES: Region[];
|
|
13
13
|
/**
|
|
14
|
-
*
|
|
15
|
-
* only be
|
|
14
|
+
* Reserve a new IP. Reserve a new IP from the specified source. Currently IPs
|
|
15
|
+
* can only be reserved from a Private Network.
|
|
16
16
|
*
|
|
17
17
|
* @param request - The request {@link BookIPRequest}
|
|
18
18
|
* @returns A Promise of IP
|
|
@@ -55,4 +55,39 @@ export declare class API extends ParentAPI {
|
|
|
55
55
|
all: () => Promise<IP[]>;
|
|
56
56
|
[Symbol.asyncIterator]: () => AsyncGenerator<IP[], void, void>;
|
|
57
57
|
};
|
|
58
|
+
/**
|
|
59
|
+
* Attach IP to custom resource. Attach an existing reserved IP from a Private
|
|
60
|
+
* Network subnet to a custom, named resource via its MAC address. An example
|
|
61
|
+
* of a custom resource is a virtual machine hosted on an Elastic Metal
|
|
62
|
+
* server. Do not use this method for attaching IP addresses to standard
|
|
63
|
+
* Scaleway resources as it will fail - see the relevant product API for an
|
|
64
|
+
* equivalent method.
|
|
65
|
+
*
|
|
66
|
+
* @param request - The request {@link AttachIPRequest}
|
|
67
|
+
* @returns A Promise of IP
|
|
68
|
+
*/
|
|
69
|
+
attachIP: (request: Readonly<AttachIPRequest>) => Promise<IP>;
|
|
70
|
+
/**
|
|
71
|
+
* Detach IP from a custom resource. Detach a private IP from a custom
|
|
72
|
+
* resource. An example of a custom resource is a virtual machine hosted on an
|
|
73
|
+
* Elastic Metal server. Do not use this method for detaching IP addresses
|
|
74
|
+
* from standard Scaleway resources (e.g. Instances, Load Balancers) as it
|
|
75
|
+
* will fail - see the relevant product API for an equivalent method.
|
|
76
|
+
*
|
|
77
|
+
* @param request - The request {@link DetachIPRequest}
|
|
78
|
+
* @returns A Promise of IP
|
|
79
|
+
*/
|
|
80
|
+
detachIP: (request: Readonly<DetachIPRequest>) => Promise<IP>;
|
|
81
|
+
/**
|
|
82
|
+
* Move IP to a custom resource. Move an existing reserved private IP from one
|
|
83
|
+
* custom resource (e.g. a virtual machine hosted on an Elastic Metal server)
|
|
84
|
+
* to another custom resource. This will detach it from the first resource,
|
|
85
|
+
* and attach it to the second. Do not use this method for moving IP addresses
|
|
86
|
+
* between standard Scaleway resources (e.g. Instances, Load Balancers) as it
|
|
87
|
+
* will fail - see the relevant product API for an equivalent method.
|
|
88
|
+
*
|
|
89
|
+
* @param request - The request {@link MoveIPRequest}
|
|
90
|
+
* @returns A Promise of IP
|
|
91
|
+
*/
|
|
92
|
+
moveIP: (request: Readonly<MoveIPRequest>) => Promise<IP>;
|
|
58
93
|
}
|
|
@@ -2,7 +2,7 @@ import { API as API$1 } from "../../../scw/api.js";
|
|
|
2
2
|
import { validatePathParam, urlParams, resolveOneOf } from "../../../helpers/marshalling.js";
|
|
3
3
|
import "../../../vendor/base64/index.js";
|
|
4
4
|
import { enrichForPagination } from "../../../scw/fetch/resource-paginator.js";
|
|
5
|
-
import { marshalBookIPRequest, unmarshalIP, marshalReleaseIPSetRequest, marshalUpdateIPRequest, unmarshalListIPsResponse } from "./marshalling.gen.js";
|
|
5
|
+
import { marshalBookIPRequest, unmarshalIP, marshalReleaseIPSetRequest, marshalUpdateIPRequest, unmarshalListIPsResponse, marshalAttachIPRequest, marshalDetachIPRequest, marshalMoveIPRequest } from "./marshalling.gen.js";
|
|
6
6
|
const jsonContentHeaders = {
|
|
7
7
|
"Content-Type": "application/json; charset=utf-8"
|
|
8
8
|
};
|
|
@@ -10,8 +10,8 @@ class API extends API$1 {
|
|
|
10
10
|
/** Lists the available regions of the API. */
|
|
11
11
|
static LOCALITIES = ["fr-par", "nl-ams", "pl-waw"];
|
|
12
12
|
/**
|
|
13
|
-
*
|
|
14
|
-
* only be
|
|
13
|
+
* Reserve a new IP. Reserve a new IP from the specified source. Currently IPs
|
|
14
|
+
* can only be reserved from a Private Network.
|
|
15
15
|
*
|
|
16
16
|
* @param request - The request {@link BookIPRequest}
|
|
17
17
|
* @returns A Promise of IP
|
|
@@ -121,6 +121,71 @@ class API extends API$1 {
|
|
|
121
121
|
* @returns A Promise of ListIPsResponse
|
|
122
122
|
*/
|
|
123
123
|
listIPs = (request = {}) => enrichForPagination("ips", this.pageOfListIPs, request);
|
|
124
|
+
/**
|
|
125
|
+
* Attach IP to custom resource. Attach an existing reserved IP from a Private
|
|
126
|
+
* Network subnet to a custom, named resource via its MAC address. An example
|
|
127
|
+
* of a custom resource is a virtual machine hosted on an Elastic Metal
|
|
128
|
+
* server. Do not use this method for attaching IP addresses to standard
|
|
129
|
+
* Scaleway resources as it will fail - see the relevant product API for an
|
|
130
|
+
* equivalent method.
|
|
131
|
+
*
|
|
132
|
+
* @param request - The request {@link AttachIPRequest}
|
|
133
|
+
* @returns A Promise of IP
|
|
134
|
+
*/
|
|
135
|
+
attachIP = (request) => this.client.fetch(
|
|
136
|
+
{
|
|
137
|
+
body: JSON.stringify(
|
|
138
|
+
marshalAttachIPRequest(request, this.client.settings)
|
|
139
|
+
),
|
|
140
|
+
headers: jsonContentHeaders,
|
|
141
|
+
method: "POST",
|
|
142
|
+
path: `/ipam/v1/regions/${validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/ips/${validatePathParam("ipId", request.ipId)}/attach`
|
|
143
|
+
},
|
|
144
|
+
unmarshalIP
|
|
145
|
+
);
|
|
146
|
+
/**
|
|
147
|
+
* Detach IP from a custom resource. Detach a private IP from a custom
|
|
148
|
+
* resource. An example of a custom resource is a virtual machine hosted on an
|
|
149
|
+
* Elastic Metal server. Do not use this method for detaching IP addresses
|
|
150
|
+
* from standard Scaleway resources (e.g. Instances, Load Balancers) as it
|
|
151
|
+
* will fail - see the relevant product API for an equivalent method.
|
|
152
|
+
*
|
|
153
|
+
* @param request - The request {@link DetachIPRequest}
|
|
154
|
+
* @returns A Promise of IP
|
|
155
|
+
*/
|
|
156
|
+
detachIP = (request) => this.client.fetch(
|
|
157
|
+
{
|
|
158
|
+
body: JSON.stringify(
|
|
159
|
+
marshalDetachIPRequest(request, this.client.settings)
|
|
160
|
+
),
|
|
161
|
+
headers: jsonContentHeaders,
|
|
162
|
+
method: "POST",
|
|
163
|
+
path: `/ipam/v1/regions/${validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/ips/${validatePathParam("ipId", request.ipId)}/detach`
|
|
164
|
+
},
|
|
165
|
+
unmarshalIP
|
|
166
|
+
);
|
|
167
|
+
/**
|
|
168
|
+
* Move IP to a custom resource. Move an existing reserved private IP from one
|
|
169
|
+
* custom resource (e.g. a virtual machine hosted on an Elastic Metal server)
|
|
170
|
+
* to another custom resource. This will detach it from the first resource,
|
|
171
|
+
* and attach it to the second. Do not use this method for moving IP addresses
|
|
172
|
+
* between standard Scaleway resources (e.g. Instances, Load Balancers) as it
|
|
173
|
+
* will fail - see the relevant product API for an equivalent method.
|
|
174
|
+
*
|
|
175
|
+
* @param request - The request {@link MoveIPRequest}
|
|
176
|
+
* @returns A Promise of IP
|
|
177
|
+
*/
|
|
178
|
+
moveIP = (request) => this.client.fetch(
|
|
179
|
+
{
|
|
180
|
+
body: JSON.stringify(
|
|
181
|
+
marshalMoveIPRequest(request, this.client.settings)
|
|
182
|
+
),
|
|
183
|
+
headers: jsonContentHeaders,
|
|
184
|
+
method: "POST",
|
|
185
|
+
path: `/ipam/v1/regions/${validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/ips/${validatePathParam("ipId", request.ipId)}/move`
|
|
186
|
+
},
|
|
187
|
+
unmarshalIP
|
|
188
|
+
);
|
|
124
189
|
}
|
|
125
190
|
export {
|
|
126
191
|
API
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export { API } from './api.gen';
|
|
2
|
-
export type { BookIPRequest, GetIPRequest, IP, ListIPsRequest, ListIPsRequestOrderBy, ListIPsResponse, ReleaseIPRequest, ReleaseIPSetRequest, Resource, ResourceType, Reverse, Source, UpdateIPRequest, } from './types.gen';
|
|
2
|
+
export type { AttachIPRequest, BookIPRequest, CustomResource, DetachIPRequest, GetIPRequest, IP, ListIPsRequest, ListIPsRequestOrderBy, ListIPsResponse, MoveIPRequest, ReleaseIPRequest, ReleaseIPSetRequest, Resource, ResourceType, Reverse, Source, UpdateIPRequest, } from './types.gen';
|
|
3
3
|
export * as ValidationRules from './validation-rules.gen';
|
|
@@ -71,6 +71,13 @@ const unmarshalListIPsResponse = (data) => {
|
|
|
71
71
|
totalCount: data.total_count
|
|
72
72
|
};
|
|
73
73
|
};
|
|
74
|
+
const marshalCustomResource = (request, defaults) => ({
|
|
75
|
+
mac_address: request.macAddress,
|
|
76
|
+
name: request.name
|
|
77
|
+
});
|
|
78
|
+
const marshalAttachIPRequest = (request, defaults) => ({
|
|
79
|
+
resource: marshalCustomResource(request.resource)
|
|
80
|
+
});
|
|
74
81
|
const marshalSource = (request, defaults) => ({
|
|
75
82
|
...marshalling.resolveOneOf([
|
|
76
83
|
{ param: "zonal", value: request.zonal },
|
|
@@ -82,9 +89,17 @@ const marshalBookIPRequest = (request, defaults) => ({
|
|
|
82
89
|
address: request.address,
|
|
83
90
|
is_ipv6: request.isIpv6,
|
|
84
91
|
project_id: request.projectId ?? defaults.defaultProjectId,
|
|
92
|
+
resource: request.resource !== void 0 ? marshalCustomResource(request.resource) : void 0,
|
|
85
93
|
source: marshalSource(request.source),
|
|
86
94
|
tags: request.tags
|
|
87
95
|
});
|
|
96
|
+
const marshalDetachIPRequest = (request, defaults) => ({
|
|
97
|
+
resource: marshalCustomResource(request.resource)
|
|
98
|
+
});
|
|
99
|
+
const marshalMoveIPRequest = (request, defaults) => ({
|
|
100
|
+
from_resource: marshalCustomResource(request.fromResource),
|
|
101
|
+
to_resource: request.toResource !== void 0 ? marshalCustomResource(request.toResource) : void 0
|
|
102
|
+
});
|
|
88
103
|
const marshalReleaseIPSetRequest = (request, defaults) => ({
|
|
89
104
|
ip_ids: request.ipIds
|
|
90
105
|
});
|
|
@@ -96,7 +111,10 @@ const marshalUpdateIPRequest = (request, defaults) => ({
|
|
|
96
111
|
reverses: request.reverses !== void 0 ? request.reverses.map((elt) => marshalReverse(elt)) : void 0,
|
|
97
112
|
tags: request.tags
|
|
98
113
|
});
|
|
114
|
+
exports.marshalAttachIPRequest = marshalAttachIPRequest;
|
|
99
115
|
exports.marshalBookIPRequest = marshalBookIPRequest;
|
|
116
|
+
exports.marshalDetachIPRequest = marshalDetachIPRequest;
|
|
117
|
+
exports.marshalMoveIPRequest = marshalMoveIPRequest;
|
|
100
118
|
exports.marshalReleaseIPSetRequest = marshalReleaseIPSetRequest;
|
|
101
119
|
exports.marshalUpdateIPRequest = marshalUpdateIPRequest;
|
|
102
120
|
exports.unmarshalIP = unmarshalIP;
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import type { DefaultValues } from '../../../bridge';
|
|
2
|
-
import type { BookIPRequest, IP, ListIPsResponse, ReleaseIPSetRequest, UpdateIPRequest } from './types.gen';
|
|
2
|
+
import type { AttachIPRequest, BookIPRequest, DetachIPRequest, IP, ListIPsResponse, MoveIPRequest, ReleaseIPSetRequest, UpdateIPRequest } from './types.gen';
|
|
3
3
|
export declare const unmarshalIP: (data: unknown) => IP;
|
|
4
4
|
export declare const unmarshalListIPsResponse: (data: unknown) => ListIPsResponse;
|
|
5
|
+
export declare const marshalAttachIPRequest: (request: AttachIPRequest, defaults: DefaultValues) => Record<string, unknown>;
|
|
5
6
|
export declare const marshalBookIPRequest: (request: BookIPRequest, defaults: DefaultValues) => Record<string, unknown>;
|
|
7
|
+
export declare const marshalDetachIPRequest: (request: DetachIPRequest, defaults: DefaultValues) => Record<string, unknown>;
|
|
8
|
+
export declare const marshalMoveIPRequest: (request: MoveIPRequest, defaults: DefaultValues) => Record<string, unknown>;
|
|
6
9
|
export declare const marshalReleaseIPSetRequest: (request: ReleaseIPSetRequest, defaults: DefaultValues) => Record<string, unknown>;
|
|
7
10
|
export declare const marshalUpdateIPRequest: (request: UpdateIPRequest, defaults: DefaultValues) => Record<string, unknown>;
|
|
@@ -69,6 +69,13 @@ const unmarshalListIPsResponse = (data) => {
|
|
|
69
69
|
totalCount: data.total_count
|
|
70
70
|
};
|
|
71
71
|
};
|
|
72
|
+
const marshalCustomResource = (request, defaults) => ({
|
|
73
|
+
mac_address: request.macAddress,
|
|
74
|
+
name: request.name
|
|
75
|
+
});
|
|
76
|
+
const marshalAttachIPRequest = (request, defaults) => ({
|
|
77
|
+
resource: marshalCustomResource(request.resource)
|
|
78
|
+
});
|
|
72
79
|
const marshalSource = (request, defaults) => ({
|
|
73
80
|
...resolveOneOf([
|
|
74
81
|
{ param: "zonal", value: request.zonal },
|
|
@@ -80,9 +87,17 @@ const marshalBookIPRequest = (request, defaults) => ({
|
|
|
80
87
|
address: request.address,
|
|
81
88
|
is_ipv6: request.isIpv6,
|
|
82
89
|
project_id: request.projectId ?? defaults.defaultProjectId,
|
|
90
|
+
resource: request.resource !== void 0 ? marshalCustomResource(request.resource) : void 0,
|
|
83
91
|
source: marshalSource(request.source),
|
|
84
92
|
tags: request.tags
|
|
85
93
|
});
|
|
94
|
+
const marshalDetachIPRequest = (request, defaults) => ({
|
|
95
|
+
resource: marshalCustomResource(request.resource)
|
|
96
|
+
});
|
|
97
|
+
const marshalMoveIPRequest = (request, defaults) => ({
|
|
98
|
+
from_resource: marshalCustomResource(request.fromResource),
|
|
99
|
+
to_resource: request.toResource !== void 0 ? marshalCustomResource(request.toResource) : void 0
|
|
100
|
+
});
|
|
86
101
|
const marshalReleaseIPSetRequest = (request, defaults) => ({
|
|
87
102
|
ip_ids: request.ipIds
|
|
88
103
|
});
|
|
@@ -95,7 +110,10 @@ const marshalUpdateIPRequest = (request, defaults) => ({
|
|
|
95
110
|
tags: request.tags
|
|
96
111
|
});
|
|
97
112
|
export {
|
|
113
|
+
marshalAttachIPRequest,
|
|
98
114
|
marshalBookIPRequest,
|
|
115
|
+
marshalDetachIPRequest,
|
|
116
|
+
marshalMoveIPRequest,
|
|
99
117
|
marshalReleaseIPSetRequest,
|
|
100
118
|
marshalUpdateIPRequest,
|
|
101
119
|
unmarshalIP,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Region, Zone } from '../../../bridge';
|
|
2
2
|
export type ListIPsRequestOrderBy = 'created_at_desc' | 'created_at_asc' | 'updated_at_desc' | 'updated_at_asc' | 'attached_at_desc' | 'attached_at_asc';
|
|
3
|
-
export type ResourceType = 'unknown_type' | 'instance_server' | 'instance_ip' | 'instance_private_nic' | 'lb_server' | 'fip_ip' | 'vpc_gateway' | 'vpc_gateway_network' | 'k8s_node' | 'k8s_cluster' | 'rdb_instance' | 'redis_cluster' | 'baremetal_server' | 'baremetal_private_nic' | 'llm_deployment';
|
|
3
|
+
export type ResourceType = 'unknown_type' | 'custom' | 'instance_server' | 'instance_ip' | 'instance_private_nic' | 'lb_server' | 'fip_ip' | 'vpc_gateway' | 'vpc_gateway_network' | 'k8s_node' | 'k8s_cluster' | 'rdb_instance' | 'redis_cluster' | 'baremetal_server' | 'baremetal_private_nic' | 'llm_deployment';
|
|
4
4
|
export interface Resource {
|
|
5
5
|
/** Type of resource the IP is attached to. */
|
|
6
6
|
type: ResourceType;
|
|
@@ -43,6 +43,15 @@ export interface Source {
|
|
|
43
43
|
*/
|
|
44
44
|
subnetId?: string;
|
|
45
45
|
}
|
|
46
|
+
export interface CustomResource {
|
|
47
|
+
/** MAC address of the custom resource. */
|
|
48
|
+
macAddress: string;
|
|
49
|
+
/**
|
|
50
|
+
* When the resource is in a Private Network, a DNS record is available to
|
|
51
|
+
* resolve the resource name.
|
|
52
|
+
*/
|
|
53
|
+
name?: string;
|
|
54
|
+
}
|
|
46
55
|
export interface IP {
|
|
47
56
|
/** IP ID. */
|
|
48
57
|
id: string;
|
|
@@ -52,11 +61,11 @@ export interface IP {
|
|
|
52
61
|
projectId: string;
|
|
53
62
|
/** Defines whether the IP is an IPv6 (false = IPv4). */
|
|
54
63
|
isIpv6: boolean;
|
|
55
|
-
/** Date the IP was
|
|
64
|
+
/** Date the IP was reserved. */
|
|
56
65
|
createdAt?: Date;
|
|
57
66
|
/** Date the IP was last modified. */
|
|
58
67
|
updatedAt?: Date;
|
|
59
|
-
/** Source pool where the IP was
|
|
68
|
+
/** Source pool where the IP was reserved in. */
|
|
60
69
|
source?: Source;
|
|
61
70
|
/** Resource which the IP is attached to. */
|
|
62
71
|
resource?: Resource;
|
|
@@ -69,6 +78,17 @@ export interface IP {
|
|
|
69
78
|
/** Zone of the IP, if zonal. */
|
|
70
79
|
zone?: Zone;
|
|
71
80
|
}
|
|
81
|
+
export type AttachIPRequest = {
|
|
82
|
+
/**
|
|
83
|
+
* Region to target. If none is passed will use default region from the
|
|
84
|
+
* config.
|
|
85
|
+
*/
|
|
86
|
+
region?: Region;
|
|
87
|
+
/** IP ID. */
|
|
88
|
+
ipId: string;
|
|
89
|
+
/** Custom resource to be attached to the IP. */
|
|
90
|
+
resource: CustomResource;
|
|
91
|
+
};
|
|
72
92
|
export type BookIPRequest = {
|
|
73
93
|
/**
|
|
74
94
|
* Region to target. If none is passed will use default region from the
|
|
@@ -80,18 +100,39 @@ export type BookIPRequest = {
|
|
|
80
100
|
* Private Network's Project.
|
|
81
101
|
*/
|
|
82
102
|
projectId?: string;
|
|
83
|
-
/**
|
|
103
|
+
/**
|
|
104
|
+
* Source in which to reserve the IP. Not all sources are available for
|
|
105
|
+
* reservation.
|
|
106
|
+
*/
|
|
84
107
|
source: Source;
|
|
85
108
|
/** Request an IPv6 instead of an IPv4. */
|
|
86
109
|
isIpv6: boolean;
|
|
87
110
|
/**
|
|
88
111
|
* The requested address should not include the subnet mask (/suffix). Note
|
|
89
112
|
* that only the Private Network source allows you to pick a specific IP. If
|
|
90
|
-
* the requested IP is already
|
|
113
|
+
* the requested IP is already reserved, then the call will fail.
|
|
91
114
|
*/
|
|
92
115
|
address?: string;
|
|
93
116
|
/** Tags for the IP. */
|
|
94
117
|
tags?: string[];
|
|
118
|
+
/**
|
|
119
|
+
* Custom resource to attach to the IP being reserved. An example of a custom
|
|
120
|
+
* resource is a virtual machine hosted on an Elastic Metal server. Do not use
|
|
121
|
+
* this for attaching IP addresses to standard Scaleway resources, as it will
|
|
122
|
+
* fail - instead, see the relevant product API for an equivalent method.
|
|
123
|
+
*/
|
|
124
|
+
resource?: CustomResource;
|
|
125
|
+
};
|
|
126
|
+
export type DetachIPRequest = {
|
|
127
|
+
/**
|
|
128
|
+
* Region to target. If none is passed will use default region from the
|
|
129
|
+
* config.
|
|
130
|
+
*/
|
|
131
|
+
region?: Region;
|
|
132
|
+
/** IP ID. */
|
|
133
|
+
ipId: string;
|
|
134
|
+
/** Custom resource currently attached to the IP. */
|
|
135
|
+
resource: CustomResource;
|
|
95
136
|
};
|
|
96
137
|
export type GetIPRequest = {
|
|
97
138
|
/**
|
|
@@ -187,6 +228,19 @@ export interface ListIPsResponse {
|
|
|
187
228
|
totalCount: number;
|
|
188
229
|
ips: IP[];
|
|
189
230
|
}
|
|
231
|
+
export type MoveIPRequest = {
|
|
232
|
+
/**
|
|
233
|
+
* Region to target. If none is passed will use default region from the
|
|
234
|
+
* config.
|
|
235
|
+
*/
|
|
236
|
+
region?: Region;
|
|
237
|
+
/** IP ID. */
|
|
238
|
+
ipId: string;
|
|
239
|
+
/** Custom resource currently attached to the IP. */
|
|
240
|
+
fromResource: CustomResource;
|
|
241
|
+
/** Custom resource to be attached to the IP. */
|
|
242
|
+
toResource?: CustomResource;
|
|
243
|
+
};
|
|
190
244
|
export type ReleaseIPRequest = {
|
|
191
245
|
/**
|
|
192
246
|
* Region to target. If none is passed will use default region from the
|
|
@@ -227,6 +227,23 @@ class API extends api.API {
|
|
|
227
227
|
},
|
|
228
228
|
marshalling_gen.unmarshalCluster
|
|
229
229
|
);
|
|
230
|
+
/**
|
|
231
|
+
* Migrate a cluster to SBS CSI. Enable the latest CSI compatible with
|
|
232
|
+
* Scaleway Block Storage (SBS) and migrate all existing
|
|
233
|
+
* PersistentVolumes/VolumeSnapshotContents to SBS.
|
|
234
|
+
*
|
|
235
|
+
* @param request - The request {@link MigrateClusterToSBSCSIRequest}
|
|
236
|
+
* @returns A Promise of Cluster
|
|
237
|
+
*/
|
|
238
|
+
migrateClusterToSBSCSI = (request) => this.client.fetch(
|
|
239
|
+
{
|
|
240
|
+
body: "{}",
|
|
241
|
+
headers: jsonContentHeaders,
|
|
242
|
+
method: "POST",
|
|
243
|
+
path: `/k8s/v1/regions/${marshalling.validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/clusters/${marshalling.validatePathParam("clusterId", request.clusterId)}/migrate-to-sbs-csi`
|
|
244
|
+
},
|
|
245
|
+
marshalling_gen.unmarshalCluster
|
|
246
|
+
);
|
|
230
247
|
pageOfListPools = (request) => this.client.fetch(
|
|
231
248
|
{
|
|
232
249
|
method: "GET",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { API as ParentAPI } from '../../../bridge';
|
|
2
2
|
import type { Region, WaitForOptions } from '../../../bridge';
|
|
3
|
-
import type { AuthExternalNodeRequest, Cluster, CreateClusterRequest, CreateExternalNodeRequest, CreatePoolRequest, DeleteClusterRequest, DeleteNodeRequest, DeletePoolRequest, ExternalNode, ExternalNodeAuth, GetClusterKubeConfigRequest, GetClusterRequest, GetNodeMetadataRequest, GetNodeRequest, GetPoolRequest, GetVersionRequest, ListClusterAvailableTypesRequest, ListClusterAvailableTypesResponse, ListClusterAvailableVersionsRequest, ListClusterAvailableVersionsResponse, ListClusterTypesRequest, ListClusterTypesResponse, ListClustersRequest, ListClustersResponse, ListNodesRequest, ListNodesResponse, ListPoolsRequest, ListPoolsResponse, ListVersionsRequest, ListVersionsResponse, MigrateClusterToRoutedIPsRequest, Node, NodeMetadata, Pool, RebootNodeRequest, ReplaceNodeRequest, ResetClusterAdminTokenRequest, SetClusterTypeRequest, UpdateClusterRequest, UpdatePoolRequest, UpgradeClusterRequest, UpgradePoolRequest, Version } from './types.gen';
|
|
3
|
+
import type { AuthExternalNodeRequest, Cluster, CreateClusterRequest, CreateExternalNodeRequest, CreatePoolRequest, DeleteClusterRequest, DeleteNodeRequest, DeletePoolRequest, ExternalNode, ExternalNodeAuth, GetClusterKubeConfigRequest, GetClusterRequest, GetNodeMetadataRequest, GetNodeRequest, GetPoolRequest, GetVersionRequest, ListClusterAvailableTypesRequest, ListClusterAvailableTypesResponse, ListClusterAvailableVersionsRequest, ListClusterAvailableVersionsResponse, ListClusterTypesRequest, ListClusterTypesResponse, ListClustersRequest, ListClustersResponse, ListNodesRequest, ListNodesResponse, ListPoolsRequest, ListPoolsResponse, ListVersionsRequest, ListVersionsResponse, MigrateClusterToRoutedIPsRequest, MigrateClusterToSBSCSIRequest, Node, NodeMetadata, Pool, RebootNodeRequest, ReplaceNodeRequest, ResetClusterAdminTokenRequest, SetClusterTypeRequest, UpdateClusterRequest, UpdatePoolRequest, UpgradeClusterRequest, UpgradePoolRequest, Version } from './types.gen';
|
|
4
4
|
/**
|
|
5
5
|
* Kubernetes API.
|
|
6
6
|
*
|
|
@@ -115,6 +115,15 @@ export declare class API extends ParentAPI {
|
|
|
115
115
|
* @returns A Promise of Cluster
|
|
116
116
|
*/
|
|
117
117
|
migrateClusterToRoutedIPs: (request: Readonly<MigrateClusterToRoutedIPsRequest>) => Promise<Cluster>;
|
|
118
|
+
/**
|
|
119
|
+
* Migrate a cluster to SBS CSI. Enable the latest CSI compatible with
|
|
120
|
+
* Scaleway Block Storage (SBS) and migrate all existing
|
|
121
|
+
* PersistentVolumes/VolumeSnapshotContents to SBS.
|
|
122
|
+
*
|
|
123
|
+
* @param request - The request {@link MigrateClusterToSBSCSIRequest}
|
|
124
|
+
* @returns A Promise of Cluster
|
|
125
|
+
*/
|
|
126
|
+
migrateClusterToSBSCSI: (request: Readonly<MigrateClusterToSBSCSIRequest>) => Promise<Cluster>;
|
|
118
127
|
protected pageOfListPools: (request: Readonly<ListPoolsRequest>) => Promise<ListPoolsResponse>;
|
|
119
128
|
/**
|
|
120
129
|
* List Pools in a Cluster. List all the existing pools for a specific
|
|
@@ -225,6 +225,23 @@ class API extends API$1 {
|
|
|
225
225
|
},
|
|
226
226
|
unmarshalCluster
|
|
227
227
|
);
|
|
228
|
+
/**
|
|
229
|
+
* Migrate a cluster to SBS CSI. Enable the latest CSI compatible with
|
|
230
|
+
* Scaleway Block Storage (SBS) and migrate all existing
|
|
231
|
+
* PersistentVolumes/VolumeSnapshotContents to SBS.
|
|
232
|
+
*
|
|
233
|
+
* @param request - The request {@link MigrateClusterToSBSCSIRequest}
|
|
234
|
+
* @returns A Promise of Cluster
|
|
235
|
+
*/
|
|
236
|
+
migrateClusterToSBSCSI = (request) => this.client.fetch(
|
|
237
|
+
{
|
|
238
|
+
body: "{}",
|
|
239
|
+
headers: jsonContentHeaders,
|
|
240
|
+
method: "POST",
|
|
241
|
+
path: `/k8s/v1/regions/${validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/clusters/${validatePathParam("clusterId", request.clusterId)}/migrate-to-sbs-csi`
|
|
242
|
+
},
|
|
243
|
+
unmarshalCluster
|
|
244
|
+
);
|
|
228
245
|
pageOfListPools = (request) => this.client.fetch(
|
|
229
246
|
{
|
|
230
247
|
method: "GET",
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
export { API } from './api.gen';
|
|
2
2
|
export * from './content.gen';
|
|
3
|
-
export type { AuthExternalNodeRequest, AutoscalerEstimator, AutoscalerExpander, CNI, Cluster, ClusterAutoUpgrade, ClusterAutoscalerConfig, ClusterOpenIDConnectConfig, ClusterStatus, ClusterType, ClusterTypeAvailability, ClusterTypeResiliency, CreateClusterRequest, CreateClusterRequestAutoUpgrade, CreateClusterRequestAutoscalerConfig, CreateClusterRequestOpenIDConnectConfig, CreateClusterRequestPoolConfig, CreateClusterRequestPoolConfigUpgradePolicy, CreateExternalNodeRequest, CreatePoolRequest, CreatePoolRequestUpgradePolicy, DeleteClusterRequest, DeleteNodeRequest, DeletePoolRequest, ExternalNode, ExternalNodeAuth, ExternalNodeCoreV1Taint, GetClusterKubeConfigRequest, GetClusterRequest, GetNodeMetadataRequest, GetNodeRequest, GetPoolRequest, GetVersionRequest, ListClusterAvailableTypesRequest, ListClusterAvailableTypesResponse, ListClusterAvailableVersionsRequest, ListClusterAvailableVersionsResponse, ListClusterTypesRequest, ListClusterTypesResponse, ListClustersRequest, ListClustersRequestOrderBy, ListClustersResponse, ListNodesRequest, ListNodesRequestOrderBy, ListNodesResponse, ListPoolsRequest, ListPoolsRequestOrderBy, ListPoolsResponse, ListVersionsRequest, ListVersionsResponse, MaintenanceWindow, MaintenanceWindowDayOfTheWeek, MigrateClusterToRoutedIPsRequest, Node, NodeMetadata, NodeMetadataCoreV1Taint, NodeStatus, Pool, PoolStatus, PoolUpgradePolicy, PoolVolumeType, RebootNodeRequest, ReplaceNodeRequest, ResetClusterAdminTokenRequest, Runtime, SetClusterTypeRequest, UpdateClusterRequest, UpdateClusterRequestAutoUpgrade, UpdateClusterRequestAutoscalerConfig, UpdateClusterRequestOpenIDConnectConfig, UpdatePoolRequest, UpdatePoolRequestUpgradePolicy, UpgradeClusterRequest, UpgradePoolRequest, Version, } from './types.gen';
|
|
3
|
+
export type { AuthExternalNodeRequest, AutoscalerEstimator, AutoscalerExpander, CNI, Cluster, ClusterAutoUpgrade, ClusterAutoscalerConfig, ClusterOpenIDConnectConfig, ClusterStatus, ClusterType, ClusterTypeAvailability, ClusterTypeResiliency, CreateClusterRequest, CreateClusterRequestAutoUpgrade, CreateClusterRequestAutoscalerConfig, CreateClusterRequestOpenIDConnectConfig, CreateClusterRequestPoolConfig, CreateClusterRequestPoolConfigUpgradePolicy, CreateExternalNodeRequest, CreatePoolRequest, CreatePoolRequestUpgradePolicy, DeleteClusterRequest, DeleteNodeRequest, DeletePoolRequest, ExternalNode, ExternalNodeAuth, ExternalNodeCoreV1Taint, GetClusterKubeConfigRequest, GetClusterRequest, GetNodeMetadataRequest, GetNodeRequest, GetPoolRequest, GetVersionRequest, ListClusterAvailableTypesRequest, ListClusterAvailableTypesResponse, ListClusterAvailableVersionsRequest, ListClusterAvailableVersionsResponse, ListClusterTypesRequest, ListClusterTypesResponse, ListClustersRequest, ListClustersRequestOrderBy, ListClustersResponse, ListNodesRequest, ListNodesRequestOrderBy, ListNodesResponse, ListPoolsRequest, ListPoolsRequestOrderBy, ListPoolsResponse, ListVersionsRequest, ListVersionsResponse, MaintenanceWindow, MaintenanceWindowDayOfTheWeek, MigrateClusterToRoutedIPsRequest, MigrateClusterToSBSCSIRequest, Node, NodeMetadata, NodeMetadataCoreV1Taint, NodeStatus, Pool, PoolStatus, PoolUpgradePolicy, PoolVolumeType, RebootNodeRequest, ReplaceNodeRequest, ResetClusterAdminTokenRequest, Runtime, SetClusterTypeRequest, UpdateClusterRequest, UpdateClusterRequestAutoUpgrade, UpdateClusterRequestAutoscalerConfig, UpdateClusterRequestOpenIDConnectConfig, UpdatePoolRequest, UpdatePoolRequestUpgradePolicy, UpgradeClusterRequest, UpgradePoolRequest, Version, } from './types.gen';
|
|
4
4
|
export * as ValidationRules from './validation-rules.gen';
|
|
@@ -1004,6 +1004,19 @@ export type MigrateClusterToRoutedIPsRequest = {
|
|
|
1004
1004
|
* config.
|
|
1005
1005
|
*/
|
|
1006
1006
|
region?: Region;
|
|
1007
|
+
/** Cluster ID for which the routed ip will be enabled for the nodes. */
|
|
1008
|
+
clusterId: string;
|
|
1009
|
+
};
|
|
1010
|
+
export type MigrateClusterToSBSCSIRequest = {
|
|
1011
|
+
/**
|
|
1012
|
+
* Region to target. If none is passed will use default region from the
|
|
1013
|
+
* config.
|
|
1014
|
+
*/
|
|
1015
|
+
region?: Region;
|
|
1016
|
+
/**
|
|
1017
|
+
* Cluster ID for which the latest CSI compatible with Scaleway Block Storage
|
|
1018
|
+
* will be enabled.
|
|
1019
|
+
*/
|
|
1007
1020
|
clusterId: string;
|
|
1008
1021
|
};
|
|
1009
1022
|
export interface NodeMetadata {
|
|
@@ -254,5 +254,36 @@ class API extends api.API {
|
|
|
254
254
|
},
|
|
255
255
|
marshalling_gen.unmarshalDecryptResponse
|
|
256
256
|
);
|
|
257
|
+
/**
|
|
258
|
+
* Import key material. Import key material to use to derive a new
|
|
259
|
+
* cryptographic key. The key's origin must be `external`.
|
|
260
|
+
*
|
|
261
|
+
* @param request - The request {@link ImportKeyMaterialRequest}
|
|
262
|
+
* @returns A Promise of Key
|
|
263
|
+
*/
|
|
264
|
+
importKeyMaterial = (request) => this.client.fetch(
|
|
265
|
+
{
|
|
266
|
+
body: JSON.stringify(
|
|
267
|
+
marshalling_gen.marshalImportKeyMaterialRequest(request, this.client.settings)
|
|
268
|
+
),
|
|
269
|
+
headers: jsonContentHeaders,
|
|
270
|
+
method: "POST",
|
|
271
|
+
path: `/key-manager/v1alpha1/regions/${marshalling.validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/keys/${marshalling.validatePathParam("keyId", request.keyId)}/import-key-material`
|
|
272
|
+
},
|
|
273
|
+
marshalling_gen.unmarshalKey
|
|
274
|
+
);
|
|
275
|
+
/**
|
|
276
|
+
* Delete key material. Delete previously imported key material. This renders
|
|
277
|
+
* the associated cryptographic key unusable for any operation. The key's
|
|
278
|
+
* origin must be `external`.
|
|
279
|
+
*
|
|
280
|
+
* @param request - The request {@link DeleteKeyMaterialRequest}
|
|
281
|
+
*/
|
|
282
|
+
deleteKeyMaterial = (request) => this.client.fetch({
|
|
283
|
+
body: "{}",
|
|
284
|
+
headers: jsonContentHeaders,
|
|
285
|
+
method: "POST",
|
|
286
|
+
path: `/key-manager/v1alpha1/regions/${marshalling.validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/keys/${marshalling.validatePathParam("keyId", request.keyId)}/delete-key-material`
|
|
287
|
+
});
|
|
257
288
|
}
|
|
258
289
|
exports.API = API;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { API as ParentAPI } from '../../../bridge';
|
|
2
2
|
import type { Region } from '../../../bridge';
|
|
3
|
-
import type { CreateKeyRequest, DataKey, DecryptRequest, DecryptResponse, DeleteKeyRequest, DisableKeyRequest, EnableKeyRequest, EncryptRequest, EncryptResponse, GenerateDataKeyRequest, GetKeyRequest, Key, ListKeysRequest, ListKeysResponse, ProtectKeyRequest, RotateKeyRequest, UnprotectKeyRequest, UpdateKeyRequest } from './types.gen';
|
|
3
|
+
import type { CreateKeyRequest, DataKey, DecryptRequest, DecryptResponse, DeleteKeyMaterialRequest, DeleteKeyRequest, DisableKeyRequest, EnableKeyRequest, EncryptRequest, EncryptResponse, GenerateDataKeyRequest, GetKeyRequest, ImportKeyMaterialRequest, Key, ListKeysRequest, ListKeysResponse, ProtectKeyRequest, RotateKeyRequest, UnprotectKeyRequest, UpdateKeyRequest } from './types.gen';
|
|
4
4
|
/**
|
|
5
5
|
* Key Manager API.
|
|
6
6
|
*
|
|
@@ -139,4 +139,20 @@ export declare class API extends ParentAPI {
|
|
|
139
139
|
* @returns A Promise of DecryptResponse
|
|
140
140
|
*/
|
|
141
141
|
decrypt: (request: Readonly<DecryptRequest>) => Promise<DecryptResponse>;
|
|
142
|
+
/**
|
|
143
|
+
* Import key material. Import key material to use to derive a new
|
|
144
|
+
* cryptographic key. The key's origin must be `external`.
|
|
145
|
+
*
|
|
146
|
+
* @param request - The request {@link ImportKeyMaterialRequest}
|
|
147
|
+
* @returns A Promise of Key
|
|
148
|
+
*/
|
|
149
|
+
importKeyMaterial: (request: Readonly<ImportKeyMaterialRequest>) => Promise<Key>;
|
|
150
|
+
/**
|
|
151
|
+
* Delete key material. Delete previously imported key material. This renders
|
|
152
|
+
* the associated cryptographic key unusable for any operation. The key's
|
|
153
|
+
* origin must be `external`.
|
|
154
|
+
*
|
|
155
|
+
* @param request - The request {@link DeleteKeyMaterialRequest}
|
|
156
|
+
*/
|
|
157
|
+
deleteKeyMaterial: (request: Readonly<DeleteKeyMaterialRequest>) => Promise<void>;
|
|
142
158
|
}
|
|
@@ -2,7 +2,7 @@ import { API as API$1 } from "../../../scw/api.js";
|
|
|
2
2
|
import { validatePathParam, urlParams } from "../../../helpers/marshalling.js";
|
|
3
3
|
import "../../../vendor/base64/index.js";
|
|
4
4
|
import { enrichForPagination } from "../../../scw/fetch/resource-paginator.js";
|
|
5
|
-
import { marshalCreateKeyRequest, unmarshalKey, marshalUpdateKeyRequest, unmarshalListKeysResponse, marshalGenerateDataKeyRequest, unmarshalDataKey, marshalEncryptRequest, unmarshalEncryptResponse, marshalDecryptRequest, unmarshalDecryptResponse } from "./marshalling.gen.js";
|
|
5
|
+
import { marshalCreateKeyRequest, unmarshalKey, marshalUpdateKeyRequest, unmarshalListKeysResponse, marshalGenerateDataKeyRequest, unmarshalDataKey, marshalEncryptRequest, unmarshalEncryptResponse, marshalDecryptRequest, unmarshalDecryptResponse, marshalImportKeyMaterialRequest } from "./marshalling.gen.js";
|
|
6
6
|
const jsonContentHeaders = {
|
|
7
7
|
"Content-Type": "application/json; charset=utf-8"
|
|
8
8
|
};
|
|
@@ -252,6 +252,37 @@ class API extends API$1 {
|
|
|
252
252
|
},
|
|
253
253
|
unmarshalDecryptResponse
|
|
254
254
|
);
|
|
255
|
+
/**
|
|
256
|
+
* Import key material. Import key material to use to derive a new
|
|
257
|
+
* cryptographic key. The key's origin must be `external`.
|
|
258
|
+
*
|
|
259
|
+
* @param request - The request {@link ImportKeyMaterialRequest}
|
|
260
|
+
* @returns A Promise of Key
|
|
261
|
+
*/
|
|
262
|
+
importKeyMaterial = (request) => this.client.fetch(
|
|
263
|
+
{
|
|
264
|
+
body: JSON.stringify(
|
|
265
|
+
marshalImportKeyMaterialRequest(request, this.client.settings)
|
|
266
|
+
),
|
|
267
|
+
headers: jsonContentHeaders,
|
|
268
|
+
method: "POST",
|
|
269
|
+
path: `/key-manager/v1alpha1/regions/${validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/keys/${validatePathParam("keyId", request.keyId)}/import-key-material`
|
|
270
|
+
},
|
|
271
|
+
unmarshalKey
|
|
272
|
+
);
|
|
273
|
+
/**
|
|
274
|
+
* Delete key material. Delete previously imported key material. This renders
|
|
275
|
+
* the associated cryptographic key unusable for any operation. The key's
|
|
276
|
+
* origin must be `external`.
|
|
277
|
+
*
|
|
278
|
+
* @param request - The request {@link DeleteKeyMaterialRequest}
|
|
279
|
+
*/
|
|
280
|
+
deleteKeyMaterial = (request) => this.client.fetch({
|
|
281
|
+
body: "{}",
|
|
282
|
+
headers: jsonContentHeaders,
|
|
283
|
+
method: "POST",
|
|
284
|
+
path: `/key-manager/v1alpha1/regions/${validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/keys/${validatePathParam("keyId", request.keyId)}/delete-key-material`
|
|
285
|
+
});
|
|
255
286
|
}
|
|
256
287
|
export {
|
|
257
288
|
API
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export { API } from './api.gen';
|
|
2
|
-
export type { CreateKeyRequest, DataKey, DataKeyAlgorithmSymmetricEncryption, DecryptRequest, DecryptResponse, DeleteKeyRequest, DisableKeyRequest, EnableKeyRequest, EncryptRequest, EncryptResponse, GenerateDataKeyRequest, GetKeyRequest, Key, KeyAlgorithmSymmetricEncryption, KeyRotationPolicy, KeyState, KeyUsage, ListKeysRequest, ListKeysRequestOrderBy, ListKeysResponse, ProtectKeyRequest, RotateKeyRequest, UnprotectKeyRequest, UpdateKeyRequest, } from './types.gen';
|
|
2
|
+
export type { CreateKeyRequest, DataKey, DataKeyAlgorithmSymmetricEncryption, DecryptRequest, DecryptResponse, DeleteKeyMaterialRequest, DeleteKeyRequest, DisableKeyRequest, EnableKeyRequest, EncryptRequest, EncryptResponse, GenerateDataKeyRequest, GetKeyRequest, ImportKeyMaterialRequest, Key, KeyAlgorithmSymmetricEncryption, KeyOrigin, KeyRotationPolicy, KeyState, KeyUsage, ListKeysRequest, ListKeysRequestOrderBy, ListKeysResponse, ProtectKeyRequest, RotateKeyRequest, UnprotectKeyRequest, UpdateKeyRequest, } from './types.gen';
|