@scaleway/sdk-redis 2.8.0 → 2.10.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.
@@ -0,0 +1,3 @@
1
+ # Licenses
2
+
3
+ The app does not bundle any dependencies with licenses.
@@ -0,0 +1,13 @@
1
+ //#region \0rolldown/runtime.js
2
+ var __defProp = Object.defineProperty;
3
+ var __exportAll = (all, no_symbols) => {
4
+ let target = {};
5
+ for (var name in all) __defProp(target, name, {
6
+ get: all[name],
7
+ enumerable: true
8
+ });
9
+ if (!no_symbols) __defProp(target, Symbol.toStringTag, { value: "Module" });
10
+ return target;
11
+ };
12
+ //#endregion
13
+ export { __exportAll };
@@ -0,0 +1,5 @@
1
+ /**
2
+ * This file is automatically generated
3
+ * PLEASE DO NOT EDIT HERE
4
+ */
5
+ export * as Redisv1 from './v1/index.gen.js';
@@ -0,0 +1,2 @@
1
+ import { index_gen_exports } from "./v1/index.gen.js";
2
+ export { index_gen_exports as Redisv1 };
@@ -0,0 +1,12 @@
1
+ /**
2
+ * This file is automatically generated
3
+ * PLEASE DO NOT EDIT HERE
4
+ */
5
+ export declare const pkgMetadata: {
6
+ readonly name: "@scaleway/sdk-redis";
7
+ readonly namespace: "redis";
8
+ readonly displayName: "Redis";
9
+ readonly versions: readonly ["v1"];
10
+ };
11
+ export type Metadata = typeof pkgMetadata;
12
+ export default pkgMetadata;
@@ -0,0 +1,13 @@
1
+ //#region src/metadata.gen.ts
2
+ /**
3
+ * This file is automatically generated
4
+ * PLEASE DO NOT EDIT HERE
5
+ */
6
+ const pkgMetadata = {
7
+ name: "@scaleway/sdk-redis",
8
+ namespace: "redis",
9
+ displayName: "Redis",
10
+ versions: ["v1"]
11
+ };
12
+ //#endregion
13
+ export { pkgMetadata as default, pkgMetadata };
@@ -0,0 +1,196 @@
1
+ import { API as ParentAPI } from '@scaleway/sdk-client';
2
+ import type { WaitForOptions, ApiLocality } from '@scaleway/sdk-client';
3
+ import type { ACLRule, AddAclRulesRequest, AddAclRulesResponse, AddClusterSettingsRequest, AddEndpointsRequest, AddEndpointsResponse, Cluster, ClusterMetricsResponse, ClusterSettingsResponse, CreateClusterRequest, DeleteAclRuleRequest, DeleteClusterRequest, DeleteClusterSettingRequest, DeleteEndpointRequest, Endpoint, GetAclRuleRequest, GetClusterCertificateRequest, GetClusterMetricsRequest, GetClusterRequest, GetEndpointRequest, ListClusterVersionsRequest, ListClusterVersionsResponse, ListClustersRequest, ListClustersResponse, ListNodeTypesRequest, ListNodeTypesResponse, MigrateClusterRequest, RenewClusterCertificateRequest, SetAclRulesRequest, SetAclRulesResponse, SetClusterSettingsRequest, SetEndpointsRequest, SetEndpointsResponse, UpdateClusterRequest, UpdateEndpointRequest } from './types.gen.js';
4
+ /**
5
+ * Managed Database for Redis™ API.
6
+
7
+ This API allows you to manage your Managed Databases for Redis™.
8
+ */
9
+ export declare class API extends ParentAPI {
10
+ /**
11
+ * Locality of this API.
12
+ * type ∈ {'zone','region','global','unspecified'}
13
+ */
14
+ static readonly LOCALITY: ApiLocality;
15
+ /**
16
+ * Create a Redis™ Database Instance. Create a new Redis™ Database Instance (Redis™ cluster). You must set the `zone`, `project_id`, `version`, `node_type`, `user_name` and `password` parameters. Optionally you can define `acl_rules`, `endpoints`, `tls_enabled` and `cluster_settings`.
17
+ *
18
+ * @param request - The request {@link CreateClusterRequest}
19
+ * @returns A Promise of Cluster
20
+ */
21
+ createCluster: (request: Readonly<CreateClusterRequest>) => Promise<Cluster>;
22
+ /**
23
+ * Update a Redis™ Database Instance. Update the parameters of a Redis™ Database Instance (Redis™ cluster), including `name`, `tags`, `user_name` and `password`.
24
+ *
25
+ * @param request - The request {@link UpdateClusterRequest}
26
+ * @returns A Promise of Cluster
27
+ */
28
+ updateCluster: (request: Readonly<UpdateClusterRequest>) => Promise<Cluster>;
29
+ /**
30
+ * Get a Redis™ Database Instance. Retrieve information about a Redis™ Database Instance (Redis™ cluster). Specify the `cluster_id` and `region` in your request to get information such as `id`, `status`, `version`, `tls_enabled`, `cluster_settings`, `upgradable_versions` and `endpoints` about your cluster in the response.
31
+ *
32
+ * @param request - The request {@link GetClusterRequest}
33
+ * @returns A Promise of Cluster
34
+ */
35
+ getCluster: (request: Readonly<GetClusterRequest>) => Promise<Cluster>;
36
+ /**
37
+ * Waits for {@link Cluster} to be in a final state.
38
+ *
39
+ * @param request - The request {@link GetClusterRequest}
40
+ * @param options - The waiting options
41
+ * @returns A Promise of Cluster
42
+ */
43
+ waitForCluster: (request: Readonly<GetClusterRequest>, options?: Readonly<WaitForOptions<Cluster>>) => Promise<Cluster>;
44
+ protected pageOfListClusters: (request?: Readonly<ListClustersRequest>) => Promise<ListClustersResponse>;
45
+ /**
46
+ * List Redis™ Database Instances. List all Redis™ Database Instances (Redis™ cluster) in the specified zone. By default, the Database Instances returned in the list are ordered by creation date in ascending order, though this can be modified via the order_by field. You can define additional parameters for your query, such as `tags`, `name`, `organization_id` and `version`.
47
+ *
48
+ * @param request - The request {@link ListClustersRequest}
49
+ * @returns A Promise of ListClustersResponse
50
+ */
51
+ listClusters: (request?: Readonly<ListClustersRequest>) => Promise<ListClustersResponse> & {
52
+ all: () => Promise<Cluster[]>;
53
+ [Symbol.asyncIterator]: () => AsyncGenerator<Cluster[], void, void>;
54
+ };
55
+ /**
56
+ * Scale up a Redis™ Database Instance. Upgrade your Redis™ Database Instance, either by upgrading to a bigger node type (vertical scaling) or by adding more nodes to your Database Instance to increase your number of endpoints and distribute cache (horizontal scaling, available for clusters only). Note that scaling horizontally your Redis™ Database Instance will not renew its TLS certificate. In order to refresh the TLS certificate, you must use the Renew TLS certificate endpoint.
57
+ *
58
+ * @param request - The request {@link MigrateClusterRequest}
59
+ * @returns A Promise of Cluster
60
+ */
61
+ migrateCluster: (request: Readonly<MigrateClusterRequest>) => Promise<Cluster>;
62
+ /**
63
+ * Delete a Redis™ Database Instance. Delete a Redis™ Database Instance (Redis™ cluster), specified by the `region` and `cluster_id` parameters. Deleting a Database Instance is permanent, and cannot be undone. Note that upon deletion all your data will be lost.
64
+ *
65
+ * @param request - The request {@link DeleteClusterRequest}
66
+ * @returns A Promise of Cluster
67
+ */
68
+ deleteCluster: (request: Readonly<DeleteClusterRequest>) => Promise<Cluster>;
69
+ /**
70
+ * Get metrics of a Redis™ Database Instance. Retrieve the metrics of a Redis™ Database Instance (Redis™ cluster). You can define the period from which to retrieve metrics by specifying the `start_date` and `end_date`.
71
+ *
72
+ * @param request - The request {@link GetClusterMetricsRequest}
73
+ * @returns A Promise of ClusterMetricsResponse
74
+ */
75
+ getClusterMetrics: (request: Readonly<GetClusterMetricsRequest>) => Promise<ClusterMetricsResponse>;
76
+ protected pageOfListNodeTypes: (request: Readonly<ListNodeTypesRequest>) => Promise<ListNodeTypesResponse>;
77
+ /**
78
+ * List available node types. List all available node types. By default, the node types returned in the list are ordered by creation date in ascending order, though this can be modified via the `order_by` field.
79
+ *
80
+ * @param request - The request {@link ListNodeTypesRequest}
81
+ * @returns A Promise of ListNodeTypesResponse
82
+ */
83
+ listNodeTypes: (request: Readonly<ListNodeTypesRequest>) => Promise<ListNodeTypesResponse> & {
84
+ all: () => Promise<import("./types.gen.js").NodeType[]>;
85
+ [Symbol.asyncIterator]: () => AsyncGenerator<import("./types.gen.js").NodeType[], void, void>;
86
+ };
87
+ protected pageOfListClusterVersions: (request: Readonly<ListClusterVersionsRequest>) => Promise<ListClusterVersionsResponse>;
88
+ /**
89
+ * List available Redis™ versions. List the Redis™ database engine versions available. You can define additional parameters for your query, such as `include_disabled`, `include_beta`, `include_deprecated` and `version`.
90
+ *
91
+ * @param request - The request {@link ListClusterVersionsRequest}
92
+ * @returns A Promise of ListClusterVersionsResponse
93
+ */
94
+ listClusterVersions: (request: Readonly<ListClusterVersionsRequest>) => Promise<ListClusterVersionsResponse> & {
95
+ all: () => Promise<import("./types.gen.js").ClusterVersion[]>;
96
+ [Symbol.asyncIterator]: () => AsyncGenerator<import("./types.gen.js").ClusterVersion[], void, void>;
97
+ };
98
+ /**
99
+ * Get the TLS certificate of a cluster. Retrieve information about the TLS certificate of a Redis™ Database Instance (Redis™ cluster). Details like name and content are returned in the response.
100
+ *
101
+ * @param request - The request {@link GetClusterCertificateRequest}
102
+ * @returns A Promise of Blob
103
+ */
104
+ getClusterCertificate: (request: Readonly<GetClusterCertificateRequest>) => Promise<Blob>;
105
+ /**
106
+ * Renew the TLS certificate of a cluster. Renew a TLS certificate for a Redis™ Database Instance (Redis™ cluster). Renewing a certificate means that you will not be able to connect to your Database Instance using the previous certificate. You will also need to download and update the new certificate for all database clients.
107
+ *
108
+ * @param request - The request {@link RenewClusterCertificateRequest}
109
+ * @returns A Promise of Cluster
110
+ */
111
+ renewClusterCertificate: (request: Readonly<RenewClusterCertificateRequest>) => Promise<Cluster>;
112
+ /**
113
+ * Add advanced settings. Add an advanced setting to a Redis™ Database Instance (Redis™ cluster). You must set the `name` and the `value` of each setting.
114
+ *
115
+ * @param request - The request {@link AddClusterSettingsRequest}
116
+ * @returns A Promise of ClusterSettingsResponse
117
+ */
118
+ addClusterSettings: (request: Readonly<AddClusterSettingsRequest>) => Promise<ClusterSettingsResponse>;
119
+ /**
120
+ * Delete advanced setting. Delete an advanced setting in a Redis™ Database Instance (Redis™ cluster). You must specify the names of the settings you want to delete in the request body.
121
+ *
122
+ * @param request - The request {@link DeleteClusterSettingRequest}
123
+ * @returns A Promise of Cluster
124
+ */
125
+ deleteClusterSetting: (request: Readonly<DeleteClusterSettingRequest>) => Promise<Cluster>;
126
+ /**
127
+ * Set advanced settings. Update an advanced setting for a Redis™ Database Instance (Redis™ cluster). Settings added upon database engine initialization can only be defined once, and cannot, therefore, be updated.
128
+ *
129
+ * @param request - The request {@link SetClusterSettingsRequest}
130
+ * @returns A Promise of ClusterSettingsResponse
131
+ */
132
+ setClusterSettings: (request: Readonly<SetClusterSettingsRequest>) => Promise<ClusterSettingsResponse>;
133
+ /**
134
+ * Set ACL rules for a cluster. Replace all the ACL rules of a Redis™ Database Instance (Redis™ cluster).
135
+ *
136
+ * @param request - The request {@link SetAclRulesRequest}
137
+ * @returns A Promise of SetAclRulesResponse
138
+ */
139
+ setAclRules: (request: Readonly<SetAclRulesRequest>) => Promise<SetAclRulesResponse>;
140
+ /**
141
+ * Add ACL rules for a cluster. Add an additional ACL rule to a Redis™ Database Instance (Redis™ cluster).
142
+ *
143
+ * @param request - The request {@link AddAclRulesRequest}
144
+ * @returns A Promise of AddAclRulesResponse
145
+ */
146
+ addAclRules: (request: Readonly<AddAclRulesRequest>) => Promise<AddAclRulesResponse>;
147
+ /**
148
+ * Delete an ACL rule for a cluster. Delete an ACL rule of a Redis™ Database Instance (Redis™ cluster). You must specify the `acl_id` of the rule you want to delete in your request.
149
+ *
150
+ * @param request - The request {@link DeleteAclRuleRequest}
151
+ * @returns A Promise of Cluster
152
+ */
153
+ deleteAclRule: (request: Readonly<DeleteAclRuleRequest>) => Promise<Cluster>;
154
+ /**
155
+ * Get an ACL rule. Retrieve information about an ACL rule of a Redis™ Database Instance (Redis™ cluster). You must specify the `acl_id` of the rule in your request.
156
+ *
157
+ * @param request - The request {@link GetAclRuleRequest}
158
+ * @returns A Promise of ACLRule
159
+ */
160
+ getAclRule: (request: Readonly<GetAclRuleRequest>) => Promise<ACLRule>;
161
+ /**
162
+ * Set endpoints for a cluster. Update an endpoint for a Redis™ Database Instance (Redis™ cluster). You must specify the `cluster_id` and the `endpoints` parameters in your request.
163
+ *
164
+ * @param request - The request {@link SetEndpointsRequest}
165
+ * @returns A Promise of SetEndpointsResponse
166
+ */
167
+ setEndpoints: (request: Readonly<SetEndpointsRequest>) => Promise<SetEndpointsResponse>;
168
+ /**
169
+ * Add endpoints for a cluster. Add a new endpoint for a Redis™ Database Instance (Redis™ cluster). You can add `private_network` or `public_network` specifications to the body of the request.
170
+ *
171
+ * @param request - The request {@link AddEndpointsRequest}
172
+ * @returns A Promise of AddEndpointsResponse
173
+ */
174
+ addEndpoints: (request: Readonly<AddEndpointsRequest>) => Promise<AddEndpointsResponse>;
175
+ /**
176
+ * Delete an endpoint for a cluster. Delete the endpoint of a Redis™ Database Instance (Redis™ cluster). You must specify the `region` and `endpoint_id` parameters of the endpoint you want to delete. Note that might need to update any environment configurations that point to the deleted endpoint.
177
+ *
178
+ * @param request - The request {@link DeleteEndpointRequest}
179
+ * @returns A Promise of Cluster
180
+ */
181
+ deleteEndpoint: (request: Readonly<DeleteEndpointRequest>) => Promise<Cluster>;
182
+ /**
183
+ * Get an endpoint. Retrieve information about a Redis™ Database Instance (Redis™ cluster) endpoint. Full details about the endpoint, like `ips`, `port`, `private_network` and `public_network` specifications are returned in the response.
184
+ *
185
+ * @param request - The request {@link GetEndpointRequest}
186
+ * @returns A Promise of Endpoint
187
+ */
188
+ getEndpoint: (request: Readonly<GetEndpointRequest>) => Promise<Endpoint>;
189
+ /**
190
+ * Update an endpoint. Update information about a Redis™ Database Instance (Redis™ cluster) endpoint. Full details about the endpoint, like `ips`, `port`, `private_network` and `public_network` specifications are returned in the response.
191
+ *
192
+ * @param request - The request {@link UpdateEndpointRequest}
193
+ * @returns A Promise of Endpoint
194
+ */
195
+ updateEndpoint: (request: Readonly<UpdateEndpointRequest>) => Promise<Endpoint>;
196
+ }
@@ -0,0 +1,151 @@
1
+ import { CLUSTER_TRANSIENT_STATUSES } from "./content.gen.js";
2
+ import { marshalAddAclRulesRequest, marshalAddClusterSettingsRequest, marshalAddEndpointsRequest, marshalCreateClusterRequest, marshalMigrateClusterRequest, marshalSetAclRulesRequest, marshalSetClusterSettingsRequest, marshalSetEndpointsRequest, marshalUpdateClusterRequest, marshalUpdateEndpointRequest, unmarshalACLRule, unmarshalAddAclRulesResponse, unmarshalAddEndpointsResponse, unmarshalCluster, unmarshalClusterMetricsResponse, unmarshalClusterSettingsResponse, unmarshalEndpoint, unmarshalListClusterVersionsResponse, unmarshalListClustersResponse, unmarshalListNodeTypesResponse, unmarshalSetAclRulesResponse, unmarshalSetEndpointsResponse } from "./marshalling.gen.js";
3
+ import { API as API$1, enrichForPagination, toApiLocality, urlParams, validatePathParam, waitForResource } from "@scaleway/sdk-client";
4
+ //#region src/v1/api.gen.ts
5
+ const jsonContentHeaders = { "Content-Type": "application/json; charset=utf-8" };
6
+ /**
7
+ * Managed Database for Redis™ API.
8
+
9
+ This API allows you to manage your Managed Databases for Redis™.
10
+ */
11
+ var API = class extends API$1 {
12
+ constructor(..._args) {
13
+ super(..._args);
14
+ this.createCluster = (request) => this.client.fetch({
15
+ body: JSON.stringify(marshalCreateClusterRequest(request, this.client.settings)),
16
+ headers: jsonContentHeaders,
17
+ method: "POST",
18
+ path: `/redis/v1/zones/${validatePathParam("zone", request.zone ?? this.client.settings.defaultZone)}/clusters`
19
+ }, unmarshalCluster);
20
+ this.updateCluster = (request) => this.client.fetch({
21
+ body: JSON.stringify(marshalUpdateClusterRequest(request, this.client.settings)),
22
+ headers: jsonContentHeaders,
23
+ method: "PATCH",
24
+ path: `/redis/v1/zones/${validatePathParam("zone", request.zone ?? this.client.settings.defaultZone)}/clusters/${validatePathParam("clusterId", request.clusterId)}`
25
+ }, unmarshalCluster);
26
+ this.getCluster = (request) => this.client.fetch({
27
+ method: "GET",
28
+ path: `/redis/v1/zones/${validatePathParam("zone", request.zone ?? this.client.settings.defaultZone)}/clusters/${validatePathParam("clusterId", request.clusterId)}`
29
+ }, unmarshalCluster);
30
+ this.waitForCluster = (request, options) => waitForResource(options?.stop ?? ((res) => Promise.resolve(!CLUSTER_TRANSIENT_STATUSES.includes(res.status))), this.getCluster, request, options);
31
+ this.pageOfListClusters = (request = {}) => this.client.fetch({
32
+ method: "GET",
33
+ path: `/redis/v1/zones/${validatePathParam("zone", request.zone ?? this.client.settings.defaultZone)}/clusters`,
34
+ urlParams: urlParams(["name", request.name], ["order_by", request.orderBy], ["organization_id", request.organizationId], ["page", request.page], ["page_size", request.pageSize ?? this.client.settings.defaultPageSize], ["project_id", request.projectId], ["tags", request.tags], ["version", request.version])
35
+ }, unmarshalListClustersResponse);
36
+ this.listClusters = (request = {}) => enrichForPagination("clusters", this.pageOfListClusters, request);
37
+ this.migrateCluster = (request) => this.client.fetch({
38
+ body: JSON.stringify(marshalMigrateClusterRequest(request, this.client.settings)),
39
+ headers: jsonContentHeaders,
40
+ method: "POST",
41
+ path: `/redis/v1/zones/${validatePathParam("zone", request.zone ?? this.client.settings.defaultZone)}/clusters/${validatePathParam("clusterId", request.clusterId)}/migrate`
42
+ }, unmarshalCluster);
43
+ this.deleteCluster = (request) => this.client.fetch({
44
+ method: "DELETE",
45
+ path: `/redis/v1/zones/${validatePathParam("zone", request.zone ?? this.client.settings.defaultZone)}/clusters/${validatePathParam("clusterId", request.clusterId)}`
46
+ }, unmarshalCluster);
47
+ this.getClusterMetrics = (request) => this.client.fetch({
48
+ method: "GET",
49
+ path: `/redis/v1/zones/${validatePathParam("zone", request.zone ?? this.client.settings.defaultZone)}/clusters/${validatePathParam("clusterId", request.clusterId)}/metrics`,
50
+ urlParams: urlParams(["end_at", request.endAt], ["metric_name", request.metricName], ["start_at", request.startAt])
51
+ }, unmarshalClusterMetricsResponse);
52
+ this.pageOfListNodeTypes = (request) => this.client.fetch({
53
+ method: "GET",
54
+ path: `/redis/v1/zones/${validatePathParam("zone", request.zone ?? this.client.settings.defaultZone)}/node-types`,
55
+ urlParams: urlParams(["include_disabled_types", request.includeDisabledTypes], ["page", request.page], ["page_size", request.pageSize ?? this.client.settings.defaultPageSize])
56
+ }, unmarshalListNodeTypesResponse);
57
+ this.listNodeTypes = (request) => enrichForPagination("nodeTypes", this.pageOfListNodeTypes, request);
58
+ this.pageOfListClusterVersions = (request) => this.client.fetch({
59
+ method: "GET",
60
+ path: `/redis/v1/zones/${validatePathParam("zone", request.zone ?? this.client.settings.defaultZone)}/cluster-versions`,
61
+ urlParams: urlParams(["include_beta", request.includeBeta], ["include_deprecated", request.includeDeprecated], ["include_disabled", request.includeDisabled], ["page", request.page], ["page_size", request.pageSize ?? this.client.settings.defaultPageSize], ["version", request.version])
62
+ }, unmarshalListClusterVersionsResponse);
63
+ this.listClusterVersions = (request) => enrichForPagination("versions", this.pageOfListClusterVersions, request);
64
+ this.getClusterCertificate = (request) => this.client.fetch({
65
+ method: "GET",
66
+ path: `/redis/v1/zones/${validatePathParam("zone", request.zone ?? this.client.settings.defaultZone)}/clusters/${validatePathParam("clusterId", request.clusterId)}/certificate`,
67
+ urlParams: urlParams(["dl", 1]),
68
+ responseType: "blob"
69
+ });
70
+ this.renewClusterCertificate = (request) => this.client.fetch({
71
+ body: "{}",
72
+ headers: jsonContentHeaders,
73
+ method: "POST",
74
+ path: `/redis/v1/zones/${validatePathParam("zone", request.zone ?? this.client.settings.defaultZone)}/clusters/${validatePathParam("clusterId", request.clusterId)}/renew-certificate`
75
+ }, unmarshalCluster);
76
+ this.addClusterSettings = (request) => this.client.fetch({
77
+ body: JSON.stringify(marshalAddClusterSettingsRequest(request, this.client.settings)),
78
+ headers: jsonContentHeaders,
79
+ method: "POST",
80
+ path: `/redis/v1/zones/${validatePathParam("zone", request.zone ?? this.client.settings.defaultZone)}/clusters/${validatePathParam("clusterId", request.clusterId)}/settings`
81
+ }, unmarshalClusterSettingsResponse);
82
+ this.deleteClusterSetting = (request) => this.client.fetch({
83
+ method: "DELETE",
84
+ path: `/redis/v1/zones/${validatePathParam("zone", request.zone ?? this.client.settings.defaultZone)}/clusters/${validatePathParam("clusterId", request.clusterId)}/settings/${validatePathParam("settingName", request.settingName)}`
85
+ }, unmarshalCluster);
86
+ this.setClusterSettings = (request) => this.client.fetch({
87
+ body: JSON.stringify(marshalSetClusterSettingsRequest(request, this.client.settings)),
88
+ headers: jsonContentHeaders,
89
+ method: "PUT",
90
+ path: `/redis/v1/zones/${validatePathParam("zone", request.zone ?? this.client.settings.defaultZone)}/clusters/${validatePathParam("clusterId", request.clusterId)}/settings`
91
+ }, unmarshalClusterSettingsResponse);
92
+ this.setAclRules = (request) => this.client.fetch({
93
+ body: JSON.stringify(marshalSetAclRulesRequest(request, this.client.settings)),
94
+ headers: jsonContentHeaders,
95
+ method: "PUT",
96
+ path: `/redis/v1/zones/${validatePathParam("zone", request.zone ?? this.client.settings.defaultZone)}/clusters/${validatePathParam("clusterId", request.clusterId)}/acls`
97
+ }, unmarshalSetAclRulesResponse);
98
+ this.addAclRules = (request) => this.client.fetch({
99
+ body: JSON.stringify(marshalAddAclRulesRequest(request, this.client.settings)),
100
+ headers: jsonContentHeaders,
101
+ method: "POST",
102
+ path: `/redis/v1/zones/${validatePathParam("zone", request.zone ?? this.client.settings.defaultZone)}/clusters/${validatePathParam("clusterId", request.clusterId)}/acls`
103
+ }, unmarshalAddAclRulesResponse);
104
+ this.deleteAclRule = (request) => this.client.fetch({
105
+ method: "DELETE",
106
+ path: `/redis/v1/zones/${validatePathParam("zone", request.zone ?? this.client.settings.defaultZone)}/acls/${validatePathParam("aclId", request.aclId)}`
107
+ }, unmarshalCluster);
108
+ this.getAclRule = (request) => this.client.fetch({
109
+ method: "GET",
110
+ path: `/redis/v1/zones/${validatePathParam("zone", request.zone ?? this.client.settings.defaultZone)}/acls/${validatePathParam("aclId", request.aclId)}`
111
+ }, unmarshalACLRule);
112
+ this.setEndpoints = (request) => this.client.fetch({
113
+ body: JSON.stringify(marshalSetEndpointsRequest(request, this.client.settings)),
114
+ headers: jsonContentHeaders,
115
+ method: "PUT",
116
+ path: `/redis/v1/zones/${validatePathParam("zone", request.zone ?? this.client.settings.defaultZone)}/clusters/${validatePathParam("clusterId", request.clusterId)}/endpoints`
117
+ }, unmarshalSetEndpointsResponse);
118
+ this.addEndpoints = (request) => this.client.fetch({
119
+ body: JSON.stringify(marshalAddEndpointsRequest(request, this.client.settings)),
120
+ headers: jsonContentHeaders,
121
+ method: "POST",
122
+ path: `/redis/v1/zones/${validatePathParam("zone", request.zone ?? this.client.settings.defaultZone)}/clusters/${validatePathParam("clusterId", request.clusterId)}/endpoints`
123
+ }, unmarshalAddEndpointsResponse);
124
+ this.deleteEndpoint = (request) => this.client.fetch({
125
+ method: "DELETE",
126
+ path: `/redis/v1/zones/${validatePathParam("zone", request.zone ?? this.client.settings.defaultZone)}/endpoints/${validatePathParam("endpointId", request.endpointId)}`
127
+ }, unmarshalCluster);
128
+ this.getEndpoint = (request) => this.client.fetch({
129
+ method: "GET",
130
+ path: `/redis/v1/zones/${validatePathParam("zone", request.zone ?? this.client.settings.defaultZone)}/endpoints/${validatePathParam("endpointId", request.endpointId)}`
131
+ }, unmarshalEndpoint);
132
+ this.updateEndpoint = (request) => this.client.fetch({
133
+ body: JSON.stringify(marshalUpdateEndpointRequest(request, this.client.settings)),
134
+ headers: jsonContentHeaders,
135
+ method: "PATCH",
136
+ path: `/redis/v1/zones/${validatePathParam("zone", request.zone ?? this.client.settings.defaultZone)}/endpoints/${validatePathParam("endpointId", request.endpointId)}`
137
+ }, unmarshalEndpoint);
138
+ }
139
+ static {
140
+ this.LOCALITY = toApiLocality({ zones: [
141
+ "fr-par-1",
142
+ "fr-par-2",
143
+ "nl-ams-1",
144
+ "nl-ams-2",
145
+ "pl-waw-1",
146
+ "pl-waw-2"
147
+ ] });
148
+ }
149
+ };
150
+ //#endregion
151
+ export { API };
@@ -0,0 +1,3 @@
1
+ import type { ClusterStatus } from './types.gen.js';
2
+ /** Lists transient statutes of the enum {@link ClusterStatus}. */
3
+ export declare const CLUSTER_TRANSIENT_STATUSES: ClusterStatus[];
@@ -0,0 +1,11 @@
1
+ //#region src/v1/content.gen.ts
2
+ /** Lists transient statutes of the enum {@link ClusterStatus}. */
3
+ const CLUSTER_TRANSIENT_STATUSES = [
4
+ "provisioning",
5
+ "configuring",
6
+ "deleting",
7
+ "autohealing",
8
+ "initializing"
9
+ ];
10
+ //#endregion
11
+ export { CLUSTER_TRANSIENT_STATUSES };
@@ -0,0 +1,4 @@
1
+ export { API, } from './api.gen.js';
2
+ export * from './content.gen.js';
3
+ export * from './marshalling.gen.js';
4
+ export type { ACLRule, ACLRuleSpec, AddAclRulesRequest, AddAclRulesResponse, AddClusterSettingsRequest, AddEndpointsRequest, AddEndpointsResponse, AvailableClusterSetting, AvailableClusterSettingPropertyType, Cluster, ClusterMetricsResponse, ClusterSetting, ClusterSettingsResponse, ClusterStatus, ClusterVersion, CreateClusterRequest, DeleteAclRuleRequest, DeleteClusterRequest, DeleteClusterSettingRequest, DeleteEndpointRequest, Endpoint, EndpointSpec, EndpointSpecPrivateNetworkSpec, EndpointSpecPrivateNetworkSpecIpamConfig, EndpointSpecPublicNetworkSpec, GetAclRuleRequest, GetClusterCertificateRequest, GetClusterMetricsRequest, GetClusterRequest, GetEndpointRequest, ListClusterVersionsRequest, ListClusterVersionsResponse, ListClustersRequest, ListClustersRequestOrderBy, ListClustersResponse, ListNodeTypesRequest, ListNodeTypesResponse, MigrateClusterRequest, NodeType, NodeTypeStock, PrivateNetwork, PrivateNetworkProvisioningMode, PublicNetwork, RenewClusterCertificateRequest, SetAclRulesRequest, SetAclRulesResponse, SetClusterSettingsRequest, SetEndpointsRequest, SetEndpointsResponse, UpdateClusterRequest, UpdateEndpointRequest, } from './types.gen.js';
@@ -0,0 +1,33 @@
1
+ import { __exportAll } from "../_virtual/_rolldown/runtime.js";
2
+ import { CLUSTER_TRANSIENT_STATUSES } from "./content.gen.js";
3
+ import { marshalAddAclRulesRequest, marshalAddClusterSettingsRequest, marshalAddEndpointsRequest, marshalCreateClusterRequest, marshalMigrateClusterRequest, marshalSetAclRulesRequest, marshalSetClusterSettingsRequest, marshalSetEndpointsRequest, marshalUpdateClusterRequest, marshalUpdateEndpointRequest, unmarshalACLRule, unmarshalAddAclRulesResponse, unmarshalAddEndpointsResponse, unmarshalCluster, unmarshalClusterMetricsResponse, unmarshalClusterSettingsResponse, unmarshalEndpoint, unmarshalListClusterVersionsResponse, unmarshalListClustersResponse, unmarshalListNodeTypesResponse, unmarshalSetAclRulesResponse, unmarshalSetEndpointsResponse } from "./marshalling.gen.js";
4
+ import { API } from "./api.gen.js";
5
+ //#region src/v1/index.gen.ts
6
+ var index_gen_exports = /* @__PURE__ */ __exportAll({
7
+ API: () => API,
8
+ CLUSTER_TRANSIENT_STATUSES: () => CLUSTER_TRANSIENT_STATUSES,
9
+ marshalAddAclRulesRequest: () => marshalAddAclRulesRequest,
10
+ marshalAddClusterSettingsRequest: () => marshalAddClusterSettingsRequest,
11
+ marshalAddEndpointsRequest: () => marshalAddEndpointsRequest,
12
+ marshalCreateClusterRequest: () => marshalCreateClusterRequest,
13
+ marshalMigrateClusterRequest: () => marshalMigrateClusterRequest,
14
+ marshalSetAclRulesRequest: () => marshalSetAclRulesRequest,
15
+ marshalSetClusterSettingsRequest: () => marshalSetClusterSettingsRequest,
16
+ marshalSetEndpointsRequest: () => marshalSetEndpointsRequest,
17
+ marshalUpdateClusterRequest: () => marshalUpdateClusterRequest,
18
+ marshalUpdateEndpointRequest: () => marshalUpdateEndpointRequest,
19
+ unmarshalACLRule: () => unmarshalACLRule,
20
+ unmarshalAddAclRulesResponse: () => unmarshalAddAclRulesResponse,
21
+ unmarshalAddEndpointsResponse: () => unmarshalAddEndpointsResponse,
22
+ unmarshalCluster: () => unmarshalCluster,
23
+ unmarshalClusterMetricsResponse: () => unmarshalClusterMetricsResponse,
24
+ unmarshalClusterSettingsResponse: () => unmarshalClusterSettingsResponse,
25
+ unmarshalEndpoint: () => unmarshalEndpoint,
26
+ unmarshalListClusterVersionsResponse: () => unmarshalListClusterVersionsResponse,
27
+ unmarshalListClustersResponse: () => unmarshalListClustersResponse,
28
+ unmarshalListNodeTypesResponse: () => unmarshalListNodeTypesResponse,
29
+ unmarshalSetAclRulesResponse: () => unmarshalSetAclRulesResponse,
30
+ unmarshalSetEndpointsResponse: () => unmarshalSetEndpointsResponse
31
+ });
32
+ //#endregion
33
+ export { API, CLUSTER_TRANSIENT_STATUSES, index_gen_exports, marshalAddAclRulesRequest, marshalAddClusterSettingsRequest, marshalAddEndpointsRequest, marshalCreateClusterRequest, marshalMigrateClusterRequest, marshalSetAclRulesRequest, marshalSetClusterSettingsRequest, marshalSetEndpointsRequest, marshalUpdateClusterRequest, marshalUpdateEndpointRequest, unmarshalACLRule, unmarshalAddAclRulesResponse, unmarshalAddEndpointsResponse, unmarshalCluster, unmarshalClusterMetricsResponse, unmarshalClusterSettingsResponse, unmarshalEndpoint, unmarshalListClusterVersionsResponse, unmarshalListClustersResponse, unmarshalListNodeTypesResponse, unmarshalSetAclRulesResponse, unmarshalSetEndpointsResponse };
@@ -0,0 +1,24 @@
1
+ import type { DefaultValues } from '@scaleway/sdk-client';
2
+ import type { ACLRule, Endpoint, Cluster, AddAclRulesResponse, AddEndpointsResponse, ClusterMetricsResponse, ClusterSettingsResponse, ListClusterVersionsResponse, ListClustersResponse, ListNodeTypesResponse, SetAclRulesResponse, SetEndpointsResponse, AddAclRulesRequest, AddClusterSettingsRequest, AddEndpointsRequest, CreateClusterRequest, MigrateClusterRequest, SetAclRulesRequest, SetClusterSettingsRequest, SetEndpointsRequest, UpdateClusterRequest, UpdateEndpointRequest } from './types.gen.js';
3
+ export declare const unmarshalACLRule: (data: unknown) => ACLRule;
4
+ export declare const unmarshalEndpoint: (data: unknown) => Endpoint;
5
+ export declare const unmarshalCluster: (data: unknown) => Cluster;
6
+ export declare const unmarshalAddAclRulesResponse: (data: unknown) => AddAclRulesResponse;
7
+ export declare const unmarshalAddEndpointsResponse: (data: unknown) => AddEndpointsResponse;
8
+ export declare const unmarshalClusterMetricsResponse: (data: unknown) => ClusterMetricsResponse;
9
+ export declare const unmarshalClusterSettingsResponse: (data: unknown) => ClusterSettingsResponse;
10
+ export declare const unmarshalListClusterVersionsResponse: (data: unknown) => ListClusterVersionsResponse;
11
+ export declare const unmarshalListClustersResponse: (data: unknown) => ListClustersResponse;
12
+ export declare const unmarshalListNodeTypesResponse: (data: unknown) => ListNodeTypesResponse;
13
+ export declare const unmarshalSetAclRulesResponse: (data: unknown) => SetAclRulesResponse;
14
+ export declare const unmarshalSetEndpointsResponse: (data: unknown) => SetEndpointsResponse;
15
+ export declare const marshalAddAclRulesRequest: (request: AddAclRulesRequest, defaults: DefaultValues) => Record<string, unknown>;
16
+ export declare const marshalAddClusterSettingsRequest: (request: AddClusterSettingsRequest, defaults: DefaultValues) => Record<string, unknown>;
17
+ export declare const marshalAddEndpointsRequest: (request: AddEndpointsRequest, defaults: DefaultValues) => Record<string, unknown>;
18
+ export declare const marshalCreateClusterRequest: (request: CreateClusterRequest, defaults: DefaultValues) => Record<string, unknown>;
19
+ export declare const marshalMigrateClusterRequest: (request: MigrateClusterRequest, defaults: DefaultValues) => Record<string, unknown>;
20
+ export declare const marshalSetAclRulesRequest: (request: SetAclRulesRequest, defaults: DefaultValues) => Record<string, unknown>;
21
+ export declare const marshalSetClusterSettingsRequest: (request: SetClusterSettingsRequest, defaults: DefaultValues) => Record<string, unknown>;
22
+ export declare const marshalSetEndpointsRequest: (request: SetEndpointsRequest, defaults: DefaultValues) => Record<string, unknown>;
23
+ export declare const marshalUpdateClusterRequest: (request: UpdateClusterRequest, defaults: DefaultValues) => Record<string, unknown>;
24
+ export declare const marshalUpdateEndpointRequest: (request: UpdateEndpointRequest, defaults: DefaultValues) => Record<string, unknown>;