import _m0 from 'protobufjs/minimal'; export declare const protobufPackage = "yandex.cloud.iam.v1"; /** Currently represents only [Yandex account](/docs/iam/concepts/users/accounts#passport). */ export interface UserAccount { /** ID of the user account. */ id: string; /** A YandexPassportUserAccount resource. */ yandexPassportUserAccount?: YandexPassportUserAccount | undefined; /** A SAML federated user. */ samlUserAccount?: SamlUserAccount | undefined; lastAuthenticatedAt?: Date; } /** * A YandexPassportUserAccount resource. * For more information, see [Yandex account](/docs/iam/concepts/users/accounts#passport). */ export interface YandexPassportUserAccount { /** Login of the Yandex user account. */ login: string; /** Default email of the Yandex user account. */ defaultEmail: string; } /** * A SAML federated user. * For more information, see [federations](/docs/iam/concepts/federations). */ export interface SamlUserAccount { /** ID of the federation that the federation belongs to. */ federationId: string; /** * Name Id of the SAML federated user. * The name is unique within the federation. 1-256 characters long. */ nameId: string; /** Additional attributes of the SAML federated user. */ attributes: { [key: string]: SamlUserAccount_Attribute; }; } export interface SamlUserAccount_Attribute { value: string[]; } export interface SamlUserAccount_AttributesEntry { key: string; value?: SamlUserAccount_Attribute; } export declare const UserAccount: { encode(message: UserAccount, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): UserAccount; fromJSON(object: any): UserAccount; toJSON(message: UserAccount): unknown; fromPartial, never>) | undefined; samlUserAccount?: ({ federationId?: string | undefined; nameId?: string | undefined; attributes?: { [x: string]: { value?: string[] | undefined; } | undefined; } | undefined; } & { federationId?: string | undefined; nameId?: string | undefined; attributes?: ({ [x: string]: { value?: string[] | undefined; } | undefined; } & { [x: string]: ({ value?: string[] | undefined; } & { value?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; } & Record, never>) | undefined; } & Record, never>) | undefined; lastAuthenticatedAt?: Date | undefined; } & Record, never>>(object: I): UserAccount; }; export declare const YandexPassportUserAccount: { encode(message: YandexPassportUserAccount, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): YandexPassportUserAccount; fromJSON(object: any): YandexPassportUserAccount; toJSON(message: YandexPassportUserAccount): unknown; fromPartial, never>>(object: I): YandexPassportUserAccount; }; export declare const SamlUserAccount: { encode(message: SamlUserAccount, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): SamlUserAccount; fromJSON(object: any): SamlUserAccount; toJSON(message: SamlUserAccount): unknown; fromPartial, never>) | undefined; } & Record, never>) | undefined; } & Record, never>) | undefined; } & Record, never>>(object: I): SamlUserAccount; }; export declare const SamlUserAccount_Attribute: { encode(message: SamlUserAccount_Attribute, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): SamlUserAccount_Attribute; fromJSON(object: any): SamlUserAccount_Attribute; toJSON(message: SamlUserAccount_Attribute): unknown; fromPartial, never>) | undefined; } & Record, never>>(object: I): SamlUserAccount_Attribute; }; export declare const SamlUserAccount_AttributesEntry: { encode(message: SamlUserAccount_AttributesEntry, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): SamlUserAccount_AttributesEntry; fromJSON(object: any): SamlUserAccount_AttributesEntry; toJSON(message: SamlUserAccount_AttributesEntry): unknown; fromPartial, never>) | undefined; } & Record, never>) | undefined; } & Record, never>>(object: I): SamlUserAccount_AttributesEntry; }; 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 {};