/// 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 { DiskPlacementGroup, DiskSpreadPlacementStrategy, DiskPartitionPlacementStrategy } from '../../../../yandex/cloud/compute/v1/disk_placement_group'; import { Disk } from '../../../../yandex/cloud/compute/v1/disk'; import { Operation } from '../../../../yandex/cloud/operation/operation'; import { ListAccessBindingsRequest, ListAccessBindingsResponse, SetAccessBindingsRequest, UpdateAccessBindingsRequest } from '../../../../yandex/cloud/access/access'; export declare const protobufPackage = "yandex.cloud.compute.v1"; export interface GetDiskPlacementGroupRequest { /** * ID of the placement group to return. * To get the placement group ID, use [DiskPlacementGroupService.List] request. */ diskPlacementGroupId: string; } export interface ListDiskPlacementGroupsRequest { /** * ID of the folder to list placement groups in. * To get the folder ID, use [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 [ListDiskPlacementGroupsResponse.next_page_token] * that can be used to get the next page of results in subsequent list requests. */ pageSize: number; /** * Page token. To get the next page of results, * set [page_token] to the [ListDiskPlacementGroupsResponse.next_page_token] * returned by a previous list request. */ pageToken: string; /** * A filter expression that filters resources listed in the response. * The expression consists of one or more conditions united by `AND` operator: ` [AND [<...> AND ]]`. * * Each condition has the form ` `, where: * 1. `` is the field name. Currently you can use filtering only on the limited number of fields. * 2. `` is a logical operator, one of `=`, `!=`, `IN`, `NOT IN`. * 3. `` represents a value. * String values should be written in double (`"`) or single (`'`) quotes. C-style escape sequences are supported (`\"` turns to `"`, `\'` to `'`, `\\` to backslash). */ filter: string; /** * By which column the listing should be ordered and in which direction, * format is "createdAt desc". "id asc" if omitted. * The default sorting order is ascending */ orderBy: string; } export interface ListDiskPlacementGroupsResponse { /** Lists placement groups for the specified folder. */ diskPlacementGroups: DiskPlacementGroup[]; /** * This token allows you to get the next page of results for list requests. If the number of results * is larger than [ListDiskPlacementGroupsRequest.page_size], use * [next_page_token] as the value * for the [ListDiskPlacementGroupsRequest.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 CreateDiskPlacementGroupRequest { /** * ID of the folder to create a placement group in. * To get the folder ID, use a [yandex.cloud.resourcemanager.v1.FolderService.List] request. */ folderId: string; /** Name of the placement group. */ name: string; /** Description of the placement group. */ description: string; /** Resource labels as `key:value` pairs. */ labels: { [key: string]: string; }; /** * ID of the availability zone where the placement group resides. * To get a list of available zones use the [yandex.cloud.compute.v1.ZoneService.List] request. */ zoneId: string; /** Distribute disks over distinct failure domains. */ spreadPlacementStrategy?: DiskSpreadPlacementStrategy | undefined; /** Distribute disks over partitions. */ partitionPlacementStrategy?: DiskPartitionPlacementStrategy | undefined; } export interface CreateDiskPlacementGroupRequest_LabelsEntry { key: string; value: string; } export interface CreateDiskPlacementGroupMetadata { /** ID of the placement group that is being created. */ diskPlacementGroupId: string; } export interface UpdateDiskPlacementGroupRequest { /** * ID of the placement group to update. * To get the placement group ID, use an [DiskPlacementGroupService.List] request. */ diskPlacementGroupId: string; /** Field mask that specifies which fields of the DiskPlacementGroup resource are going to be updated. */ updateMask?: FieldMask; /** Name of the placement group. */ name: string; /** Description of the placement group. */ description: string; /** * Resource labels as `key:value` pairs. * * The existing set of `labels` is completely replaced by the provided set. */ labels: { [key: string]: string; }; } export interface UpdateDiskPlacementGroupRequest_LabelsEntry { key: string; value: string; } export interface UpdateDiskPlacementGroupMetadata { /** ID of the placement group that is being updated. */ diskPlacementGroupId: string; } export interface DeleteDiskPlacementGroupRequest { /** * ID of the placement group to delete. * To get the placement group ID, use [DiskPlacementGroupService.List] request. */ diskPlacementGroupId: string; } export interface DeleteDiskPlacementGroupMetadata { /** ID of the placement group that is being deleted. */ diskPlacementGroupId: string; } export interface ListDiskPlacementGroupDisksRequest { /** * ID of the placement group to list disks for. * To get the placement group ID, use [DiskPlacementGroupService.List] request. */ diskPlacementGroupId: 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 [ListDiskPlacementGroupDisksResponse.next_page_token] * that can be used to get the next page of results in subsequent list requests. */ pageSize: number; /** * Page token. To get the next page of results, * set [page_token] to the [ListDiskPlacementGroupDisksResponse.next_page_token] * returned by a previous list request. */ pageToken: string; } export interface ListDiskPlacementGroupDisksResponse { /** Lists disks for the specified placement group. */ disks: Disk[]; /** * This token allows you to get the next page of results for list requests. If the number of results * is more than [ListDiskPlacementGroupDisksRequest.page_size], use * [next_page_token] as the value * for the [ListDiskPlacementGroupDisksRequest.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 ListDiskPlacementGroupOperationsRequest { /** * ID of the placement group to list operations for. * To get the placement group ID, use [DiskPlacementGroupService.List] request. */ diskPlacementGroupId: 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 [ListDiskPlacementGroupOperationsResponse.next_page_token] * that can be used to get the next page of results in subsequent list requests. */ pageSize: number; /** * Page token. To get the next page of results, set [page_token] to the * [ListDiskPlacementGroupOperationsResponse.next_page_token] returned by a previous list request. */ pageToken: string; } export interface ListDiskPlacementGroupOperationsResponse { /** List of operations for the specified placement group. */ operations: Operation[]; /** * This token allows you to get the next page of results for list requests. If the number of results * is larger than [ListDiskPlacementGroupOperationsRequest.page_size], use the [next_page_token] as the value * for the [ListDiskPlacementGroupOperationsRequest.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 GetDiskPlacementGroupRequest: { encode(message: GetDiskPlacementGroupRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): GetDiskPlacementGroupRequest; fromJSON(object: any): GetDiskPlacementGroupRequest; toJSON(message: GetDiskPlacementGroupRequest): unknown; fromPartial, never>>(object: I): GetDiskPlacementGroupRequest; }; export declare const ListDiskPlacementGroupsRequest: { encode(message: ListDiskPlacementGroupsRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): ListDiskPlacementGroupsRequest; fromJSON(object: any): ListDiskPlacementGroupsRequest; toJSON(message: ListDiskPlacementGroupsRequest): unknown; fromPartial, never>>(object: I): ListDiskPlacementGroupsRequest; }; export declare const ListDiskPlacementGroupsResponse: { encode(message: ListDiskPlacementGroupsResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): ListDiskPlacementGroupsResponse; fromJSON(object: any): ListDiskPlacementGroupsResponse; toJSON(message: ListDiskPlacementGroupsResponse): unknown; fromPartial, never>) | undefined; zoneId?: string | undefined; status?: import("../../../../yandex/cloud/compute/v1/disk_placement_group").DiskPlacementGroup_Status | undefined; spreadPlacementStrategy?: ({} & {} & Record, never>) | undefined; partitionPlacementStrategy?: ({ partitions?: number | undefined; } & { partitions?: number | undefined; } & Record, never>) | undefined; } & Record, never>)[] & Record, never>) | undefined; nextPageToken?: string | undefined; } & Record, never>>(object: I): ListDiskPlacementGroupsResponse; }; export declare const CreateDiskPlacementGroupRequest: { encode(message: CreateDiskPlacementGroupRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): CreateDiskPlacementGroupRequest; fromJSON(object: any): CreateDiskPlacementGroupRequest; toJSON(message: CreateDiskPlacementGroupRequest): unknown; fromPartial, never>) | undefined; zoneId?: string | undefined; spreadPlacementStrategy?: ({} & {} & Record, never>) | undefined; partitionPlacementStrategy?: ({ partitions?: number | undefined; } & { partitions?: number | undefined; } & Record, never>) | undefined; } & Record, never>>(object: I): CreateDiskPlacementGroupRequest; }; export declare const CreateDiskPlacementGroupRequest_LabelsEntry: { encode(message: CreateDiskPlacementGroupRequest_LabelsEntry, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): CreateDiskPlacementGroupRequest_LabelsEntry; fromJSON(object: any): CreateDiskPlacementGroupRequest_LabelsEntry; toJSON(message: CreateDiskPlacementGroupRequest_LabelsEntry): unknown; fromPartial, never>>(object: I): CreateDiskPlacementGroupRequest_LabelsEntry; }; export declare const CreateDiskPlacementGroupMetadata: { encode(message: CreateDiskPlacementGroupMetadata, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): CreateDiskPlacementGroupMetadata; fromJSON(object: any): CreateDiskPlacementGroupMetadata; toJSON(message: CreateDiskPlacementGroupMetadata): unknown; fromPartial, never>>(object: I): CreateDiskPlacementGroupMetadata; }; export declare const UpdateDiskPlacementGroupRequest: { encode(message: UpdateDiskPlacementGroupRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): UpdateDiskPlacementGroupRequest; fromJSON(object: any): UpdateDiskPlacementGroupRequest; toJSON(message: UpdateDiskPlacementGroupRequest): unknown; fromPartial, never>) | undefined; } & Record, never>) | undefined; name?: string | undefined; description?: string | undefined; labels?: ({ [x: string]: string | undefined; } & { [x: string]: string | undefined; } & Record, never>) | undefined; } & Record, never>>(object: I): UpdateDiskPlacementGroupRequest; }; export declare const UpdateDiskPlacementGroupRequest_LabelsEntry: { encode(message: UpdateDiskPlacementGroupRequest_LabelsEntry, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): UpdateDiskPlacementGroupRequest_LabelsEntry; fromJSON(object: any): UpdateDiskPlacementGroupRequest_LabelsEntry; toJSON(message: UpdateDiskPlacementGroupRequest_LabelsEntry): unknown; fromPartial, never>>(object: I): UpdateDiskPlacementGroupRequest_LabelsEntry; }; export declare const UpdateDiskPlacementGroupMetadata: { encode(message: UpdateDiskPlacementGroupMetadata, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): UpdateDiskPlacementGroupMetadata; fromJSON(object: any): UpdateDiskPlacementGroupMetadata; toJSON(message: UpdateDiskPlacementGroupMetadata): unknown; fromPartial, never>>(object: I): UpdateDiskPlacementGroupMetadata; }; export declare const DeleteDiskPlacementGroupRequest: { encode(message: DeleteDiskPlacementGroupRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): DeleteDiskPlacementGroupRequest; fromJSON(object: any): DeleteDiskPlacementGroupRequest; toJSON(message: DeleteDiskPlacementGroupRequest): unknown; fromPartial, never>>(object: I): DeleteDiskPlacementGroupRequest; }; export declare const DeleteDiskPlacementGroupMetadata: { encode(message: DeleteDiskPlacementGroupMetadata, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): DeleteDiskPlacementGroupMetadata; fromJSON(object: any): DeleteDiskPlacementGroupMetadata; toJSON(message: DeleteDiskPlacementGroupMetadata): unknown; fromPartial, never>>(object: I): DeleteDiskPlacementGroupMetadata; }; export declare const ListDiskPlacementGroupDisksRequest: { encode(message: ListDiskPlacementGroupDisksRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): ListDiskPlacementGroupDisksRequest; fromJSON(object: any): ListDiskPlacementGroupDisksRequest; toJSON(message: ListDiskPlacementGroupDisksRequest): unknown; fromPartial, never>>(object: I): ListDiskPlacementGroupDisksRequest; }; export declare const ListDiskPlacementGroupDisksResponse: { encode(message: ListDiskPlacementGroupDisksResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): ListDiskPlacementGroupDisksResponse; fromJSON(object: any): ListDiskPlacementGroupDisksResponse; toJSON(message: ListDiskPlacementGroupDisksResponse): unknown; fromPartial, never>) | undefined; typeId?: string | undefined; zoneId?: string | undefined; size?: number | undefined; blockSize?: number | undefined; productIds?: (string[] & string[] & Record, never>) | undefined; status?: import("../../../../yandex/cloud/compute/v1/disk").Disk_Status | undefined; sourceImageId?: string | undefined; sourceSnapshotId?: string | undefined; instanceIds?: (string[] & string[] & Record, never>) | undefined; diskPlacementPolicy?: ({ placementGroupId?: string | undefined; placementGroupPartition?: number | undefined; } & { placementGroupId?: string | undefined; placementGroupPartition?: number | undefined; } & Record, never>) | undefined; hardwareGeneration?: ({ legacyFeatures?: { pciTopology?: import("./hardware_generation").PCITopology | undefined; } | undefined; generation2Features?: {} | undefined; } & { legacyFeatures?: ({ pciTopology?: import("./hardware_generation").PCITopology | undefined; } & { pciTopology?: import("./hardware_generation").PCITopology | undefined; } & Record, never>) | undefined; generation2Features?: ({} & {} & Record, never>) | undefined; } & Record, never>) | undefined; kmsKey?: ({ keyId?: string | undefined; versionId?: string | undefined; } & { keyId?: string | undefined; versionId?: string | undefined; } & Record, never>) | undefined; } & Record, never>)[] & Record, never>) | undefined; nextPageToken?: string | undefined; } & Record, never>>(object: I): ListDiskPlacementGroupDisksResponse; }; export declare const ListDiskPlacementGroupOperationsRequest: { encode(message: ListDiskPlacementGroupOperationsRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): ListDiskPlacementGroupOperationsRequest; fromJSON(object: any): ListDiskPlacementGroupOperationsRequest; toJSON(message: ListDiskPlacementGroupOperationsRequest): unknown; fromPartial, never>>(object: I): ListDiskPlacementGroupOperationsRequest; }; export declare const ListDiskPlacementGroupOperationsResponse: { encode(message: ListDiskPlacementGroupOperationsResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): ListDiskPlacementGroupOperationsResponse; fromJSON(object: any): ListDiskPlacementGroupOperationsResponse; toJSON(message: ListDiskPlacementGroupOperationsResponse): unknown; fromPartial, 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, never>)[] & Record, never>) | undefined; } & Record, never>) | undefined; response?: ({ typeUrl?: string | undefined; value?: Buffer | undefined; } & { typeUrl?: string | undefined; value?: Buffer | undefined; } & Record, never>) | undefined; } & Record, never>)[] & Record, never>) | undefined; nextPageToken?: string | undefined; } & Record, never>>(object: I): ListDiskPlacementGroupOperationsResponse; }; /** A set of methods for managing DiskPlacementGroup resources. */ export declare const DiskPlacementGroupServiceService: { /** Returns the specified placement group. */ readonly get: { readonly path: "/yandex.cloud.compute.v1.DiskPlacementGroupService/Get"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: GetDiskPlacementGroupRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => GetDiskPlacementGroupRequest; readonly responseSerialize: (value: DiskPlacementGroup) => Buffer; readonly responseDeserialize: (value: Buffer) => DiskPlacementGroup; }; /** Retrieves the list of placement groups in the specified folder. */ readonly list: { readonly path: "/yandex.cloud.compute.v1.DiskPlacementGroupService/List"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: ListDiskPlacementGroupsRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => ListDiskPlacementGroupsRequest; readonly responseSerialize: (value: ListDiskPlacementGroupsResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => ListDiskPlacementGroupsResponse; }; /** Creates a placement group in the specified folder. */ readonly create: { readonly path: "/yandex.cloud.compute.v1.DiskPlacementGroupService/Create"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: CreateDiskPlacementGroupRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => CreateDiskPlacementGroupRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; /** Updates the specified placement group. */ readonly update: { readonly path: "/yandex.cloud.compute.v1.DiskPlacementGroupService/Update"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: UpdateDiskPlacementGroupRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => UpdateDiskPlacementGroupRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; /** Deletes the specified placement group. */ readonly delete: { readonly path: "/yandex.cloud.compute.v1.DiskPlacementGroupService/Delete"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: DeleteDiskPlacementGroupRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => DeleteDiskPlacementGroupRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; /** Lists disks for the specified placement group. */ readonly listDisks: { readonly path: "/yandex.cloud.compute.v1.DiskPlacementGroupService/ListDisks"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: ListDiskPlacementGroupDisksRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => ListDiskPlacementGroupDisksRequest; readonly responseSerialize: (value: ListDiskPlacementGroupDisksResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => ListDiskPlacementGroupDisksResponse; }; /** Lists operations for the specified placement group. */ readonly listOperations: { readonly path: "/yandex.cloud.compute.v1.DiskPlacementGroupService/ListOperations"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: ListDiskPlacementGroupOperationsRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => ListDiskPlacementGroupOperationsRequest; readonly responseSerialize: (value: ListDiskPlacementGroupOperationsResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => ListDiskPlacementGroupOperationsResponse; }; /** Lists access bindings for the disk placement group. */ readonly listAccessBindings: { readonly path: "/yandex.cloud.compute.v1.DiskPlacementGroupService/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 disk placement group. */ readonly setAccessBindings: { readonly path: "/yandex.cloud.compute.v1.DiskPlacementGroupService/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 disk placement group. */ readonly updateAccessBindings: { readonly path: "/yandex.cloud.compute.v1.DiskPlacementGroupService/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; }; }; export interface DiskPlacementGroupServiceServer extends UntypedServiceImplementation { /** Returns the specified placement group. */ get: handleUnaryCall; /** Retrieves the list of placement groups in the specified folder. */ list: handleUnaryCall; /** Creates a placement group in the specified folder. */ create: handleUnaryCall; /** Updates the specified placement group. */ update: handleUnaryCall; /** Deletes the specified placement group. */ delete: handleUnaryCall; /** Lists disks for the specified placement group. */ listDisks: handleUnaryCall; /** Lists operations for the specified placement group. */ listOperations: handleUnaryCall; /** Lists access bindings for the disk placement group. */ listAccessBindings: handleUnaryCall; /** Sets access bindings for the disk placement group. */ setAccessBindings: handleUnaryCall; /** Updates access bindings for the disk placement group. */ updateAccessBindings: handleUnaryCall; } export interface DiskPlacementGroupServiceClient extends Client { /** Returns the specified placement group. */ get(request: GetDiskPlacementGroupRequest, callback: (error: ServiceError | null, response: DiskPlacementGroup) => void): ClientUnaryCall; get(request: GetDiskPlacementGroupRequest, metadata: Metadata, callback: (error: ServiceError | null, response: DiskPlacementGroup) => void): ClientUnaryCall; get(request: GetDiskPlacementGroupRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: DiskPlacementGroup) => void): ClientUnaryCall; /** Retrieves the list of placement groups in the specified folder. */ list(request: ListDiskPlacementGroupsRequest, callback: (error: ServiceError | null, response: ListDiskPlacementGroupsResponse) => void): ClientUnaryCall; list(request: ListDiskPlacementGroupsRequest, metadata: Metadata, callback: (error: ServiceError | null, response: ListDiskPlacementGroupsResponse) => void): ClientUnaryCall; list(request: ListDiskPlacementGroupsRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: ListDiskPlacementGroupsResponse) => void): ClientUnaryCall; /** Creates a placement group in the specified folder. */ create(request: CreateDiskPlacementGroupRequest, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; create(request: CreateDiskPlacementGroupRequest, metadata: Metadata, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; create(request: CreateDiskPlacementGroupRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; /** Updates the specified placement group. */ update(request: UpdateDiskPlacementGroupRequest, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; update(request: UpdateDiskPlacementGroupRequest, metadata: Metadata, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; update(request: UpdateDiskPlacementGroupRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; /** Deletes the specified placement group. */ delete(request: DeleteDiskPlacementGroupRequest, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; delete(request: DeleteDiskPlacementGroupRequest, metadata: Metadata, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; delete(request: DeleteDiskPlacementGroupRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; /** Lists disks for the specified placement group. */ listDisks(request: ListDiskPlacementGroupDisksRequest, callback: (error: ServiceError | null, response: ListDiskPlacementGroupDisksResponse) => void): ClientUnaryCall; listDisks(request: ListDiskPlacementGroupDisksRequest, metadata: Metadata, callback: (error: ServiceError | null, response: ListDiskPlacementGroupDisksResponse) => void): ClientUnaryCall; listDisks(request: ListDiskPlacementGroupDisksRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: ListDiskPlacementGroupDisksResponse) => void): ClientUnaryCall; /** Lists operations for the specified placement group. */ listOperations(request: ListDiskPlacementGroupOperationsRequest, callback: (error: ServiceError | null, response: ListDiskPlacementGroupOperationsResponse) => void): ClientUnaryCall; listOperations(request: ListDiskPlacementGroupOperationsRequest, metadata: Metadata, callback: (error: ServiceError | null, response: ListDiskPlacementGroupOperationsResponse) => void): ClientUnaryCall; listOperations(request: ListDiskPlacementGroupOperationsRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: ListDiskPlacementGroupOperationsResponse) => void): ClientUnaryCall; /** Lists access bindings for the disk placement group. */ 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, callback: (error: ServiceError | null, response: ListAccessBindingsResponse) => void): ClientUnaryCall; /** Sets access bindings for the disk placement group. */ 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, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; /** Updates access bindings for the disk placement group. */ 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, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; } export declare const DiskPlacementGroupServiceClient: { new (address: string, credentials: ChannelCredentials, options?: Partial): DiskPlacementGroupServiceClient; service: typeof DiskPlacementGroupServiceService; }; 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 {};