/// import { ChannelCredentials, ChannelOptions, UntypedServiceImplementation, handleUnaryCall, Client, ClientUnaryCall, Metadata, CallOptions, ServiceError } from '@grpc/grpc-js'; import _m0 from 'protobufjs/minimal'; import { FederatedCredential } from '../../../../../yandex/cloud/iam/v1/workload/federated_credential'; import { Operation } from '../../../../../yandex/cloud/operation/operation'; export declare const protobufPackage = "yandex.cloud.iam.v1.workload"; export interface GetFederatedCredentialRequest { /** * ID of the federated credential to return. * To get the federated credential ID, make a [FederatedCredentialService.List] request. */ federatedCredentialId: string; } export interface ListFederatedCredentialsRequest { /** * ID of the service account to list federated credentials for. * To get the the service account ID make a [yandex.cloud.iam.v1.ServiceAccountService.List] request. */ serviceAccountId: string; /** * The maximum number of results per page to return. If the number of available * results is larger than [page_size], * the service returns a [ListFederatedCredentialsResponse.next_page_token] * that can be used to get the next page of results in subsequent list requests. * Default value: 100. */ pageSize: number; /** * Page token. To get the next page of results, set [page_token] * to the [ListFederatedCredentialsResponse.next_page_token] * returned by a previous list request. */ pageToken: string; } export interface ListFederatedCredentialsResponse { /** List of federated credentials. */ federatedCredentials: FederatedCredential[]; /** * This token allows you to get the next page of results for list requests. If the number of results * is larger than [ListFederatedCredentialsRequest.page_size], use * the [next_page_token] as the value * for the [ListFederatedCredentialsRequest.page_token] query parameter * in the next list request. Each subsequent list request will have its own * [next_page_token] to continue paging through the results. */ nextPageToken: string; } export interface CreateFederatedCredentialRequest { /** * ID of the service account to create a federated credential for. * To get the service account ID, use a [yandex.cloud.iam.v1.ServiceAccountService.List] request. */ serviceAccountId: string; /** ID of the workload identity federation that is used for authentication. */ federationId: string; /** Id of the external subject. */ externalSubjectId: string; } export interface CreateFederatedCredentialMetadata { /** ID of the federated credential that is being created. */ federatedCredentialId: string; } export interface DeleteFederatedCredentialRequest { /** * ID of the federated credential key to delete. * To get the federated credential ID, use a [FederatedCredentialService.List] request. */ federatedCredentialId: string; } export interface DeleteFederatedCredentialMetadata { /** ID of the federated credential that is being deleted. */ federatedCredentialId: string; } export declare const GetFederatedCredentialRequest: { encode(message: GetFederatedCredentialRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): GetFederatedCredentialRequest; fromJSON(object: any): GetFederatedCredentialRequest; toJSON(message: GetFederatedCredentialRequest): unknown; fromPartial, never>>(object: I): GetFederatedCredentialRequest; }; export declare const ListFederatedCredentialsRequest: { encode(message: ListFederatedCredentialsRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): ListFederatedCredentialsRequest; fromJSON(object: any): ListFederatedCredentialsRequest; toJSON(message: ListFederatedCredentialsRequest): unknown; fromPartial, never>>(object: I): ListFederatedCredentialsRequest; }; export declare const ListFederatedCredentialsResponse: { encode(message: ListFederatedCredentialsResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): ListFederatedCredentialsResponse; fromJSON(object: any): ListFederatedCredentialsResponse; toJSON(message: ListFederatedCredentialsResponse): unknown; fromPartial, never>)[] & Record, never>) | undefined; nextPageToken?: string | undefined; } & Record, never>>(object: I): ListFederatedCredentialsResponse; }; export declare const CreateFederatedCredentialRequest: { encode(message: CreateFederatedCredentialRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): CreateFederatedCredentialRequest; fromJSON(object: any): CreateFederatedCredentialRequest; toJSON(message: CreateFederatedCredentialRequest): unknown; fromPartial, never>>(object: I): CreateFederatedCredentialRequest; }; export declare const CreateFederatedCredentialMetadata: { encode(message: CreateFederatedCredentialMetadata, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): CreateFederatedCredentialMetadata; fromJSON(object: any): CreateFederatedCredentialMetadata; toJSON(message: CreateFederatedCredentialMetadata): unknown; fromPartial, never>>(object: I): CreateFederatedCredentialMetadata; }; export declare const DeleteFederatedCredentialRequest: { encode(message: DeleteFederatedCredentialRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): DeleteFederatedCredentialRequest; fromJSON(object: any): DeleteFederatedCredentialRequest; toJSON(message: DeleteFederatedCredentialRequest): unknown; fromPartial, never>>(object: I): DeleteFederatedCredentialRequest; }; export declare const DeleteFederatedCredentialMetadata: { encode(message: DeleteFederatedCredentialMetadata, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): DeleteFederatedCredentialMetadata; fromJSON(object: any): DeleteFederatedCredentialMetadata; toJSON(message: DeleteFederatedCredentialMetadata): unknown; fromPartial, never>>(object: I): DeleteFederatedCredentialMetadata; }; /** A set of methods for managing federated credentials. */ export declare const FederatedCredentialServiceService: { /** * Returns the specified federated credential. * * To get the list of available federated credentials, make a [List] request. */ readonly get: { readonly path: "/yandex.cloud.iam.v1.workload.FederatedCredentialService/Get"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: GetFederatedCredentialRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => GetFederatedCredentialRequest; readonly responseSerialize: (value: FederatedCredential) => Buffer; readonly responseDeserialize: (value: Buffer) => FederatedCredential; }; /** Retrieves the list of federated credentials for the specified service account. */ readonly list: { readonly path: "/yandex.cloud.iam.v1.workload.FederatedCredentialService/List"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: ListFederatedCredentialsRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => ListFederatedCredentialsRequest; readonly responseSerialize: (value: ListFederatedCredentialsResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => ListFederatedCredentialsResponse; }; /** Creates a federated credential for the specified service account. */ readonly create: { readonly path: "/yandex.cloud.iam.v1.workload.FederatedCredentialService/Create"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: CreateFederatedCredentialRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => CreateFederatedCredentialRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; /** Deletes the specified federated credential. */ readonly delete: { readonly path: "/yandex.cloud.iam.v1.workload.FederatedCredentialService/Delete"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: DeleteFederatedCredentialRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => DeleteFederatedCredentialRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; }; export interface FederatedCredentialServiceServer extends UntypedServiceImplementation { /** * Returns the specified federated credential. * * To get the list of available federated credentials, make a [List] request. */ get: handleUnaryCall; /** Retrieves the list of federated credentials for the specified service account. */ list: handleUnaryCall; /** Creates a federated credential for the specified service account. */ create: handleUnaryCall; /** Deletes the specified federated credential. */ delete: handleUnaryCall; } export interface FederatedCredentialServiceClient extends Client { /** * Returns the specified federated credential. * * To get the list of available federated credentials, make a [List] request. */ get(request: GetFederatedCredentialRequest, callback: (error: ServiceError | null, response: FederatedCredential) => void): ClientUnaryCall; get(request: GetFederatedCredentialRequest, metadata: Metadata, callback: (error: ServiceError | null, response: FederatedCredential) => void): ClientUnaryCall; get(request: GetFederatedCredentialRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: FederatedCredential) => void): ClientUnaryCall; /** Retrieves the list of federated credentials for the specified service account. */ list(request: ListFederatedCredentialsRequest, callback: (error: ServiceError | null, response: ListFederatedCredentialsResponse) => void): ClientUnaryCall; list(request: ListFederatedCredentialsRequest, metadata: Metadata, callback: (error: ServiceError | null, response: ListFederatedCredentialsResponse) => void): ClientUnaryCall; list(request: ListFederatedCredentialsRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: ListFederatedCredentialsResponse) => void): ClientUnaryCall; /** Creates a federated credential for the specified service account. */ create(request: CreateFederatedCredentialRequest, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; create(request: CreateFederatedCredentialRequest, metadata: Metadata, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; create(request: CreateFederatedCredentialRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; /** Deletes the specified federated credential. */ delete(request: DeleteFederatedCredentialRequest, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; delete(request: DeleteFederatedCredentialRequest, metadata: Metadata, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; delete(request: DeleteFederatedCredentialRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; } export declare const FederatedCredentialServiceClient: { new (address: string, credentials: ChannelCredentials, options?: Partial): FederatedCredentialServiceClient; service: typeof FederatedCredentialServiceService; }; 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 {};
= P extends Builtin ? P : P & { [K in keyof P]: Exact
; } & Record>, never>; export {};