/// 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 { Filesystem } from '../../../../yandex/cloud/compute/v1/filesystem'; 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 GetFilesystemRequest { /** * ID of the filesystem to return. * * To get the filesystem ID, make a [FilesystemService.List] request. */ filesystemId: string; } export interface ListFilesystemsRequest { /** * ID of the folder to list filesystems in. * * To get the folder ID, make 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 [ListFilesystemsResponse.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 * [ListFilesystemsResponse.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 ListFilesystemsResponse { /** List of filesystems in the specified folder. */ filesystems: Filesystem[]; /** * Token for getting the next page of the list. If the number of results is greater than * the specified [ListFilesystemsRequest.page_size], use `next_page_token` as the value * for the [ListFilesystemsRequest.page_token] parameter in the next list request. * * Each subsequent page will have its own `next_page_token` to continue paging through the results. */ nextPageToken: string; } export interface CreateFilesystemRequest { /** * ID of the folder to create a filesystem in. * * To get the folder ID, make a [yandex.cloud.resourcemanager.v1.FolderService.List] request. */ folderId: string; /** Name of the filesystem. The name must be unique within the folder. */ name: string; /** Description of the filesystem. */ description: string; /** * Filesystem labels as `key:value` pairs. * For details about the concept, see [documentation](/docs/overview/concepts/services#labels). */ labels: { [key: string]: string; }; /** * ID of the filesystem type. * * To get a list of available filesystem types, make a [yandex.cloud.compute.v1.DiskTypeService.List] request. * * The filesystem type cannot be updated after the filesystem creation. */ typeId: string; /** * ID of the availability zone where the filesystem resides. * * To get a list of available zones, make a [yandex.cloud.compute.v1.ZoneService.List] request. * * A filesystem can be attached only to virtual machines residing in the same availability zone. * The filesystem availability zone cannot be updated after the filesystem creation. */ zoneId: string; /** * Size of the filesystem, specified in bytes. * * The size of the filesystem cannot be updated after the filesystem creation. */ size: number; /** * Block size used for the filesystem, specified in bytes. * * The block size cannot be updated after the filesystem creation. * * Default value: 4096. */ blockSize: number; } export interface CreateFilesystemRequest_LabelsEntry { key: string; value: string; } export interface CreateFilesystemMetadata { /** ID of the filesystem that is being created. */ filesystemId: string; } export interface UpdateFilesystemRequest { /** * ID of the filesystem to update. * * To get the filesystem ID, make a [FilesystemService.List] request. */ filesystemId: string; /** Field mask that specifies which attributes of the filesystem should be updated. */ updateMask?: FieldMask; /** New name of the filesystem. The name must be unique within the folder. */ name: string; /** New description of the filesystem. */ description: string; /** * New filesystem labels as `key:value` pairs. * For details about the concept, see [documentation](/docs/overview/concepts/services#labels). * * Existing set of labels is completely replaced by the provided set, so if you just want * to add or remove a label: * 1. Get the current set of labels with a [FilesystemService.Get] request. * 2. Add or remove a label in this set. * 3. Send the new set in this field. */ labels: { [key: string]: string; }; /** Size of the filesystem, specified in bytes. */ size: number; } export interface UpdateFilesystemRequest_LabelsEntry { key: string; value: string; } export interface UpdateFilesystemMetadata { /** ID of the filesystem that is being updated. */ filesystemId: string; } export interface DeleteFilesystemRequest { /** * ID of the filesystem to delete. * * To get the filesystem ID, make a [FilesystemService.List] request. */ filesystemId: string; } export interface DeleteFilesystemMetadata { /** ID of the filesystem that is being deleted. */ filesystemId: string; } export interface ListFilesystemOperationsRequest { /** * ID of the filesystem to list operations for. * * To get the filesystem ID, make a [FilesystemService.List] request. */ filesystemId: 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 [ListFilesystemOperationsResponse.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 * [ListFilesystemOperationsResponse.next_page_token] returned by a previous list request. */ pageToken: string; } export interface ListFilesystemOperationsResponse { /** List of operations for the specified filesystem. */ operations: Operation[]; /** * Token for getting the next page of the list. If the number of results is greater than * the specified [ListFilesystemOperationsRequest.page_size], use `next_page_token` as the value * for the [ListFilesystemOperationsRequest.page_token] parameter in the next list request. * * Each subsequent page will have its own `next_page_token` to continue paging through the results. */ nextPageToken: string; } export declare const GetFilesystemRequest: { encode(message: GetFilesystemRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): GetFilesystemRequest; fromJSON(object: any): GetFilesystemRequest; toJSON(message: GetFilesystemRequest): unknown; fromPartial, never>>(object: I): GetFilesystemRequest; }; export declare const ListFilesystemsRequest: { encode(message: ListFilesystemsRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): ListFilesystemsRequest; fromJSON(object: any): ListFilesystemsRequest; toJSON(message: ListFilesystemsRequest): unknown; fromPartial, never>>(object: I): ListFilesystemsRequest; }; export declare const ListFilesystemsResponse: { encode(message: ListFilesystemsResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): ListFilesystemsResponse; fromJSON(object: any): ListFilesystemsResponse; toJSON(message: ListFilesystemsResponse): unknown; fromPartial, never>) | undefined; typeId?: string | undefined; zoneId?: string | undefined; size?: number | undefined; blockSize?: number | undefined; status?: import("../../../../yandex/cloud/compute/v1/filesystem").Filesystem_Status | undefined; } & Record, never>)[] & Record, never>) | undefined; nextPageToken?: string | undefined; } & Record, never>>(object: I): ListFilesystemsResponse; }; export declare const CreateFilesystemRequest: { encode(message: CreateFilesystemRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): CreateFilesystemRequest; fromJSON(object: any): CreateFilesystemRequest; toJSON(message: CreateFilesystemRequest): unknown; fromPartial, never>) | undefined; typeId?: string | undefined; zoneId?: string | undefined; size?: number | undefined; blockSize?: number | undefined; } & Record, never>>(object: I): CreateFilesystemRequest; }; export declare const CreateFilesystemRequest_LabelsEntry: { encode(message: CreateFilesystemRequest_LabelsEntry, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): CreateFilesystemRequest_LabelsEntry; fromJSON(object: any): CreateFilesystemRequest_LabelsEntry; toJSON(message: CreateFilesystemRequest_LabelsEntry): unknown; fromPartial, never>>(object: I): CreateFilesystemRequest_LabelsEntry; }; export declare const CreateFilesystemMetadata: { encode(message: CreateFilesystemMetadata, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): CreateFilesystemMetadata; fromJSON(object: any): CreateFilesystemMetadata; toJSON(message: CreateFilesystemMetadata): unknown; fromPartial, never>>(object: I): CreateFilesystemMetadata; }; export declare const UpdateFilesystemRequest: { encode(message: UpdateFilesystemRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): UpdateFilesystemRequest; fromJSON(object: any): UpdateFilesystemRequest; toJSON(message: UpdateFilesystemRequest): 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; size?: number | undefined; } & Record, never>>(object: I): UpdateFilesystemRequest; }; export declare const UpdateFilesystemRequest_LabelsEntry: { encode(message: UpdateFilesystemRequest_LabelsEntry, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): UpdateFilesystemRequest_LabelsEntry; fromJSON(object: any): UpdateFilesystemRequest_LabelsEntry; toJSON(message: UpdateFilesystemRequest_LabelsEntry): unknown; fromPartial, never>>(object: I): UpdateFilesystemRequest_LabelsEntry; }; export declare const UpdateFilesystemMetadata: { encode(message: UpdateFilesystemMetadata, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): UpdateFilesystemMetadata; fromJSON(object: any): UpdateFilesystemMetadata; toJSON(message: UpdateFilesystemMetadata): unknown; fromPartial, never>>(object: I): UpdateFilesystemMetadata; }; export declare const DeleteFilesystemRequest: { encode(message: DeleteFilesystemRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): DeleteFilesystemRequest; fromJSON(object: any): DeleteFilesystemRequest; toJSON(message: DeleteFilesystemRequest): unknown; fromPartial, never>>(object: I): DeleteFilesystemRequest; }; export declare const DeleteFilesystemMetadata: { encode(message: DeleteFilesystemMetadata, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): DeleteFilesystemMetadata; fromJSON(object: any): DeleteFilesystemMetadata; toJSON(message: DeleteFilesystemMetadata): unknown; fromPartial, never>>(object: I): DeleteFilesystemMetadata; }; export declare const ListFilesystemOperationsRequest: { encode(message: ListFilesystemOperationsRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): ListFilesystemOperationsRequest; fromJSON(object: any): ListFilesystemOperationsRequest; toJSON(message: ListFilesystemOperationsRequest): unknown; fromPartial, never>>(object: I): ListFilesystemOperationsRequest; }; export declare const ListFilesystemOperationsResponse: { encode(message: ListFilesystemOperationsResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): ListFilesystemOperationsResponse; fromJSON(object: any): ListFilesystemOperationsResponse; toJSON(message: ListFilesystemOperationsResponse): 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): ListFilesystemOperationsResponse; }; /** A set of methods for managing filesystems. */ export declare const FilesystemServiceService: { /** * Returns the specified filesystem. * * To get the list of available filesystems, make a [List] request. */ readonly get: { readonly path: "/yandex.cloud.compute.v1.FilesystemService/Get"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: GetFilesystemRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => GetFilesystemRequest; readonly responseSerialize: (value: Filesystem) => Buffer; readonly responseDeserialize: (value: Buffer) => Filesystem; }; /** Lists filesystems in the specified folder. */ readonly list: { readonly path: "/yandex.cloud.compute.v1.FilesystemService/List"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: ListFilesystemsRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => ListFilesystemsRequest; readonly responseSerialize: (value: ListFilesystemsResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => ListFilesystemsResponse; }; /** Creates a filesystem in the specified folder. */ readonly create: { readonly path: "/yandex.cloud.compute.v1.FilesystemService/Create"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: CreateFilesystemRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => CreateFilesystemRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; /** Updates the specified filesystem. */ readonly update: { readonly path: "/yandex.cloud.compute.v1.FilesystemService/Update"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: UpdateFilesystemRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => UpdateFilesystemRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; /** * Deletes the specified filesystem. * * Deleting a filesystem removes its data permanently and is irreversible. * * It is not possible to delete a filesystem that is attached to an instance. */ readonly delete: { readonly path: "/yandex.cloud.compute.v1.FilesystemService/Delete"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: DeleteFilesystemRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => DeleteFilesystemRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; /** Lists operations for the specified filesystem. */ readonly listOperations: { readonly path: "/yandex.cloud.compute.v1.FilesystemService/ListOperations"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: ListFilesystemOperationsRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => ListFilesystemOperationsRequest; readonly responseSerialize: (value: ListFilesystemOperationsResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => ListFilesystemOperationsResponse; }; /** Lists access bindings for the filesystem. */ readonly listAccessBindings: { readonly path: "/yandex.cloud.compute.v1.FilesystemService/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 filesystem. */ readonly setAccessBindings: { readonly path: "/yandex.cloud.compute.v1.FilesystemService/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 filesystem. */ readonly updateAccessBindings: { readonly path: "/yandex.cloud.compute.v1.FilesystemService/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 FilesystemServiceServer extends UntypedServiceImplementation { /** * Returns the specified filesystem. * * To get the list of available filesystems, make a [List] request. */ get: handleUnaryCall; /** Lists filesystems in the specified folder. */ list: handleUnaryCall; /** Creates a filesystem in the specified folder. */ create: handleUnaryCall; /** Updates the specified filesystem. */ update: handleUnaryCall; /** * Deletes the specified filesystem. * * Deleting a filesystem removes its data permanently and is irreversible. * * It is not possible to delete a filesystem that is attached to an instance. */ delete: handleUnaryCall; /** Lists operations for the specified filesystem. */ listOperations: handleUnaryCall; /** Lists access bindings for the filesystem. */ listAccessBindings: handleUnaryCall; /** Sets access bindings for the filesystem. */ setAccessBindings: handleUnaryCall; /** Updates access bindings for the filesystem. */ updateAccessBindings: handleUnaryCall; } export interface FilesystemServiceClient extends Client { /** * Returns the specified filesystem. * * To get the list of available filesystems, make a [List] request. */ get(request: GetFilesystemRequest, callback: (error: ServiceError | null, response: Filesystem) => void): ClientUnaryCall; get(request: GetFilesystemRequest, metadata: Metadata, callback: (error: ServiceError | null, response: Filesystem) => void): ClientUnaryCall; get(request: GetFilesystemRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: Filesystem) => void): ClientUnaryCall; /** Lists filesystems in the specified folder. */ list(request: ListFilesystemsRequest, callback: (error: ServiceError | null, response: ListFilesystemsResponse) => void): ClientUnaryCall; list(request: ListFilesystemsRequest, metadata: Metadata, callback: (error: ServiceError | null, response: ListFilesystemsResponse) => void): ClientUnaryCall; list(request: ListFilesystemsRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: ListFilesystemsResponse) => void): ClientUnaryCall; /** Creates a filesystem in the specified folder. */ create(request: CreateFilesystemRequest, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; create(request: CreateFilesystemRequest, metadata: Metadata, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; create(request: CreateFilesystemRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; /** Updates the specified filesystem. */ update(request: UpdateFilesystemRequest, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; update(request: UpdateFilesystemRequest, metadata: Metadata, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; update(request: UpdateFilesystemRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; /** * Deletes the specified filesystem. * * Deleting a filesystem removes its data permanently and is irreversible. * * It is not possible to delete a filesystem that is attached to an instance. */ delete(request: DeleteFilesystemRequest, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; delete(request: DeleteFilesystemRequest, metadata: Metadata, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; delete(request: DeleteFilesystemRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; /** Lists operations for the specified filesystem. */ listOperations(request: ListFilesystemOperationsRequest, callback: (error: ServiceError | null, response: ListFilesystemOperationsResponse) => void): ClientUnaryCall; listOperations(request: ListFilesystemOperationsRequest, metadata: Metadata, callback: (error: ServiceError | null, response: ListFilesystemOperationsResponse) => void): ClientUnaryCall; listOperations(request: ListFilesystemOperationsRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: ListFilesystemOperationsResponse) => void): ClientUnaryCall; /** Lists access bindings for the filesystem. */ 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 filesystem. */ 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 filesystem. */ 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 FilesystemServiceClient: { new (address: string, credentials: ChannelCredentials, options?: Partial): FilesystemServiceClient; service: typeof FilesystemServiceService; }; 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 {};