///
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 { PublicSubnetType, PublicSubnet } from '../../../../yandex/cloud/baremetal/v1alpha/public_subnet';
import { Operation } from '../../../../yandex/cloud/operation/operation';
export declare const protobufPackage = "yandex.cloud.baremetal.v1alpha";
export interface GetPublicSubnetRequest {
/**
* ID of the PublicSubnet resource to return.
*
* To get the public subnet ID use a [PublicSubnetService.List] request.
*/
publicSubnetId: string;
}
export interface ListPublicSubnetRequest {
/**
* ID of the folder to list public 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 [ListPublicSubnetResponse.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
* [ListPublicSubnetResponse.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 ListPublicSubnetResponse {
/** List of PublicSubnet resources. */
publicSubnets: PublicSubnet[];
/**
* Token for getting the next page of the list. If the number of results is greater than
* [ListPublicSubnetRequest.page_size], use `next_page_token` as the value
* for the [ListPublicSubnetRequest.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 CreatePublicSubnetRequest {
/**
* ID of the folder to create a public subnet in.
*
* To get the folder ID, use a [yandex.cloud.resourcemanager.v1.FolderService.List] request.
*/
folderId: string;
/**
* Name of the public subnet.
* The name must be unique within the folder.
*/
name: string;
/** Description of the public subnet. */
description: string;
/**
* IDs of the hardware pool that the public subnet belongs to.
*
* To get a list of available hardware pools, use the [HardwarePoolService.List] request.
*/
hardwarePoolIds: string[];
/** Prefix length of the public subnet CIDR block. */
prefixLength: number;
/** Resource labels as `key:value` pairs. */
labels: {
[key: string]: string;
};
}
export interface CreatePublicSubnetRequest_LabelsEntry {
key: string;
value: string;
}
export interface CreatePublicSubnetMetadata {
/** ID of the public subnet that is being created. */
publicSubnetId: string;
}
export interface UpdatePublicSubnetRequest {
/**
* ID of the PublicSubnet resource to update.
*
* To get the public subnet ID, use a [PublicSubnetService.List] request.
*/
publicSubnetId: string;
/** Field mask that specifies which fields of the PublicSubnet resource are going to be updated. */
updateMask?: FieldMask;
/**
* Name of the public subnet.
* The name must be unique within the folder.
*/
name: string;
/** Description of the public subnet. */
description: string;
/**
* IDs of the hardware pool that the public subnet belongs to.
*
* To get a list of available hardware pools, use the [HardwarePoolService.List] request.
*/
hardwarePoolIds: string[];
type: PublicSubnetType;
/**
* Resource labels as `key:value` pairs.
*
* Existing set of `labels` is completely replaced by the provided set.
*/
labels: {
[key: string]: string;
};
}
export interface UpdatePublicSubnetRequest_LabelsEntry {
key: string;
value: string;
}
export interface UpdatePublicSubnetMetadata {
/** ID of the PublicSubnet resource that is being updated. */
publicSubnetId: string;
}
export interface DeletePublicSubnetRequest {
/**
* ID of the public subnet to delete.
*
* To get the public subnet ID, use a [PublicSubnetService.List] request.
*/
publicSubnetId: string;
}
export interface DeletePublicSubnetMetadata {
/** ID of the PublicSubnet resource that is being deleted. */
publicSubnetId: string;
}
export interface ListPublicSubnetOperationsRequest {
/** ID of the PublicSubnet resource to list operations for. */
publicSubnetId: 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 [ListPublicSubnetResponse.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
* [ListPublicSubnetOperationsResponse.next_page_token] returned by a previous list request.
*/
pageToken: string;
}
export interface ListPublicSubnetOperationsResponse {
/** List of operations for the specified PublicSubnet resource. */
operations: Operation[];
/**
* Token for getting the next page of the list. If the number of results is greater than
* [ListPublicSubnetOperationsRequest.page_size], use `next_page_token` as the value
* for the [ListPublicSubnetOperationsRequest.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 GetPublicSubnetRequest: {
encode(message: GetPublicSubnetRequest, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number): GetPublicSubnetRequest;
fromJSON(object: any): GetPublicSubnetRequest;
toJSON(message: GetPublicSubnetRequest): unknown;
fromPartial, never>>(object: I): GetPublicSubnetRequest;
};
export declare const ListPublicSubnetRequest: {
encode(message: ListPublicSubnetRequest, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number): ListPublicSubnetRequest;
fromJSON(object: any): ListPublicSubnetRequest;
toJSON(message: ListPublicSubnetRequest): unknown;
fromPartial, never>>(object: I): ListPublicSubnetRequest;
};
export declare const ListPublicSubnetResponse: {
encode(message: ListPublicSubnetResponse, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number): ListPublicSubnetResponse;
fromJSON(object: any): ListPublicSubnetResponse;
toJSON(message: ListPublicSubnetResponse): unknown;
fromPartial, never>) | undefined;
type?: PublicSubnetType | undefined;
prefixLength?: number | undefined;
cidr?: string | undefined;
dhcpOptions?: ({
startIp?: string | undefined;
endIp?: string | undefined;
} & {
startIp?: string | undefined;
endIp?: string | undefined;
} & Record, never>) | undefined;
gatewayIp?: string | 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): ListPublicSubnetResponse;
};
export declare const CreatePublicSubnetRequest: {
encode(message: CreatePublicSubnetRequest, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number): CreatePublicSubnetRequest;
fromJSON(object: any): CreatePublicSubnetRequest;
toJSON(message: CreatePublicSubnetRequest): unknown;
fromPartial, never>) | undefined;
prefixLength?: number | undefined;
labels?: ({
[x: string]: string | undefined;
} & {
[x: string]: string | undefined;
} & Record, never>) | undefined;
} & Record, never>>(object: I): CreatePublicSubnetRequest;
};
export declare const CreatePublicSubnetRequest_LabelsEntry: {
encode(message: CreatePublicSubnetRequest_LabelsEntry, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number): CreatePublicSubnetRequest_LabelsEntry;
fromJSON(object: any): CreatePublicSubnetRequest_LabelsEntry;
toJSON(message: CreatePublicSubnetRequest_LabelsEntry): unknown;
fromPartial, never>>(object: I): CreatePublicSubnetRequest_LabelsEntry;
};
export declare const CreatePublicSubnetMetadata: {
encode(message: CreatePublicSubnetMetadata, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number): CreatePublicSubnetMetadata;
fromJSON(object: any): CreatePublicSubnetMetadata;
toJSON(message: CreatePublicSubnetMetadata): unknown;
fromPartial, never>>(object: I): CreatePublicSubnetMetadata;
};
export declare const UpdatePublicSubnetRequest: {
encode(message: UpdatePublicSubnetRequest, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number): UpdatePublicSubnetRequest;
fromJSON(object: any): UpdatePublicSubnetRequest;
toJSON(message: UpdatePublicSubnetRequest): unknown;
fromPartial, never>) | undefined;
} & Record, never>) | undefined;
name?: string | undefined;
description?: string | undefined;
hardwarePoolIds?: (string[] & string[] & Record, never>) | undefined;
type?: PublicSubnetType | undefined;
labels?: ({
[x: string]: string | undefined;
} & {
[x: string]: string | undefined;
} & Record, never>) | undefined;
} & Record, never>>(object: I): UpdatePublicSubnetRequest;
};
export declare const UpdatePublicSubnetRequest_LabelsEntry: {
encode(message: UpdatePublicSubnetRequest_LabelsEntry, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number): UpdatePublicSubnetRequest_LabelsEntry;
fromJSON(object: any): UpdatePublicSubnetRequest_LabelsEntry;
toJSON(message: UpdatePublicSubnetRequest_LabelsEntry): unknown;
fromPartial, never>>(object: I): UpdatePublicSubnetRequest_LabelsEntry;
};
export declare const UpdatePublicSubnetMetadata: {
encode(message: UpdatePublicSubnetMetadata, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number): UpdatePublicSubnetMetadata;
fromJSON(object: any): UpdatePublicSubnetMetadata;
toJSON(message: UpdatePublicSubnetMetadata): unknown;
fromPartial, never>>(object: I): UpdatePublicSubnetMetadata;
};
export declare const DeletePublicSubnetRequest: {
encode(message: DeletePublicSubnetRequest, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number): DeletePublicSubnetRequest;
fromJSON(object: any): DeletePublicSubnetRequest;
toJSON(message: DeletePublicSubnetRequest): unknown;
fromPartial, never>>(object: I): DeletePublicSubnetRequest;
};
export declare const DeletePublicSubnetMetadata: {
encode(message: DeletePublicSubnetMetadata, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number): DeletePublicSubnetMetadata;
fromJSON(object: any): DeletePublicSubnetMetadata;
toJSON(message: DeletePublicSubnetMetadata): unknown;
fromPartial, never>>(object: I): DeletePublicSubnetMetadata;
};
export declare const ListPublicSubnetOperationsRequest: {
encode(message: ListPublicSubnetOperationsRequest, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number): ListPublicSubnetOperationsRequest;
fromJSON(object: any): ListPublicSubnetOperationsRequest;
toJSON(message: ListPublicSubnetOperationsRequest): unknown;
fromPartial, never>>(object: I): ListPublicSubnetOperationsRequest;
};
export declare const ListPublicSubnetOperationsResponse: {
encode(message: ListPublicSubnetOperationsResponse, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number): ListPublicSubnetOperationsResponse;
fromJSON(object: any): ListPublicSubnetOperationsResponse;
toJSON(message: ListPublicSubnetOperationsResponse): 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): ListPublicSubnetOperationsResponse;
};
/** A set of methods for managing PublicSubnet resources. */
export declare const PublicSubnetServiceService: {
/**
* Returns the specific PublicSubnet resource.
*
* To get the list of available PublicSubnet resources, make a [List] request.
*/
readonly get: {
readonly path: "/yandex.cloud.baremetal.v1alpha.PublicSubnetService/Get";
readonly requestStream: false;
readonly responseStream: false;
readonly requestSerialize: (value: GetPublicSubnetRequest) => Buffer;
readonly requestDeserialize: (value: Buffer) => GetPublicSubnetRequest;
readonly responseSerialize: (value: PublicSubnet) => Buffer;
readonly responseDeserialize: (value: Buffer) => PublicSubnet;
};
/** Retrieves the list of PublicSubnet resources in the specified folder. */
readonly list: {
readonly path: "/yandex.cloud.baremetal.v1alpha.PublicSubnetService/List";
readonly requestStream: false;
readonly responseStream: false;
readonly requestSerialize: (value: ListPublicSubnetRequest) => Buffer;
readonly requestDeserialize: (value: Buffer) => ListPublicSubnetRequest;
readonly responseSerialize: (value: ListPublicSubnetResponse) => Buffer;
readonly responseDeserialize: (value: Buffer) => ListPublicSubnetResponse;
};
/** Creates a public subnet in the specified folder. */
readonly create: {
readonly path: "/yandex.cloud.baremetal.v1alpha.PublicSubnetService/Create";
readonly requestStream: false;
readonly responseStream: false;
readonly requestSerialize: (value: CreatePublicSubnetRequest) => Buffer;
readonly requestDeserialize: (value: Buffer) => CreatePublicSubnetRequest;
readonly responseSerialize: (value: Operation) => Buffer;
readonly responseDeserialize: (value: Buffer) => Operation;
};
/** Updates the specified public subnet. */
readonly update: {
readonly path: "/yandex.cloud.baremetal.v1alpha.PublicSubnetService/Update";
readonly requestStream: false;
readonly responseStream: false;
readonly requestSerialize: (value: UpdatePublicSubnetRequest) => Buffer;
readonly requestDeserialize: (value: Buffer) => UpdatePublicSubnetRequest;
readonly responseSerialize: (value: Operation) => Buffer;
readonly responseDeserialize: (value: Buffer) => Operation;
};
/**
* Deletes the specified public subnet.
*
* Deleting a public subnet removes its data permanently and is irreversible.
*/
readonly delete: {
readonly path: "/yandex.cloud.baremetal.v1alpha.PublicSubnetService/Delete";
readonly requestStream: false;
readonly responseStream: false;
readonly requestSerialize: (value: DeletePublicSubnetRequest) => Buffer;
readonly requestDeserialize: (value: Buffer) => DeletePublicSubnetRequest;
readonly responseSerialize: (value: Operation) => Buffer;
readonly responseDeserialize: (value: Buffer) => Operation;
};
/** Lists operations for the specified public subnet. */
readonly listOperations: {
readonly path: "/yandex.cloud.baremetal.v1alpha.PublicSubnetService/ListOperations";
readonly requestStream: false;
readonly responseStream: false;
readonly requestSerialize: (value: ListPublicSubnetOperationsRequest) => Buffer;
readonly requestDeserialize: (value: Buffer) => ListPublicSubnetOperationsRequest;
readonly responseSerialize: (value: ListPublicSubnetOperationsResponse) => Buffer;
readonly responseDeserialize: (value: Buffer) => ListPublicSubnetOperationsResponse;
};
};
export interface PublicSubnetServiceServer extends UntypedServiceImplementation {
/**
* Returns the specific PublicSubnet resource.
*
* To get the list of available PublicSubnet resources, make a [List] request.
*/
get: handleUnaryCall;
/** Retrieves the list of PublicSubnet resources in the specified folder. */
list: handleUnaryCall;
/** Creates a public subnet in the specified folder. */
create: handleUnaryCall;
/** Updates the specified public subnet. */
update: handleUnaryCall;
/**
* Deletes the specified public subnet.
*
* Deleting a public subnet removes its data permanently and is irreversible.
*/
delete: handleUnaryCall;
/** Lists operations for the specified public subnet. */
listOperations: handleUnaryCall;
}
export interface PublicSubnetServiceClient extends Client {
/**
* Returns the specific PublicSubnet resource.
*
* To get the list of available PublicSubnet resources, make a [List] request.
*/
get(request: GetPublicSubnetRequest, callback: (error: ServiceError | null, response: PublicSubnet) => void): ClientUnaryCall;
get(request: GetPublicSubnetRequest, metadata: Metadata, callback: (error: ServiceError | null, response: PublicSubnet) => void): ClientUnaryCall;
get(request: GetPublicSubnetRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: PublicSubnet) => void): ClientUnaryCall;
/** Retrieves the list of PublicSubnet resources in the specified folder. */
list(request: ListPublicSubnetRequest, callback: (error: ServiceError | null, response: ListPublicSubnetResponse) => void): ClientUnaryCall;
list(request: ListPublicSubnetRequest, metadata: Metadata, callback: (error: ServiceError | null, response: ListPublicSubnetResponse) => void): ClientUnaryCall;
list(request: ListPublicSubnetRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: ListPublicSubnetResponse) => void): ClientUnaryCall;
/** Creates a public subnet in the specified folder. */
create(request: CreatePublicSubnetRequest, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall;
create(request: CreatePublicSubnetRequest, metadata: Metadata, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall;
create(request: CreatePublicSubnetRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall;
/** Updates the specified public subnet. */
update(request: UpdatePublicSubnetRequest, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall;
update(request: UpdatePublicSubnetRequest, metadata: Metadata, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall;
update(request: UpdatePublicSubnetRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall;
/**
* Deletes the specified public subnet.
*
* Deleting a public subnet removes its data permanently and is irreversible.
*/
delete(request: DeletePublicSubnetRequest, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall;
delete(request: DeletePublicSubnetRequest, metadata: Metadata, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall;
delete(request: DeletePublicSubnetRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall;
/** Lists operations for the specified public subnet. */
listOperations(request: ListPublicSubnetOperationsRequest, callback: (error: ServiceError | null, response: ListPublicSubnetOperationsResponse) => void): ClientUnaryCall;
listOperations(request: ListPublicSubnetOperationsRequest, metadata: Metadata, callback: (error: ServiceError | null, response: ListPublicSubnetOperationsResponse) => void): ClientUnaryCall;
listOperations(request: ListPublicSubnetOperationsRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: ListPublicSubnetOperationsResponse) => void): ClientUnaryCall;
}
export declare const PublicSubnetServiceClient: {
new (address: string, credentials: ChannelCredentials, options?: Partial): PublicSubnetServiceClient;
service: typeof PublicSubnetServiceService;
};
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