/// import { ChannelCredentials, ChannelOptions, UntypedServiceImplementation, handleUnaryCall, Client, ClientUnaryCall, Metadata, CallOptions, ServiceError } from '@grpc/grpc-js'; import _m0 from 'protobufjs/minimal'; import { SchedulePolicy, SnapshotSpec, SnapshotSchedule } from '../../../../yandex/cloud/compute/v1/snapshot_schedule'; import { FieldMask } from '../../../../google/protobuf/field_mask'; import { Duration } from '../../../../google/protobuf/duration'; import { Operation } from '../../../../yandex/cloud/operation/operation'; import { Snapshot } from '../../../../yandex/cloud/compute/v1/snapshot'; import { Disk } from '../../../../yandex/cloud/compute/v1/disk'; import { ListAccessBindingsRequest, ListAccessBindingsResponse, SetAccessBindingsRequest, UpdateAccessBindingsRequest } from '../../../../yandex/cloud/access/access'; export declare const protobufPackage = "yandex.cloud.compute.v1"; export interface GetSnapshotScheduleRequest { /** * ID of the snapshot schedule to return. * * To get a schedule ID, make a [SnapshotScheduleService.List] request. */ snapshotScheduleId: string; } export interface ListSnapshotSchedulesRequest { /** * ID of the folder to list snapshot schedules 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 [ListSnapshotSchedulesResponse.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 * [ListSnapshotSchedulesResponse.next_page_token] returned by a previous list request. */ pageToken: string; /** * A filter expression that filters snapshot schedules listed in the response. * * The expression must specify: * 1. The field name. Currently you can use filtering only on [SnapshotSchedule.name] field. * 2. An operator. Can be either `=` or `!=` for single values, `IN` or `NOT IN` for lists of values. * 3. The value. Must be 3-63 characters long and match the regular expression `^[a-z][-a-z0-9]{1,61}[a-z0-9]`. * Example of a filter: `name=my-schedule`. */ filter: string; /** * A sorting expression that sorts snapshot schedules listed in the response. * * The expression must specify the field name from [SnapshotSchedule] and `asc`ending or `desc`ending order, * e.g. `createdAt desc`. * * Default value: `id asc`. */ orderBy: string; } export interface ListSnapshotSchedulesResponse { /** List of snapshot schedules in the specified folder. */ snapshotSchedules: SnapshotSchedule[]; /** * Token for getting the next page of the list. If the number of results is greater than * the specified [ListSnapshotSchedulesRequest.page_size], use `next_page_token` as the value * for the [ListSnapshotSchedulesRequest.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 CreateSnapshotScheduleRequest { /** * ID of the folder to create a snapshot schedule in. * * Snapshots are created in the same folder as the schedule, even if disks from other folders are attached * to the schedule. * * To get a folder ID, make a [yandex.cloud.resourcemanager.v1.FolderService.List] request. */ folderId: string; /** * Name of the snapshot schedule. * * The name must be unique within the folder. */ name: string; /** Description of the snapshot schedule. */ description: string; /** Snapshot schedule labels as `key:value` pairs. */ labels: { [key: string]: string; }; /** Frequency settings of the snapshot schedule. */ schedulePolicy?: SchedulePolicy; /** * Retention period of the snapshot schedule. Once a snapshot created by the schedule reaches this age, it is * automatically deleted. */ retentionPeriod?: Duration | undefined; /** * Retention count of the snapshot schedule. Once the number of snapshots created by the schedule exceeds this * number, the oldest ones are automatically deleted. E.g. if the number is 5, the first snapshot is deleted * after the sixth one is created, the second is deleted after the seventh one is created, and so on. */ snapshotCount: number | undefined; /** Attributes of snapshots created by the snapshot schedule. */ snapshotSpec?: SnapshotSpec; /** * List of IDs of the disks attached to the snapshot schedule. * * To get a disk ID, make a [yandex.cloud.compute.v1.DiskService.List] request. */ diskIds: string[]; } export interface CreateSnapshotScheduleRequest_LabelsEntry { key: string; value: string; } export interface CreateSnapshotScheduleMetadata { /** ID of the snapshot schedule that is being created. */ snapshotScheduleId: string; } export interface UpdateSnapshotScheduleRequest { /** * ID of the snapshot schedule to update. * * To get the snapshot schedule ID, make a [SnapshotScheduleService.List] request. */ snapshotScheduleId: string; /** Field mask that specifies which attributes of the snapshot schedule should be updated. */ updateMask?: FieldMask; /** * New name for the snapshot schedule. * * The name must be unique within the folder. */ name: string; /** New description of the snapshot schedule. */ description: string; /** * Snapshot schedule labels as `key:value` pairs. * * 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 [SnapshotScheduleService.Get] request. * 2. Add or remove a label in this set. * 3. Send the new set in this field. */ labels: { [key: string]: string; }; /** New frequency settings of the snapshot schedule. */ schedulePolicy?: SchedulePolicy; /** * Retention period of the snapshot schedule. Once a snapshot created by the schedule reaches this age, it is * automatically deleted. */ retentionPeriod?: Duration | undefined; /** * Retention count of the snapshot schedule. Once the number of snapshots created by the schedule exceeds this * number, the oldest ones are automatically deleted. E.g. if the number is 5, the first snapshot is deleted * after the sixth one is created, the second is deleted after the seventh one is created, and so on. */ snapshotCount: number | undefined; /** New attributes of snapshots created by the snapshot schedule. */ snapshotSpec?: SnapshotSpec; } export interface UpdateSnapshotScheduleRequest_LabelsEntry { key: string; value: string; } export interface UpdateSnapshotScheduleMetadata { /** ID of the snapshot schedule that is being updated. */ snapshotScheduleId: string; } export interface DeleteSnapshotScheduleRequest { /** * ID of the snapshot schedule to delete. * * To get a snapshot schedule ID, make a [SnapshotScheduleService.List] request. */ snapshotScheduleId: string; } export interface DeleteSnapshotScheduleMetadata { /** ID of the snapshot schedule that is being deleted. */ snapshotScheduleId: string; } export interface DisableSnapshotScheduleRequest { /** * ID of the snapshot schedule to disable. * * To get a snapshot schedule ID, make a [SnapshotScheduleService.List] request. */ snapshotScheduleId: string; } export interface DisableSnapshotScheduleMetadata { /** ID of the snapshot schedule that is being disabled. */ snapshotScheduleId: string; } export interface EnableSnapshotScheduleRequest { /** * ID of the snapshot schedule to enable. * * To get a snapshot schedule ID, make a [SnapshotScheduleService.List] request. */ snapshotScheduleId: string; } export interface EnableSnapshotScheduleMetadata { /** ID of the snapshot schedule that is being enabled. */ snapshotScheduleId: string; } export interface ListSnapshotScheduleOperationsRequest { /** * ID of the snapshot schedule to list operations for. * * To get a snapshot schedule ID, make a [SnapshotScheduleService.List] request. */ snapshotScheduleId: 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 [ListSnapshotScheduleOperationsResponse.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 * [ListSnapshotScheduleOperationsResponse.next_page_token] returned by a previous list request. */ pageToken: string; } export interface ListSnapshotScheduleOperationsResponse { /** List of operations for the specified snapshot schedule. */ operations: Operation[]; /** * Token for getting the next page of the list. If the number of results is greater than * the specified [ListSnapshotScheduleOperationsRequest.page_size], use `next_page_token` as the value * for the [ListSnapshotScheduleOperationsRequest.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 ListSnapshotScheduleSnapshotsRequest { /** * ID of the snapshot schedule to list created snapshots for. * * To get a snapshot schedule ID, make a [SnapshotScheduleService.List] request. */ snapshotScheduleId: 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 [ListSnapshotScheduleOperationsResponse.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 * [ListSnapshotScheduleOperationsResponse.next_page_token] returned by a previous list request. */ pageToken: string; } export interface ListSnapshotScheduleSnapshotsResponse { /** List of snapshots created by the specified snapshot schedule. */ snapshots: Snapshot[]; /** * Token for getting the next page of the list. If the number of results is greater than * the specified [ListSnapshotScheduleSnapshotsRequest.page_size], use `next_page_token` as the value * for the [ListSnapshotScheduleSnapshotsRequest.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 ListSnapshotScheduleDisksRequest { /** * ID of the snapshot schedule to list attached disks for. * * To get a snapshot schedule ID, make a [SnapshotScheduleService.List] request. */ snapshotScheduleId: 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 [ListSnapshotScheduleDisksResponse.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 * [ListSnapshotScheduleDisksResponse.next_page_token] returned by a previous list request. */ pageToken: string; } export interface ListSnapshotScheduleDisksResponse { /** List of disks attached to the specified snapshot schedule. */ disks: Disk[]; /** * Token for getting the next page of the list. If the number of results is greater than * the specified [ListSnapshotScheduleDisksRequest.page_size], use `next_page_token` as the value * for the [ListSnapshotScheduleDisksRequest.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 UpdateSnapshotScheduleDisksRequest { /** * ID of the snapshot schedule to update. * * To get a snapshot schedule ID, make a [SnapshotScheduleService.List] request. */ snapshotScheduleId: string; /** * List of IDs of the disks to detach from the specified schedule. * * To get an ID of a disk attached to the schedule, make a [SnapshotScheduleService.ListDisks] request. */ remove: string[]; /** * List of IDs of the disks to attach to the specified schedule. * * To get a disk ID, make a [yandex.cloud.compute.v1.DiskService.List] request. */ add: string[]; } export interface UpdateSnapshotScheduleDisksMetadata { /** ID of the snapshot schedule that is being updated. */ snapshotScheduleId: string; } export declare const GetSnapshotScheduleRequest: { encode(message: GetSnapshotScheduleRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): GetSnapshotScheduleRequest; fromJSON(object: any): GetSnapshotScheduleRequest; toJSON(message: GetSnapshotScheduleRequest): unknown; fromPartial, never>>(object: I): GetSnapshotScheduleRequest; }; export declare const ListSnapshotSchedulesRequest: { encode(message: ListSnapshotSchedulesRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): ListSnapshotSchedulesRequest; fromJSON(object: any): ListSnapshotSchedulesRequest; toJSON(message: ListSnapshotSchedulesRequest): unknown; fromPartial, never>>(object: I): ListSnapshotSchedulesRequest; }; export declare const ListSnapshotSchedulesResponse: { encode(message: ListSnapshotSchedulesResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): ListSnapshotSchedulesResponse; fromJSON(object: any): ListSnapshotSchedulesResponse; toJSON(message: ListSnapshotSchedulesResponse): unknown; fromPartial, never>) | undefined; status?: import("../../../../yandex/cloud/compute/v1/snapshot_schedule").SnapshotSchedule_Status | undefined; schedulePolicy?: ({ startAt?: Date | undefined; expression?: string | undefined; } & { startAt?: Date | undefined; expression?: string | undefined; } & Record, never>) | undefined; retentionPeriod?: ({ seconds?: number | undefined; nanos?: number | undefined; } & { seconds?: number | undefined; nanos?: number | undefined; } & Record, never>) | undefined; snapshotCount?: number | undefined; snapshotSpec?: ({ description?: string | undefined; labels?: { [x: string]: string | undefined; } | undefined; } & { description?: string | undefined; labels?: ({ [x: string]: string | undefined; } & { [x: string]: string | undefined; } & Record, never>) | undefined; } & Record, never>) | undefined; } & Record, never>)[] & Record, never>) | undefined; nextPageToken?: string | undefined; } & Record, never>>(object: I): ListSnapshotSchedulesResponse; }; export declare const CreateSnapshotScheduleRequest: { encode(message: CreateSnapshotScheduleRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): CreateSnapshotScheduleRequest; fromJSON(object: any): CreateSnapshotScheduleRequest; toJSON(message: CreateSnapshotScheduleRequest): unknown; fromPartial, never>) | undefined; schedulePolicy?: ({ startAt?: Date | undefined; expression?: string | undefined; } & { startAt?: Date | undefined; expression?: string | undefined; } & Record, never>) | undefined; retentionPeriod?: ({ seconds?: number | undefined; nanos?: number | undefined; } & { seconds?: number | undefined; nanos?: number | undefined; } & Record, never>) | undefined; snapshotCount?: number | undefined; snapshotSpec?: ({ description?: string | undefined; labels?: { [x: string]: string | undefined; } | undefined; } & { description?: string | undefined; labels?: ({ [x: string]: string | undefined; } & { [x: string]: string | undefined; } & Record, never>) | undefined; } & Record, never>) | undefined; diskIds?: (string[] & string[] & Record, never>) | undefined; } & Record, never>>(object: I): CreateSnapshotScheduleRequest; }; export declare const CreateSnapshotScheduleRequest_LabelsEntry: { encode(message: CreateSnapshotScheduleRequest_LabelsEntry, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): CreateSnapshotScheduleRequest_LabelsEntry; fromJSON(object: any): CreateSnapshotScheduleRequest_LabelsEntry; toJSON(message: CreateSnapshotScheduleRequest_LabelsEntry): unknown; fromPartial, never>>(object: I): CreateSnapshotScheduleRequest_LabelsEntry; }; export declare const CreateSnapshotScheduleMetadata: { encode(message: CreateSnapshotScheduleMetadata, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): CreateSnapshotScheduleMetadata; fromJSON(object: any): CreateSnapshotScheduleMetadata; toJSON(message: CreateSnapshotScheduleMetadata): unknown; fromPartial, never>>(object: I): CreateSnapshotScheduleMetadata; }; export declare const UpdateSnapshotScheduleRequest: { encode(message: UpdateSnapshotScheduleRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): UpdateSnapshotScheduleRequest; fromJSON(object: any): UpdateSnapshotScheduleRequest; toJSON(message: UpdateSnapshotScheduleRequest): 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; schedulePolicy?: ({ startAt?: Date | undefined; expression?: string | undefined; } & { startAt?: Date | undefined; expression?: string | undefined; } & Record, never>) | undefined; retentionPeriod?: ({ seconds?: number | undefined; nanos?: number | undefined; } & { seconds?: number | undefined; nanos?: number | undefined; } & Record, never>) | undefined; snapshotCount?: number | undefined; snapshotSpec?: ({ description?: string | undefined; labels?: { [x: string]: string | undefined; } | undefined; } & { description?: string | undefined; labels?: ({ [x: string]: string | undefined; } & { [x: string]: string | undefined; } & Record, never>) | undefined; } & Record, never>) | undefined; } & Record, never>>(object: I): UpdateSnapshotScheduleRequest; }; export declare const UpdateSnapshotScheduleRequest_LabelsEntry: { encode(message: UpdateSnapshotScheduleRequest_LabelsEntry, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): UpdateSnapshotScheduleRequest_LabelsEntry; fromJSON(object: any): UpdateSnapshotScheduleRequest_LabelsEntry; toJSON(message: UpdateSnapshotScheduleRequest_LabelsEntry): unknown; fromPartial, never>>(object: I): UpdateSnapshotScheduleRequest_LabelsEntry; }; export declare const UpdateSnapshotScheduleMetadata: { encode(message: UpdateSnapshotScheduleMetadata, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): UpdateSnapshotScheduleMetadata; fromJSON(object: any): UpdateSnapshotScheduleMetadata; toJSON(message: UpdateSnapshotScheduleMetadata): unknown; fromPartial, never>>(object: I): UpdateSnapshotScheduleMetadata; }; export declare const DeleteSnapshotScheduleRequest: { encode(message: DeleteSnapshotScheduleRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): DeleteSnapshotScheduleRequest; fromJSON(object: any): DeleteSnapshotScheduleRequest; toJSON(message: DeleteSnapshotScheduleRequest): unknown; fromPartial, never>>(object: I): DeleteSnapshotScheduleRequest; }; export declare const DeleteSnapshotScheduleMetadata: { encode(message: DeleteSnapshotScheduleMetadata, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): DeleteSnapshotScheduleMetadata; fromJSON(object: any): DeleteSnapshotScheduleMetadata; toJSON(message: DeleteSnapshotScheduleMetadata): unknown; fromPartial, never>>(object: I): DeleteSnapshotScheduleMetadata; }; export declare const DisableSnapshotScheduleRequest: { encode(message: DisableSnapshotScheduleRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): DisableSnapshotScheduleRequest; fromJSON(object: any): DisableSnapshotScheduleRequest; toJSON(message: DisableSnapshotScheduleRequest): unknown; fromPartial, never>>(object: I): DisableSnapshotScheduleRequest; }; export declare const DisableSnapshotScheduleMetadata: { encode(message: DisableSnapshotScheduleMetadata, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): DisableSnapshotScheduleMetadata; fromJSON(object: any): DisableSnapshotScheduleMetadata; toJSON(message: DisableSnapshotScheduleMetadata): unknown; fromPartial, never>>(object: I): DisableSnapshotScheduleMetadata; }; export declare const EnableSnapshotScheduleRequest: { encode(message: EnableSnapshotScheduleRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): EnableSnapshotScheduleRequest; fromJSON(object: any): EnableSnapshotScheduleRequest; toJSON(message: EnableSnapshotScheduleRequest): unknown; fromPartial, never>>(object: I): EnableSnapshotScheduleRequest; }; export declare const EnableSnapshotScheduleMetadata: { encode(message: EnableSnapshotScheduleMetadata, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): EnableSnapshotScheduleMetadata; fromJSON(object: any): EnableSnapshotScheduleMetadata; toJSON(message: EnableSnapshotScheduleMetadata): unknown; fromPartial, never>>(object: I): EnableSnapshotScheduleMetadata; }; export declare const ListSnapshotScheduleOperationsRequest: { encode(message: ListSnapshotScheduleOperationsRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): ListSnapshotScheduleOperationsRequest; fromJSON(object: any): ListSnapshotScheduleOperationsRequest; toJSON(message: ListSnapshotScheduleOperationsRequest): unknown; fromPartial, never>>(object: I): ListSnapshotScheduleOperationsRequest; }; export declare const ListSnapshotScheduleOperationsResponse: { encode(message: ListSnapshotScheduleOperationsResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): ListSnapshotScheduleOperationsResponse; fromJSON(object: any): ListSnapshotScheduleOperationsResponse; toJSON(message: ListSnapshotScheduleOperationsResponse): 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): ListSnapshotScheduleOperationsResponse; }; export declare const ListSnapshotScheduleSnapshotsRequest: { encode(message: ListSnapshotScheduleSnapshotsRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): ListSnapshotScheduleSnapshotsRequest; fromJSON(object: any): ListSnapshotScheduleSnapshotsRequest; toJSON(message: ListSnapshotScheduleSnapshotsRequest): unknown; fromPartial, never>>(object: I): ListSnapshotScheduleSnapshotsRequest; }; export declare const ListSnapshotScheduleSnapshotsResponse: { encode(message: ListSnapshotScheduleSnapshotsResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): ListSnapshotScheduleSnapshotsResponse; fromJSON(object: any): ListSnapshotScheduleSnapshotsResponse; toJSON(message: ListSnapshotScheduleSnapshotsResponse): unknown; fromPartial, never>) | undefined; storageSize?: number | undefined; diskSize?: number | undefined; productIds?: (string[] & string[] & Record, never>) | undefined; status?: import("../../../../yandex/cloud/compute/v1/snapshot").Snapshot_Status | undefined; sourceDiskId?: string | 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): ListSnapshotScheduleSnapshotsResponse; }; export declare const ListSnapshotScheduleDisksRequest: { encode(message: ListSnapshotScheduleDisksRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): ListSnapshotScheduleDisksRequest; fromJSON(object: any): ListSnapshotScheduleDisksRequest; toJSON(message: ListSnapshotScheduleDisksRequest): unknown; fromPartial, never>>(object: I): ListSnapshotScheduleDisksRequest; }; export declare const ListSnapshotScheduleDisksResponse: { encode(message: ListSnapshotScheduleDisksResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): ListSnapshotScheduleDisksResponse; fromJSON(object: any): ListSnapshotScheduleDisksResponse; toJSON(message: ListSnapshotScheduleDisksResponse): 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): ListSnapshotScheduleDisksResponse; }; export declare const UpdateSnapshotScheduleDisksRequest: { encode(message: UpdateSnapshotScheduleDisksRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): UpdateSnapshotScheduleDisksRequest; fromJSON(object: any): UpdateSnapshotScheduleDisksRequest; toJSON(message: UpdateSnapshotScheduleDisksRequest): unknown; fromPartial, never>) | undefined; add?: (string[] & string[] & Record, never>) | undefined; } & Record, never>>(object: I): UpdateSnapshotScheduleDisksRequest; }; export declare const UpdateSnapshotScheduleDisksMetadata: { encode(message: UpdateSnapshotScheduleDisksMetadata, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): UpdateSnapshotScheduleDisksMetadata; fromJSON(object: any): UpdateSnapshotScheduleDisksMetadata; toJSON(message: UpdateSnapshotScheduleDisksMetadata): unknown; fromPartial, never>>(object: I): UpdateSnapshotScheduleDisksMetadata; }; /** A set of methods for managing snapshot schedules. */ export declare const SnapshotScheduleServiceService: { /** * Returns the specified snapshot schedule. * * To get the list of available snapshot schedules, make a [List] request. */ readonly get: { readonly path: "/yandex.cloud.compute.v1.SnapshotScheduleService/Get"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: GetSnapshotScheduleRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => GetSnapshotScheduleRequest; readonly responseSerialize: (value: SnapshotSchedule) => Buffer; readonly responseDeserialize: (value: Buffer) => SnapshotSchedule; }; /** Retrieves the list of snapshot schedules in the specified folder. */ readonly list: { readonly path: "/yandex.cloud.compute.v1.SnapshotScheduleService/List"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: ListSnapshotSchedulesRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => ListSnapshotSchedulesRequest; readonly responseSerialize: (value: ListSnapshotSchedulesResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => ListSnapshotSchedulesResponse; }; /** Creates a snapshot schedule in the specified folder. */ readonly create: { readonly path: "/yandex.cloud.compute.v1.SnapshotScheduleService/Create"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: CreateSnapshotScheduleRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => CreateSnapshotScheduleRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; /** * Updates the specified snapshot schedule. * * The schedule is updated only after all snapshot creations and deletions triggered by the schedule are completed. */ readonly update: { readonly path: "/yandex.cloud.compute.v1.SnapshotScheduleService/Update"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: UpdateSnapshotScheduleRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => UpdateSnapshotScheduleRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; /** * Deletes the specified snapshot schedule. * * Deleting a snapshot schedule removes its data permanently and is irreversible. However, deleting a schedule * does not delete any snapshots created by the schedule. You must delete snapshots separately. * * The schedule is deleted only after all snapshot creations and deletions triggered by the schedule are completed. */ readonly delete: { readonly path: "/yandex.cloud.compute.v1.SnapshotScheduleService/Delete"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: DeleteSnapshotScheduleRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => DeleteSnapshotScheduleRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; /** * Updates the list of disks attached to the specified schedule. * * The schedule is updated only after all snapshot creations and deletions triggered by the schedule are completed. */ readonly updateDisks: { readonly path: "/yandex.cloud.compute.v1.SnapshotScheduleService/UpdateDisks"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: UpdateSnapshotScheduleDisksRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => UpdateSnapshotScheduleDisksRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; /** * Disables the specified snapshot schedule. * * The [SnapshotSchedule.status] is changed to `INACTIVE`: the schedule is interrupted, snapshots won't be created * or deleted. * * The schedule is disabled only after all snapshot creations and deletions triggered by the schedule are completed. */ readonly disable: { readonly path: "/yandex.cloud.compute.v1.SnapshotScheduleService/Disable"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: DisableSnapshotScheduleRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => DisableSnapshotScheduleRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; /** * Enables the specified snapshot schedule. * * The [SnapshotSchedule.status] is changed to `ACTIVE`: new disk snapshots will be created, old ones deleted * (if [SnapshotSchedule.retention_policy] is specified). */ readonly enable: { readonly path: "/yandex.cloud.compute.v1.SnapshotScheduleService/Enable"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: EnableSnapshotScheduleRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => EnableSnapshotScheduleRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; /** Lists operations for the specified snapshot schedule. */ readonly listOperations: { readonly path: "/yandex.cloud.compute.v1.SnapshotScheduleService/ListOperations"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: ListSnapshotScheduleOperationsRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => ListSnapshotScheduleOperationsRequest; readonly responseSerialize: (value: ListSnapshotScheduleOperationsResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => ListSnapshotScheduleOperationsResponse; }; /** Retrieves the list of snapshots created by the specified snapshot schedule. */ readonly listSnapshots: { readonly path: "/yandex.cloud.compute.v1.SnapshotScheduleService/ListSnapshots"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: ListSnapshotScheduleSnapshotsRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => ListSnapshotScheduleSnapshotsRequest; readonly responseSerialize: (value: ListSnapshotScheduleSnapshotsResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => ListSnapshotScheduleSnapshotsResponse; }; /** Retrieves the list of disks attached to the specified snapshot schedule. */ readonly listDisks: { readonly path: "/yandex.cloud.compute.v1.SnapshotScheduleService/ListDisks"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: ListSnapshotScheduleDisksRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => ListSnapshotScheduleDisksRequest; readonly responseSerialize: (value: ListSnapshotScheduleDisksResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => ListSnapshotScheduleDisksResponse; }; /** Lists access bindings for the snapshot schedule. */ readonly listAccessBindings: { readonly path: "/yandex.cloud.compute.v1.SnapshotScheduleService/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 snapshot schedule. */ readonly setAccessBindings: { readonly path: "/yandex.cloud.compute.v1.SnapshotScheduleService/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 snapshot schedule. */ readonly updateAccessBindings: { readonly path: "/yandex.cloud.compute.v1.SnapshotScheduleService/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 SnapshotScheduleServiceServer extends UntypedServiceImplementation { /** * Returns the specified snapshot schedule. * * To get the list of available snapshot schedules, make a [List] request. */ get: handleUnaryCall; /** Retrieves the list of snapshot schedules in the specified folder. */ list: handleUnaryCall; /** Creates a snapshot schedule in the specified folder. */ create: handleUnaryCall; /** * Updates the specified snapshot schedule. * * The schedule is updated only after all snapshot creations and deletions triggered by the schedule are completed. */ update: handleUnaryCall; /** * Deletes the specified snapshot schedule. * * Deleting a snapshot schedule removes its data permanently and is irreversible. However, deleting a schedule * does not delete any snapshots created by the schedule. You must delete snapshots separately. * * The schedule is deleted only after all snapshot creations and deletions triggered by the schedule are completed. */ delete: handleUnaryCall; /** * Updates the list of disks attached to the specified schedule. * * The schedule is updated only after all snapshot creations and deletions triggered by the schedule are completed. */ updateDisks: handleUnaryCall; /** * Disables the specified snapshot schedule. * * The [SnapshotSchedule.status] is changed to `INACTIVE`: the schedule is interrupted, snapshots won't be created * or deleted. * * The schedule is disabled only after all snapshot creations and deletions triggered by the schedule are completed. */ disable: handleUnaryCall; /** * Enables the specified snapshot schedule. * * The [SnapshotSchedule.status] is changed to `ACTIVE`: new disk snapshots will be created, old ones deleted * (if [SnapshotSchedule.retention_policy] is specified). */ enable: handleUnaryCall; /** Lists operations for the specified snapshot schedule. */ listOperations: handleUnaryCall; /** Retrieves the list of snapshots created by the specified snapshot schedule. */ listSnapshots: handleUnaryCall; /** Retrieves the list of disks attached to the specified snapshot schedule. */ listDisks: handleUnaryCall; /** Lists access bindings for the snapshot schedule. */ listAccessBindings: handleUnaryCall; /** Sets access bindings for the snapshot schedule. */ setAccessBindings: handleUnaryCall; /** Updates access bindings for the snapshot schedule. */ updateAccessBindings: handleUnaryCall; } export interface SnapshotScheduleServiceClient extends Client { /** * Returns the specified snapshot schedule. * * To get the list of available snapshot schedules, make a [List] request. */ get(request: GetSnapshotScheduleRequest, callback: (error: ServiceError | null, response: SnapshotSchedule) => void): ClientUnaryCall; get(request: GetSnapshotScheduleRequest, metadata: Metadata, callback: (error: ServiceError | null, response: SnapshotSchedule) => void): ClientUnaryCall; get(request: GetSnapshotScheduleRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: SnapshotSchedule) => void): ClientUnaryCall; /** Retrieves the list of snapshot schedules in the specified folder. */ list(request: ListSnapshotSchedulesRequest, callback: (error: ServiceError | null, response: ListSnapshotSchedulesResponse) => void): ClientUnaryCall; list(request: ListSnapshotSchedulesRequest, metadata: Metadata, callback: (error: ServiceError | null, response: ListSnapshotSchedulesResponse) => void): ClientUnaryCall; list(request: ListSnapshotSchedulesRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: ListSnapshotSchedulesResponse) => void): ClientUnaryCall; /** Creates a snapshot schedule in the specified folder. */ create(request: CreateSnapshotScheduleRequest, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; create(request: CreateSnapshotScheduleRequest, metadata: Metadata, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; create(request: CreateSnapshotScheduleRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; /** * Updates the specified snapshot schedule. * * The schedule is updated only after all snapshot creations and deletions triggered by the schedule are completed. */ update(request: UpdateSnapshotScheduleRequest, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; update(request: UpdateSnapshotScheduleRequest, metadata: Metadata, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; update(request: UpdateSnapshotScheduleRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; /** * Deletes the specified snapshot schedule. * * Deleting a snapshot schedule removes its data permanently and is irreversible. However, deleting a schedule * does not delete any snapshots created by the schedule. You must delete snapshots separately. * * The schedule is deleted only after all snapshot creations and deletions triggered by the schedule are completed. */ delete(request: DeleteSnapshotScheduleRequest, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; delete(request: DeleteSnapshotScheduleRequest, metadata: Metadata, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; delete(request: DeleteSnapshotScheduleRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; /** * Updates the list of disks attached to the specified schedule. * * The schedule is updated only after all snapshot creations and deletions triggered by the schedule are completed. */ updateDisks(request: UpdateSnapshotScheduleDisksRequest, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; updateDisks(request: UpdateSnapshotScheduleDisksRequest, metadata: Metadata, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; updateDisks(request: UpdateSnapshotScheduleDisksRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; /** * Disables the specified snapshot schedule. * * The [SnapshotSchedule.status] is changed to `INACTIVE`: the schedule is interrupted, snapshots won't be created * or deleted. * * The schedule is disabled only after all snapshot creations and deletions triggered by the schedule are completed. */ disable(request: DisableSnapshotScheduleRequest, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; disable(request: DisableSnapshotScheduleRequest, metadata: Metadata, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; disable(request: DisableSnapshotScheduleRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; /** * Enables the specified snapshot schedule. * * The [SnapshotSchedule.status] is changed to `ACTIVE`: new disk snapshots will be created, old ones deleted * (if [SnapshotSchedule.retention_policy] is specified). */ enable(request: EnableSnapshotScheduleRequest, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; enable(request: EnableSnapshotScheduleRequest, metadata: Metadata, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; enable(request: EnableSnapshotScheduleRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; /** Lists operations for the specified snapshot schedule. */ listOperations(request: ListSnapshotScheduleOperationsRequest, callback: (error: ServiceError | null, response: ListSnapshotScheduleOperationsResponse) => void): ClientUnaryCall; listOperations(request: ListSnapshotScheduleOperationsRequest, metadata: Metadata, callback: (error: ServiceError | null, response: ListSnapshotScheduleOperationsResponse) => void): ClientUnaryCall; listOperations(request: ListSnapshotScheduleOperationsRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: ListSnapshotScheduleOperationsResponse) => void): ClientUnaryCall; /** Retrieves the list of snapshots created by the specified snapshot schedule. */ listSnapshots(request: ListSnapshotScheduleSnapshotsRequest, callback: (error: ServiceError | null, response: ListSnapshotScheduleSnapshotsResponse) => void): ClientUnaryCall; listSnapshots(request: ListSnapshotScheduleSnapshotsRequest, metadata: Metadata, callback: (error: ServiceError | null, response: ListSnapshotScheduleSnapshotsResponse) => void): ClientUnaryCall; listSnapshots(request: ListSnapshotScheduleSnapshotsRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: ListSnapshotScheduleSnapshotsResponse) => void): ClientUnaryCall; /** Retrieves the list of disks attached to the specified snapshot schedule. */ listDisks(request: ListSnapshotScheduleDisksRequest, callback: (error: ServiceError | null, response: ListSnapshotScheduleDisksResponse) => void): ClientUnaryCall; listDisks(request: ListSnapshotScheduleDisksRequest, metadata: Metadata, callback: (error: ServiceError | null, response: ListSnapshotScheduleDisksResponse) => void): ClientUnaryCall; listDisks(request: ListSnapshotScheduleDisksRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: ListSnapshotScheduleDisksResponse) => void): ClientUnaryCall; /** Lists access bindings for the snapshot schedule. */ 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 snapshot schedule. */ 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 snapshot schedule. */ 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 SnapshotScheduleServiceClient: { new (address: string, credentials: ChannelCredentials, options?: Partial): SnapshotScheduleServiceClient; service: typeof SnapshotScheduleServiceService; }; 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 {};