import _m0 from 'protobufjs/minimal'; export declare const protobufPackage = "yandex.cloud.kms.v1.asymmetricencryption"; /** Supported asymmetric encryption algorithms. */ export declare enum AsymmetricEncryptionAlgorithm { ASYMMETRIC_ENCRYPTION_ALGORITHM_UNSPECIFIED = 0, /** RSA_2048_ENC_OAEP_SHA_256 - RSA-2048 encryption with OAEP padding and SHA-256 */ RSA_2048_ENC_OAEP_SHA_256 = 1, /** RSA_3072_ENC_OAEP_SHA_256 - RSA-3072 encryption with OAEP padding and SHA-256 */ RSA_3072_ENC_OAEP_SHA_256 = 2, /** RSA_4096_ENC_OAEP_SHA_256 - RSA-4096 encryption with OAEP padding and SHA-256 */ RSA_4096_ENC_OAEP_SHA_256 = 3, UNRECOGNIZED = -1 } export declare function asymmetricEncryptionAlgorithmFromJSON(object: any): AsymmetricEncryptionAlgorithm; export declare function asymmetricEncryptionAlgorithmToJSON(object: AsymmetricEncryptionAlgorithm): string; /** An asymmetric KMS key that may contain several versions of the cryptographic material. */ export interface AsymmetricEncryptionKey { /** ID of the key. */ id: string; /** ID of the folder that the key belongs to. */ folderId: string; /** Time when the key was created. */ createdAt?: Date; /** Name of the key. */ name: string; /** Description of the key. */ description: string; /** Custom labels for the key as `key:value` pairs. Maximum 64 per key. */ labels: { [key: string]: string; }; /** Current status of the key. */ status: AsymmetricEncryptionKey_Status; /** Asymmetric Encryption Algorithm ID. */ encryptionAlgorithm: AsymmetricEncryptionAlgorithm; /** Flag that inhibits deletion of the key */ deletionProtection: boolean; } export declare enum AsymmetricEncryptionKey_Status { STATUS_UNSPECIFIED = 0, /** CREATING - The key is being created. */ CREATING = 1, /** * ACTIVE - The key is active and can be used for encryption and decryption or signature and verification. * Can be set to INACTIVE using the [AsymmetricKeyService.Update] method. */ ACTIVE = 2, /** * INACTIVE - The key is inactive and unusable. * Can be set to ACTIVE using the [AsymmetricKeyService.Update] method. */ INACTIVE = 3, UNRECOGNIZED = -1 } export declare function asymmetricEncryptionKey_StatusFromJSON(object: any): AsymmetricEncryptionKey_Status; export declare function asymmetricEncryptionKey_StatusToJSON(object: AsymmetricEncryptionKey_Status): string; export interface AsymmetricEncryptionKey_LabelsEntry { key: string; value: string; } export declare const AsymmetricEncryptionKey: { encode(message: AsymmetricEncryptionKey, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): AsymmetricEncryptionKey; fromJSON(object: any): AsymmetricEncryptionKey; toJSON(message: AsymmetricEncryptionKey): unknown; fromPartial, never>) | undefined; status?: AsymmetricEncryptionKey_Status | undefined; encryptionAlgorithm?: AsymmetricEncryptionAlgorithm | undefined; deletionProtection?: boolean | undefined; } & Record, never>>(object: I): AsymmetricEncryptionKey; }; export declare const AsymmetricEncryptionKey_LabelsEntry: { encode(message: AsymmetricEncryptionKey_LabelsEntry, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): AsymmetricEncryptionKey_LabelsEntry; fromJSON(object: any): AsymmetricEncryptionKey_LabelsEntry; toJSON(message: AsymmetricEncryptionKey_LabelsEntry): unknown; fromPartial, never>>(object: I): AsymmetricEncryptionKey_LabelsEntry; }; type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; export type DeepPartial = T extends Builtin ? T : T extends Array ? Array> : T extends ReadonlyArray ? ReadonlyArray> : T extends {} ? { [K in keyof T]?: DeepPartial; } : Partial; type KeysOfUnion = T extends T ? keyof T : never; export type Exact = P extends Builtin ? P : P & { [K in keyof P]: Exact; } & Record>, never>; export {};