import _m0 from 'protobufjs/minimal'; export declare const protobufPackage = "yandex.cloud.iam.v1"; export interface RefreshToken { /** Refresh Token id. */ id: string; /** Information about the app for which the Refresh Token was issued. */ clientInstanceInfo: string; /** The OAuth client identifier for which the Refresh Token was issued. */ clientId: string; /** The subject identifier for whom the Refresh Token was issued. */ subjectId: string; /** Refresh token creation time. */ createdAt?: Date; /** Refresh token expiration time. */ expiresAt?: Date; /** Timestamp for the last authentication using this Refresh Token. */ lastUsedAt?: Date; /** * Protection level of the refresh token. * * It shows whether DPOP was used to protect the Refresh Token and and the level of security of the storage used for the DPOP key. */ protectionLevel: RefreshToken_ProtectionLevel; } /** Protection level of the refresh token. */ export declare enum RefreshToken_ProtectionLevel { PROTECTION_LEVEL_UNSPECIFIED = 0, /** NO_PROTECTION - Refresh token without DPOP */ NO_PROTECTION = 1, /** INSECURE_KEY_DPOP - Refresh token with dpop. The dpop key is not a YubiKey PIV key with required pin/touch policy and attestation. */ INSECURE_KEY_DPOP = 2, /** SECURE_KEY_DPOP - Refresh token with dpop. The dpop key is a YubiKey PIV key with required pin/touch policy and attestation. */ SECURE_KEY_DPOP = 3, UNRECOGNIZED = -1 } export declare function refreshToken_ProtectionLevelFromJSON(object: any): RefreshToken_ProtectionLevel; export declare function refreshToken_ProtectionLevelToJSON(object: RefreshToken_ProtectionLevel): string; export declare const RefreshToken: { encode(message: RefreshToken, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): RefreshToken; fromJSON(object: any): RefreshToken; toJSON(message: RefreshToken): unknown; fromPartial, never>>(object: I): RefreshToken; }; 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 {};