UNPKG

@yandex-cloud/nodejs-sdk

Version:
742 lines (741 loc) 39.3 kB
/// <reference types="node" /> import { ChannelCredentials, ChannelOptions, UntypedServiceImplementation, handleUnaryCall, Client, ClientUnaryCall, Metadata, CallOptions, ServiceError } from "@grpc/grpc-js"; import _m0 from "protobufjs/minimal"; import { FieldMask } from "../../../../google/protobuf/field_mask"; import { ServiceAccount } from "../../../../yandex/cloud/iam/v1/service_account"; import { Operation } from "../../../../yandex/cloud/operation/operation"; import { ListAccessBindingsRequest, ListAccessBindingsResponse, SetAccessBindingsRequest, UpdateAccessBindingsRequest } from "../../../../yandex/cloud/access/access"; export declare const protobufPackage = "yandex.cloud.iam.v1"; export interface GetServiceAccountRequest { $type: "yandex.cloud.iam.v1.GetServiceAccountRequest"; /** * ID of the ServiceAccount resource to return. * To get the service account ID, use a [ServiceAccountService.List] request. */ serviceAccountId: string; } export interface ListServiceAccountsRequest { $type: "yandex.cloud.iam.v1.ListServiceAccountsRequest"; /** * ID of the folder to list service accounts in. * To get the folder ID, use a [yandex.cloud.resourcemanager.v1.FolderService.List] request. */ folderId: 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 [ListServiceAccountsResponse.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 [ListServiceAccountsResponse.next_page_token] * returned by a previous list request. */ pageToken: string; /** * A filter expression that filters resources listed in the response. * The expression must specify: * 1. The field name. Currently you can use filtering only on the [ServiceAccount.name] field. * 2. An `=` operator. * 3. The value in double quotes (`"`). Must be 3-63 characters long and match the regular expression `[a-z][-a-z0-9]{1,61}[a-z0-9]`. */ filter: string; } export interface ListServiceAccountsResponse { $type: "yandex.cloud.iam.v1.ListServiceAccountsResponse"; /** List of ServiceAccount resources. */ serviceAccounts: ServiceAccount[]; /** * This token allows you to get the next page of results for list requests. If the number of results * is larger than [ListServiceAccountsRequest.page_size], use * the [next_page_token] as the value * for the [ListServiceAccountsRequest.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 CreateServiceAccountRequest { $type: "yandex.cloud.iam.v1.CreateServiceAccountRequest"; /** * ID of the folder to create a service account in. * To get the folder ID, use a [yandex.cloud.resourcemanager.v1.FolderService.List] request. */ folderId: string; /** * Name of the service account. * The name must be unique within the cloud. */ name: string; /** Description of the service account. */ description: string; /** Resource labels as `` key:value `` pairs. */ labels: { [key: string]: string; }; } export interface CreateServiceAccountRequest_LabelsEntry { $type: "yandex.cloud.iam.v1.CreateServiceAccountRequest.LabelsEntry"; key: string; value: string; } export interface CreateServiceAccountMetadata { $type: "yandex.cloud.iam.v1.CreateServiceAccountMetadata"; /** ID of the service account that is being created. */ serviceAccountId: string; } export interface UpdateServiceAccountRequest { $type: "yandex.cloud.iam.v1.UpdateServiceAccountRequest"; /** * ID of the ServiceAccount resource to update. * To get the service account ID, use a [ServiceAccountService.List] request. */ serviceAccountId: string; /** Field mask that specifies which fields of the ServiceAccount resource are going to be updated. */ updateMask?: FieldMask; /** * Name of the service account. * The name must be unique within the cloud. */ name: string; /** Description of the service account. */ description: string; /** Resource labels as `` key:value `` pairs. */ labels: { [key: string]: string; }; } export interface UpdateServiceAccountRequest_LabelsEntry { $type: "yandex.cloud.iam.v1.UpdateServiceAccountRequest.LabelsEntry"; key: string; value: string; } export interface UpdateServiceAccountMetadata { $type: "yandex.cloud.iam.v1.UpdateServiceAccountMetadata"; /** ID of the ServiceAccount resource that is being updated. */ serviceAccountId: string; } export interface DeleteServiceAccountRequest { $type: "yandex.cloud.iam.v1.DeleteServiceAccountRequest"; /** * ID of the service account to delete. * To get the service account ID, use a [ServiceAccountService.List] request. */ serviceAccountId: string; } export interface DeleteServiceAccountMetadata { $type: "yandex.cloud.iam.v1.DeleteServiceAccountMetadata"; /** ID of the service account that is being deleted. */ serviceAccountId: string; } export interface ListServiceAccountOperationsRequest { $type: "yandex.cloud.iam.v1.ListServiceAccountOperationsRequest"; /** ID of the ServiceAccount resource to list operations for. */ 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 [ListServiceAccountOperationsResponse.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 [ListServiceAccountOperationsResponse.next_page_token] * returned by a previous list request. */ pageToken: string; } export interface ListServiceAccountOperationsResponse { $type: "yandex.cloud.iam.v1.ListServiceAccountOperationsResponse"; /** List of operations for the specified service account. */ operations: Operation[]; /** * This token allows you to get the next page of results for list requests. If the number of results * is larger than [ListServiceAccountOperationsRequest.page_size], use the [next_page_token] as the value * for the [ListServiceAccountOperationsRequest.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 declare const GetServiceAccountRequest: { $type: "yandex.cloud.iam.v1.GetServiceAccountRequest"; encode(message: GetServiceAccountRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number | undefined): GetServiceAccountRequest; fromJSON(object: any): GetServiceAccountRequest; toJSON(message: GetServiceAccountRequest): unknown; fromPartial<I extends { serviceAccountId?: string | undefined; } & { serviceAccountId?: string | undefined; } & Record<Exclude<keyof I, "$type" | "serviceAccountId">, never>>(object: I): GetServiceAccountRequest; }; export declare const ListServiceAccountsRequest: { $type: "yandex.cloud.iam.v1.ListServiceAccountsRequest"; encode(message: ListServiceAccountsRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number | undefined): ListServiceAccountsRequest; fromJSON(object: any): ListServiceAccountsRequest; toJSON(message: ListServiceAccountsRequest): unknown; fromPartial<I extends { pageSize?: number | undefined; pageToken?: string | undefined; filter?: string | undefined; folderId?: string | undefined; } & { pageSize?: number | undefined; pageToken?: string | undefined; filter?: string | undefined; folderId?: string | undefined; } & Record<Exclude<keyof I, "$type" | "pageSize" | "pageToken" | "filter" | "folderId">, never>>(object: I): ListServiceAccountsRequest; }; export declare const ListServiceAccountsResponse: { $type: "yandex.cloud.iam.v1.ListServiceAccountsResponse"; encode(message: ListServiceAccountsResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number | undefined): ListServiceAccountsResponse; fromJSON(object: any): ListServiceAccountsResponse; toJSON(message: ListServiceAccountsResponse): unknown; fromPartial<I extends { nextPageToken?: string | undefined; serviceAccounts?: { description?: string | undefined; id?: string | undefined; name?: string | undefined; createdAt?: Date | undefined; folderId?: string | undefined; labels?: { [x: string]: string | undefined; [x: number]: string | undefined; } | undefined; }[] | undefined; } & { nextPageToken?: string | undefined; serviceAccounts?: ({ description?: string | undefined; id?: string | undefined; name?: string | undefined; createdAt?: Date | undefined; folderId?: string | undefined; labels?: { [x: string]: string | undefined; [x: number]: string | undefined; } | undefined; }[] & ({ description?: string | undefined; id?: string | undefined; name?: string | undefined; createdAt?: Date | undefined; folderId?: string | undefined; labels?: { [x: string]: string | undefined; [x: number]: string | undefined; } | undefined; } & { description?: string | undefined; id?: string | undefined; name?: string | undefined; createdAt?: Date | undefined; folderId?: string | undefined; labels?: ({ [x: string]: string | undefined; [x: number]: string | undefined; } & { [x: string]: string | undefined; [x: number]: string | undefined; } & Record<Exclude<keyof I["serviceAccounts"][number]["labels"], string | number>, never>) | undefined; } & Record<Exclude<keyof I["serviceAccounts"][number], "$type" | "description" | "id" | "name" | "createdAt" | "folderId" | "labels">, never>)[] & Record<Exclude<keyof I["serviceAccounts"], "$type" | keyof { description?: string | undefined; id?: string | undefined; name?: string | undefined; createdAt?: Date | undefined; folderId?: string | undefined; labels?: { [x: string]: string | undefined; [x: number]: string | undefined; } | undefined; }[]>, never>) | undefined; } & Record<Exclude<keyof I, "$type" | "nextPageToken" | "serviceAccounts">, never>>(object: I): ListServiceAccountsResponse; }; export declare const CreateServiceAccountRequest: { $type: "yandex.cloud.iam.v1.CreateServiceAccountRequest"; encode(message: CreateServiceAccountRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number | undefined): CreateServiceAccountRequest; fromJSON(object: any): CreateServiceAccountRequest; toJSON(message: CreateServiceAccountRequest): unknown; fromPartial<I extends { description?: string | undefined; name?: string | undefined; folderId?: string | undefined; labels?: { [x: string]: string | undefined; [x: number]: string | undefined; } | undefined; } & { description?: string | undefined; name?: string | undefined; folderId?: string | undefined; labels?: ({ [x: string]: string | undefined; [x: number]: string | undefined; } & { [x: string]: string | undefined; [x: number]: string | undefined; } & Record<Exclude<keyof I["labels"], string | number>, never>) | undefined; } & Record<Exclude<keyof I, "$type" | "description" | "name" | "folderId" | "labels">, never>>(object: I): CreateServiceAccountRequest; }; export declare const CreateServiceAccountRequest_LabelsEntry: { $type: "yandex.cloud.iam.v1.CreateServiceAccountRequest.LabelsEntry"; encode(message: CreateServiceAccountRequest_LabelsEntry, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number | undefined): CreateServiceAccountRequest_LabelsEntry; fromJSON(object: any): CreateServiceAccountRequest_LabelsEntry; toJSON(message: CreateServiceAccountRequest_LabelsEntry): unknown; fromPartial<I extends { value?: string | undefined; key?: string | undefined; } & { value?: string | undefined; key?: string | undefined; } & Record<Exclude<keyof I, "$type" | "value" | "key">, never>>(object: I): CreateServiceAccountRequest_LabelsEntry; }; export declare const CreateServiceAccountMetadata: { $type: "yandex.cloud.iam.v1.CreateServiceAccountMetadata"; encode(message: CreateServiceAccountMetadata, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number | undefined): CreateServiceAccountMetadata; fromJSON(object: any): CreateServiceAccountMetadata; toJSON(message: CreateServiceAccountMetadata): unknown; fromPartial<I extends { serviceAccountId?: string | undefined; } & { serviceAccountId?: string | undefined; } & Record<Exclude<keyof I, "$type" | "serviceAccountId">, never>>(object: I): CreateServiceAccountMetadata; }; export declare const UpdateServiceAccountRequest: { $type: "yandex.cloud.iam.v1.UpdateServiceAccountRequest"; encode(message: UpdateServiceAccountRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number | undefined): UpdateServiceAccountRequest; fromJSON(object: any): UpdateServiceAccountRequest; toJSON(message: UpdateServiceAccountRequest): unknown; fromPartial<I extends { description?: string | undefined; name?: string | undefined; labels?: { [x: string]: string | undefined; [x: number]: string | undefined; } | undefined; updateMask?: { paths?: string[] | undefined; } | undefined; serviceAccountId?: string | undefined; } & { description?: string | undefined; name?: string | undefined; labels?: ({ [x: string]: string | undefined; [x: number]: string | undefined; } & { [x: string]: string | undefined; [x: number]: string | undefined; } & Record<Exclude<keyof I["labels"], string | number>, never>) | undefined; updateMask?: ({ paths?: string[] | undefined; } & { paths?: (string[] & string[] & Record<Exclude<keyof I["updateMask"]["paths"], "$type" | keyof string[]>, never>) | undefined; } & Record<Exclude<keyof I["updateMask"], "$type" | "paths">, never>) | undefined; serviceAccountId?: string | undefined; } & Record<Exclude<keyof I, "$type" | "description" | "name" | "labels" | "updateMask" | "serviceAccountId">, never>>(object: I): UpdateServiceAccountRequest; }; export declare const UpdateServiceAccountRequest_LabelsEntry: { $type: "yandex.cloud.iam.v1.UpdateServiceAccountRequest.LabelsEntry"; encode(message: UpdateServiceAccountRequest_LabelsEntry, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number | undefined): UpdateServiceAccountRequest_LabelsEntry; fromJSON(object: any): UpdateServiceAccountRequest_LabelsEntry; toJSON(message: UpdateServiceAccountRequest_LabelsEntry): unknown; fromPartial<I extends { value?: string | undefined; key?: string | undefined; } & { value?: string | undefined; key?: string | undefined; } & Record<Exclude<keyof I, "$type" | "value" | "key">, never>>(object: I): UpdateServiceAccountRequest_LabelsEntry; }; export declare const UpdateServiceAccountMetadata: { $type: "yandex.cloud.iam.v1.UpdateServiceAccountMetadata"; encode(message: UpdateServiceAccountMetadata, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number | undefined): UpdateServiceAccountMetadata; fromJSON(object: any): UpdateServiceAccountMetadata; toJSON(message: UpdateServiceAccountMetadata): unknown; fromPartial<I extends { serviceAccountId?: string | undefined; } & { serviceAccountId?: string | undefined; } & Record<Exclude<keyof I, "$type" | "serviceAccountId">, never>>(object: I): UpdateServiceAccountMetadata; }; export declare const DeleteServiceAccountRequest: { $type: "yandex.cloud.iam.v1.DeleteServiceAccountRequest"; encode(message: DeleteServiceAccountRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number | undefined): DeleteServiceAccountRequest; fromJSON(object: any): DeleteServiceAccountRequest; toJSON(message: DeleteServiceAccountRequest): unknown; fromPartial<I extends { serviceAccountId?: string | undefined; } & { serviceAccountId?: string | undefined; } & Record<Exclude<keyof I, "$type" | "serviceAccountId">, never>>(object: I): DeleteServiceAccountRequest; }; export declare const DeleteServiceAccountMetadata: { $type: "yandex.cloud.iam.v1.DeleteServiceAccountMetadata"; encode(message: DeleteServiceAccountMetadata, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number | undefined): DeleteServiceAccountMetadata; fromJSON(object: any): DeleteServiceAccountMetadata; toJSON(message: DeleteServiceAccountMetadata): unknown; fromPartial<I extends { serviceAccountId?: string | undefined; } & { serviceAccountId?: string | undefined; } & Record<Exclude<keyof I, "$type" | "serviceAccountId">, never>>(object: I): DeleteServiceAccountMetadata; }; export declare const ListServiceAccountOperationsRequest: { $type: "yandex.cloud.iam.v1.ListServiceAccountOperationsRequest"; encode(message: ListServiceAccountOperationsRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number | undefined): ListServiceAccountOperationsRequest; fromJSON(object: any): ListServiceAccountOperationsRequest; toJSON(message: ListServiceAccountOperationsRequest): unknown; fromPartial<I extends { pageSize?: number | undefined; pageToken?: string | undefined; serviceAccountId?: string | undefined; } & { pageSize?: number | undefined; pageToken?: string | undefined; serviceAccountId?: string | undefined; } & Record<Exclude<keyof I, "$type" | "pageSize" | "pageToken" | "serviceAccountId">, never>>(object: I): ListServiceAccountOperationsRequest; }; export declare const ListServiceAccountOperationsResponse: { $type: "yandex.cloud.iam.v1.ListServiceAccountOperationsResponse"; encode(message: ListServiceAccountOperationsResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number | undefined): ListServiceAccountOperationsResponse; fromJSON(object: any): ListServiceAccountOperationsResponse; toJSON(message: ListServiceAccountOperationsResponse): unknown; fromPartial<I extends { nextPageToken?: string | undefined; operations?: { description?: string | undefined; id?: string | undefined; createdBy?: string | undefined; done?: boolean | undefined; createdAt?: Date | undefined; modifiedAt?: Date | undefined; metadata?: { typeUrl?: string | undefined; value?: Buffer | undefined; } | undefined; error?: { code?: number | undefined; message?: string | undefined; details?: { typeUrl?: string | undefined; value?: Buffer | undefined; }[] | undefined; } | undefined; response?: { typeUrl?: string | undefined; value?: Buffer | undefined; } | undefined; }[] | undefined; } & { nextPageToken?: string | undefined; operations?: ({ description?: string | undefined; id?: string | undefined; createdBy?: string | undefined; done?: boolean | undefined; createdAt?: Date | undefined; modifiedAt?: Date | undefined; metadata?: { typeUrl?: string | undefined; value?: Buffer | undefined; } | undefined; error?: { code?: number | undefined; message?: string | undefined; details?: { typeUrl?: string | undefined; value?: Buffer | undefined; }[] | undefined; } | undefined; response?: { typeUrl?: string | undefined; value?: Buffer | undefined; } | undefined; }[] & ({ description?: string | undefined; id?: string | undefined; createdBy?: string | undefined; done?: boolean | undefined; createdAt?: Date | undefined; modifiedAt?: Date | undefined; metadata?: { typeUrl?: string | undefined; value?: Buffer | undefined; } | undefined; error?: { code?: number | undefined; message?: string | undefined; details?: { typeUrl?: string | undefined; value?: Buffer | undefined; }[] | undefined; } | undefined; response?: { typeUrl?: string | undefined; value?: Buffer | undefined; } | undefined; } & { description?: string | undefined; id?: string | undefined; createdBy?: string | undefined; done?: boolean | undefined; createdAt?: Date | undefined; modifiedAt?: Date | undefined; metadata?: ({ typeUrl?: string | undefined; value?: Buffer | undefined; } & { typeUrl?: string | undefined; value?: Buffer | undefined; } & Record<Exclude<keyof I["operations"][number]["metadata"], "$type" | "typeUrl" | "value">, never>) | undefined; error?: ({ code?: number | undefined; message?: string | undefined; details?: { typeUrl?: string | undefined; value?: Buffer | undefined; }[] | undefined; } & { code?: number | undefined; message?: string | undefined; details?: ({ typeUrl?: string | undefined; value?: Buffer | undefined; }[] & ({ typeUrl?: string | undefined; value?: Buffer | undefined; } & { typeUrl?: string | undefined; value?: Buffer | undefined; } & Record<Exclude<keyof I["operations"][number]["error"]["details"][number], "$type" | "typeUrl" | "value">, never>)[] & Record<Exclude<keyof I["operations"][number]["error"]["details"], "$type" | keyof { typeUrl?: string | undefined; value?: Buffer | undefined; }[]>, never>) | undefined; } & Record<Exclude<keyof I["operations"][number]["error"], "$type" | "code" | "message" | "details">, never>) | undefined; response?: ({ typeUrl?: string | undefined; value?: Buffer | undefined; } & { typeUrl?: string | undefined; value?: Buffer | undefined; } & Record<Exclude<keyof I["operations"][number]["response"], "$type" | "typeUrl" | "value">, never>) | undefined; } & Record<Exclude<keyof I["operations"][number], "$type" | "description" | "id" | "createdBy" | "done" | "createdAt" | "modifiedAt" | "metadata" | "error" | "response">, never>)[] & Record<Exclude<keyof I["operations"], "$type" | keyof { description?: string | undefined; id?: string | undefined; createdBy?: string | undefined; done?: boolean | undefined; createdAt?: Date | undefined; modifiedAt?: Date | undefined; metadata?: { typeUrl?: string | undefined; value?: Buffer | undefined; } | undefined; error?: { code?: number | undefined; message?: string | undefined; details?: { typeUrl?: string | undefined; value?: Buffer | undefined; }[] | undefined; } | undefined; response?: { typeUrl?: string | undefined; value?: Buffer | undefined; } | undefined; }[]>, never>) | undefined; } & Record<Exclude<keyof I, "$type" | "nextPageToken" | "operations">, never>>(object: I): ListServiceAccountOperationsResponse; }; /** A set of methods for managing ServiceAccount resources. */ export declare const ServiceAccountServiceService: { /** * Returns the specified ServiceAccount resource. * * To get the list of available ServiceAccount resources, make a [List] request. */ readonly get: { readonly path: "/yandex.cloud.iam.v1.ServiceAccountService/Get"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: GetServiceAccountRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => GetServiceAccountRequest; readonly responseSerialize: (value: ServiceAccount) => Buffer; readonly responseDeserialize: (value: Buffer) => ServiceAccount; }; /** Retrieves the list of ServiceAccount resources in the specified folder. */ readonly list: { readonly path: "/yandex.cloud.iam.v1.ServiceAccountService/List"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: ListServiceAccountsRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => ListServiceAccountsRequest; readonly responseSerialize: (value: ListServiceAccountsResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => ListServiceAccountsResponse; }; /** Creates a service account in the specified folder. */ readonly create: { readonly path: "/yandex.cloud.iam.v1.ServiceAccountService/Create"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: CreateServiceAccountRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => CreateServiceAccountRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; /** Updates the specified service account. */ readonly update: { readonly path: "/yandex.cloud.iam.v1.ServiceAccountService/Update"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: UpdateServiceAccountRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => UpdateServiceAccountRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; /** Deletes the specified service account. */ readonly delete: { readonly path: "/yandex.cloud.iam.v1.ServiceAccountService/Delete"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: DeleteServiceAccountRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => DeleteServiceAccountRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; /** Lists access bindings for the specified service account. */ readonly listAccessBindings: { readonly path: "/yandex.cloud.iam.v1.ServiceAccountService/ListAccessBindings"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: ListAccessBindingsRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => ListAccessBindingsRequest; readonly responseSerialize: (value: ListAccessBindingsResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => ListAccessBindingsResponse; }; /** Sets access bindings for the service account. */ readonly setAccessBindings: { readonly path: "/yandex.cloud.iam.v1.ServiceAccountService/SetAccessBindings"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: SetAccessBindingsRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => SetAccessBindingsRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; /** Updates access bindings for the specified service account. */ readonly updateAccessBindings: { readonly path: "/yandex.cloud.iam.v1.ServiceAccountService/UpdateAccessBindings"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: UpdateAccessBindingsRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => UpdateAccessBindingsRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; /** Lists operations for the specified service account. */ readonly listOperations: { readonly path: "/yandex.cloud.iam.v1.ServiceAccountService/ListOperations"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: ListServiceAccountOperationsRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => ListServiceAccountOperationsRequest; readonly responseSerialize: (value: ListServiceAccountOperationsResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => ListServiceAccountOperationsResponse; }; }; export interface ServiceAccountServiceServer extends UntypedServiceImplementation { /** * Returns the specified ServiceAccount resource. * * To get the list of available ServiceAccount resources, make a [List] request. */ get: handleUnaryCall<GetServiceAccountRequest, ServiceAccount>; /** Retrieves the list of ServiceAccount resources in the specified folder. */ list: handleUnaryCall<ListServiceAccountsRequest, ListServiceAccountsResponse>; /** Creates a service account in the specified folder. */ create: handleUnaryCall<CreateServiceAccountRequest, Operation>; /** Updates the specified service account. */ update: handleUnaryCall<UpdateServiceAccountRequest, Operation>; /** Deletes the specified service account. */ delete: handleUnaryCall<DeleteServiceAccountRequest, Operation>; /** Lists access bindings for the specified service account. */ listAccessBindings: handleUnaryCall<ListAccessBindingsRequest, ListAccessBindingsResponse>; /** Sets access bindings for the service account. */ setAccessBindings: handleUnaryCall<SetAccessBindingsRequest, Operation>; /** Updates access bindings for the specified service account. */ updateAccessBindings: handleUnaryCall<UpdateAccessBindingsRequest, Operation>; /** Lists operations for the specified service account. */ listOperations: handleUnaryCall<ListServiceAccountOperationsRequest, ListServiceAccountOperationsResponse>; } export interface ServiceAccountServiceClient extends Client { /** * Returns the specified ServiceAccount resource. * * To get the list of available ServiceAccount resources, make a [List] request. */ get(request: GetServiceAccountRequest, callback: (error: ServiceError | null, response: ServiceAccount) => void): ClientUnaryCall; get(request: GetServiceAccountRequest, metadata: Metadata, callback: (error: ServiceError | null, response: ServiceAccount) => void): ClientUnaryCall; get(request: GetServiceAccountRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: ServiceError | null, response: ServiceAccount) => void): ClientUnaryCall; /** Retrieves the list of ServiceAccount resources in the specified folder. */ list(request: ListServiceAccountsRequest, callback: (error: ServiceError | null, response: ListServiceAccountsResponse) => void): ClientUnaryCall; list(request: ListServiceAccountsRequest, metadata: Metadata, callback: (error: ServiceError | null, response: ListServiceAccountsResponse) => void): ClientUnaryCall; list(request: ListServiceAccountsRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: ServiceError | null, response: ListServiceAccountsResponse) => void): ClientUnaryCall; /** Creates a service account in the specified folder. */ create(request: CreateServiceAccountRequest, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; create(request: CreateServiceAccountRequest, metadata: Metadata, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; create(request: CreateServiceAccountRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; /** Updates the specified service account. */ update(request: UpdateServiceAccountRequest, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; update(request: UpdateServiceAccountRequest, metadata: Metadata, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; update(request: UpdateServiceAccountRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; /** Deletes the specified service account. */ delete(request: DeleteServiceAccountRequest, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; delete(request: DeleteServiceAccountRequest, metadata: Metadata, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; delete(request: DeleteServiceAccountRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; /** Lists access bindings for the specified service account. */ listAccessBindings(request: ListAccessBindingsRequest, callback: (error: ServiceError | null, response: ListAccessBindingsResponse) => void): ClientUnaryCall; listAccessBindings(request: ListAccessBindingsRequest, metadata: Metadata, callback: (error: ServiceError | null, response: ListAccessBindingsResponse) => void): ClientUnaryCall; listAccessBindings(request: ListAccessBindingsRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: ServiceError | null, response: ListAccessBindingsResponse) => void): ClientUnaryCall; /** Sets access bindings for the service account. */ setAccessBindings(request: SetAccessBindingsRequest, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; setAccessBindings(request: SetAccessBindingsRequest, metadata: Metadata, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; setAccessBindings(request: SetAccessBindingsRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; /** Updates access bindings for the specified service account. */ updateAccessBindings(request: UpdateAccessBindingsRequest, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; updateAccessBindings(request: UpdateAccessBindingsRequest, metadata: Metadata, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; updateAccessBindings(request: UpdateAccessBindingsRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; /** Lists operations for the specified service account. */ listOperations(request: ListServiceAccountOperationsRequest, callback: (error: ServiceError | null, response: ListServiceAccountOperationsResponse) => void): ClientUnaryCall; listOperations(request: ListServiceAccountOperationsRequest, metadata: Metadata, callback: (error: ServiceError | null, response: ListServiceAccountOperationsResponse) => void): ClientUnaryCall; listOperations(request: ListServiceAccountOperationsRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: ServiceError | null, response: ListServiceAccountOperationsResponse) => void): ClientUnaryCall; } export declare const ServiceAccountServiceClient: { new (address: string, credentials: ChannelCredentials, options?: Partial<ChannelOptions> | undefined): ServiceAccountServiceClient; service: typeof ServiceAccountServiceService; }; declare type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; export declare type DeepPartial<T> = T extends Builtin ? T : T extends Array<infer U> ? Array<DeepPartial<U>> : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>> : T extends {} ? { [K in Exclude<keyof T, "$type">]?: DeepPartial<T[K]>; } : Partial<T>; declare type KeysOfUnion<T> = T extends T ? keyof T : never; export declare type Exact<P, I extends P> = P extends Builtin ? P : P & { [K in keyof P]: Exact<P[K], I[K]>; } & Record<Exclude<keyof I, KeysOfUnion<P> | "$type">, never>; export {};