/// 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 { PrivateSubnet } from '../../../../yandex/cloud/baremetal/v1alpha/private_subnet'; import { Operation } from '../../../../yandex/cloud/operation/operation'; export declare const protobufPackage = "yandex.cloud.baremetal.v1alpha"; export interface GetPrivateSubnetRequest { /** * ID of the PrivateSubnet resource to return. * * To get the private subnet ID use a [PrivateSubnetService.List] request. */ privateSubnetId: string; } export interface ListPrivateSubnetRequest { /** * ID of the folder to list private subnets in. * * To get the folder ID use a [yandex.cloud.resourcemanager.v1.FolderService.List] request. */ folderId: string; /** * The maximum number of results per page to return. If the number of available * results is greater than `page_size`, * the service returns a [ListConfigurationsResponse.next_page_token] * that can be used to get the next page of results in subsequent list requests. * Default value is 20. */ pageSize: number; /** * Page token. To get the next page of results, set `page_token` to the * [ListConfigurationsResponse.next_page_token] returned by a previous list request. */ pageToken: string; /** * By which column the listing should be ordered and in which direction, * format is "createdAt desc". "id asc" if omitted. * Supported fields: ["id", "name", "createdAt"]. * Both snake_case and camelCase are supported for fields. */ orderBy: 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 `=` (equal), `:` (substring). * 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). * Example: "key1='value' AND key2='value'" * Supported operators: ["AND"]. * Supported fields: ["id", "name", "zoneId", "hardwarePoolId"]. * Both snake_case and camelCase are supported for fields. */ filter: string; } export interface ListPrivateSubnetResponse { /** List of PrivateSubnet resources. */ privateSubnets: PrivateSubnet[]; /** * Token for getting the next page of the list. If the number of results is greater than * [ListImagesRequest.page_size], use `next_page_token` as the value * for the [ListImagesRequest.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 CreatePrivateSubnetRequest { /** * Name of the private subnet. * The name must be unique within the folder. */ name: string; /** Description of the private subnet. */ description: string; /** * ID of the hardware pool where the private subnet resides. * * To get a list of available hardware pools, use the [HardwarePoolService.List] request. */ hardwarePoolId: string; /** VRF options. Optional. */ vrfOptionsSpec?: VrfOptionsSpec; /** * ID of the folder to create a private subnet in. * * To get the folder ID, use a [yandex.cloud.resourcemanager.v1.FolderService.List] request. */ folderId: string; /** Resource labels as `key:value` pairs. */ labels: { [key: string]: string; }; } export interface CreatePrivateSubnetRequest_LabelsEntry { key: string; value: string; } export interface VrfOptionsSpec { /** * ID of the VRF to create private subnet in. * * To get the VRF ID, use a [VrfService.List] request. */ vrfId: string; /** * CIDR block. * The range of internal addresses that are defined for this private subnet, as * specified in [RFC1918](https://datatracker.ietf.org/doc/html/rfc1918#section-3). * For example, 10.0.0.0/22 or 192.168.0.0/24. */ cidr: string; /** * DHCP options for the subnet. * The absence or null value indicates that DHCP is disabled. */ dhcpOptions?: DhcpOptionsSpec; /** Gateway IP address for the subnet. */ gatewayIp: string; } /** DHCP options for the private subnet. */ export interface DhcpOptionsSpec { /** * Start IP address of the DHCP range (inclusive). * The absence or null value indicates that calculation will be performed based on CIDR. */ startIp: string; /** * End IP address of the DHCP range (inclusive). * The absence or null value indicates that calculation will be performed based on CIDR. */ endIp: string; } export interface CreatePrivateSubnetMetadata { /** ID of the private subnet that is being created. */ privateSubnetId: string; } export interface UpdatePrivateSubnetRequest { /** * ID of the PrivateSubnet resource to update. * * To get the private subnet ID, use a [PrivateSubnetService.List] request. */ privateSubnetId: string; /** Field mask that specifies which fields of the PrivateSubnet resource are going to be updated. */ updateMask?: FieldMask; /** * Name of the private subnet. * The name must be unique within the folder. */ name: string; /** Description of the private subnet. */ description: string; /** VRF options. Optional. */ vrfOptionsSpec?: VrfOptionsSpec; /** * Resource labels as `key:value` pairs. * * Existing set of `labels` is completely replaced by the provided set. */ labels: { [key: string]: string; }; } export interface UpdatePrivateSubnetRequest_LabelsEntry { key: string; value: string; } export interface UpdatePrivateSubnetMetadata { /** ID of the PrivateSubnet resource that is being updated. */ privateSubnetId: string; } export interface DeletePrivateSubnetRequest { /** * ID of the private subnet to delete. * * To get the private subnet ID, use a [PrivateSubnetService.List] request. */ privateSubnetId: string; } export interface DeletePrivateSubnetMetadata { /** ID of the PrivateSubnet resource that is being deleted. */ privateSubnetId: string; } export interface ListPrivateSubnetOperationsRequest { /** ID of the PrivateSubnet resource to list operations for. */ privateSubnetId: string; /** * The maximum number of results per page to return. If the number of available * results is greater than `page_size`, * the service returns a [ListImageOperationsResponse.next_page_token] * that can be used to get the next page of results in subsequent list requests. * Default value is 20. */ pageSize: number; /** * Page token. To get the next page of results, set `page_token` to the * [ListPrivateSubnetOperationsResponse.next_page_token] returned by a previous list request. */ pageToken: string; } export interface ListPrivateSubnetOperationsResponse { /** List of operations for the specified PrivateSubnet resource. */ operations: Operation[]; /** * Token for getting the next page of the list. If the number of results is greater than * [ListImageOperationsRequest.page_size], use `next_page_token` as the value * for the [ListImageOperationsRequest.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 GetPrivateSubnetRequest: { encode(message: GetPrivateSubnetRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): GetPrivateSubnetRequest; fromJSON(object: any): GetPrivateSubnetRequest; toJSON(message: GetPrivateSubnetRequest): unknown; fromPartial, never>>(object: I): GetPrivateSubnetRequest; }; export declare const ListPrivateSubnetRequest: { encode(message: ListPrivateSubnetRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): ListPrivateSubnetRequest; fromJSON(object: any): ListPrivateSubnetRequest; toJSON(message: ListPrivateSubnetRequest): unknown; fromPartial, never>>(object: I): ListPrivateSubnetRequest; }; export declare const ListPrivateSubnetResponse: { encode(message: ListPrivateSubnetResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): ListPrivateSubnetResponse; fromJSON(object: any): ListPrivateSubnetResponse; toJSON(message: ListPrivateSubnetResponse): unknown; fromPartial, never>) | undefined; gatewayIp?: string | undefined; } & Record, never>) | undefined; createdAt?: Date | undefined; labels?: ({ [x: string]: string | undefined; } & { [x: string]: string | undefined; } & Record, never>) | undefined; } & Record, never>)[] & Record, never>) | undefined; nextPageToken?: string | undefined; } & Record, never>>(object: I): ListPrivateSubnetResponse; }; export declare const CreatePrivateSubnetRequest: { encode(message: CreatePrivateSubnetRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): CreatePrivateSubnetRequest; fromJSON(object: any): CreatePrivateSubnetRequest; toJSON(message: CreatePrivateSubnetRequest): unknown; fromPartial, never>) | undefined; gatewayIp?: string | undefined; } & Record, never>) | undefined; folderId?: string | undefined; labels?: ({ [x: string]: string | undefined; } & { [x: string]: string | undefined; } & Record, never>) | undefined; } & Record, never>>(object: I): CreatePrivateSubnetRequest; }; export declare const CreatePrivateSubnetRequest_LabelsEntry: { encode(message: CreatePrivateSubnetRequest_LabelsEntry, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): CreatePrivateSubnetRequest_LabelsEntry; fromJSON(object: any): CreatePrivateSubnetRequest_LabelsEntry; toJSON(message: CreatePrivateSubnetRequest_LabelsEntry): unknown; fromPartial, never>>(object: I): CreatePrivateSubnetRequest_LabelsEntry; }; export declare const VrfOptionsSpec: { encode(message: VrfOptionsSpec, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): VrfOptionsSpec; fromJSON(object: any): VrfOptionsSpec; toJSON(message: VrfOptionsSpec): unknown; fromPartial, never>) | undefined; gatewayIp?: string | undefined; } & Record, never>>(object: I): VrfOptionsSpec; }; export declare const DhcpOptionsSpec: { encode(message: DhcpOptionsSpec, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): DhcpOptionsSpec; fromJSON(object: any): DhcpOptionsSpec; toJSON(message: DhcpOptionsSpec): unknown; fromPartial, never>>(object: I): DhcpOptionsSpec; }; export declare const CreatePrivateSubnetMetadata: { encode(message: CreatePrivateSubnetMetadata, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): CreatePrivateSubnetMetadata; fromJSON(object: any): CreatePrivateSubnetMetadata; toJSON(message: CreatePrivateSubnetMetadata): unknown; fromPartial, never>>(object: I): CreatePrivateSubnetMetadata; }; export declare const UpdatePrivateSubnetRequest: { encode(message: UpdatePrivateSubnetRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): UpdatePrivateSubnetRequest; fromJSON(object: any): UpdatePrivateSubnetRequest; toJSON(message: UpdatePrivateSubnetRequest): unknown; fromPartial, never>) | undefined; } & Record, never>) | undefined; name?: string | undefined; description?: string | undefined; vrfOptionsSpec?: ({ vrfId?: string | undefined; cidr?: string | undefined; dhcpOptions?: { startIp?: string | undefined; endIp?: string | undefined; } | undefined; gatewayIp?: string | undefined; } & { vrfId?: string | undefined; cidr?: string | undefined; dhcpOptions?: ({ startIp?: string | undefined; endIp?: string | undefined; } & { startIp?: string | undefined; endIp?: string | undefined; } & Record, never>) | undefined; gatewayIp?: string | undefined; } & Record, never>) | undefined; labels?: ({ [x: string]: string | undefined; } & { [x: string]: string | undefined; } & Record, never>) | undefined; } & Record, never>>(object: I): UpdatePrivateSubnetRequest; }; export declare const UpdatePrivateSubnetRequest_LabelsEntry: { encode(message: UpdatePrivateSubnetRequest_LabelsEntry, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): UpdatePrivateSubnetRequest_LabelsEntry; fromJSON(object: any): UpdatePrivateSubnetRequest_LabelsEntry; toJSON(message: UpdatePrivateSubnetRequest_LabelsEntry): unknown; fromPartial, never>>(object: I): UpdatePrivateSubnetRequest_LabelsEntry; }; export declare const UpdatePrivateSubnetMetadata: { encode(message: UpdatePrivateSubnetMetadata, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): UpdatePrivateSubnetMetadata; fromJSON(object: any): UpdatePrivateSubnetMetadata; toJSON(message: UpdatePrivateSubnetMetadata): unknown; fromPartial, never>>(object: I): UpdatePrivateSubnetMetadata; }; export declare const DeletePrivateSubnetRequest: { encode(message: DeletePrivateSubnetRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): DeletePrivateSubnetRequest; fromJSON(object: any): DeletePrivateSubnetRequest; toJSON(message: DeletePrivateSubnetRequest): unknown; fromPartial, never>>(object: I): DeletePrivateSubnetRequest; }; export declare const DeletePrivateSubnetMetadata: { encode(message: DeletePrivateSubnetMetadata, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): DeletePrivateSubnetMetadata; fromJSON(object: any): DeletePrivateSubnetMetadata; toJSON(message: DeletePrivateSubnetMetadata): unknown; fromPartial, never>>(object: I): DeletePrivateSubnetMetadata; }; export declare const ListPrivateSubnetOperationsRequest: { encode(message: ListPrivateSubnetOperationsRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): ListPrivateSubnetOperationsRequest; fromJSON(object: any): ListPrivateSubnetOperationsRequest; toJSON(message: ListPrivateSubnetOperationsRequest): unknown; fromPartial, never>>(object: I): ListPrivateSubnetOperationsRequest; }; export declare const ListPrivateSubnetOperationsResponse: { encode(message: ListPrivateSubnetOperationsResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): ListPrivateSubnetOperationsResponse; fromJSON(object: any): ListPrivateSubnetOperationsResponse; toJSON(message: ListPrivateSubnetOperationsResponse): 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): ListPrivateSubnetOperationsResponse; }; /** A set of methods for managing PrivateSubnet resources. */ export declare const PrivateSubnetServiceService: { /** * Returns the specific PrivateSubnet resource. * * To get the list of available PrivateSubnet resources, make a [List] request. */ readonly get: { readonly path: "/yandex.cloud.baremetal.v1alpha.PrivateSubnetService/Get"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: GetPrivateSubnetRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => GetPrivateSubnetRequest; readonly responseSerialize: (value: PrivateSubnet) => Buffer; readonly responseDeserialize: (value: Buffer) => PrivateSubnet; }; /** Retrieves the list of PrivateSubnet resources in the specified folder. */ readonly list: { readonly path: "/yandex.cloud.baremetal.v1alpha.PrivateSubnetService/List"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: ListPrivateSubnetRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => ListPrivateSubnetRequest; readonly responseSerialize: (value: ListPrivateSubnetResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => ListPrivateSubnetResponse; }; /** Creates a private subnet in the specified folder. */ readonly create: { readonly path: "/yandex.cloud.baremetal.v1alpha.PrivateSubnetService/Create"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: CreatePrivateSubnetRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => CreatePrivateSubnetRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; /** Updates the specified private subnet. */ readonly update: { readonly path: "/yandex.cloud.baremetal.v1alpha.PrivateSubnetService/Update"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: UpdatePrivateSubnetRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => UpdatePrivateSubnetRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; /** * Deletes the specified private subnet. * * Deleting a private subnet removes its data permanently and is irreversible. */ readonly delete: { readonly path: "/yandex.cloud.baremetal.v1alpha.PrivateSubnetService/Delete"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: DeletePrivateSubnetRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => DeletePrivateSubnetRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; /** Lists operations for the specified private subnet. */ readonly listOperations: { readonly path: "/yandex.cloud.baremetal.v1alpha.PrivateSubnetService/ListOperations"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: ListPrivateSubnetOperationsRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => ListPrivateSubnetOperationsRequest; readonly responseSerialize: (value: ListPrivateSubnetOperationsResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => ListPrivateSubnetOperationsResponse; }; }; export interface PrivateSubnetServiceServer extends UntypedServiceImplementation { /** * Returns the specific PrivateSubnet resource. * * To get the list of available PrivateSubnet resources, make a [List] request. */ get: handleUnaryCall; /** Retrieves the list of PrivateSubnet resources in the specified folder. */ list: handleUnaryCall; /** Creates a private subnet in the specified folder. */ create: handleUnaryCall; /** Updates the specified private subnet. */ update: handleUnaryCall; /** * Deletes the specified private subnet. * * Deleting a private subnet removes its data permanently and is irreversible. */ delete: handleUnaryCall; /** Lists operations for the specified private subnet. */ listOperations: handleUnaryCall; } export interface PrivateSubnetServiceClient extends Client { /** * Returns the specific PrivateSubnet resource. * * To get the list of available PrivateSubnet resources, make a [List] request. */ get(request: GetPrivateSubnetRequest, callback: (error: ServiceError | null, response: PrivateSubnet) => void): ClientUnaryCall; get(request: GetPrivateSubnetRequest, metadata: Metadata, callback: (error: ServiceError | null, response: PrivateSubnet) => void): ClientUnaryCall; get(request: GetPrivateSubnetRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: PrivateSubnet) => void): ClientUnaryCall; /** Retrieves the list of PrivateSubnet resources in the specified folder. */ list(request: ListPrivateSubnetRequest, callback: (error: ServiceError | null, response: ListPrivateSubnetResponse) => void): ClientUnaryCall; list(request: ListPrivateSubnetRequest, metadata: Metadata, callback: (error: ServiceError | null, response: ListPrivateSubnetResponse) => void): ClientUnaryCall; list(request: ListPrivateSubnetRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: ListPrivateSubnetResponse) => void): ClientUnaryCall; /** Creates a private subnet in the specified folder. */ create(request: CreatePrivateSubnetRequest, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; create(request: CreatePrivateSubnetRequest, metadata: Metadata, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; create(request: CreatePrivateSubnetRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; /** Updates the specified private subnet. */ update(request: UpdatePrivateSubnetRequest, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; update(request: UpdatePrivateSubnetRequest, metadata: Metadata, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; update(request: UpdatePrivateSubnetRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; /** * Deletes the specified private subnet. * * Deleting a private subnet removes its data permanently and is irreversible. */ delete(request: DeletePrivateSubnetRequest, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; delete(request: DeletePrivateSubnetRequest, metadata: Metadata, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; delete(request: DeletePrivateSubnetRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; /** Lists operations for the specified private subnet. */ listOperations(request: ListPrivateSubnetOperationsRequest, callback: (error: ServiceError | null, response: ListPrivateSubnetOperationsResponse) => void): ClientUnaryCall; listOperations(request: ListPrivateSubnetOperationsRequest, metadata: Metadata, callback: (error: ServiceError | null, response: ListPrivateSubnetOperationsResponse) => void): ClientUnaryCall; listOperations(request: ListPrivateSubnetOperationsRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: ListPrivateSubnetOperationsResponse) => void): ClientUnaryCall; } export declare const PrivateSubnetServiceClient: { new (address: string, credentials: ChannelCredentials, options?: Partial): PrivateSubnetServiceClient; service: typeof PrivateSubnetServiceService; }; 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 {};