@nebius/js-sdk 0.2.20 → 0.2.21

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,1363 @@
1
+ import { Long, unknownFieldsSymbol } from "../../../../runtime/protos/index.js";
2
+ import type { Dayjs, Duration, MessageFns, EnumInstance, EnumClass } from "../../../../runtime/protos/index.js";
3
+ import { customJson } from "../../../../runtime/util/logging.js";
4
+ import { ChannelCredentials, Client, ClientUnaryCall, ClientOptions, CallOptions, Metadata, ServiceError as GrpcServiceError, handleUnaryCall, UntypedServiceImplementation } from "@grpc/grpc-js";
5
+ import type { SDKInterface } from "../../../../sdk.js";
6
+ import { Request as SDKRequestClass, type RetryOptions } from "../../../../runtime/request.js";
7
+ import { Operation as OperationWrapper } from "../../../../runtime/operation.js";
8
+ import { GetOperationRequest, Operation, OperationService, ResourceMetadata } from "../../common/v1/index.js";
9
+ export interface AsymmetricSignHashRequest {
10
+ $type: "nebius.kms.v1.AsymmetricSignHashRequest";
11
+ [unknownFieldsSymbol]?: Uint8Array | undefined;
12
+ [customJson]?: () => unknown;
13
+ /**
14
+ * ID of the asymmetric KMS key to use for signing the hash.
15
+ *
16
+ */
17
+ keyId: string;
18
+ /**
19
+ * Hash to sign.
20
+ *
21
+ */
22
+ hash: Uint8Array;
23
+ }
24
+ export declare const AsymmetricSignHashRequest: MessageFns<AsymmetricSignHashRequest, "nebius.kms.v1.AsymmetricSignHashRequest">;
25
+ export interface AsymmetricSignHashResponse {
26
+ $type: "nebius.kms.v1.AsymmetricSignHashResponse";
27
+ [unknownFieldsSymbol]?: Uint8Array | undefined;
28
+ [customJson]?: () => unknown;
29
+ /**
30
+ * ID of the asymmetric KMS key used to produce the signature.
31
+ *
32
+ */
33
+ keyId: string;
34
+ /**
35
+ * Value of signature.
36
+ *
37
+ */
38
+ signature: Uint8Array;
39
+ }
40
+ export declare const AsymmetricSignHashResponse: MessageFns<AsymmetricSignHashResponse, "nebius.kms.v1.AsymmetricSignHashResponse">;
41
+ export interface AsymmetricGetPublicKeyRequest {
42
+ $type: "nebius.kms.v1.AsymmetricGetPublicKeyRequest";
43
+ [unknownFieldsSymbol]?: Uint8Array | undefined;
44
+ [customJson]?: () => unknown;
45
+ /**
46
+ * ID of the asymmetric KMS key whose public key should be returned.
47
+ *
48
+ */
49
+ keyId: string;
50
+ }
51
+ export declare const AsymmetricGetPublicKeyRequest: MessageFns<AsymmetricGetPublicKeyRequest, "nebius.kms.v1.AsymmetricGetPublicKeyRequest">;
52
+ export interface AsymmetricGetPublicKeyResponse {
53
+ $type: "nebius.kms.v1.AsymmetricGetPublicKeyResponse";
54
+ [unknownFieldsSymbol]?: Uint8Array | undefined;
55
+ [customJson]?: () => unknown;
56
+ /**
57
+ * ID of the asymmetric KMS key whose public key was returned.
58
+ *
59
+ */
60
+ keyId: string;
61
+ /**
62
+ * Public key value.
63
+ * The value is a PEM-encoded X.509 public key, also known as SubjectPublicKeyInfo (SPKI), as defined in RFC 5280.
64
+ *
65
+ */
66
+ publicKey: string;
67
+ }
68
+ export declare const AsymmetricGetPublicKeyResponse: MessageFns<AsymmetricGetPublicKeyResponse, "nebius.kms.v1.AsymmetricGetPublicKeyResponse">;
69
+ export interface AsymmetricDecryptRequest {
70
+ $type: "nebius.kms.v1.AsymmetricDecryptRequest";
71
+ [unknownFieldsSymbol]?: Uint8Array | undefined;
72
+ [customJson]?: () => unknown;
73
+ /**
74
+ * ID of the asymmetric KMS key.
75
+ *
76
+ */
77
+ keyId: string;
78
+ /**
79
+ * cipher text to be decrypted.
80
+ *
81
+ */
82
+ ciphertext: Uint8Array;
83
+ }
84
+ export declare const AsymmetricDecryptRequest: MessageFns<AsymmetricDecryptRequest, "nebius.kms.v1.AsymmetricDecryptRequest">;
85
+ export interface AsymmetricDecryptResponse {
86
+ $type: "nebius.kms.v1.AsymmetricDecryptResponse";
87
+ [unknownFieldsSymbol]?: Uint8Array | undefined;
88
+ [customJson]?: () => unknown;
89
+ /**
90
+ * ID of the asymmetric KMS key that was used for decryption.
91
+ *
92
+ */
93
+ keyId: string;
94
+ /**
95
+ * Decrypted plaintext.
96
+ *
97
+ */
98
+ plaintext: Uint8Array;
99
+ }
100
+ export declare const AsymmetricDecryptResponse: MessageFns<AsymmetricDecryptResponse, "nebius.kms.v1.AsymmetricDecryptResponse">;
101
+ export type AsymmetricCryptoServiceServiceDescription = typeof AsymmetricCryptoServiceServiceDescription;
102
+ export declare const AsymmetricCryptoServiceServiceDescription: {
103
+ readonly signHash: {
104
+ readonly path: "/nebius.kms.v1.AsymmetricCryptoService/SignHash";
105
+ readonly requestStream: false;
106
+ readonly responseStream: false;
107
+ readonly requestSerialize: (value: AsymmetricSignHashRequest) => Buffer<ArrayBuffer>;
108
+ readonly sendResetMask: false;
109
+ readonly requestDeserialize: (value: Buffer) => AsymmetricSignHashRequest;
110
+ readonly responseSerialize: (value: AsymmetricSignHashResponse) => Buffer<ArrayBuffer>;
111
+ readonly responseDeserialize: (value: Buffer) => AsymmetricSignHashResponse;
112
+ };
113
+ readonly getPublicKey: {
114
+ readonly path: "/nebius.kms.v1.AsymmetricCryptoService/GetPublicKey";
115
+ readonly requestStream: false;
116
+ readonly responseStream: false;
117
+ readonly requestSerialize: (value: AsymmetricGetPublicKeyRequest) => Buffer<ArrayBuffer>;
118
+ readonly sendResetMask: false;
119
+ readonly requestDeserialize: (value: Buffer) => AsymmetricGetPublicKeyRequest;
120
+ readonly responseSerialize: (value: AsymmetricGetPublicKeyResponse) => Buffer<ArrayBuffer>;
121
+ readonly responseDeserialize: (value: Buffer) => AsymmetricGetPublicKeyResponse;
122
+ };
123
+ readonly decrypt: {
124
+ readonly path: "/nebius.kms.v1.AsymmetricCryptoService/Decrypt";
125
+ readonly requestStream: false;
126
+ readonly responseStream: false;
127
+ readonly requestSerialize: (value: AsymmetricDecryptRequest) => Buffer<ArrayBuffer>;
128
+ readonly sendResetMask: false;
129
+ readonly requestDeserialize: (value: Buffer) => AsymmetricDecryptRequest;
130
+ readonly responseSerialize: (value: AsymmetricDecryptResponse) => Buffer<ArrayBuffer>;
131
+ readonly responseDeserialize: (value: Buffer) => AsymmetricDecryptResponse;
132
+ };
133
+ };
134
+ export interface AsymmetricCryptoServiceServer extends UntypedServiceImplementation {
135
+ signHash: handleUnaryCall<AsymmetricSignHashRequest, AsymmetricSignHashResponse>;
136
+ getPublicKey: handleUnaryCall<AsymmetricGetPublicKeyRequest, AsymmetricGetPublicKeyResponse>;
137
+ decrypt: handleUnaryCall<AsymmetricDecryptRequest, AsymmetricDecryptResponse>;
138
+ }
139
+ export interface AsymmetricCryptoServiceBaseClient extends Client {
140
+ signHash(request: AsymmetricSignHashRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: GrpcServiceError | null, response: AsymmetricSignHashResponse) => void): ClientUnaryCall;
141
+ getPublicKey(request: AsymmetricGetPublicKeyRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: GrpcServiceError | null, response: AsymmetricGetPublicKeyResponse) => void): ClientUnaryCall;
142
+ decrypt(request: AsymmetricDecryptRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: GrpcServiceError | null, response: AsymmetricDecryptResponse) => void): ClientUnaryCall;
143
+ }
144
+ export declare const AsymmetricCryptoServiceBaseClient: {
145
+ new (address: string, credentials: ChannelCredentials, options?: Partial<ClientOptions>): AsymmetricCryptoServiceBaseClient;
146
+ service: typeof AsymmetricCryptoServiceServiceDescription;
147
+ serviceName: string;
148
+ };
149
+ /**
150
+ * Data plane for KMS asymmetric cryptography operations.
151
+ *
152
+ */
153
+ export interface AsymmetricCryptoService {
154
+ $type: "nebius.kms.v1.AsymmetricCryptoService";
155
+ /**
156
+ * Signs a hashed value using an asymmetric key.
157
+ *
158
+ */
159
+ signHash(request: AsymmetricSignHashRequest): SDKRequestClass<AsymmetricSignHashRequest, AsymmetricSignHashResponse>;
160
+ signHash(request: AsymmetricSignHashRequest, metadata: Metadata): SDKRequestClass<AsymmetricSignHashRequest, AsymmetricSignHashResponse>;
161
+ signHash(request: AsymmetricSignHashRequest, metadata: Metadata, options: Partial<CallOptions> & RetryOptions): SDKRequestClass<AsymmetricSignHashRequest, AsymmetricSignHashResponse>;
162
+ /**
163
+ * Retrieves the public key of an asymmetric key pair.
164
+ *
165
+ */
166
+ getPublicKey(request: AsymmetricGetPublicKeyRequest): SDKRequestClass<AsymmetricGetPublicKeyRequest, AsymmetricGetPublicKeyResponse>;
167
+ getPublicKey(request: AsymmetricGetPublicKeyRequest, metadata: Metadata): SDKRequestClass<AsymmetricGetPublicKeyRequest, AsymmetricGetPublicKeyResponse>;
168
+ getPublicKey(request: AsymmetricGetPublicKeyRequest, metadata: Metadata, options: Partial<CallOptions> & RetryOptions): SDKRequestClass<AsymmetricGetPublicKeyRequest, AsymmetricGetPublicKeyResponse>;
169
+ /**
170
+ * Decrypts the ciphertext with the specified key.
171
+ *
172
+ */
173
+ decrypt(request: AsymmetricDecryptRequest): SDKRequestClass<AsymmetricDecryptRequest, AsymmetricDecryptResponse>;
174
+ decrypt(request: AsymmetricDecryptRequest, metadata: Metadata): SDKRequestClass<AsymmetricDecryptRequest, AsymmetricDecryptResponse>;
175
+ decrypt(request: AsymmetricDecryptRequest, metadata: Metadata, options: Partial<CallOptions> & RetryOptions): SDKRequestClass<AsymmetricDecryptRequest, AsymmetricDecryptResponse>;
176
+ }
177
+ export declare class AsymmetricCryptoService implements AsymmetricCryptoService {
178
+ private sdk;
179
+ $type: "nebius.kms.v1.AsymmetricCryptoService";
180
+ private addr;
181
+ private spec;
182
+ private apiServiceName;
183
+ constructor(sdk: SDKInterface);
184
+ signHash(request: AsymmetricSignHashRequest): SDKRequestClass<AsymmetricSignHashRequest, AsymmetricSignHashResponse>;
185
+ signHash(request: AsymmetricSignHashRequest, metadata: Metadata): SDKRequestClass<AsymmetricSignHashRequest, AsymmetricSignHashResponse>;
186
+ signHash(request: AsymmetricSignHashRequest, metadata: Metadata, options: Partial<CallOptions> & RetryOptions): SDKRequestClass<AsymmetricSignHashRequest, AsymmetricSignHashResponse>;
187
+ getPublicKey(request: AsymmetricGetPublicKeyRequest): SDKRequestClass<AsymmetricGetPublicKeyRequest, AsymmetricGetPublicKeyResponse>;
188
+ getPublicKey(request: AsymmetricGetPublicKeyRequest, metadata: Metadata): SDKRequestClass<AsymmetricGetPublicKeyRequest, AsymmetricGetPublicKeyResponse>;
189
+ getPublicKey(request: AsymmetricGetPublicKeyRequest, metadata: Metadata, options: Partial<CallOptions> & RetryOptions): SDKRequestClass<AsymmetricGetPublicKeyRequest, AsymmetricGetPublicKeyResponse>;
190
+ decrypt(request: AsymmetricDecryptRequest): SDKRequestClass<AsymmetricDecryptRequest, AsymmetricDecryptResponse>;
191
+ decrypt(request: AsymmetricDecryptRequest, metadata: Metadata): SDKRequestClass<AsymmetricDecryptRequest, AsymmetricDecryptResponse>;
192
+ decrypt(request: AsymmetricDecryptRequest, metadata: Metadata, options: Partial<CallOptions> & RetryOptions): SDKRequestClass<AsymmetricDecryptRequest, AsymmetricDecryptResponse>;
193
+ }
194
+ export interface CreateAsymmetricKeyRequest {
195
+ $type: "nebius.kms.v1.CreateAsymmetricKeyRequest";
196
+ [unknownFieldsSymbol]?: Uint8Array | undefined;
197
+ [customJson]?: () => unknown;
198
+ /**
199
+ * The metadata for the resource.
200
+ *
201
+ */
202
+ metadata?: ResourceMetadata | undefined;
203
+ /**
204
+ * The specifications for creating an asymmetric key.
205
+ *
206
+ */
207
+ spec?: AsymmetricKeySpec | undefined;
208
+ }
209
+ export declare const CreateAsymmetricKeyRequest: MessageFns<CreateAsymmetricKeyRequest, "nebius.kms.v1.CreateAsymmetricKeyRequest">;
210
+ export interface UpdateAsymmetricKeyRequest {
211
+ $type: "nebius.kms.v1.UpdateAsymmetricKeyRequest";
212
+ [unknownFieldsSymbol]?: Uint8Array | undefined;
213
+ [customJson]?: () => unknown;
214
+ /**
215
+ * The metadata for the resource.
216
+ *
217
+ */
218
+ metadata?: ResourceMetadata | undefined;
219
+ /**
220
+ * The specifications for updating an asymmetric key.
221
+ *
222
+ */
223
+ spec?: AsymmetricKeySpec | undefined;
224
+ }
225
+ export declare const UpdateAsymmetricKeyRequest: MessageFns<UpdateAsymmetricKeyRequest, "nebius.kms.v1.UpdateAsymmetricKeyRequest">;
226
+ export interface GetAsymmetricKeyRequest {
227
+ $type: "nebius.kms.v1.GetAsymmetricKeyRequest";
228
+ [unknownFieldsSymbol]?: Uint8Array | undefined;
229
+ [customJson]?: () => unknown;
230
+ /**
231
+ * ID of the asymmetric KMS key to return.
232
+ * To get the ID of an asymmetric KMS key use an [AsymmetricKeyService.List] request.
233
+ *
234
+ */
235
+ id: string;
236
+ /**
237
+ * By default, Get doesn't return resource if it is scheduled for deletion.
238
+ * If show_scheduled_for_deletion = true, the Get operation returns the resource even if it is scheduled for deletion.
239
+ * If show_scheduled_for_deletion = false, the Get method returns the NOT_FOUND gRPC status code.
240
+ *
241
+ */
242
+ showScheduledForDeletion: boolean;
243
+ }
244
+ export declare const GetAsymmetricKeyRequest: MessageFns<GetAsymmetricKeyRequest, "nebius.kms.v1.GetAsymmetricKeyRequest">;
245
+ export interface GetAsymmetricKeyByNameRequest {
246
+ $type: "nebius.kms.v1.GetAsymmetricKeyByNameRequest";
247
+ [unknownFieldsSymbol]?: Uint8Array | undefined;
248
+ [customJson]?: () => unknown;
249
+ /**
250
+ * Parent Id and name of the asymmetric KMS key to return.
251
+ * To get the name of an asymmetric KMS key use an [AsymmetricKeyService.List] request.
252
+ *
253
+ */
254
+ parentId: string;
255
+ name: string;
256
+ }
257
+ export declare const GetAsymmetricKeyByNameRequest: MessageFns<GetAsymmetricKeyByNameRequest, "nebius.kms.v1.GetAsymmetricKeyByNameRequest">;
258
+ export interface ListAsymmetricKeysRequest {
259
+ $type: "nebius.kms.v1.ListAsymmetricKeysRequest";
260
+ [unknownFieldsSymbol]?: Uint8Array | undefined;
261
+ [customJson]?: () => unknown;
262
+ /**
263
+ * ID of the container to list asymmetric KMS keys in.
264
+ *
265
+ */
266
+ parentId: string;
267
+ /**
268
+ * The maximum number of results per page to return. If the number of available
269
+ * results is larger than [page_size], the service returns a [ListAsymmetricKeysResponse.next_page_token]
270
+ * that can be used to get the next page of results in subsequent list requests.
271
+ * Default value: 100.
272
+ *
273
+ */
274
+ pageSize: Long;
275
+ /**
276
+ * Page token. To get the next page of results, set [page_token] to the
277
+ * [ListAsymmetricKeysResponse.next_page_token] returned by a previous list request.
278
+ *
279
+ */
280
+ pageToken: string;
281
+ /**
282
+ * By default, List operation doesn't include resources that are scheduled for deletion.
283
+ * If show_scheduled_for_deletion = true, the listing includes resources that are scheduled for deletion.
284
+ *
285
+ */
286
+ showScheduledForDeletion: boolean;
287
+ }
288
+ export declare const ListAsymmetricKeysRequest: MessageFns<ListAsymmetricKeysRequest, "nebius.kms.v1.ListAsymmetricKeysRequest">;
289
+ export interface ListAsymmetricKeysResponse {
290
+ $type: "nebius.kms.v1.ListAsymmetricKeysResponse";
291
+ [unknownFieldsSymbol]?: Uint8Array | undefined;
292
+ [customJson]?: () => unknown;
293
+ /**
294
+ * List of asymmetric KMS keys in the specified container.
295
+ *
296
+ */
297
+ items: AsymmetricKey[];
298
+ /**
299
+ * This token allows you to get the next page of results for list requests. If the number
300
+ * of results is greater than the specified [ListAsymmetricKeysRequest.page_size], use
301
+ * the [next_page_token] as the value for the [ListAsymmetricKeysRequest.page_token] query parameter
302
+ * in the next list request. Each subsequent list request will have its own
303
+ * [next_page_token] to continue paging through the results.
304
+ *
305
+ */
306
+ nextPageToken: string;
307
+ }
308
+ export declare const ListAsymmetricKeysResponse: MessageFns<ListAsymmetricKeysResponse, "nebius.kms.v1.ListAsymmetricKeysResponse">;
309
+ export interface DeleteAsymmetricKeyRequest {
310
+ $type: "nebius.kms.v1.DeleteAsymmetricKeyRequest";
311
+ [unknownFieldsSymbol]?: Uint8Array | undefined;
312
+ [customJson]?: () => unknown;
313
+ /**
314
+ * ID of the asymmetric KMS key to schedule for deletion.
315
+ * To get the ID of an asymmetric KMS key use an [AsymmetricKeyService.List] request.
316
+ *
317
+ */
318
+ id: string;
319
+ }
320
+ export declare const DeleteAsymmetricKeyRequest: MessageFns<DeleteAsymmetricKeyRequest, "nebius.kms.v1.DeleteAsymmetricKeyRequest">;
321
+ export interface UpdateAsymmetricKeyDeletionDelayRequest {
322
+ $type: "nebius.kms.v1.UpdateAsymmetricKeyDeletionDelayRequest";
323
+ [unknownFieldsSymbol]?: Uint8Array | undefined;
324
+ [customJson]?: () => unknown;
325
+ /**
326
+ * ID of the asymmetric KMS key scheduled for deletion.
327
+ *
328
+ */
329
+ id: string;
330
+ /**
331
+ * Deletion delay applied from the update timestamp.
332
+ * Example: "86400s" (1 day). Valid range: 86400s (1 day) to 2592000s (30 days).
333
+ *
334
+ */
335
+ deletionDelay?: Duration | undefined;
336
+ }
337
+ export declare const UpdateAsymmetricKeyDeletionDelayRequest: MessageFns<UpdateAsymmetricKeyDeletionDelayRequest, "nebius.kms.v1.UpdateAsymmetricKeyDeletionDelayRequest">;
338
+ export interface UndeleteAsymmetricKeyRequest {
339
+ $type: "nebius.kms.v1.UndeleteAsymmetricKeyRequest";
340
+ [unknownFieldsSymbol]?: Uint8Array | undefined;
341
+ [customJson]?: () => unknown;
342
+ /**
343
+ * ID of the asymmetric KMS key to restore.
344
+ *
345
+ */
346
+ id: string;
347
+ /**
348
+ * A new name in case the current one is already in use.
349
+ *
350
+ */
351
+ name: string;
352
+ }
353
+ export declare const UndeleteAsymmetricKeyRequest: MessageFns<UndeleteAsymmetricKeyRequest, "nebius.kms.v1.UndeleteAsymmetricKeyRequest">;
354
+ export type AsymmetricKeyServiceServiceDescription = typeof AsymmetricKeyServiceServiceDescription;
355
+ export declare const AsymmetricKeyServiceServiceDescription: {
356
+ readonly create: {
357
+ readonly path: "/nebius.kms.v1.AsymmetricKeyService/Create";
358
+ readonly requestStream: false;
359
+ readonly responseStream: false;
360
+ readonly requestSerialize: (value: CreateAsymmetricKeyRequest) => Buffer<ArrayBuffer>;
361
+ readonly sendResetMask: false;
362
+ readonly requestDeserialize: (value: Buffer) => CreateAsymmetricKeyRequest;
363
+ readonly responseSerialize: (value: Operation) => Buffer<ArrayBuffer>;
364
+ readonly responseDeserialize: (value: Buffer) => Operation;
365
+ };
366
+ readonly update: {
367
+ readonly path: "/nebius.kms.v1.AsymmetricKeyService/Update";
368
+ readonly requestStream: false;
369
+ readonly responseStream: false;
370
+ readonly requestSerialize: (value: UpdateAsymmetricKeyRequest) => Buffer<ArrayBuffer>;
371
+ readonly sendResetMask: true;
372
+ readonly requestDeserialize: (value: Buffer) => UpdateAsymmetricKeyRequest;
373
+ readonly responseSerialize: (value: Operation) => Buffer<ArrayBuffer>;
374
+ readonly responseDeserialize: (value: Buffer) => Operation;
375
+ };
376
+ readonly get: {
377
+ readonly path: "/nebius.kms.v1.AsymmetricKeyService/Get";
378
+ readonly requestStream: false;
379
+ readonly responseStream: false;
380
+ readonly requestSerialize: (value: GetAsymmetricKeyRequest) => Buffer<ArrayBuffer>;
381
+ readonly sendResetMask: false;
382
+ readonly requestDeserialize: (value: Buffer) => GetAsymmetricKeyRequest;
383
+ readonly responseSerialize: (value: AsymmetricKey) => Buffer<ArrayBuffer>;
384
+ readonly responseDeserialize: (value: Buffer) => AsymmetricKey;
385
+ };
386
+ readonly getByName: {
387
+ readonly path: "/nebius.kms.v1.AsymmetricKeyService/GetByName";
388
+ readonly requestStream: false;
389
+ readonly responseStream: false;
390
+ readonly requestSerialize: (value: GetAsymmetricKeyByNameRequest) => Buffer<ArrayBuffer>;
391
+ readonly sendResetMask: false;
392
+ readonly requestDeserialize: (value: Buffer) => GetAsymmetricKeyByNameRequest;
393
+ readonly responseSerialize: (value: AsymmetricKey) => Buffer<ArrayBuffer>;
394
+ readonly responseDeserialize: (value: Buffer) => AsymmetricKey;
395
+ };
396
+ readonly list: {
397
+ readonly path: "/nebius.kms.v1.AsymmetricKeyService/List";
398
+ readonly requestStream: false;
399
+ readonly responseStream: false;
400
+ readonly requestSerialize: (value: ListAsymmetricKeysRequest) => Buffer<ArrayBuffer>;
401
+ readonly sendResetMask: false;
402
+ readonly requestDeserialize: (value: Buffer) => ListAsymmetricKeysRequest;
403
+ readonly responseSerialize: (value: ListAsymmetricKeysResponse) => Buffer<ArrayBuffer>;
404
+ readonly responseDeserialize: (value: Buffer) => ListAsymmetricKeysResponse;
405
+ };
406
+ readonly delete: {
407
+ readonly path: "/nebius.kms.v1.AsymmetricKeyService/Delete";
408
+ readonly requestStream: false;
409
+ readonly responseStream: false;
410
+ readonly requestSerialize: (value: DeleteAsymmetricKeyRequest) => Buffer<ArrayBuffer>;
411
+ readonly sendResetMask: false;
412
+ readonly requestDeserialize: (value: Buffer) => DeleteAsymmetricKeyRequest;
413
+ readonly responseSerialize: (value: Operation) => Buffer<ArrayBuffer>;
414
+ readonly responseDeserialize: (value: Buffer) => Operation;
415
+ };
416
+ readonly updateDeletionDelay: {
417
+ readonly path: "/nebius.kms.v1.AsymmetricKeyService/UpdateDeletionDelay";
418
+ readonly requestStream: false;
419
+ readonly responseStream: false;
420
+ readonly requestSerialize: (value: UpdateAsymmetricKeyDeletionDelayRequest) => Buffer<ArrayBuffer>;
421
+ readonly sendResetMask: false;
422
+ readonly requestDeserialize: (value: Buffer) => UpdateAsymmetricKeyDeletionDelayRequest;
423
+ readonly responseSerialize: (value: Operation) => Buffer<ArrayBuffer>;
424
+ readonly responseDeserialize: (value: Buffer) => Operation;
425
+ };
426
+ readonly undelete: {
427
+ readonly path: "/nebius.kms.v1.AsymmetricKeyService/Undelete";
428
+ readonly requestStream: false;
429
+ readonly responseStream: false;
430
+ readonly requestSerialize: (value: UndeleteAsymmetricKeyRequest) => Buffer<ArrayBuffer>;
431
+ readonly sendResetMask: false;
432
+ readonly requestDeserialize: (value: Buffer) => UndeleteAsymmetricKeyRequest;
433
+ readonly responseSerialize: (value: Operation) => Buffer<ArrayBuffer>;
434
+ readonly responseDeserialize: (value: Buffer) => Operation;
435
+ };
436
+ };
437
+ export interface AsymmetricKeyServiceServer extends UntypedServiceImplementation {
438
+ create: handleUnaryCall<CreateAsymmetricKeyRequest, Operation>;
439
+ update: handleUnaryCall<UpdateAsymmetricKeyRequest, Operation>;
440
+ get: handleUnaryCall<GetAsymmetricKeyRequest, AsymmetricKey>;
441
+ getByName: handleUnaryCall<GetAsymmetricKeyByNameRequest, AsymmetricKey>;
442
+ list: handleUnaryCall<ListAsymmetricKeysRequest, ListAsymmetricKeysResponse>;
443
+ delete: handleUnaryCall<DeleteAsymmetricKeyRequest, Operation>;
444
+ updateDeletionDelay: handleUnaryCall<UpdateAsymmetricKeyDeletionDelayRequest, Operation>;
445
+ undelete: handleUnaryCall<UndeleteAsymmetricKeyRequest, Operation>;
446
+ }
447
+ export interface AsymmetricKeyServiceBaseClient extends Client {
448
+ create(request: CreateAsymmetricKeyRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: GrpcServiceError | null, response: Operation) => void): ClientUnaryCall;
449
+ update(request: UpdateAsymmetricKeyRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: GrpcServiceError | null, response: Operation) => void): ClientUnaryCall;
450
+ get(request: GetAsymmetricKeyRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: GrpcServiceError | null, response: AsymmetricKey) => void): ClientUnaryCall;
451
+ getByName(request: GetAsymmetricKeyByNameRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: GrpcServiceError | null, response: AsymmetricKey) => void): ClientUnaryCall;
452
+ list(request: ListAsymmetricKeysRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: GrpcServiceError | null, response: ListAsymmetricKeysResponse) => void): ClientUnaryCall;
453
+ delete(request: DeleteAsymmetricKeyRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: GrpcServiceError | null, response: Operation) => void): ClientUnaryCall;
454
+ updateDeletionDelay(request: UpdateAsymmetricKeyDeletionDelayRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: GrpcServiceError | null, response: Operation) => void): ClientUnaryCall;
455
+ undelete(request: UndeleteAsymmetricKeyRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: GrpcServiceError | null, response: Operation) => void): ClientUnaryCall;
456
+ }
457
+ export declare const AsymmetricKeyServiceBaseClient: {
458
+ new (address: string, credentials: ChannelCredentials, options?: Partial<ClientOptions>): AsymmetricKeyServiceBaseClient;
459
+ service: typeof AsymmetricKeyServiceServiceDescription;
460
+ serviceName: string;
461
+ };
462
+ /**
463
+ * Set of methods for managing asymmetric keys.
464
+ *
465
+ */
466
+ export interface AsymmetricKeyService {
467
+ $type: "nebius.kms.v1.AsymmetricKeyService";
468
+ /**
469
+ * Creates an asymmetric KMS key in the specified container.
470
+ *
471
+ */
472
+ create(request: CreateAsymmetricKeyRequest): SDKRequestClass<CreateAsymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
473
+ create(request: CreateAsymmetricKeyRequest, metadata: Metadata): SDKRequestClass<CreateAsymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
474
+ create(request: CreateAsymmetricKeyRequest, metadata: Metadata, options: Partial<CallOptions> & RetryOptions): SDKRequestClass<CreateAsymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
475
+ /**
476
+ * Updates an asymmetric KMS key.
477
+ *
478
+ */
479
+ update(request: UpdateAsymmetricKeyRequest): SDKRequestClass<UpdateAsymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
480
+ update(request: UpdateAsymmetricKeyRequest, metadata: Metadata): SDKRequestClass<UpdateAsymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
481
+ update(request: UpdateAsymmetricKeyRequest, metadata: Metadata, options: Partial<CallOptions> & RetryOptions): SDKRequestClass<UpdateAsymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
482
+ /**
483
+ * Returns the specified asymmetric KMS key by id.
484
+ *
485
+ */
486
+ get(request: GetAsymmetricKeyRequest): SDKRequestClass<GetAsymmetricKeyRequest, AsymmetricKey>;
487
+ get(request: GetAsymmetricKeyRequest, metadata: Metadata): SDKRequestClass<GetAsymmetricKeyRequest, AsymmetricKey>;
488
+ get(request: GetAsymmetricKeyRequest, metadata: Metadata, options: Partial<CallOptions> & RetryOptions): SDKRequestClass<GetAsymmetricKeyRequest, AsymmetricKey>;
489
+ /**
490
+ * Returns the specified asymmetric KMS key by name.
491
+ *
492
+ */
493
+ getByName(request: GetAsymmetricKeyByNameRequest): SDKRequestClass<GetAsymmetricKeyByNameRequest, AsymmetricKey>;
494
+ getByName(request: GetAsymmetricKeyByNameRequest, metadata: Metadata): SDKRequestClass<GetAsymmetricKeyByNameRequest, AsymmetricKey>;
495
+ getByName(request: GetAsymmetricKeyByNameRequest, metadata: Metadata, options: Partial<CallOptions> & RetryOptions): SDKRequestClass<GetAsymmetricKeyByNameRequest, AsymmetricKey>;
496
+ /**
497
+ * Returns the list of asymmetric KMS keys in the specified container.
498
+ *
499
+ */
500
+ list(request: ListAsymmetricKeysRequest): SDKRequestClass<ListAsymmetricKeysRequest, ListAsymmetricKeysResponse>;
501
+ list(request: ListAsymmetricKeysRequest, metadata: Metadata): SDKRequestClass<ListAsymmetricKeysRequest, ListAsymmetricKeysResponse>;
502
+ list(request: ListAsymmetricKeysRequest, metadata: Metadata, options: Partial<CallOptions> & RetryOptions): SDKRequestClass<ListAsymmetricKeysRequest, ListAsymmetricKeysResponse>;
503
+ /**
504
+ * Schedules an asymmetric KMS key for deletion.
505
+ *
506
+ */
507
+ delete(request: DeleteAsymmetricKeyRequest): SDKRequestClass<DeleteAsymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
508
+ delete(request: DeleteAsymmetricKeyRequest, metadata: Metadata): SDKRequestClass<DeleteAsymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
509
+ delete(request: DeleteAsymmetricKeyRequest, metadata: Metadata, options: Partial<CallOptions> & RetryOptions): SDKRequestClass<DeleteAsymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
510
+ /**
511
+ * Update deletion delay for an asymmetric KMS key scheduled for deletion.
512
+ *
513
+ */
514
+ updateDeletionDelay(request: UpdateAsymmetricKeyDeletionDelayRequest): SDKRequestClass<UpdateAsymmetricKeyDeletionDelayRequest, OperationWrapper<GetOperationRequest>>;
515
+ updateDeletionDelay(request: UpdateAsymmetricKeyDeletionDelayRequest, metadata: Metadata): SDKRequestClass<UpdateAsymmetricKeyDeletionDelayRequest, OperationWrapper<GetOperationRequest>>;
516
+ updateDeletionDelay(request: UpdateAsymmetricKeyDeletionDelayRequest, metadata: Metadata, options: Partial<CallOptions> & RetryOptions): SDKRequestClass<UpdateAsymmetricKeyDeletionDelayRequest, OperationWrapper<GetOperationRequest>>;
517
+ /**
518
+ * Restores an asymmetric KMS key scheduled for deletion.
519
+ *
520
+ */
521
+ undelete(request: UndeleteAsymmetricKeyRequest): SDKRequestClass<UndeleteAsymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
522
+ undelete(request: UndeleteAsymmetricKeyRequest, metadata: Metadata): SDKRequestClass<UndeleteAsymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
523
+ undelete(request: UndeleteAsymmetricKeyRequest, metadata: Metadata, options: Partial<CallOptions> & RetryOptions): SDKRequestClass<UndeleteAsymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
524
+ }
525
+ export declare class AsymmetricKeyService implements AsymmetricKeyService {
526
+ private sdk;
527
+ $type: "nebius.kms.v1.AsymmetricKeyService";
528
+ private addr;
529
+ private spec;
530
+ private apiServiceName;
531
+ constructor(sdk: SDKInterface);
532
+ getOperationService(): OperationService;
533
+ create(request: CreateAsymmetricKeyRequest): SDKRequestClass<CreateAsymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
534
+ create(request: CreateAsymmetricKeyRequest, metadata: Metadata): SDKRequestClass<CreateAsymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
535
+ create(request: CreateAsymmetricKeyRequest, metadata: Metadata, options: Partial<CallOptions> & RetryOptions): SDKRequestClass<CreateAsymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
536
+ update(request: UpdateAsymmetricKeyRequest): SDKRequestClass<UpdateAsymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
537
+ update(request: UpdateAsymmetricKeyRequest, metadata: Metadata): SDKRequestClass<UpdateAsymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
538
+ update(request: UpdateAsymmetricKeyRequest, metadata: Metadata, options: Partial<CallOptions> & RetryOptions): SDKRequestClass<UpdateAsymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
539
+ get(request: GetAsymmetricKeyRequest): SDKRequestClass<GetAsymmetricKeyRequest, AsymmetricKey>;
540
+ get(request: GetAsymmetricKeyRequest, metadata: Metadata): SDKRequestClass<GetAsymmetricKeyRequest, AsymmetricKey>;
541
+ get(request: GetAsymmetricKeyRequest, metadata: Metadata, options: Partial<CallOptions> & RetryOptions): SDKRequestClass<GetAsymmetricKeyRequest, AsymmetricKey>;
542
+ getByName(request: GetAsymmetricKeyByNameRequest): SDKRequestClass<GetAsymmetricKeyByNameRequest, AsymmetricKey>;
543
+ getByName(request: GetAsymmetricKeyByNameRequest, metadata: Metadata): SDKRequestClass<GetAsymmetricKeyByNameRequest, AsymmetricKey>;
544
+ getByName(request: GetAsymmetricKeyByNameRequest, metadata: Metadata, options: Partial<CallOptions> & RetryOptions): SDKRequestClass<GetAsymmetricKeyByNameRequest, AsymmetricKey>;
545
+ list(request: ListAsymmetricKeysRequest): SDKRequestClass<ListAsymmetricKeysRequest, ListAsymmetricKeysResponse>;
546
+ list(request: ListAsymmetricKeysRequest, metadata: Metadata): SDKRequestClass<ListAsymmetricKeysRequest, ListAsymmetricKeysResponse>;
547
+ list(request: ListAsymmetricKeysRequest, metadata: Metadata, options: Partial<CallOptions> & RetryOptions): SDKRequestClass<ListAsymmetricKeysRequest, ListAsymmetricKeysResponse>;
548
+ delete(request: DeleteAsymmetricKeyRequest): SDKRequestClass<DeleteAsymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
549
+ delete(request: DeleteAsymmetricKeyRequest, metadata: Metadata): SDKRequestClass<DeleteAsymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
550
+ delete(request: DeleteAsymmetricKeyRequest, metadata: Metadata, options: Partial<CallOptions> & RetryOptions): SDKRequestClass<DeleteAsymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
551
+ updateDeletionDelay(request: UpdateAsymmetricKeyDeletionDelayRequest): SDKRequestClass<UpdateAsymmetricKeyDeletionDelayRequest, OperationWrapper<GetOperationRequest>>;
552
+ updateDeletionDelay(request: UpdateAsymmetricKeyDeletionDelayRequest, metadata: Metadata): SDKRequestClass<UpdateAsymmetricKeyDeletionDelayRequest, OperationWrapper<GetOperationRequest>>;
553
+ updateDeletionDelay(request: UpdateAsymmetricKeyDeletionDelayRequest, metadata: Metadata, options: Partial<CallOptions> & RetryOptions): SDKRequestClass<UpdateAsymmetricKeyDeletionDelayRequest, OperationWrapper<GetOperationRequest>>;
554
+ undelete(request: UndeleteAsymmetricKeyRequest): SDKRequestClass<UndeleteAsymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
555
+ undelete(request: UndeleteAsymmetricKeyRequest, metadata: Metadata): SDKRequestClass<UndeleteAsymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
556
+ undelete(request: UndeleteAsymmetricKeyRequest, metadata: Metadata, options: Partial<CallOptions> & RetryOptions): SDKRequestClass<UndeleteAsymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
557
+ }
558
+ /**
559
+ * Supported asymmetric algorithms.
560
+ *
561
+ */
562
+ export type AsymmetricAlgorithm = EnumInstance<"UNRECOGNIZED" | "ASYMMETRIC_ALGORITHM_UNSPECIFIED" | "ECDSA_NIST_P256_SHA_256" | "ECDSA_NIST_P384_SHA_384" | "RSA_4096_ENC_OAEP_SHA_256">;
563
+ interface AsymmetricAlgorithmValueMembers {
564
+ readonly ASYMMETRIC_ALGORITHM_UNSPECIFIED: EnumInstance<"UNRECOGNIZED" | "ASYMMETRIC_ALGORITHM_UNSPECIFIED" | "ECDSA_NIST_P256_SHA_256" | "ECDSA_NIST_P384_SHA_384" | "RSA_4096_ENC_OAEP_SHA_256">;
565
+ /**
566
+ * ECDSA signature with NIST P-256 curve and SHA-256
567
+ *
568
+ */
569
+ readonly ECDSA_NIST_P256_SHA_256: EnumInstance<"UNRECOGNIZED" | "ASYMMETRIC_ALGORITHM_UNSPECIFIED" | "ECDSA_NIST_P256_SHA_256" | "ECDSA_NIST_P384_SHA_384" | "RSA_4096_ENC_OAEP_SHA_256">;
570
+ /**
571
+ * ECDSA signature with NIST P-384 curve and SHA-384
572
+ *
573
+ */
574
+ readonly ECDSA_NIST_P384_SHA_384: EnumInstance<"UNRECOGNIZED" | "ASYMMETRIC_ALGORITHM_UNSPECIFIED" | "ECDSA_NIST_P256_SHA_256" | "ECDSA_NIST_P384_SHA_384" | "RSA_4096_ENC_OAEP_SHA_256">;
575
+ /**
576
+ * RSA encryption with RSA-4096 key, OAEP padding and SHA-256.
577
+ *
578
+ */
579
+ readonly RSA_4096_ENC_OAEP_SHA_256: EnumInstance<"UNRECOGNIZED" | "ASYMMETRIC_ALGORITHM_UNSPECIFIED" | "ECDSA_NIST_P256_SHA_256" | "ECDSA_NIST_P384_SHA_384" | "RSA_4096_ENC_OAEP_SHA_256">;
580
+ }
581
+ export type AsymmetricAlgorithmClass = EnumClass<"UNRECOGNIZED" | "ASYMMETRIC_ALGORITHM_UNSPECIFIED" | "ECDSA_NIST_P256_SHA_256" | "ECDSA_NIST_P384_SHA_384" | "RSA_4096_ENC_OAEP_SHA_256"> & AsymmetricAlgorithmValueMembers;
582
+ export declare const AsymmetricAlgorithm: AsymmetricAlgorithmClass;
583
+ /**
584
+ * An asymmetric KMS key that may contain several versions of the cryptographic material.
585
+ *
586
+ */
587
+ export interface AsymmetricKey {
588
+ $type: "nebius.kms.v1.AsymmetricKey";
589
+ [unknownFieldsSymbol]?: Uint8Array | undefined;
590
+ [customJson]?: () => unknown;
591
+ metadata?: ResourceMetadata | undefined;
592
+ /**
593
+ * The specifications of the asymmetric key.
594
+ *
595
+ */
596
+ spec?: AsymmetricKeySpec | undefined;
597
+ /**
598
+ * The current status of the asymmetric key.
599
+ *
600
+ */
601
+ status?: AsymmetricKeyStatus | undefined;
602
+ }
603
+ export declare const AsymmetricKey: MessageFns<AsymmetricKey, "nebius.kms.v1.AsymmetricKey">;
604
+ export interface AsymmetricKeySpec {
605
+ $type: "nebius.kms.v1.AsymmetricKeySpec";
606
+ [unknownFieldsSymbol]?: Uint8Array | undefined;
607
+ [customJson]?: () => unknown;
608
+ /**
609
+ * Description of the key.
610
+ *
611
+ */
612
+ description: string;
613
+ /**
614
+ * Cryptographic algorithm that should be used with the key.
615
+ * Must be specified only during create operations. Cannot be updated.
616
+ *
617
+ */
618
+ algorithm: AsymmetricAlgorithm;
619
+ }
620
+ export declare const AsymmetricKeySpec: MessageFns<AsymmetricKeySpec, "nebius.kms.v1.AsymmetricKeySpec">;
621
+ export interface AsymmetricKeyStatus {
622
+ $type: "nebius.kms.v1.AsymmetricKeyStatus";
623
+ [unknownFieldsSymbol]?: Uint8Array | undefined;
624
+ [customJson]?: () => unknown;
625
+ /**
626
+ * State (ACTIVE, SCHEDULED_FOR_DELETION)
627
+ *
628
+ */
629
+ state: KeyState;
630
+ /**
631
+ * Time when the key was scheduled for deletion.
632
+ *
633
+ */
634
+ deletedAt?: Dayjs | undefined;
635
+ /**
636
+ * Time when the key will be permanently deleted.
637
+ *
638
+ */
639
+ purgeAt?: Dayjs | undefined;
640
+ }
641
+ export declare const AsymmetricKeyStatus: MessageFns<AsymmetricKeyStatus, "nebius.kms.v1.AsymmetricKeyStatus">;
642
+ /**
643
+ * Key state
644
+ *
645
+ */
646
+ export type KeyState = EnumInstance<"UNRECOGNIZED" | "KEY_STATE_UNSPECIFIED" | "ACTIVE" | "SCHEDULED_FOR_DELETION">;
647
+ interface KeyStateValueMembers {
648
+ readonly KEY_STATE_UNSPECIFIED: EnumInstance<"UNRECOGNIZED" | "KEY_STATE_UNSPECIFIED" | "ACTIVE" | "SCHEDULED_FOR_DELETION">;
649
+ /**
650
+ * Key is active, ready for use
651
+ *
652
+ */
653
+ readonly ACTIVE: EnumInstance<"UNRECOGNIZED" | "KEY_STATE_UNSPECIFIED" | "ACTIVE" | "SCHEDULED_FOR_DELETION">;
654
+ /**
655
+ * Key is scheduled for deletion.
656
+ *
657
+ */
658
+ readonly SCHEDULED_FOR_DELETION: EnumInstance<"UNRECOGNIZED" | "KEY_STATE_UNSPECIFIED" | "ACTIVE" | "SCHEDULED_FOR_DELETION">;
659
+ }
660
+ export type KeyStateClass = EnumClass<"UNRECOGNIZED" | "KEY_STATE_UNSPECIFIED" | "ACTIVE" | "SCHEDULED_FOR_DELETION"> & KeyStateValueMembers;
661
+ export declare const KeyState: KeyStateClass;
662
+ export interface SymmetricEncryptRequest {
663
+ $type: "nebius.kms.v1.SymmetricEncryptRequest";
664
+ [unknownFieldsSymbol]?: Uint8Array | undefined;
665
+ [customJson]?: () => unknown;
666
+ /**
667
+ * ID of the symmetric KMS key to use for encryption.
668
+ *
669
+ */
670
+ keyId: string;
671
+ /**
672
+ * Additional authenticated data (AAD context), optional.
673
+ * If specified, this data will be required for decryption with the [SymmetricDecryptRequest].
674
+ * Should be encoded with base64.
675
+ *
676
+ */
677
+ aadContext: Uint8Array;
678
+ /**
679
+ * Plaintext to be encrypted.
680
+ * Should be encoded with base64.
681
+ *
682
+ */
683
+ plaintext: Uint8Array;
684
+ }
685
+ export declare const SymmetricEncryptRequest: MessageFns<SymmetricEncryptRequest, "nebius.kms.v1.SymmetricEncryptRequest">;
686
+ export interface SymmetricEncryptResponse {
687
+ $type: "nebius.kms.v1.SymmetricEncryptResponse";
688
+ [unknownFieldsSymbol]?: Uint8Array | undefined;
689
+ [customJson]?: () => unknown;
690
+ /**
691
+ * ID of the symmetric KMS key that was used for encryption.
692
+ *
693
+ */
694
+ keyId: string;
695
+ /**
696
+ * Resulting ciphertext.
697
+ *
698
+ */
699
+ ciphertext: Uint8Array;
700
+ }
701
+ export declare const SymmetricEncryptResponse: MessageFns<SymmetricEncryptResponse, "nebius.kms.v1.SymmetricEncryptResponse">;
702
+ export interface SymmetricDecryptRequest {
703
+ $type: "nebius.kms.v1.SymmetricDecryptRequest";
704
+ [unknownFieldsSymbol]?: Uint8Array | undefined;
705
+ [customJson]?: () => unknown;
706
+ /**
707
+ * ID of the symmetric KMS key to use for decryption.
708
+ *
709
+ */
710
+ keyId: string;
711
+ /**
712
+ * Additional authenticated data, must be the same as was provided
713
+ * in the corresponding [SymmetricEncryptRequest].
714
+ * Should be encoded with base64.
715
+ *
716
+ */
717
+ aadContext: Uint8Array;
718
+ /**
719
+ * Ciphertext to be decrypted.
720
+ * Should be encoded with base64.
721
+ *
722
+ */
723
+ ciphertext: Uint8Array;
724
+ }
725
+ export declare const SymmetricDecryptRequest: MessageFns<SymmetricDecryptRequest, "nebius.kms.v1.SymmetricDecryptRequest">;
726
+ export interface SymmetricDecryptResponse {
727
+ $type: "nebius.kms.v1.SymmetricDecryptResponse";
728
+ [unknownFieldsSymbol]?: Uint8Array | undefined;
729
+ [customJson]?: () => unknown;
730
+ /**
731
+ * ID of the symmetric KMS key that was used for decryption.
732
+ *
733
+ */
734
+ keyId: string;
735
+ /**
736
+ * Decrypted plaintext.
737
+ *
738
+ */
739
+ plaintext: Uint8Array;
740
+ }
741
+ export declare const SymmetricDecryptResponse: MessageFns<SymmetricDecryptResponse, "nebius.kms.v1.SymmetricDecryptResponse">;
742
+ export interface GenerateDataKeyRequest {
743
+ $type: "nebius.kms.v1.GenerateDataKeyRequest";
744
+ [unknownFieldsSymbol]?: Uint8Array | undefined;
745
+ [customJson]?: () => unknown;
746
+ /**
747
+ * ID of the symmetric KMS key that the generated data key should be encrypted with.
748
+ *
749
+ */
750
+ keyId: string;
751
+ /**
752
+ * Additional authenticated data (AAD context), optional.
753
+ * If specified, this data will be required for decryption with the [SymmetricDecryptRequest].
754
+ * Should be encoded with base64.
755
+ *
756
+ */
757
+ aadContext: Uint8Array;
758
+ /**
759
+ * Encryption algorithm and key length for the generated data key.
760
+ *
761
+ */
762
+ dataKeySpec: SymmetricAlgorithm;
763
+ /**
764
+ * If `true`, the method won't return the data key as plaintext.
765
+ * Default value is `false`.
766
+ *
767
+ */
768
+ skipPlaintext: boolean;
769
+ }
770
+ export declare const GenerateDataKeyRequest: MessageFns<GenerateDataKeyRequest, "nebius.kms.v1.GenerateDataKeyRequest">;
771
+ export interface GenerateDataKeyResponse {
772
+ $type: "nebius.kms.v1.GenerateDataKeyResponse";
773
+ [unknownFieldsSymbol]?: Uint8Array | undefined;
774
+ [customJson]?: () => unknown;
775
+ /**
776
+ * ID of the symmetric KMS key that was used to encrypt the generated data key.
777
+ *
778
+ */
779
+ keyId: string;
780
+ /**
781
+ * Generated data key as plaintext.
782
+ * The field is empty, if the [GenerateDataKeyRequest.skip_plaintext] parameter
783
+ * was set to `true`.
784
+ *
785
+ */
786
+ dataKeyPlaintext: Uint8Array;
787
+ /**
788
+ * The encrypted data key.
789
+ *
790
+ */
791
+ dataKeyCiphertext: Uint8Array;
792
+ }
793
+ export declare const GenerateDataKeyResponse: MessageFns<GenerateDataKeyResponse, "nebius.kms.v1.GenerateDataKeyResponse">;
794
+ export type SymmetricCryptoServiceServiceDescription = typeof SymmetricCryptoServiceServiceDescription;
795
+ export declare const SymmetricCryptoServiceServiceDescription: {
796
+ readonly encrypt: {
797
+ readonly path: "/nebius.kms.v1.SymmetricCryptoService/Encrypt";
798
+ readonly requestStream: false;
799
+ readonly responseStream: false;
800
+ readonly requestSerialize: (value: SymmetricEncryptRequest) => Buffer<ArrayBuffer>;
801
+ readonly sendResetMask: false;
802
+ readonly requestDeserialize: (value: Buffer) => SymmetricEncryptRequest;
803
+ readonly responseSerialize: (value: SymmetricEncryptResponse) => Buffer<ArrayBuffer>;
804
+ readonly responseDeserialize: (value: Buffer) => SymmetricEncryptResponse;
805
+ };
806
+ readonly decrypt: {
807
+ readonly path: "/nebius.kms.v1.SymmetricCryptoService/Decrypt";
808
+ readonly requestStream: false;
809
+ readonly responseStream: false;
810
+ readonly requestSerialize: (value: SymmetricDecryptRequest) => Buffer<ArrayBuffer>;
811
+ readonly sendResetMask: false;
812
+ readonly requestDeserialize: (value: Buffer) => SymmetricDecryptRequest;
813
+ readonly responseSerialize: (value: SymmetricDecryptResponse) => Buffer<ArrayBuffer>;
814
+ readonly responseDeserialize: (value: Buffer) => SymmetricDecryptResponse;
815
+ };
816
+ readonly generateDataKey: {
817
+ readonly path: "/nebius.kms.v1.SymmetricCryptoService/GenerateDataKey";
818
+ readonly requestStream: false;
819
+ readonly responseStream: false;
820
+ readonly requestSerialize: (value: GenerateDataKeyRequest) => Buffer<ArrayBuffer>;
821
+ readonly sendResetMask: false;
822
+ readonly requestDeserialize: (value: Buffer) => GenerateDataKeyRequest;
823
+ readonly responseSerialize: (value: GenerateDataKeyResponse) => Buffer<ArrayBuffer>;
824
+ readonly responseDeserialize: (value: Buffer) => GenerateDataKeyResponse;
825
+ };
826
+ };
827
+ export interface SymmetricCryptoServiceServer extends UntypedServiceImplementation {
828
+ encrypt: handleUnaryCall<SymmetricEncryptRequest, SymmetricEncryptResponse>;
829
+ decrypt: handleUnaryCall<SymmetricDecryptRequest, SymmetricDecryptResponse>;
830
+ generateDataKey: handleUnaryCall<GenerateDataKeyRequest, GenerateDataKeyResponse>;
831
+ }
832
+ export interface SymmetricCryptoServiceBaseClient extends Client {
833
+ encrypt(request: SymmetricEncryptRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: GrpcServiceError | null, response: SymmetricEncryptResponse) => void): ClientUnaryCall;
834
+ decrypt(request: SymmetricDecryptRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: GrpcServiceError | null, response: SymmetricDecryptResponse) => void): ClientUnaryCall;
835
+ generateDataKey(request: GenerateDataKeyRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: GrpcServiceError | null, response: GenerateDataKeyResponse) => void): ClientUnaryCall;
836
+ }
837
+ export declare const SymmetricCryptoServiceBaseClient: {
838
+ new (address: string, credentials: ChannelCredentials, options?: Partial<ClientOptions>): SymmetricCryptoServiceBaseClient;
839
+ service: typeof SymmetricCryptoServiceServiceDescription;
840
+ serviceName: string;
841
+ };
842
+ /**
843
+ * --- Data plane for KMS symmetric cryptography operations
844
+ *
845
+ *
846
+ * Set of methods that perform symmetric encryption and decryption.
847
+ *
848
+ */
849
+ export interface SymmetricCryptoService {
850
+ $type: "nebius.kms.v1.SymmetricCryptoService";
851
+ /**
852
+ * Encrypts given plaintext with the specified key.
853
+ *
854
+ */
855
+ encrypt(request: SymmetricEncryptRequest): SDKRequestClass<SymmetricEncryptRequest, SymmetricEncryptResponse>;
856
+ encrypt(request: SymmetricEncryptRequest, metadata: Metadata): SDKRequestClass<SymmetricEncryptRequest, SymmetricEncryptResponse>;
857
+ encrypt(request: SymmetricEncryptRequest, metadata: Metadata, options: Partial<CallOptions> & RetryOptions): SDKRequestClass<SymmetricEncryptRequest, SymmetricEncryptResponse>;
858
+ /**
859
+ * Decrypts the given ciphertext with the specified key.
860
+ *
861
+ */
862
+ decrypt(request: SymmetricDecryptRequest): SDKRequestClass<SymmetricDecryptRequest, SymmetricDecryptResponse>;
863
+ decrypt(request: SymmetricDecryptRequest, metadata: Metadata): SDKRequestClass<SymmetricDecryptRequest, SymmetricDecryptResponse>;
864
+ decrypt(request: SymmetricDecryptRequest, metadata: Metadata, options: Partial<CallOptions> & RetryOptions): SDKRequestClass<SymmetricDecryptRequest, SymmetricDecryptResponse>;
865
+ /**
866
+ * Generates a new symmetric data encryption key (not a KMS key) and returns
867
+ * the generated key as plaintext and as ciphertext encrypted with the specified symmetric KMS key.
868
+ *
869
+ */
870
+ generateDataKey(request: GenerateDataKeyRequest): SDKRequestClass<GenerateDataKeyRequest, GenerateDataKeyResponse>;
871
+ generateDataKey(request: GenerateDataKeyRequest, metadata: Metadata): SDKRequestClass<GenerateDataKeyRequest, GenerateDataKeyResponse>;
872
+ generateDataKey(request: GenerateDataKeyRequest, metadata: Metadata, options: Partial<CallOptions> & RetryOptions): SDKRequestClass<GenerateDataKeyRequest, GenerateDataKeyResponse>;
873
+ }
874
+ export declare class SymmetricCryptoService implements SymmetricCryptoService {
875
+ private sdk;
876
+ $type: "nebius.kms.v1.SymmetricCryptoService";
877
+ private addr;
878
+ private spec;
879
+ private apiServiceName;
880
+ constructor(sdk: SDKInterface);
881
+ encrypt(request: SymmetricEncryptRequest): SDKRequestClass<SymmetricEncryptRequest, SymmetricEncryptResponse>;
882
+ encrypt(request: SymmetricEncryptRequest, metadata: Metadata): SDKRequestClass<SymmetricEncryptRequest, SymmetricEncryptResponse>;
883
+ encrypt(request: SymmetricEncryptRequest, metadata: Metadata, options: Partial<CallOptions> & RetryOptions): SDKRequestClass<SymmetricEncryptRequest, SymmetricEncryptResponse>;
884
+ decrypt(request: SymmetricDecryptRequest): SDKRequestClass<SymmetricDecryptRequest, SymmetricDecryptResponse>;
885
+ decrypt(request: SymmetricDecryptRequest, metadata: Metadata): SDKRequestClass<SymmetricDecryptRequest, SymmetricDecryptResponse>;
886
+ decrypt(request: SymmetricDecryptRequest, metadata: Metadata, options: Partial<CallOptions> & RetryOptions): SDKRequestClass<SymmetricDecryptRequest, SymmetricDecryptResponse>;
887
+ generateDataKey(request: GenerateDataKeyRequest): SDKRequestClass<GenerateDataKeyRequest, GenerateDataKeyResponse>;
888
+ generateDataKey(request: GenerateDataKeyRequest, metadata: Metadata): SDKRequestClass<GenerateDataKeyRequest, GenerateDataKeyResponse>;
889
+ generateDataKey(request: GenerateDataKeyRequest, metadata: Metadata, options: Partial<CallOptions> & RetryOptions): SDKRequestClass<GenerateDataKeyRequest, GenerateDataKeyResponse>;
890
+ }
891
+ export interface CreateSymmetricKeyRequest {
892
+ $type: "nebius.kms.v1.CreateSymmetricKeyRequest";
893
+ [unknownFieldsSymbol]?: Uint8Array | undefined;
894
+ [customJson]?: () => unknown;
895
+ metadata?: ResourceMetadata | undefined;
896
+ spec?: SymmetricKeySpec | undefined;
897
+ }
898
+ export declare const CreateSymmetricKeyRequest: MessageFns<CreateSymmetricKeyRequest, "nebius.kms.v1.CreateSymmetricKeyRequest">;
899
+ export interface UpdateSymmetricKeyRequest {
900
+ $type: "nebius.kms.v1.UpdateSymmetricKeyRequest";
901
+ [unknownFieldsSymbol]?: Uint8Array | undefined;
902
+ [customJson]?: () => unknown;
903
+ /**
904
+ * The metadata for the resource.
905
+ *
906
+ */
907
+ metadata?: ResourceMetadata | undefined;
908
+ /**
909
+ * The specifications for updating a symmetric key.
910
+ *
911
+ */
912
+ spec?: SymmetricKeySpec | undefined;
913
+ }
914
+ export declare const UpdateSymmetricKeyRequest: MessageFns<UpdateSymmetricKeyRequest, "nebius.kms.v1.UpdateSymmetricKeyRequest">;
915
+ export interface GetSymmetricKeyRequest {
916
+ $type: "nebius.kms.v1.GetSymmetricKeyRequest";
917
+ [unknownFieldsSymbol]?: Uint8Array | undefined;
918
+ [customJson]?: () => unknown;
919
+ /**
920
+ * ID of the symmetric KMS key to return.
921
+ * To get the ID of a symmetric KMS key use a [SymmetricKeyService.List] request.
922
+ *
923
+ */
924
+ id: string;
925
+ /**
926
+ * By default, Get doesn't return resource if it is scheduled for deletion.
927
+ * If show_scheduled_for_deletion = true, the Get operation returns the resource even if it is scheduled for deletion.
928
+ * If show_scheduled_for_deletion = false, the Get method returns the NOT_FOUND gRPC status code.
929
+ *
930
+ */
931
+ showScheduledForDeletion: boolean;
932
+ }
933
+ export declare const GetSymmetricKeyRequest: MessageFns<GetSymmetricKeyRequest, "nebius.kms.v1.GetSymmetricKeyRequest">;
934
+ export interface GetSymmetricKeyByNameRequest {
935
+ $type: "nebius.kms.v1.GetSymmetricKeyByNameRequest";
936
+ [unknownFieldsSymbol]?: Uint8Array | undefined;
937
+ [customJson]?: () => unknown;
938
+ /**
939
+ * ParentId and name of the symmetric KMS key to return.
940
+ * To get the name of a symmetric KMS key use a [SymmetricKeyService.List] request.
941
+ *
942
+ */
943
+ parentId: string;
944
+ name: string;
945
+ }
946
+ export declare const GetSymmetricKeyByNameRequest: MessageFns<GetSymmetricKeyByNameRequest, "nebius.kms.v1.GetSymmetricKeyByNameRequest">;
947
+ export interface ListSymmetricKeysRequest {
948
+ $type: "nebius.kms.v1.ListSymmetricKeysRequest";
949
+ [unknownFieldsSymbol]?: Uint8Array | undefined;
950
+ [customJson]?: () => unknown;
951
+ parentId: string;
952
+ /**
953
+ * The maximum number of results per page to return. If the number of available
954
+ * results is larger than [page_size], the service returns a [ListSymmetricKeysResponse.next_page_token]
955
+ * that can be used to get the next page of results in subsequent list requests.
956
+ * Default value: 100.
957
+ *
958
+ */
959
+ pageSize: Long;
960
+ /**
961
+ * Page token. To get the next page of results, set [page_token] to the
962
+ * [ListSymmetricKeysResponse.next_page_token] returned by a previous list request.
963
+ *
964
+ */
965
+ pageToken: string;
966
+ /**
967
+ * By default, List operation doesn't include resources that are scheduled for deletion.
968
+ * If show_scheduled_for_deletion = true, the listing includes resources that are scheduled for deletion.
969
+ *
970
+ */
971
+ showScheduledForDeletion: boolean;
972
+ }
973
+ export declare const ListSymmetricKeysRequest: MessageFns<ListSymmetricKeysRequest, "nebius.kms.v1.ListSymmetricKeysRequest">;
974
+ export interface ListSymmetricKeysResponse {
975
+ $type: "nebius.kms.v1.ListSymmetricKeysResponse";
976
+ [unknownFieldsSymbol]?: Uint8Array | undefined;
977
+ [customJson]?: () => unknown;
978
+ /**
979
+ * List of symmetric KMS keys in the specified container.
980
+ *
981
+ */
982
+ items: SymmetricKey[];
983
+ /**
984
+ * This token allows you to get the next page of results for list requests. If the number
985
+ * of results is greater than the specified [ListSymmetricKeysRequest.page_size], use
986
+ * the [next_page_token] as the value for the [ListSymmetricKeysRequest.page_token] query parameter
987
+ * in the next list request. Each subsequent list request will have its own
988
+ * [next_page_token] to continue paging through the results.
989
+ *
990
+ */
991
+ nextPageToken: string;
992
+ }
993
+ export declare const ListSymmetricKeysResponse: MessageFns<ListSymmetricKeysResponse, "nebius.kms.v1.ListSymmetricKeysResponse">;
994
+ export interface RotateSymmetricKeyRequest {
995
+ $type: "nebius.kms.v1.RotateSymmetricKeyRequest";
996
+ [unknownFieldsSymbol]?: Uint8Array | undefined;
997
+ [customJson]?: () => unknown;
998
+ /**
999
+ * ID of the key to be rotated.
1000
+ *
1001
+ */
1002
+ id: string;
1003
+ }
1004
+ export declare const RotateSymmetricKeyRequest: MessageFns<RotateSymmetricKeyRequest, "nebius.kms.v1.RotateSymmetricKeyRequest">;
1005
+ export interface DeleteSymmetricKeyRequest {
1006
+ $type: "nebius.kms.v1.DeleteSymmetricKeyRequest";
1007
+ [unknownFieldsSymbol]?: Uint8Array | undefined;
1008
+ [customJson]?: () => unknown;
1009
+ /**
1010
+ * ID of the symmetric KMS key to schedule for deletion.
1011
+ * To get the ID of a symmetric KMS key use a [SymmetricKeyService.List] request.
1012
+ *
1013
+ */
1014
+ id: string;
1015
+ }
1016
+ export declare const DeleteSymmetricKeyRequest: MessageFns<DeleteSymmetricKeyRequest, "nebius.kms.v1.DeleteSymmetricKeyRequest">;
1017
+ export interface UpdateSymmetricKeyDeletionDelayRequest {
1018
+ $type: "nebius.kms.v1.UpdateSymmetricKeyDeletionDelayRequest";
1019
+ [unknownFieldsSymbol]?: Uint8Array | undefined;
1020
+ [customJson]?: () => unknown;
1021
+ /**
1022
+ * ID of the symmetric KMS key scheduled for deletion.
1023
+ *
1024
+ */
1025
+ id: string;
1026
+ /**
1027
+ * Deletion delay applied from the update timestamp.
1028
+ * Example: "86400s" (1 day). Valid range: 86400s (1 day) to 2592000s (30 days).
1029
+ *
1030
+ */
1031
+ deletionDelay?: Duration | undefined;
1032
+ }
1033
+ export declare const UpdateSymmetricKeyDeletionDelayRequest: MessageFns<UpdateSymmetricKeyDeletionDelayRequest, "nebius.kms.v1.UpdateSymmetricKeyDeletionDelayRequest">;
1034
+ export interface UndeleteSymmetricKeyRequest {
1035
+ $type: "nebius.kms.v1.UndeleteSymmetricKeyRequest";
1036
+ [unknownFieldsSymbol]?: Uint8Array | undefined;
1037
+ [customJson]?: () => unknown;
1038
+ /**
1039
+ * ID of the symmetric KMS key to restore.
1040
+ *
1041
+ */
1042
+ id: string;
1043
+ /**
1044
+ * A new name in case the current one is already in use.
1045
+ *
1046
+ */
1047
+ name: string;
1048
+ }
1049
+ export declare const UndeleteSymmetricKeyRequest: MessageFns<UndeleteSymmetricKeyRequest, "nebius.kms.v1.UndeleteSymmetricKeyRequest">;
1050
+ export type SymmetricKeyServiceServiceDescription = typeof SymmetricKeyServiceServiceDescription;
1051
+ export declare const SymmetricKeyServiceServiceDescription: {
1052
+ readonly create: {
1053
+ readonly path: "/nebius.kms.v1.SymmetricKeyService/Create";
1054
+ readonly requestStream: false;
1055
+ readonly responseStream: false;
1056
+ readonly requestSerialize: (value: CreateSymmetricKeyRequest) => Buffer<ArrayBuffer>;
1057
+ readonly sendResetMask: false;
1058
+ readonly requestDeserialize: (value: Buffer) => CreateSymmetricKeyRequest;
1059
+ readonly responseSerialize: (value: Operation) => Buffer<ArrayBuffer>;
1060
+ readonly responseDeserialize: (value: Buffer) => Operation;
1061
+ };
1062
+ readonly update: {
1063
+ readonly path: "/nebius.kms.v1.SymmetricKeyService/Update";
1064
+ readonly requestStream: false;
1065
+ readonly responseStream: false;
1066
+ readonly requestSerialize: (value: UpdateSymmetricKeyRequest) => Buffer<ArrayBuffer>;
1067
+ readonly sendResetMask: true;
1068
+ readonly requestDeserialize: (value: Buffer) => UpdateSymmetricKeyRequest;
1069
+ readonly responseSerialize: (value: Operation) => Buffer<ArrayBuffer>;
1070
+ readonly responseDeserialize: (value: Buffer) => Operation;
1071
+ };
1072
+ readonly rotate: {
1073
+ readonly path: "/nebius.kms.v1.SymmetricKeyService/Rotate";
1074
+ readonly requestStream: false;
1075
+ readonly responseStream: false;
1076
+ readonly requestSerialize: (value: RotateSymmetricKeyRequest) => Buffer<ArrayBuffer>;
1077
+ readonly sendResetMask: false;
1078
+ readonly requestDeserialize: (value: Buffer) => RotateSymmetricKeyRequest;
1079
+ readonly responseSerialize: (value: Operation) => Buffer<ArrayBuffer>;
1080
+ readonly responseDeserialize: (value: Buffer) => Operation;
1081
+ };
1082
+ readonly get: {
1083
+ readonly path: "/nebius.kms.v1.SymmetricKeyService/Get";
1084
+ readonly requestStream: false;
1085
+ readonly responseStream: false;
1086
+ readonly requestSerialize: (value: GetSymmetricKeyRequest) => Buffer<ArrayBuffer>;
1087
+ readonly sendResetMask: false;
1088
+ readonly requestDeserialize: (value: Buffer) => GetSymmetricKeyRequest;
1089
+ readonly responseSerialize: (value: SymmetricKey) => Buffer<ArrayBuffer>;
1090
+ readonly responseDeserialize: (value: Buffer) => SymmetricKey;
1091
+ };
1092
+ readonly getByName: {
1093
+ readonly path: "/nebius.kms.v1.SymmetricKeyService/GetByName";
1094
+ readonly requestStream: false;
1095
+ readonly responseStream: false;
1096
+ readonly requestSerialize: (value: GetSymmetricKeyByNameRequest) => Buffer<ArrayBuffer>;
1097
+ readonly sendResetMask: false;
1098
+ readonly requestDeserialize: (value: Buffer) => GetSymmetricKeyByNameRequest;
1099
+ readonly responseSerialize: (value: SymmetricKey) => Buffer<ArrayBuffer>;
1100
+ readonly responseDeserialize: (value: Buffer) => SymmetricKey;
1101
+ };
1102
+ readonly list: {
1103
+ readonly path: "/nebius.kms.v1.SymmetricKeyService/List";
1104
+ readonly requestStream: false;
1105
+ readonly responseStream: false;
1106
+ readonly requestSerialize: (value: ListSymmetricKeysRequest) => Buffer<ArrayBuffer>;
1107
+ readonly sendResetMask: false;
1108
+ readonly requestDeserialize: (value: Buffer) => ListSymmetricKeysRequest;
1109
+ readonly responseSerialize: (value: ListSymmetricKeysResponse) => Buffer<ArrayBuffer>;
1110
+ readonly responseDeserialize: (value: Buffer) => ListSymmetricKeysResponse;
1111
+ };
1112
+ readonly delete: {
1113
+ readonly path: "/nebius.kms.v1.SymmetricKeyService/Delete";
1114
+ readonly requestStream: false;
1115
+ readonly responseStream: false;
1116
+ readonly requestSerialize: (value: DeleteSymmetricKeyRequest) => Buffer<ArrayBuffer>;
1117
+ readonly sendResetMask: false;
1118
+ readonly requestDeserialize: (value: Buffer) => DeleteSymmetricKeyRequest;
1119
+ readonly responseSerialize: (value: Operation) => Buffer<ArrayBuffer>;
1120
+ readonly responseDeserialize: (value: Buffer) => Operation;
1121
+ };
1122
+ readonly updateDeletionDelay: {
1123
+ readonly path: "/nebius.kms.v1.SymmetricKeyService/UpdateDeletionDelay";
1124
+ readonly requestStream: false;
1125
+ readonly responseStream: false;
1126
+ readonly requestSerialize: (value: UpdateSymmetricKeyDeletionDelayRequest) => Buffer<ArrayBuffer>;
1127
+ readonly sendResetMask: false;
1128
+ readonly requestDeserialize: (value: Buffer) => UpdateSymmetricKeyDeletionDelayRequest;
1129
+ readonly responseSerialize: (value: Operation) => Buffer<ArrayBuffer>;
1130
+ readonly responseDeserialize: (value: Buffer) => Operation;
1131
+ };
1132
+ readonly undelete: {
1133
+ readonly path: "/nebius.kms.v1.SymmetricKeyService/Undelete";
1134
+ readonly requestStream: false;
1135
+ readonly responseStream: false;
1136
+ readonly requestSerialize: (value: UndeleteSymmetricKeyRequest) => Buffer<ArrayBuffer>;
1137
+ readonly sendResetMask: false;
1138
+ readonly requestDeserialize: (value: Buffer) => UndeleteSymmetricKeyRequest;
1139
+ readonly responseSerialize: (value: Operation) => Buffer<ArrayBuffer>;
1140
+ readonly responseDeserialize: (value: Buffer) => Operation;
1141
+ };
1142
+ };
1143
+ export interface SymmetricKeyServiceServer extends UntypedServiceImplementation {
1144
+ create: handleUnaryCall<CreateSymmetricKeyRequest, Operation>;
1145
+ update: handleUnaryCall<UpdateSymmetricKeyRequest, Operation>;
1146
+ rotate: handleUnaryCall<RotateSymmetricKeyRequest, Operation>;
1147
+ get: handleUnaryCall<GetSymmetricKeyRequest, SymmetricKey>;
1148
+ getByName: handleUnaryCall<GetSymmetricKeyByNameRequest, SymmetricKey>;
1149
+ list: handleUnaryCall<ListSymmetricKeysRequest, ListSymmetricKeysResponse>;
1150
+ delete: handleUnaryCall<DeleteSymmetricKeyRequest, Operation>;
1151
+ updateDeletionDelay: handleUnaryCall<UpdateSymmetricKeyDeletionDelayRequest, Operation>;
1152
+ undelete: handleUnaryCall<UndeleteSymmetricKeyRequest, Operation>;
1153
+ }
1154
+ export interface SymmetricKeyServiceBaseClient extends Client {
1155
+ create(request: CreateSymmetricKeyRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: GrpcServiceError | null, response: Operation) => void): ClientUnaryCall;
1156
+ update(request: UpdateSymmetricKeyRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: GrpcServiceError | null, response: Operation) => void): ClientUnaryCall;
1157
+ rotate(request: RotateSymmetricKeyRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: GrpcServiceError | null, response: Operation) => void): ClientUnaryCall;
1158
+ get(request: GetSymmetricKeyRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: GrpcServiceError | null, response: SymmetricKey) => void): ClientUnaryCall;
1159
+ getByName(request: GetSymmetricKeyByNameRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: GrpcServiceError | null, response: SymmetricKey) => void): ClientUnaryCall;
1160
+ list(request: ListSymmetricKeysRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: GrpcServiceError | null, response: ListSymmetricKeysResponse) => void): ClientUnaryCall;
1161
+ delete(request: DeleteSymmetricKeyRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: GrpcServiceError | null, response: Operation) => void): ClientUnaryCall;
1162
+ updateDeletionDelay(request: UpdateSymmetricKeyDeletionDelayRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: GrpcServiceError | null, response: Operation) => void): ClientUnaryCall;
1163
+ undelete(request: UndeleteSymmetricKeyRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: GrpcServiceError | null, response: Operation) => void): ClientUnaryCall;
1164
+ }
1165
+ export declare const SymmetricKeyServiceBaseClient: {
1166
+ new (address: string, credentials: ChannelCredentials, options?: Partial<ClientOptions>): SymmetricKeyServiceBaseClient;
1167
+ service: typeof SymmetricKeyServiceServiceDescription;
1168
+ serviceName: string;
1169
+ };
1170
+ /**
1171
+ * Set of methods for managing symmetric KMS keys.
1172
+ *
1173
+ */
1174
+ export interface SymmetricKeyService {
1175
+ $type: "nebius.kms.v1.SymmetricKeyService";
1176
+ /**
1177
+ * Creates a symmetric KMS key in the specified container.
1178
+ *
1179
+ */
1180
+ create(request: CreateSymmetricKeyRequest): SDKRequestClass<CreateSymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
1181
+ create(request: CreateSymmetricKeyRequest, metadata: Metadata): SDKRequestClass<CreateSymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
1182
+ create(request: CreateSymmetricKeyRequest, metadata: Metadata, options: Partial<CallOptions> & RetryOptions): SDKRequestClass<CreateSymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
1183
+ /**
1184
+ * Updates a symmetric KMS key.
1185
+ *
1186
+ */
1187
+ update(request: UpdateSymmetricKeyRequest): SDKRequestClass<UpdateSymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
1188
+ update(request: UpdateSymmetricKeyRequest, metadata: Metadata): SDKRequestClass<UpdateSymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
1189
+ update(request: UpdateSymmetricKeyRequest, metadata: Metadata, options: Partial<CallOptions> & RetryOptions): SDKRequestClass<UpdateSymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
1190
+ /**
1191
+ * Rotates the specified key: creates a new key version and makes it the primary version.
1192
+ * The old version remains available for decryption of ciphertext encrypted with it.
1193
+ *
1194
+ */
1195
+ rotate(request: RotateSymmetricKeyRequest): SDKRequestClass<RotateSymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
1196
+ rotate(request: RotateSymmetricKeyRequest, metadata: Metadata): SDKRequestClass<RotateSymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
1197
+ rotate(request: RotateSymmetricKeyRequest, metadata: Metadata, options: Partial<CallOptions> & RetryOptions): SDKRequestClass<RotateSymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
1198
+ /**
1199
+ * Returns the specified symmetric KMS key by id.
1200
+ *
1201
+ */
1202
+ get(request: GetSymmetricKeyRequest): SDKRequestClass<GetSymmetricKeyRequest, SymmetricKey>;
1203
+ get(request: GetSymmetricKeyRequest, metadata: Metadata): SDKRequestClass<GetSymmetricKeyRequest, SymmetricKey>;
1204
+ get(request: GetSymmetricKeyRequest, metadata: Metadata, options: Partial<CallOptions> & RetryOptions): SDKRequestClass<GetSymmetricKeyRequest, SymmetricKey>;
1205
+ /**
1206
+ * Returns the specified symmetric KMS key by name.
1207
+ *
1208
+ */
1209
+ getByName(request: GetSymmetricKeyByNameRequest): SDKRequestClass<GetSymmetricKeyByNameRequest, SymmetricKey>;
1210
+ getByName(request: GetSymmetricKeyByNameRequest, metadata: Metadata): SDKRequestClass<GetSymmetricKeyByNameRequest, SymmetricKey>;
1211
+ getByName(request: GetSymmetricKeyByNameRequest, metadata: Metadata, options: Partial<CallOptions> & RetryOptions): SDKRequestClass<GetSymmetricKeyByNameRequest, SymmetricKey>;
1212
+ /**
1213
+ * Returns the list of symmetric KMS keys in the specified container.
1214
+ *
1215
+ */
1216
+ list(request: ListSymmetricKeysRequest): SDKRequestClass<ListSymmetricKeysRequest, ListSymmetricKeysResponse>;
1217
+ list(request: ListSymmetricKeysRequest, metadata: Metadata): SDKRequestClass<ListSymmetricKeysRequest, ListSymmetricKeysResponse>;
1218
+ list(request: ListSymmetricKeysRequest, metadata: Metadata, options: Partial<CallOptions> & RetryOptions): SDKRequestClass<ListSymmetricKeysRequest, ListSymmetricKeysResponse>;
1219
+ /**
1220
+ * Schedules a symmetric KMS key for deletion.
1221
+ *
1222
+ */
1223
+ delete(request: DeleteSymmetricKeyRequest): SDKRequestClass<DeleteSymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
1224
+ delete(request: DeleteSymmetricKeyRequest, metadata: Metadata): SDKRequestClass<DeleteSymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
1225
+ delete(request: DeleteSymmetricKeyRequest, metadata: Metadata, options: Partial<CallOptions> & RetryOptions): SDKRequestClass<DeleteSymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
1226
+ /**
1227
+ * Update deletion delay for a symmetric KMS key scheduled for deletion.
1228
+ *
1229
+ */
1230
+ updateDeletionDelay(request: UpdateSymmetricKeyDeletionDelayRequest): SDKRequestClass<UpdateSymmetricKeyDeletionDelayRequest, OperationWrapper<GetOperationRequest>>;
1231
+ updateDeletionDelay(request: UpdateSymmetricKeyDeletionDelayRequest, metadata: Metadata): SDKRequestClass<UpdateSymmetricKeyDeletionDelayRequest, OperationWrapper<GetOperationRequest>>;
1232
+ updateDeletionDelay(request: UpdateSymmetricKeyDeletionDelayRequest, metadata: Metadata, options: Partial<CallOptions> & RetryOptions): SDKRequestClass<UpdateSymmetricKeyDeletionDelayRequest, OperationWrapper<GetOperationRequest>>;
1233
+ /**
1234
+ * Restores a symmetric KMS key scheduled for deletion.
1235
+ *
1236
+ */
1237
+ undelete(request: UndeleteSymmetricKeyRequest): SDKRequestClass<UndeleteSymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
1238
+ undelete(request: UndeleteSymmetricKeyRequest, metadata: Metadata): SDKRequestClass<UndeleteSymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
1239
+ undelete(request: UndeleteSymmetricKeyRequest, metadata: Metadata, options: Partial<CallOptions> & RetryOptions): SDKRequestClass<UndeleteSymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
1240
+ }
1241
+ export declare class SymmetricKeyService implements SymmetricKeyService {
1242
+ private sdk;
1243
+ $type: "nebius.kms.v1.SymmetricKeyService";
1244
+ private addr;
1245
+ private spec;
1246
+ private apiServiceName;
1247
+ constructor(sdk: SDKInterface);
1248
+ getOperationService(): OperationService;
1249
+ create(request: CreateSymmetricKeyRequest): SDKRequestClass<CreateSymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
1250
+ create(request: CreateSymmetricKeyRequest, metadata: Metadata): SDKRequestClass<CreateSymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
1251
+ create(request: CreateSymmetricKeyRequest, metadata: Metadata, options: Partial<CallOptions> & RetryOptions): SDKRequestClass<CreateSymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
1252
+ update(request: UpdateSymmetricKeyRequest): SDKRequestClass<UpdateSymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
1253
+ update(request: UpdateSymmetricKeyRequest, metadata: Metadata): SDKRequestClass<UpdateSymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
1254
+ update(request: UpdateSymmetricKeyRequest, metadata: Metadata, options: Partial<CallOptions> & RetryOptions): SDKRequestClass<UpdateSymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
1255
+ rotate(request: RotateSymmetricKeyRequest): SDKRequestClass<RotateSymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
1256
+ rotate(request: RotateSymmetricKeyRequest, metadata: Metadata): SDKRequestClass<RotateSymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
1257
+ rotate(request: RotateSymmetricKeyRequest, metadata: Metadata, options: Partial<CallOptions> & RetryOptions): SDKRequestClass<RotateSymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
1258
+ get(request: GetSymmetricKeyRequest): SDKRequestClass<GetSymmetricKeyRequest, SymmetricKey>;
1259
+ get(request: GetSymmetricKeyRequest, metadata: Metadata): SDKRequestClass<GetSymmetricKeyRequest, SymmetricKey>;
1260
+ get(request: GetSymmetricKeyRequest, metadata: Metadata, options: Partial<CallOptions> & RetryOptions): SDKRequestClass<GetSymmetricKeyRequest, SymmetricKey>;
1261
+ getByName(request: GetSymmetricKeyByNameRequest): SDKRequestClass<GetSymmetricKeyByNameRequest, SymmetricKey>;
1262
+ getByName(request: GetSymmetricKeyByNameRequest, metadata: Metadata): SDKRequestClass<GetSymmetricKeyByNameRequest, SymmetricKey>;
1263
+ getByName(request: GetSymmetricKeyByNameRequest, metadata: Metadata, options: Partial<CallOptions> & RetryOptions): SDKRequestClass<GetSymmetricKeyByNameRequest, SymmetricKey>;
1264
+ list(request: ListSymmetricKeysRequest): SDKRequestClass<ListSymmetricKeysRequest, ListSymmetricKeysResponse>;
1265
+ list(request: ListSymmetricKeysRequest, metadata: Metadata): SDKRequestClass<ListSymmetricKeysRequest, ListSymmetricKeysResponse>;
1266
+ list(request: ListSymmetricKeysRequest, metadata: Metadata, options: Partial<CallOptions> & RetryOptions): SDKRequestClass<ListSymmetricKeysRequest, ListSymmetricKeysResponse>;
1267
+ delete(request: DeleteSymmetricKeyRequest): SDKRequestClass<DeleteSymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
1268
+ delete(request: DeleteSymmetricKeyRequest, metadata: Metadata): SDKRequestClass<DeleteSymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
1269
+ delete(request: DeleteSymmetricKeyRequest, metadata: Metadata, options: Partial<CallOptions> & RetryOptions): SDKRequestClass<DeleteSymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
1270
+ updateDeletionDelay(request: UpdateSymmetricKeyDeletionDelayRequest): SDKRequestClass<UpdateSymmetricKeyDeletionDelayRequest, OperationWrapper<GetOperationRequest>>;
1271
+ updateDeletionDelay(request: UpdateSymmetricKeyDeletionDelayRequest, metadata: Metadata): SDKRequestClass<UpdateSymmetricKeyDeletionDelayRequest, OperationWrapper<GetOperationRequest>>;
1272
+ updateDeletionDelay(request: UpdateSymmetricKeyDeletionDelayRequest, metadata: Metadata, options: Partial<CallOptions> & RetryOptions): SDKRequestClass<UpdateSymmetricKeyDeletionDelayRequest, OperationWrapper<GetOperationRequest>>;
1273
+ undelete(request: UndeleteSymmetricKeyRequest): SDKRequestClass<UndeleteSymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
1274
+ undelete(request: UndeleteSymmetricKeyRequest, metadata: Metadata): SDKRequestClass<UndeleteSymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
1275
+ undelete(request: UndeleteSymmetricKeyRequest, metadata: Metadata, options: Partial<CallOptions> & RetryOptions): SDKRequestClass<UndeleteSymmetricKeyRequest, OperationWrapper<GetOperationRequest>>;
1276
+ }
1277
+ /**
1278
+ * Supported symmetric encryption algorithms.
1279
+ *
1280
+ */
1281
+ export type SymmetricAlgorithm = EnumInstance<"UNRECOGNIZED" | "SYMMETRIC_ALGORITHM_UNSPECIFIED" | "AES_128" | "AES_256">;
1282
+ interface SymmetricAlgorithmValueMembers {
1283
+ readonly SYMMETRIC_ALGORITHM_UNSPECIFIED: EnumInstance<"UNRECOGNIZED" | "SYMMETRIC_ALGORITHM_UNSPECIFIED" | "AES_128" | "AES_256">;
1284
+ /**
1285
+ * Deprecated. It is impossible to create new keys with this algorithm.
1286
+ * AES algorithm with 128-bit keys.
1287
+ *
1288
+ */
1289
+ readonly AES_128: EnumInstance<"UNRECOGNIZED" | "SYMMETRIC_ALGORITHM_UNSPECIFIED" | "AES_128" | "AES_256">;
1290
+ /**
1291
+ * AES algorithm with 256-bit keys.
1292
+ *
1293
+ */
1294
+ readonly AES_256: EnumInstance<"UNRECOGNIZED" | "SYMMETRIC_ALGORITHM_UNSPECIFIED" | "AES_128" | "AES_256">;
1295
+ }
1296
+ export type SymmetricAlgorithmClass = EnumClass<"UNRECOGNIZED" | "SYMMETRIC_ALGORITHM_UNSPECIFIED" | "AES_128" | "AES_256"> & SymmetricAlgorithmValueMembers;
1297
+ export declare const SymmetricAlgorithm: SymmetricAlgorithmClass;
1298
+ /**
1299
+ * A symmetric KMS key.
1300
+ *
1301
+ */
1302
+ export interface SymmetricKey {
1303
+ $type: "nebius.kms.v1.SymmetricKey";
1304
+ [unknownFieldsSymbol]?: Uint8Array | undefined;
1305
+ [customJson]?: () => unknown;
1306
+ metadata?: ResourceMetadata | undefined;
1307
+ /**
1308
+ * The specifications of the symmetric key.
1309
+ *
1310
+ */
1311
+ spec?: SymmetricKeySpec | undefined;
1312
+ /**
1313
+ * The current status of the symmetric key.
1314
+ *
1315
+ */
1316
+ status?: SymmetricKeyStatus | undefined;
1317
+ }
1318
+ export declare const SymmetricKey: MessageFns<SymmetricKey, "nebius.kms.v1.SymmetricKey">;
1319
+ export interface SymmetricKeySpec {
1320
+ $type: "nebius.kms.v1.SymmetricKeySpec";
1321
+ [unknownFieldsSymbol]?: Uint8Array | undefined;
1322
+ [customJson]?: () => unknown;
1323
+ /**
1324
+ * Description of the key.
1325
+ *
1326
+ */
1327
+ description: string;
1328
+ /**
1329
+ * Encryption algorithm that should be used when using the key to encrypt plaintext.
1330
+ * Must be specified only during create operations. Cannot be updated.
1331
+ *
1332
+ */
1333
+ algorithm: SymmetricAlgorithm;
1334
+ /**
1335
+ * Key rotation period.
1336
+ *
1337
+ */
1338
+ rotationPeriod?: Duration | undefined;
1339
+ }
1340
+ export declare const SymmetricKeySpec: MessageFns<SymmetricKeySpec, "nebius.kms.v1.SymmetricKeySpec">;
1341
+ export interface SymmetricKeyStatus {
1342
+ $type: "nebius.kms.v1.SymmetricKeyStatus";
1343
+ [unknownFieldsSymbol]?: Uint8Array | undefined;
1344
+ [customJson]?: () => unknown;
1345
+ /**
1346
+ * State (ACTIVE, SCHEDULED_FOR_DELETION).
1347
+ *
1348
+ */
1349
+ state: KeyState;
1350
+ /**
1351
+ * Time when the key was scheduled for deletion.
1352
+ *
1353
+ */
1354
+ deletedAt?: Dayjs | undefined;
1355
+ /**
1356
+ * Time when the key will be permanently deleted.
1357
+ *
1358
+ */
1359
+ purgeAt?: Dayjs | undefined;
1360
+ }
1361
+ export declare const SymmetricKeyStatus: MessageFns<SymmetricKeyStatus, "nebius.kms.v1.SymmetricKeyStatus">;
1362
+ export {};
1363
+ //# sourceMappingURL=index.d.ts.map