import _m0 from 'protobufjs/minimal'; export declare const protobufPackage = "yandex.cloud.lockbox.v1"; /** A secret that may contain several versions of the payload. */ export interface Secret { /** ID of the secret. */ id: string; /** ID of the folder that the secret belongs to. */ folderId: string; /** Creation timestamp. */ createdAt?: Date; /** Name of the secret. */ name: string; /** Description of the secret. */ description: string; /** Custom labels for the secret as `key:value` pairs. Maximum 64 per key. */ labels: { [key: string]: string; }; /** Optional ID of the KMS key will be used to encrypt and decrypt the secret. */ kmsKeyId: string; /** Status of the secret. */ status: Secret_Status; /** Current (i.e. the `latest`) version of the secret. */ currentVersion?: Version; /** Flag that inhibits deletion of the secret. */ deletionProtection: boolean; passwordPayloadSpecification?: PasswordPayloadSpecification | undefined; } export declare enum Secret_Status { STATUS_UNSPECIFIED = 0, /** CREATING - The secret is being created. */ CREATING = 1, /** * ACTIVE - The secret is active and the secret payload can be accessed. * * Can be set to INACTIVE using the [SecretService.Deactivate] method. */ ACTIVE = 2, /** * INACTIVE - The secret is inactive and unusable. * * Can be set to ACTIVE using the [SecretService.Deactivate] method. */ INACTIVE = 3, UNRECOGNIZED = -1 } export declare function secret_StatusFromJSON(object: any): Secret_Status; export declare function secret_StatusToJSON(object: Secret_Status): string; export interface Secret_LabelsEntry { key: string; value: string; } export interface Version { /** ID of the version. */ id: string; /** ID of the secret that the version belongs to. */ secretId: string; /** Time when the version was created. */ createdAt?: Date; /** * Time when the version is going to be destroyed. Empty unless the status * is `SCHEDULED_FOR_DESTRUCTION`. */ destroyAt?: Date; /** Description of the version. */ description: string; /** Status of the secret. */ status: Version_Status; /** Keys of the entries contained in the version payload. */ payloadEntryKeys: string[]; passwordPayloadSpecification?: PasswordPayloadSpecification | undefined; } export declare enum Version_Status { STATUS_UNSPECIFIED = 0, /** ACTIVE - The version is active and the secret payload can be accessed. */ ACTIVE = 1, /** * SCHEDULED_FOR_DESTRUCTION - The version is scheduled for destruction, the time when it will be destroyed * is specified in the [Version.destroy_at] field. */ SCHEDULED_FOR_DESTRUCTION = 2, /** DESTROYED - The version is destroyed and cannot be recovered. */ DESTROYED = 3, UNRECOGNIZED = -1 } export declare function version_StatusFromJSON(object: any): Version_Status; export declare function version_StatusToJSON(object: Version_Status): string; export interface PasswordPayloadSpecification { /** key of the entry to store generated password value */ passwordKey: string; /** password length; by default, a reasonable length will be decided */ length: number; /** whether at least one A..Z character is included in the password, true by default */ includeUppercase?: boolean; /** whether at least one a..z character is included in the password, true by default */ includeLowercase?: boolean; /** whether at least one 0..9 character is included in the password, true by default */ includeDigits?: boolean; /** * whether at least one punctuation character is included in the password, true by default * punctuation characters by default (there are 32): !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~ * to customize the punctuation characters, see included_punctuation and excluded_punctuation below */ includePunctuation?: boolean; /** * If include_punctuation is true, one of these two fields (not both) may be used optionally to customize the punctuation: * a string of specific punctuation characters to use (at most, all the 32) */ includedPunctuation: string; /** a string of punctuation characters to exclude from the default (at most 31, it's not allowed to exclude all the 32) */ excludedPunctuation: string; } export declare const Secret: { encode(message: Secret, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Secret; fromJSON(object: any): Secret; toJSON(message: Secret): unknown; fromPartial, never>) | undefined; kmsKeyId?: string | undefined; status?: Secret_Status | undefined; currentVersion?: ({ id?: string | undefined; secretId?: string | undefined; createdAt?: Date | undefined; destroyAt?: Date | undefined; description?: string | undefined; status?: Version_Status | undefined; payloadEntryKeys?: string[] | undefined; passwordPayloadSpecification?: { passwordKey?: string | undefined; length?: number | undefined; includeUppercase?: boolean | undefined; includeLowercase?: boolean | undefined; includeDigits?: boolean | undefined; includePunctuation?: boolean | undefined; includedPunctuation?: string | undefined; excludedPunctuation?: string | undefined; } | undefined; } & { id?: string | undefined; secretId?: string | undefined; createdAt?: Date | undefined; destroyAt?: Date | undefined; description?: string | undefined; status?: Version_Status | undefined; payloadEntryKeys?: (string[] & string[] & Record, never>) | undefined; passwordPayloadSpecification?: ({ passwordKey?: string | undefined; length?: number | undefined; includeUppercase?: boolean | undefined; includeLowercase?: boolean | undefined; includeDigits?: boolean | undefined; includePunctuation?: boolean | undefined; includedPunctuation?: string | undefined; excludedPunctuation?: string | undefined; } & { passwordKey?: string | undefined; length?: number | undefined; includeUppercase?: boolean | undefined; includeLowercase?: boolean | undefined; includeDigits?: boolean | undefined; includePunctuation?: boolean | undefined; includedPunctuation?: string | undefined; excludedPunctuation?: string | undefined; } & Record, never>) | undefined; } & Record, never>) | undefined; deletionProtection?: boolean | undefined; passwordPayloadSpecification?: ({ passwordKey?: string | undefined; length?: number | undefined; includeUppercase?: boolean | undefined; includeLowercase?: boolean | undefined; includeDigits?: boolean | undefined; includePunctuation?: boolean | undefined; includedPunctuation?: string | undefined; excludedPunctuation?: string | undefined; } & { passwordKey?: string | undefined; length?: number | undefined; includeUppercase?: boolean | undefined; includeLowercase?: boolean | undefined; includeDigits?: boolean | undefined; includePunctuation?: boolean | undefined; includedPunctuation?: string | undefined; excludedPunctuation?: string | undefined; } & Record, never>) | undefined; } & Record, never>>(object: I): Secret; }; export declare const Secret_LabelsEntry: { encode(message: Secret_LabelsEntry, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Secret_LabelsEntry; fromJSON(object: any): Secret_LabelsEntry; toJSON(message: Secret_LabelsEntry): unknown; fromPartial, never>>(object: I): Secret_LabelsEntry; }; export declare const Version: { encode(message: Version, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Version; fromJSON(object: any): Version; toJSON(message: Version): unknown; fromPartial, never>) | undefined; passwordPayloadSpecification?: ({ passwordKey?: string | undefined; length?: number | undefined; includeUppercase?: boolean | undefined; includeLowercase?: boolean | undefined; includeDigits?: boolean | undefined; includePunctuation?: boolean | undefined; includedPunctuation?: string | undefined; excludedPunctuation?: string | undefined; } & { passwordKey?: string | undefined; length?: number | undefined; includeUppercase?: boolean | undefined; includeLowercase?: boolean | undefined; includeDigits?: boolean | undefined; includePunctuation?: boolean | undefined; includedPunctuation?: string | undefined; excludedPunctuation?: string | undefined; } & Record, never>) | undefined; } & Record, never>>(object: I): Version; }; export declare const PasswordPayloadSpecification: { encode(message: PasswordPayloadSpecification, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): PasswordPayloadSpecification; fromJSON(object: any): PasswordPayloadSpecification; toJSON(message: PasswordPayloadSpecification): unknown; fromPartial, never>>(object: I): PasswordPayloadSpecification; }; 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 {};