import { Long, unknownFieldsSymbol } from "../../../../runtime/protos/index.js"; import type { MessageDescriptor, MessageFns, EnumInstance, EnumClass } from "../../../../runtime/protos/index.js"; import { customJson } from "../../../../runtime/util/logging.js"; import { ChannelCredentials, Client, ClientUnaryCall, ClientOptions, CallOptions, Metadata, ServiceError as GrpcServiceError, handleUnaryCall, UntypedServiceImplementation } from "@grpc/grpc-js"; import type { SDKInterface } from "../../../../sdk.js"; import { Request as SDKRequestClass, type RetryOptions } from "../../../../runtime/request.js"; import { Operation as OperationWrapper } from "../../../../runtime/operation.js"; import { GetOperationRequest, Operation, OperationService, ResourceMetadata } from "../../common/v1/index.js"; /** Represents the `nebius.vpc.v1.GetAllocationRequest` protobuf message. */ export interface GetAllocationRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.GetAllocationRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the allocation. * */ id: string; } /** Encodes, decodes, converts, and creates {@link GetAllocationRequest} messages. */ export declare const GetAllocationRequest: MessageFns; /** Represents the `nebius.vpc.v1.GetAllocationByNameRequest` protobuf message. */ export interface GetAllocationByNameRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.GetAllocationByNameRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the parent project. * */ parentId: string; /** * Name of the allocation. * */ name: string; } /** Encodes, decodes, converts, and creates {@link GetAllocationByNameRequest} messages. */ export declare const GetAllocationByNameRequest: MessageFns; /** Represents the `nebius.vpc.v1.ListAllocationsRequest` protobuf message. */ export interface ListAllocationsRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.ListAllocationsRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the parent project. * */ parentId: string; /** * Maximum number of allocations to return. * */ pageSize: Long; /** * Token to retrieve the next page of allocations. * */ pageToken: string; } /** Encodes, decodes, converts, and creates {@link ListAllocationsRequest} messages. */ export declare const ListAllocationsRequest: MessageFns; /** Represents the `nebius.vpc.v1.ListAllocationsByPoolRequest` protobuf message. */ export interface ListAllocationsByPoolRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.ListAllocationsByPoolRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the source pool. * */ poolId: string; /** * Maximum number of allocations to return. * */ pageSize: Long; /** * Token to retrieve the next page of allocations. * */ pageToken: string; } /** Encodes, decodes, converts, and creates {@link ListAllocationsByPoolRequest} messages. */ export declare const ListAllocationsByPoolRequest: MessageFns; /** Represents the `nebius.vpc.v1.ListAllocationsBySubnetRequest` protobuf message. */ export interface ListAllocationsBySubnetRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.ListAllocationsBySubnetRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the subnet. * */ subnetId: string; /** * Maximum number of allocations to return. * */ pageSize: Long; /** * Token to retrieve the next page of allocations. * */ pageToken: string; } /** Encodes, decodes, converts, and creates {@link ListAllocationsBySubnetRequest} messages. */ export declare const ListAllocationsBySubnetRequest: MessageFns; /** Represents the `nebius.vpc.v1.ListAllocationsResponse` protobuf message. */ export interface ListAllocationsResponse { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.ListAllocationsResponse"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `items` protobuf field. */ items: Allocation[]; /** Contains the `next_page_token` protobuf field. */ nextPageToken: string; } /** Encodes, decodes, converts, and creates {@link ListAllocationsResponse} messages. */ export declare const ListAllocationsResponse: MessageFns; /** Represents the `nebius.vpc.v1.CreateAllocationRequest` protobuf message. */ export interface CreateAllocationRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.CreateAllocationRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Metadata of the allocation. * */ metadata?: ResourceMetadata | undefined; /** * Specification of the allocation. * */ spec?: AllocationSpec | undefined; } /** Encodes, decodes, converts, and creates {@link CreateAllocationRequest} messages. */ export declare const CreateAllocationRequest: MessageFns; /** Represents the `nebius.vpc.v1.UpdateAllocationRequest` protobuf message. */ export interface UpdateAllocationRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.UpdateAllocationRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Updated metadata of the allocation. * */ metadata?: ResourceMetadata | undefined; /** * Updated specification of the allocation. * */ spec?: AllocationSpec | undefined; } /** Encodes, decodes, converts, and creates {@link UpdateAllocationRequest} messages. */ export declare const UpdateAllocationRequest: MessageFns; /** Represents the `nebius.vpc.v1.DeleteAllocationRequest` protobuf message. */ export interface DeleteAllocationRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.DeleteAllocationRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the allocation. * */ id: string; } /** Encodes, decodes, converts, and creates {@link DeleteAllocationRequest} messages. */ export declare const DeleteAllocationRequest: MessageFns; /** * Defines the gRPC methods for the `nebius.vpc.v1.AllocationService` service. */ export type AllocationServiceServiceDescription = typeof AllocationServiceServiceDescription; /** * Describes the gRPC methods for the `nebius.vpc.v1.AllocationService` service. */ export declare const AllocationServiceServiceDescription: { readonly get: { readonly path: "/nebius.vpc.v1.AllocationService/Get"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: GetAllocationRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => GetAllocationRequest; readonly responseSerialize: (value: Allocation) => Buffer; readonly responseDeserialize: (value: Buffer) => Allocation; }; readonly getByName: { readonly path: "/nebius.vpc.v1.AllocationService/GetByName"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: GetAllocationByNameRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => GetAllocationByNameRequest; readonly responseSerialize: (value: Allocation) => Buffer; readonly responseDeserialize: (value: Buffer) => Allocation; }; readonly list: { readonly path: "/nebius.vpc.v1.AllocationService/List"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: ListAllocationsRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => ListAllocationsRequest; readonly responseSerialize: (value: ListAllocationsResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => ListAllocationsResponse; }; readonly listByPool: { readonly path: "/nebius.vpc.v1.AllocationService/ListByPool"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: ListAllocationsByPoolRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => ListAllocationsByPoolRequest; readonly responseSerialize: (value: ListAllocationsResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => ListAllocationsResponse; }; readonly listBySubnet: { readonly path: "/nebius.vpc.v1.AllocationService/ListBySubnet"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: ListAllocationsBySubnetRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => ListAllocationsBySubnetRequest; readonly responseSerialize: (value: ListAllocationsResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => ListAllocationsResponse; }; readonly create: { readonly path: "/nebius.vpc.v1.AllocationService/Create"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: CreateAllocationRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => CreateAllocationRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; readonly update: { readonly path: "/nebius.vpc.v1.AllocationService/Update"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: UpdateAllocationRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: true; readonly requestDeserialize: (value: Buffer) => UpdateAllocationRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; readonly delete: { readonly path: "/nebius.vpc.v1.AllocationService/Delete"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: DeleteAllocationRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => DeleteAllocationRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; }; /** * Handles server calls for the `nebius.vpc.v1.AllocationService` service. */ export interface AllocationServiceServer extends UntypedServiceImplementation { /** * Retrieves an allocation by its ID. * */ get: handleUnaryCall; /** * Retrieves an allocation by its name within a specified parent. * */ getByName: handleUnaryCall; /** * Lists allocations within a specified parent. * */ list: handleUnaryCall; /** * Lists allocations from a specified pool. * */ listByPool: handleUnaryCall; /** * Lists allocations available to a specified subnet, including unassigned allocations from compatible pools. * */ listBySubnet: handleUnaryCall; /** * Creates a new allocation with the specified configuration. * */ create: handleUnaryCall; /** * Updates an existing allocation with new configuration parameters. * */ update: handleUnaryCall; /** * Deletes an allocation by its ID. * */ delete: handleUnaryCall; } /** * Defines the low-level gRPC client for the `nebius.vpc.v1.AllocationService` service. */ export interface AllocationServiceBaseClient extends Client { /** * Retrieves an allocation by its ID. * */ get(request: GetAllocationRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: Allocation) => void): ClientUnaryCall; /** * Retrieves an allocation by its name within a specified parent. * */ getByName(request: GetAllocationByNameRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: Allocation) => void): ClientUnaryCall; /** * Lists allocations within a specified parent. * */ list(request: ListAllocationsRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: ListAllocationsResponse) => void): ClientUnaryCall; /** * Lists allocations from a specified pool. * */ listByPool(request: ListAllocationsByPoolRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: ListAllocationsResponse) => void): ClientUnaryCall; /** * Lists allocations available to a specified subnet, including unassigned allocations from compatible pools. * */ listBySubnet(request: ListAllocationsBySubnetRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: ListAllocationsResponse) => void): ClientUnaryCall; /** * Creates a new allocation with the specified configuration. * */ create(request: CreateAllocationRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: Operation) => void): ClientUnaryCall; /** * Updates an existing allocation with new configuration parameters. * */ update(request: UpdateAllocationRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: Operation) => void): ClientUnaryCall; /** * Deletes an allocation by its ID. * */ delete(request: DeleteAllocationRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: Operation) => void): ClientUnaryCall; } /** * Creates low-level gRPC clients for the `nebius.vpc.v1.AllocationService` service. */ export declare const AllocationServiceBaseClient: { /** Creates a low-level client for the service address. */ new (address: string, credentials: ChannelCredentials, options?: Partial): AllocationServiceBaseClient; /** Contains the gRPC service description. */ service: typeof AllocationServiceServiceDescription; /** Contains the fully qualified protobuf service name. */ serviceName: string; }; /** * AllocationService provides operations for managing allocations. * */ export interface AllocationService { /** Contains the fully qualified protobuf service name. */ $type: "nebius.vpc.v1.AllocationService"; /** * Retrieves an allocation by its ID. * */ get(request: GetAllocationRequest): SDKRequestClass; /** * Retrieves an allocation by its ID. * */ get(request: GetAllocationRequest, metadata: Metadata): SDKRequestClass; /** * Retrieves an allocation by its ID. * */ get(request: GetAllocationRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Retrieves an allocation by its name within a specified parent. * */ getByName(request: GetAllocationByNameRequest): SDKRequestClass; /** * Retrieves an allocation by its name within a specified parent. * */ getByName(request: GetAllocationByNameRequest, metadata: Metadata): SDKRequestClass; /** * Retrieves an allocation by its name within a specified parent. * */ getByName(request: GetAllocationByNameRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Lists allocations within a specified parent. * */ list(request: ListAllocationsRequest): SDKRequestClass; /** * Lists allocations within a specified parent. * */ list(request: ListAllocationsRequest, metadata: Metadata): SDKRequestClass; /** * Lists allocations within a specified parent. * */ list(request: ListAllocationsRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Lists allocations from a specified pool. * */ listByPool(request: ListAllocationsByPoolRequest): SDKRequestClass; /** * Lists allocations from a specified pool. * */ listByPool(request: ListAllocationsByPoolRequest, metadata: Metadata): SDKRequestClass; /** * Lists allocations from a specified pool. * */ listByPool(request: ListAllocationsByPoolRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Lists allocations available to a specified subnet, including unassigned allocations from compatible pools. * */ listBySubnet(request: ListAllocationsBySubnetRequest): SDKRequestClass; /** * Lists allocations available to a specified subnet, including unassigned allocations from compatible pools. * */ listBySubnet(request: ListAllocationsBySubnetRequest, metadata: Metadata): SDKRequestClass; /** * Lists allocations available to a specified subnet, including unassigned allocations from compatible pools. * */ listBySubnet(request: ListAllocationsBySubnetRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Creates a new allocation with the specified configuration. * */ create(request: CreateAllocationRequest): SDKRequestClass>; /** * Creates a new allocation with the specified configuration. * */ create(request: CreateAllocationRequest, metadata: Metadata): SDKRequestClass>; /** * Creates a new allocation with the specified configuration. * */ create(request: CreateAllocationRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * Updates an existing allocation with new configuration parameters. * */ update(request: UpdateAllocationRequest): SDKRequestClass>; /** * Updates an existing allocation with new configuration parameters. * */ update(request: UpdateAllocationRequest, metadata: Metadata): SDKRequestClass>; /** * Updates an existing allocation with new configuration parameters. * */ update(request: UpdateAllocationRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * Deletes an allocation by its ID. * */ delete(request: DeleteAllocationRequest): SDKRequestClass>; /** * Deletes an allocation by its ID. * */ delete(request: DeleteAllocationRequest, metadata: Metadata): SDKRequestClass>; /** * Deletes an allocation by its ID. * */ delete(request: DeleteAllocationRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; } /** * Calls the `nebius.vpc.v1.AllocationService` service through the Nebius SDK. */ export declare class AllocationService implements AllocationService { private sdk; $type: "nebius.vpc.v1.AllocationService"; private addr; private spec; private apiServiceName; /** Creates a client that uses the SDK service address. */ constructor(sdk: SDKInterface); /** Returns the operation service for this service address. */ getOperationService(): OperationService; /** * Retrieves an allocation by its ID. * */ get(request: GetAllocationRequest): SDKRequestClass; /** * Retrieves an allocation by its ID. * */ get(request: GetAllocationRequest, metadata: Metadata): SDKRequestClass; /** * Retrieves an allocation by its ID. * */ get(request: GetAllocationRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Retrieves an allocation by its name within a specified parent. * */ getByName(request: GetAllocationByNameRequest): SDKRequestClass; /** * Retrieves an allocation by its name within a specified parent. * */ getByName(request: GetAllocationByNameRequest, metadata: Metadata): SDKRequestClass; /** * Retrieves an allocation by its name within a specified parent. * */ getByName(request: GetAllocationByNameRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Lists allocations within a specified parent. * */ list(request: ListAllocationsRequest): SDKRequestClass; /** * Lists allocations within a specified parent. * */ list(request: ListAllocationsRequest, metadata: Metadata): SDKRequestClass; /** * Lists allocations within a specified parent. * */ list(request: ListAllocationsRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Lists allocations from a specified pool. * */ listByPool(request: ListAllocationsByPoolRequest): SDKRequestClass; /** * Lists allocations from a specified pool. * */ listByPool(request: ListAllocationsByPoolRequest, metadata: Metadata): SDKRequestClass; /** * Lists allocations from a specified pool. * */ listByPool(request: ListAllocationsByPoolRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Lists allocations available to a specified subnet, including unassigned allocations from compatible pools. * */ listBySubnet(request: ListAllocationsBySubnetRequest): SDKRequestClass; /** * Lists allocations available to a specified subnet, including unassigned allocations from compatible pools. * */ listBySubnet(request: ListAllocationsBySubnetRequest, metadata: Metadata): SDKRequestClass; /** * Lists allocations available to a specified subnet, including unassigned allocations from compatible pools. * */ listBySubnet(request: ListAllocationsBySubnetRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Creates a new allocation with the specified configuration. * */ create(request: CreateAllocationRequest): SDKRequestClass>; /** * Creates a new allocation with the specified configuration. * */ create(request: CreateAllocationRequest, metadata: Metadata): SDKRequestClass>; /** * Creates a new allocation with the specified configuration. * */ create(request: CreateAllocationRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * Updates an existing allocation with new configuration parameters. * */ update(request: UpdateAllocationRequest): SDKRequestClass>; /** * Updates an existing allocation with new configuration parameters. * */ update(request: UpdateAllocationRequest, metadata: Metadata): SDKRequestClass>; /** * Updates an existing allocation with new configuration parameters. * */ update(request: UpdateAllocationRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * Deletes an allocation by its ID. * */ delete(request: DeleteAllocationRequest): SDKRequestClass>; /** * Deletes an allocation by its ID. * */ delete(request: DeleteAllocationRequest, metadata: Metadata): SDKRequestClass>; /** * Deletes an allocation by its ID. * */ delete(request: DeleteAllocationRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; } /** * Enumeration of possible states of the Allocation. * */ export type AllocationStatus_State = EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "CREATING" | "ALLOCATED" | "ASSIGNED" | "DELETING">; /** Defines the static values of {@link AllocationStatus_State}. */ export interface AllocationStatus_StateValueMembers { /** * Default state, unspecified. */ readonly STATE_UNSPECIFIED: EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "CREATING" | "ALLOCATED" | "ASSIGNED" | "DELETING">; /** * Allocation is being created. */ readonly CREATING: EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "CREATING" | "ALLOCATED" | "ASSIGNED" | "DELETING">; /** * Allocation is ready for use. */ readonly ALLOCATED: EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "CREATING" | "ALLOCATED" | "ASSIGNED" | "DELETING">; /** * Allocation is used. */ readonly ASSIGNED: EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "CREATING" | "ALLOCATED" | "ASSIGNED" | "DELETING">; /** * Allocation is being deleted. */ readonly DELETING: EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "CREATING" | "ALLOCATED" | "ASSIGNED" | "DELETING">; } /** Defines the runtime API for {@link AllocationStatus_State}. */ export type AllocationStatus_StateClass = EnumClass<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "CREATING" | "ALLOCATED" | "ASSIGNED" | "DELETING"> & AllocationStatus_StateValueMembers; /** Converts and creates {@link AllocationStatus_State} values. */ export declare const AllocationStatus_State: AllocationStatus_StateClass; /** * Represents the `nebius.vpc.v1.NetworkInterfaceAssignment.Type` protobuf enum. */ export type NetworkInterfaceAssignment_Type = EnumInstance<"UNRECOGNIZED" | "TYPE_UNSPECIFIED" | "PRIMARY" | "ALIAS" | "PUBLIC">; /** Defines the static values of {@link NetworkInterfaceAssignment_Type}. */ export interface NetworkInterfaceAssignment_TypeValueMembers { /** * Represents the `TYPE_UNSPECIFIED` protobuf enum value. */ readonly TYPE_UNSPECIFIED: EnumInstance<"UNRECOGNIZED" | "TYPE_UNSPECIFIED" | "PRIMARY" | "ALIAS" | "PUBLIC">; /** * Allocation is attached as the interface private IPv4 address. * */ readonly PRIMARY: EnumInstance<"UNRECOGNIZED" | "TYPE_UNSPECIFIED" | "PRIMARY" | "ALIAS" | "PUBLIC">; /** * Allocation is attached as an IP alias. * */ readonly ALIAS: EnumInstance<"UNRECOGNIZED" | "TYPE_UNSPECIFIED" | "PRIMARY" | "ALIAS" | "PUBLIC">; /** * Allocation is attached as the interface public IPv4 address. * */ readonly PUBLIC: EnumInstance<"UNRECOGNIZED" | "TYPE_UNSPECIFIED" | "PRIMARY" | "ALIAS" | "PUBLIC">; } /** Defines the runtime API for {@link NetworkInterfaceAssignment_Type}. */ export type NetworkInterfaceAssignment_TypeClass = EnumClass<"UNRECOGNIZED" | "TYPE_UNSPECIFIED" | "PRIMARY" | "ALIAS" | "PUBLIC"> & NetworkInterfaceAssignment_TypeValueMembers; /** Converts and creates {@link NetworkInterfaceAssignment_Type} values. */ export declare const NetworkInterfaceAssignment_Type: NetworkInterfaceAssignment_TypeClass; /** Represents the `nebius.vpc.v1.Allocation` protobuf message. */ export interface Allocation { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.Allocation"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Metadata for the Allocation. * `metadata.parent_id` represents IAM Container. * */ metadata?: ResourceMetadata | undefined; /** * Specifications for the allocation, detailing its name and IP configuration. * */ spec?: AllocationSpec | undefined; /** * Contains the current status of the allocation, indicating its state and * any additional details. * */ status?: AllocationStatus | undefined; } /** Encodes, decodes, converts, and creates {@link Allocation} messages. */ export declare const Allocation: MessageFns; /** Represents the `nebius.vpc.v1.AllocationSpec` protobuf message. */ export interface AllocationSpec { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.AllocationSpec"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * IP specifications for the allocation. * */ ipSpec?: { $case: "ipv4Private"; ipv4Private: IPv4PrivateAllocationSpec; } | { $case: "ipv4Public"; ipv4Public: IPv4PublicAllocationSpec; } | undefined; } /** Encodes, decodes, converts, and creates {@link AllocationSpec} messages. */ export declare const AllocationSpec: MessageFns; /** * Private IPv4 address configuration for the allocation. * */ export interface IPv4PrivateAllocationSpec { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.IPv4PrivateAllocationSpec"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * A single IP address (e.g 10.1.2.1), a CIDR block (e.g., "10.1.2.0/24") or * a prefix length (e.g., "/32"). * If prefix length is specified, the CIDR block will be auto-allocated from * the available space in the pool or subnet. * If not specified, defaults to "/32". * */ cidr: string; /** * May be changed only from subnet_id to pool_id, and the new pool_id * must be equal to status.details.pool_id. * */ pool?: { $case: "subnetId"; subnetId: string; } | { $case: "poolId"; poolId: string; } | undefined; } /** Encodes, decodes, converts, and creates {@link IPv4PrivateAllocationSpec} messages. */ export declare const IPv4PrivateAllocationSpec: MessageFns; /** * Public IPv4 address configuration for the allocation. * */ export interface IPv4PublicAllocationSpec { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.IPv4PublicAllocationSpec"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * A single IP address (e.g. 1.2.3.4), a CIDR block (e.g., "1.2.3.4/24") * or a prefix length (e.g., "/32"). * If prefix length is specified, the CIDR block will be auto-allocated from * the available space in the pool or subnet. * If not specified, defaults to "/32". * */ cidr: string; /** * May be changed only from subnet_id to pool_id, and the new pool_id * must be equal to status.details.pool_id. * */ pool?: { $case: "subnetId"; subnetId: string; } | { $case: "poolId"; poolId: string; } | undefined; } /** Encodes, decodes, converts, and creates {@link IPv4PublicAllocationSpec} messages. */ export declare const IPv4PublicAllocationSpec: MessageFns; /** Represents the `nebius.vpc.v1.AllocationStatus` protobuf message. */ export interface AllocationStatus { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.AllocationStatus"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * This field represents the current state of the allocation. * */ state: AllocationStatus_State; /** * Detailed information about the allocation status, * including the allocated CIDR, pool ID and IP version. * */ details?: AllocationDetails | undefined; /** * Information about the assignment associated with the allocation, * such as network interface or load balancer assignment. * */ assignment?: Assignment | undefined; /** * If false - Lifecycle of allocation depends on resource that using it. * */ static: boolean; } /** Encodes, decodes, converts, and creates {@link AllocationStatus} messages. */ export declare const AllocationStatus: MessageFns; /** Represents the `nebius.vpc.v1.AllocationDetails` protobuf message. */ export interface AllocationDetails { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.AllocationDetails"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * The actual CIDR block that has been allocated. * */ allocatedCidr: string; /** * ID of the pool from which this allocation was made. * */ poolId: string; /** * The IP version of this allocation (IPv4 or IPv6). * */ version: IpVersion; /** * ID of the subnet associated with this allocation. * Populated when created with explicit subnet_id, from a subnet-specific pool, * or when assigned to a resource. * */ subnetId: string; } /** Encodes, decodes, converts, and creates {@link AllocationDetails} messages. */ export declare const AllocationDetails: MessageFns; /** Represents the `nebius.vpc.v1.Assignment` protobuf message. */ export interface Assignment { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.Assignment"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * This field specifies the type of assignment associated with the allocation, * which could be a network interface or load balancer assignment. * */ type?: { $case: "networkInterface"; networkInterface: NetworkInterfaceAssignment; } | { $case: "loadBalancer"; loadBalancer: LoadBalancerAssignment; } | undefined; } /** Encodes, decodes, converts, and creates {@link Assignment} messages. */ export declare const Assignment: MessageFns; /** Represents the `nebius.vpc.v1.NetworkInterfaceAssignment` protobuf message. */ export interface NetworkInterfaceAssignment { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.NetworkInterfaceAssignment"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the Compute instance network interface belongs to. * */ instanceId: string; /** * Network interface name * */ name: string; /** * Type of allocation attachment on the network interface. * */ type: NetworkInterfaceAssignment_Type; } /** Encodes, decodes, converts, and creates {@link NetworkInterfaceAssignment} messages. */ export declare const NetworkInterfaceAssignment: MessageFns; /** Represents the `nebius.vpc.v1.LoadBalancerAssignment` protobuf message. */ export interface LoadBalancerAssignment { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.LoadBalancerAssignment"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the Load Balancer. * */ id: string; } /** Encodes, decodes, converts, and creates {@link LoadBalancerAssignment} messages. */ export declare const LoadBalancerAssignment: MessageFns; /** Represents the `nebius.vpc.v1.GetNetworkRequest` protobuf message. */ export interface GetNetworkRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.GetNetworkRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the network. * */ id: string; } /** Encodes, decodes, converts, and creates {@link GetNetworkRequest} messages. */ export declare const GetNetworkRequest: MessageFns; /** Represents the `nebius.vpc.v1.GetNetworkByNameRequest` protobuf message. */ export interface GetNetworkByNameRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.GetNetworkByNameRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the parent project. * */ parentId: string; /** * Name of the network. * */ name: string; } /** Encodes, decodes, converts, and creates {@link GetNetworkByNameRequest} messages. */ export declare const GetNetworkByNameRequest: MessageFns; /** Represents the `nebius.vpc.v1.ListNetworksRequest` protobuf message. */ export interface ListNetworksRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.ListNetworksRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the parent project. * */ parentId: string; /** * Maximum number of networks to return. * */ pageSize: Long; /** * Token to retrieve the next page of networks. * */ pageToken: string; } /** Encodes, decodes, converts, and creates {@link ListNetworksRequest} messages. */ export declare const ListNetworksRequest: MessageFns; /** Represents the `nebius.vpc.v1.ListNetworksResponse` protobuf message. */ export interface ListNetworksResponse { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.ListNetworksResponse"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `items` protobuf field. */ items: Network[]; /** Contains the `next_page_token` protobuf field. */ nextPageToken: string; } /** Encodes, decodes, converts, and creates {@link ListNetworksResponse} messages. */ export declare const ListNetworksResponse: MessageFns; /** Represents the `nebius.vpc.v1.CreateNetworkRequest` protobuf message. */ export interface CreateNetworkRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.CreateNetworkRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Metadata of the network. * */ metadata?: ResourceMetadata | undefined; /** * Specification of the network. * */ spec?: NetworkSpec | undefined; } /** Encodes, decodes, converts, and creates {@link CreateNetworkRequest} messages. */ export declare const CreateNetworkRequest: MessageFns; /** Represents the `nebius.vpc.v1.CreateDefaultNetworkRequest` protobuf message. */ export interface CreateDefaultNetworkRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.CreateDefaultNetworkRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Metadata of the default network. * */ metadata?: ResourceMetadata | undefined; } /** Encodes, decodes, converts, and creates {@link CreateDefaultNetworkRequest} messages. */ export declare const CreateDefaultNetworkRequest: MessageFns; /** Represents the `nebius.vpc.v1.UpdateNetworkRequest` protobuf message. */ export interface UpdateNetworkRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.UpdateNetworkRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Updated metadata of the network. * */ metadata?: ResourceMetadata | undefined; /** * Updated specification of the network. * */ spec?: NetworkSpec | undefined; } /** Encodes, decodes, converts, and creates {@link UpdateNetworkRequest} messages. */ export declare const UpdateNetworkRequest: MessageFns; /** Represents the `nebius.vpc.v1.DeleteNetworkRequest` protobuf message. */ export interface DeleteNetworkRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.DeleteNetworkRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the network. * */ id: string; } /** Encodes, decodes, converts, and creates {@link DeleteNetworkRequest} messages. */ export declare const DeleteNetworkRequest: MessageFns; /** * Defines the gRPC methods for the `nebius.vpc.v1.NetworkService` service. */ export type NetworkServiceServiceDescription = typeof NetworkServiceServiceDescription; /** * Describes the gRPC methods for the `nebius.vpc.v1.NetworkService` service. */ export declare const NetworkServiceServiceDescription: { readonly get: { readonly path: "/nebius.vpc.v1.NetworkService/Get"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: GetNetworkRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => GetNetworkRequest; readonly responseSerialize: (value: Network) => Buffer; readonly responseDeserialize: (value: Buffer) => Network; }; readonly getByName: { readonly path: "/nebius.vpc.v1.NetworkService/GetByName"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: GetNetworkByNameRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => GetNetworkByNameRequest; readonly responseSerialize: (value: Network) => Buffer; readonly responseDeserialize: (value: Buffer) => Network; }; readonly list: { readonly path: "/nebius.vpc.v1.NetworkService/List"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: ListNetworksRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => ListNetworksRequest; readonly responseSerialize: (value: ListNetworksResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => ListNetworksResponse; }; readonly create: { readonly path: "/nebius.vpc.v1.NetworkService/Create"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: CreateNetworkRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => CreateNetworkRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; readonly createDefault: { readonly path: "/nebius.vpc.v1.NetworkService/CreateDefault"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: CreateDefaultNetworkRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => CreateDefaultNetworkRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; readonly update: { readonly path: "/nebius.vpc.v1.NetworkService/Update"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: UpdateNetworkRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: true; readonly requestDeserialize: (value: Buffer) => UpdateNetworkRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; readonly delete: { readonly path: "/nebius.vpc.v1.NetworkService/Delete"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: DeleteNetworkRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => DeleteNetworkRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; }; /** * Handles server calls for the `nebius.vpc.v1.NetworkService` service. */ export interface NetworkServiceServer extends UntypedServiceImplementation { /** * Retrieves a network by its ID. * */ get: handleUnaryCall; /** * Retrieves a network by its name within a specified parent. * */ getByName: handleUnaryCall; /** * Lists networks within a specified parent. * */ list: handleUnaryCall; /** * Creates a new network with the specified configuration. * */ create: handleUnaryCall; /** * Creates a default network, subnet, pools, and route table for a specified project. * Creates a default security group when that feature is enabled for the project. * */ createDefault: handleUnaryCall; /** * Updates an existing network with new configuration parameters. * */ update: handleUnaryCall; /** * Deletes a network by its ID. * */ delete: handleUnaryCall; } /** * Defines the low-level gRPC client for the `nebius.vpc.v1.NetworkService` service. */ export interface NetworkServiceBaseClient extends Client { /** * Retrieves a network by its ID. * */ get(request: GetNetworkRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: Network) => void): ClientUnaryCall; /** * Retrieves a network by its name within a specified parent. * */ getByName(request: GetNetworkByNameRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: Network) => void): ClientUnaryCall; /** * Lists networks within a specified parent. * */ list(request: ListNetworksRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: ListNetworksResponse) => void): ClientUnaryCall; /** * Creates a new network with the specified configuration. * */ create(request: CreateNetworkRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: Operation) => void): ClientUnaryCall; /** * Creates a default network, subnet, pools, and route table for a specified project. * Creates a default security group when that feature is enabled for the project. * */ createDefault(request: CreateDefaultNetworkRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: Operation) => void): ClientUnaryCall; /** * Updates an existing network with new configuration parameters. * */ update(request: UpdateNetworkRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: Operation) => void): ClientUnaryCall; /** * Deletes a network by its ID. * */ delete(request: DeleteNetworkRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: Operation) => void): ClientUnaryCall; } /** * Creates low-level gRPC clients for the `nebius.vpc.v1.NetworkService` service. */ export declare const NetworkServiceBaseClient: { /** Creates a low-level client for the service address. */ new (address: string, credentials: ChannelCredentials, options?: Partial): NetworkServiceBaseClient; /** Contains the gRPC service description. */ service: typeof NetworkServiceServiceDescription; /** Contains the fully qualified protobuf service name. */ serviceName: string; }; /** * NetworkService provides operations for managing networks. * */ export interface NetworkService { /** Contains the fully qualified protobuf service name. */ $type: "nebius.vpc.v1.NetworkService"; /** * Retrieves a network by its ID. * */ get(request: GetNetworkRequest): SDKRequestClass; /** * Retrieves a network by its ID. * */ get(request: GetNetworkRequest, metadata: Metadata): SDKRequestClass; /** * Retrieves a network by its ID. * */ get(request: GetNetworkRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Retrieves a network by its name within a specified parent. * */ getByName(request: GetNetworkByNameRequest): SDKRequestClass; /** * Retrieves a network by its name within a specified parent. * */ getByName(request: GetNetworkByNameRequest, metadata: Metadata): SDKRequestClass; /** * Retrieves a network by its name within a specified parent. * */ getByName(request: GetNetworkByNameRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Lists networks within a specified parent. * */ list(request: ListNetworksRequest): SDKRequestClass; /** * Lists networks within a specified parent. * */ list(request: ListNetworksRequest, metadata: Metadata): SDKRequestClass; /** * Lists networks within a specified parent. * */ list(request: ListNetworksRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Creates a new network with the specified configuration. * */ create(request: CreateNetworkRequest): SDKRequestClass>; /** * Creates a new network with the specified configuration. * */ create(request: CreateNetworkRequest, metadata: Metadata): SDKRequestClass>; /** * Creates a new network with the specified configuration. * */ create(request: CreateNetworkRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * Creates a default network, subnet, pools, and route table for a specified project. * Creates a default security group when that feature is enabled for the project. * */ createDefault(request: CreateDefaultNetworkRequest): SDKRequestClass>; /** * Creates a default network, subnet, pools, and route table for a specified project. * Creates a default security group when that feature is enabled for the project. * */ createDefault(request: CreateDefaultNetworkRequest, metadata: Metadata): SDKRequestClass>; /** * Creates a default network, subnet, pools, and route table for a specified project. * Creates a default security group when that feature is enabled for the project. * */ createDefault(request: CreateDefaultNetworkRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * Updates an existing network with new configuration parameters. * */ update(request: UpdateNetworkRequest): SDKRequestClass>; /** * Updates an existing network with new configuration parameters. * */ update(request: UpdateNetworkRequest, metadata: Metadata): SDKRequestClass>; /** * Updates an existing network with new configuration parameters. * */ update(request: UpdateNetworkRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * Deletes a network by its ID. * */ delete(request: DeleteNetworkRequest): SDKRequestClass>; /** * Deletes a network by its ID. * */ delete(request: DeleteNetworkRequest, metadata: Metadata): SDKRequestClass>; /** * Deletes a network by its ID. * */ delete(request: DeleteNetworkRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; } /** * Calls the `nebius.vpc.v1.NetworkService` service through the Nebius SDK. */ export declare class NetworkService implements NetworkService { private sdk; $type: "nebius.vpc.v1.NetworkService"; private addr; private spec; private apiServiceName; /** Creates a client that uses the SDK service address. */ constructor(sdk: SDKInterface); /** Returns the operation service for this service address. */ getOperationService(): OperationService; /** * Retrieves a network by its ID. * */ get(request: GetNetworkRequest): SDKRequestClass; /** * Retrieves a network by its ID. * */ get(request: GetNetworkRequest, metadata: Metadata): SDKRequestClass; /** * Retrieves a network by its ID. * */ get(request: GetNetworkRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Retrieves a network by its name within a specified parent. * */ getByName(request: GetNetworkByNameRequest): SDKRequestClass; /** * Retrieves a network by its name within a specified parent. * */ getByName(request: GetNetworkByNameRequest, metadata: Metadata): SDKRequestClass; /** * Retrieves a network by its name within a specified parent. * */ getByName(request: GetNetworkByNameRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Lists networks within a specified parent. * */ list(request: ListNetworksRequest): SDKRequestClass; /** * Lists networks within a specified parent. * */ list(request: ListNetworksRequest, metadata: Metadata): SDKRequestClass; /** * Lists networks within a specified parent. * */ list(request: ListNetworksRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Creates a new network with the specified configuration. * */ create(request: CreateNetworkRequest): SDKRequestClass>; /** * Creates a new network with the specified configuration. * */ create(request: CreateNetworkRequest, metadata: Metadata): SDKRequestClass>; /** * Creates a new network with the specified configuration. * */ create(request: CreateNetworkRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * Creates a default network, subnet, pools, and route table for a specified project. * Creates a default security group when that feature is enabled for the project. * */ createDefault(request: CreateDefaultNetworkRequest): SDKRequestClass>; /** * Creates a default network, subnet, pools, and route table for a specified project. * Creates a default security group when that feature is enabled for the project. * */ createDefault(request: CreateDefaultNetworkRequest, metadata: Metadata): SDKRequestClass>; /** * Creates a default network, subnet, pools, and route table for a specified project. * Creates a default security group when that feature is enabled for the project. * */ createDefault(request: CreateDefaultNetworkRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * Updates an existing network with new configuration parameters. * */ update(request: UpdateNetworkRequest): SDKRequestClass>; /** * Updates an existing network with new configuration parameters. * */ update(request: UpdateNetworkRequest, metadata: Metadata): SDKRequestClass>; /** * Updates an existing network with new configuration parameters. * */ update(request: UpdateNetworkRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * Deletes a network by its ID. * */ delete(request: DeleteNetworkRequest): SDKRequestClass>; /** * Deletes a network by its ID. * */ delete(request: DeleteNetworkRequest, metadata: Metadata): SDKRequestClass>; /** * Deletes a network by its ID. * */ delete(request: DeleteNetworkRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; } /** * Enumeration of possible states of the network. * */ export type NetworkStatus_State = EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "CREATING" | "READY" | "DELETING">; /** Defines the static values of {@link NetworkStatus_State}. */ export interface NetworkStatus_StateValueMembers { /** * Default state, unspecified. */ readonly STATE_UNSPECIFIED: EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "CREATING" | "READY" | "DELETING">; /** * Network is being created. */ readonly CREATING: EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "CREATING" | "READY" | "DELETING">; /** * Network is ready for use. */ readonly READY: EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "CREATING" | "READY" | "DELETING">; /** * Network is being deleted. */ readonly DELETING: EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "CREATING" | "READY" | "DELETING">; } /** Defines the runtime API for {@link NetworkStatus_State}. */ export type NetworkStatus_StateClass = EnumClass<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "CREATING" | "READY" | "DELETING"> & NetworkStatus_StateValueMembers; /** Converts and creates {@link NetworkStatus_State} values. */ export declare const NetworkStatus_State: NetworkStatus_StateClass; /** * Defines a Network, which serves as a virtual representation of a traditional LAN * within a cloud environment. * Networks facilitate communication between subnets. * */ export interface Network { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.Network"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Metadata for the network resource. * `metadata.parent_id` represents IAM container * */ metadata?: ResourceMetadata | undefined; /** * Specification of the network. * */ spec?: NetworkSpec | undefined; /** * Status of the network. * */ status?: NetworkStatus | undefined; } /** Encodes, decodes, converts, and creates {@link Network} messages. */ export declare const Network: MessageFns; /** Represents the `nebius.vpc.v1.NetworkSpec` protobuf message. */ export interface NetworkSpec { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.NetworkSpec"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Pools for private IPv4 addresses. * Default private pools will be created if not specified. * Default private pools are referred here * https://docs.nebius.com/vpc/addressing/available-addresses * */ ipv4PrivatePools?: IPv4PrivateNetworkPools | undefined; /** * Pools for public IPv4 addresses. * Default public pool will be used if not specified. * */ ipv4PublicPools?: IPv4PublicNetworkPools | undefined; } /** Encodes, decodes, converts, and creates {@link NetworkSpec} messages. */ export declare const NetworkSpec: MessageFns; /** Represents the `nebius.vpc.v1.IPv4PrivateNetworkPools` protobuf message. */ export interface IPv4PrivateNetworkPools { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.IPv4PrivateNetworkPools"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `pools` protobuf field. */ pools: NetworkPool[]; } /** Encodes, decodes, converts, and creates {@link IPv4PrivateNetworkPools} messages. */ export declare const IPv4PrivateNetworkPools: MessageFns; /** Represents the `nebius.vpc.v1.IPv4PublicNetworkPools` protobuf message. */ export interface IPv4PublicNetworkPools { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.IPv4PublicNetworkPools"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `pools` protobuf field. */ pools: NetworkPool[]; } /** Encodes, decodes, converts, and creates {@link IPv4PublicNetworkPools} messages. */ export declare const IPv4PublicNetworkPools: MessageFns; /** Represents the `nebius.vpc.v1.NetworkPool` protobuf message. */ export interface NetworkPool { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.NetworkPool"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the pool. * */ id: string; } /** Encodes, decodes, converts, and creates {@link NetworkPool} messages. */ export declare const NetworkPool: MessageFns; /** Represents the `nebius.vpc.v1.NetworkStatus` protobuf message. */ export interface NetworkStatus { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.NetworkStatus"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Current state of the network. * */ state: NetworkStatus_State; /** * ID of the network's default route table. * */ defaultRouteTableId: string; } /** Encodes, decodes, converts, and creates {@link NetworkStatus} messages. */ export declare const NetworkStatus: MessageFns; /** Represents the `nebius.vpc.v1.GetPoolRequest` protobuf message. */ export interface GetPoolRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.GetPoolRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the pool. * */ id: string; } /** Encodes, decodes, converts, and creates {@link GetPoolRequest} messages. */ export declare const GetPoolRequest: MessageFns; /** Represents the `nebius.vpc.v1.GetPoolByNameRequest` protobuf message. */ export interface GetPoolByNameRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.GetPoolByNameRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the parent project. * */ parentId: string; /** * Name of the pool. * */ name: string; } /** Encodes, decodes, converts, and creates {@link GetPoolByNameRequest} messages. */ export declare const GetPoolByNameRequest: MessageFns; /** Represents the `nebius.vpc.v1.ListPoolsRequest` protobuf message. */ export interface ListPoolsRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.ListPoolsRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the parent project. * */ parentId: string; /** * Maximum number of pools to return. * */ pageSize: Long; /** * Token to retrieve the next page of pools. * */ pageToken: string; } /** Encodes, decodes, converts, and creates {@link ListPoolsRequest} messages. */ export declare const ListPoolsRequest: MessageFns; /** Represents the `nebius.vpc.v1.ListPoolsBySourcePoolRequest` protobuf message. */ export interface ListPoolsBySourcePoolRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.ListPoolsBySourcePoolRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the source pool. * */ poolId: string; /** * Maximum number of pools to return. * */ pageSize: Long; /** * Token to retrieve the next page of pools. * */ pageToken: string; } /** Encodes, decodes, converts, and creates {@link ListPoolsBySourcePoolRequest} messages. */ export declare const ListPoolsBySourcePoolRequest: MessageFns; /** Represents the `nebius.vpc.v1.ListPoolsResponse` protobuf message. */ export interface ListPoolsResponse { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.ListPoolsResponse"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `items` protobuf field. */ items: Pool[]; /** Contains the `next_page_token` protobuf field. */ nextPageToken: string; } /** Encodes, decodes, converts, and creates {@link ListPoolsResponse} messages. */ export declare const ListPoolsResponse: MessageFns; /** Represents the `nebius.vpc.v1.CreatePoolRequest` protobuf message. */ export interface CreatePoolRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.CreatePoolRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Metadata of the pool. * */ metadata?: ResourceMetadata | undefined; /** * Specification of the pool. * */ spec?: PoolSpec | undefined; } /** Encodes, decodes, converts, and creates {@link CreatePoolRequest} messages. */ export declare const CreatePoolRequest: MessageFns; /** Represents the `nebius.vpc.v1.UpdatePoolRequest` protobuf message. */ export interface UpdatePoolRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.UpdatePoolRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Updated metadata of the pool. * */ metadata?: ResourceMetadata | undefined; /** * Updated specification of the pool. * */ spec?: PoolSpec | undefined; } /** Encodes, decodes, converts, and creates {@link UpdatePoolRequest} messages. */ export declare const UpdatePoolRequest: MessageFns; /** Represents the `nebius.vpc.v1.DeletePoolRequest` protobuf message. */ export interface DeletePoolRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.DeletePoolRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the pool. * */ id: string; } /** Encodes, decodes, converts, and creates {@link DeletePoolRequest} messages. */ export declare const DeletePoolRequest: MessageFns; /** * Defines the gRPC methods for the `nebius.vpc.v1.PoolService` service. */ export type PoolServiceServiceDescription = typeof PoolServiceServiceDescription; /** * Describes the gRPC methods for the `nebius.vpc.v1.PoolService` service. */ export declare const PoolServiceServiceDescription: { readonly get: { readonly path: "/nebius.vpc.v1.PoolService/Get"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: GetPoolRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => GetPoolRequest; readonly responseSerialize: (value: Pool) => Buffer; readonly responseDeserialize: (value: Buffer) => Pool; }; readonly getByName: { readonly path: "/nebius.vpc.v1.PoolService/GetByName"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: GetPoolByNameRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => GetPoolByNameRequest; readonly responseSerialize: (value: Pool) => Buffer; readonly responseDeserialize: (value: Buffer) => Pool; }; readonly list: { readonly path: "/nebius.vpc.v1.PoolService/List"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: ListPoolsRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => ListPoolsRequest; readonly responseSerialize: (value: ListPoolsResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => ListPoolsResponse; }; readonly listBySourcePool: { readonly path: "/nebius.vpc.v1.PoolService/ListBySourcePool"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: ListPoolsBySourcePoolRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => ListPoolsBySourcePoolRequest; readonly responseSerialize: (value: ListPoolsResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => ListPoolsResponse; }; readonly create: { readonly path: "/nebius.vpc.v1.PoolService/Create"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: CreatePoolRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => CreatePoolRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; readonly update: { readonly path: "/nebius.vpc.v1.PoolService/Update"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: UpdatePoolRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: true; readonly requestDeserialize: (value: Buffer) => UpdatePoolRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; readonly delete: { readonly path: "/nebius.vpc.v1.PoolService/Delete"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: DeletePoolRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => DeletePoolRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; }; /** * Handles server calls for the `nebius.vpc.v1.PoolService` service. */ export interface PoolServiceServer extends UntypedServiceImplementation { /** * Retrieves a pool by its ID. * */ get: handleUnaryCall; /** * Retrieves a pool by its name within a specified parent. * */ getByName: handleUnaryCall; /** * Lists pools within a specified parent. * */ list: handleUnaryCall; /** * Lists pools that use a specified pool as their source. * */ listBySourcePool: handleUnaryCall; /** * Creates a new pool with the specified configuration. * */ create: handleUnaryCall; /** * Updates an existing pool with new configuration parameters. * */ update: handleUnaryCall; /** * Deletes a pool by its ID. * */ delete: handleUnaryCall; } /** * Defines the low-level gRPC client for the `nebius.vpc.v1.PoolService` service. */ export interface PoolServiceBaseClient extends Client { /** * Retrieves a pool by its ID. * */ get(request: GetPoolRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: Pool) => void): ClientUnaryCall; /** * Retrieves a pool by its name within a specified parent. * */ getByName(request: GetPoolByNameRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: Pool) => void): ClientUnaryCall; /** * Lists pools within a specified parent. * */ list(request: ListPoolsRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: ListPoolsResponse) => void): ClientUnaryCall; /** * Lists pools that use a specified pool as their source. * */ listBySourcePool(request: ListPoolsBySourcePoolRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: ListPoolsResponse) => void): ClientUnaryCall; /** * Creates a new pool with the specified configuration. * */ create(request: CreatePoolRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: Operation) => void): ClientUnaryCall; /** * Updates an existing pool with new configuration parameters. * */ update(request: UpdatePoolRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: Operation) => void): ClientUnaryCall; /** * Deletes a pool by its ID. * */ delete(request: DeletePoolRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: Operation) => void): ClientUnaryCall; } /** * Creates low-level gRPC clients for the `nebius.vpc.v1.PoolService` service. */ export declare const PoolServiceBaseClient: { /** Creates a low-level client for the service address. */ new (address: string, credentials: ChannelCredentials, options?: Partial): PoolServiceBaseClient; /** Contains the gRPC service description. */ service: typeof PoolServiceServiceDescription; /** Contains the fully qualified protobuf service name. */ serviceName: string; }; /** * PoolService provides operations for managing pools. * */ export interface PoolService { /** Contains the fully qualified protobuf service name. */ $type: "nebius.vpc.v1.PoolService"; /** * Retrieves a pool by its ID. * */ get(request: GetPoolRequest): SDKRequestClass; /** * Retrieves a pool by its ID. * */ get(request: GetPoolRequest, metadata: Metadata): SDKRequestClass; /** * Retrieves a pool by its ID. * */ get(request: GetPoolRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Retrieves a pool by its name within a specified parent. * */ getByName(request: GetPoolByNameRequest): SDKRequestClass; /** * Retrieves a pool by its name within a specified parent. * */ getByName(request: GetPoolByNameRequest, metadata: Metadata): SDKRequestClass; /** * Retrieves a pool by its name within a specified parent. * */ getByName(request: GetPoolByNameRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Lists pools within a specified parent. * */ list(request: ListPoolsRequest): SDKRequestClass; /** * Lists pools within a specified parent. * */ list(request: ListPoolsRequest, metadata: Metadata): SDKRequestClass; /** * Lists pools within a specified parent. * */ list(request: ListPoolsRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Lists pools that use a specified pool as their source. * */ listBySourcePool(request: ListPoolsBySourcePoolRequest): SDKRequestClass; /** * Lists pools that use a specified pool as their source. * */ listBySourcePool(request: ListPoolsBySourcePoolRequest, metadata: Metadata): SDKRequestClass; /** * Lists pools that use a specified pool as their source. * */ listBySourcePool(request: ListPoolsBySourcePoolRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Creates a new pool with the specified configuration. * */ create(request: CreatePoolRequest): SDKRequestClass>; /** * Creates a new pool with the specified configuration. * */ create(request: CreatePoolRequest, metadata: Metadata): SDKRequestClass>; /** * Creates a new pool with the specified configuration. * */ create(request: CreatePoolRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * Updates an existing pool with new configuration parameters. * */ update(request: UpdatePoolRequest): SDKRequestClass>; /** * Updates an existing pool with new configuration parameters. * */ update(request: UpdatePoolRequest, metadata: Metadata): SDKRequestClass>; /** * Updates an existing pool with new configuration parameters. * */ update(request: UpdatePoolRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * Deletes a pool by its ID. * */ delete(request: DeletePoolRequest): SDKRequestClass>; /** * Deletes a pool by its ID. * */ delete(request: DeletePoolRequest, metadata: Metadata): SDKRequestClass>; /** * Deletes a pool by its ID. * */ delete(request: DeletePoolRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; } /** * Calls the `nebius.vpc.v1.PoolService` service through the Nebius SDK. */ export declare class PoolService implements PoolService { private sdk; $type: "nebius.vpc.v1.PoolService"; private addr; private spec; private apiServiceName; /** Creates a client that uses the SDK service address. */ constructor(sdk: SDKInterface); /** Returns the operation service for this service address. */ getOperationService(): OperationService; /** * Retrieves a pool by its ID. * */ get(request: GetPoolRequest): SDKRequestClass; /** * Retrieves a pool by its ID. * */ get(request: GetPoolRequest, metadata: Metadata): SDKRequestClass; /** * Retrieves a pool by its ID. * */ get(request: GetPoolRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Retrieves a pool by its name within a specified parent. * */ getByName(request: GetPoolByNameRequest): SDKRequestClass; /** * Retrieves a pool by its name within a specified parent. * */ getByName(request: GetPoolByNameRequest, metadata: Metadata): SDKRequestClass; /** * Retrieves a pool by its name within a specified parent. * */ getByName(request: GetPoolByNameRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Lists pools within a specified parent. * */ list(request: ListPoolsRequest): SDKRequestClass; /** * Lists pools within a specified parent. * */ list(request: ListPoolsRequest, metadata: Metadata): SDKRequestClass; /** * Lists pools within a specified parent. * */ list(request: ListPoolsRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Lists pools that use a specified pool as their source. * */ listBySourcePool(request: ListPoolsBySourcePoolRequest): SDKRequestClass; /** * Lists pools that use a specified pool as their source. * */ listBySourcePool(request: ListPoolsBySourcePoolRequest, metadata: Metadata): SDKRequestClass; /** * Lists pools that use a specified pool as their source. * */ listBySourcePool(request: ListPoolsBySourcePoolRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Creates a new pool with the specified configuration. * */ create(request: CreatePoolRequest): SDKRequestClass>; /** * Creates a new pool with the specified configuration. * */ create(request: CreatePoolRequest, metadata: Metadata): SDKRequestClass>; /** * Creates a new pool with the specified configuration. * */ create(request: CreatePoolRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * Updates an existing pool with new configuration parameters. * */ update(request: UpdatePoolRequest): SDKRequestClass>; /** * Updates an existing pool with new configuration parameters. * */ update(request: UpdatePoolRequest, metadata: Metadata): SDKRequestClass>; /** * Updates an existing pool with new configuration parameters. * */ update(request: UpdatePoolRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * Deletes a pool by its ID. * */ delete(request: DeletePoolRequest): SDKRequestClass>; /** * Deletes a pool by its ID. * */ delete(request: DeletePoolRequest, metadata: Metadata): SDKRequestClass>; /** * Deletes a pool by its ID. * */ delete(request: DeletePoolRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; } /** * Controls provisioning of IP addresses from this pool to other pools * or allocations. Defaults to AVAILABLE. * */ export type AddressBlockState = EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "AVAILABLE" | "DISABLED">; /** Defines the static values of {@link AddressBlockState}. */ export interface AddressBlockStateValueMembers { /** * Not used, mandated by the protocol. */ readonly STATE_UNSPECIFIED: EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "AVAILABLE" | "DISABLED">; /** * Default state. Provision of the IP addresses from this CIDR block is allowed. */ readonly AVAILABLE: EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "AVAILABLE" | "DISABLED">; /** * Provision of the IP addresses from this CIDR block is denied. */ readonly DISABLED: EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "AVAILABLE" | "DISABLED">; } /** Defines the runtime API for {@link AddressBlockState}. */ export type AddressBlockStateClass = EnumClass<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "AVAILABLE" | "DISABLED"> & AddressBlockStateValueMembers; /** Converts and creates {@link AddressBlockState} values. */ export declare const AddressBlockState: AddressBlockStateClass; /** * Represents the `nebius.vpc.v1.IpVersion` protobuf enum. */ export type IpVersion = EnumInstance<"UNRECOGNIZED" | "IP_VERSION_UNSPECIFIED" | "IPV4" | "IPV6">; /** Defines the static values of {@link IpVersion}. */ export interface IpVersionValueMembers { /** * Default, unspecified IP version. */ readonly IP_VERSION_UNSPECIFIED: EnumInstance<"UNRECOGNIZED" | "IP_VERSION_UNSPECIFIED" | "IPV4" | "IPV6">; /** * IPv4 address. */ readonly IPV4: EnumInstance<"UNRECOGNIZED" | "IP_VERSION_UNSPECIFIED" | "IPV4" | "IPV6">; /** * IPv6 address. */ readonly IPV6: EnumInstance<"UNRECOGNIZED" | "IP_VERSION_UNSPECIFIED" | "IPV4" | "IPV6">; } /** Defines the runtime API for {@link IpVersion}. */ export type IpVersionClass = EnumClass<"UNRECOGNIZED" | "IP_VERSION_UNSPECIFIED" | "IPV4" | "IPV6"> & IpVersionValueMembers; /** Converts and creates {@link IpVersion} values. */ export declare const IpVersion: IpVersionClass; /** * Represents the `nebius.vpc.v1.IpVisibility` protobuf enum. */ export type IpVisibility = EnumInstance<"UNRECOGNIZED" | "IP_VISIBILITY_UNSPECIFIED" | "PRIVATE" | "PUBLIC">; /** Defines the static values of {@link IpVisibility}. */ export interface IpVisibilityValueMembers { /** * Default, unspecified IP visibility. */ readonly IP_VISIBILITY_UNSPECIFIED: EnumInstance<"UNRECOGNIZED" | "IP_VISIBILITY_UNSPECIFIED" | "PRIVATE" | "PUBLIC">; /** * Private address. */ readonly PRIVATE: EnumInstance<"UNRECOGNIZED" | "IP_VISIBILITY_UNSPECIFIED" | "PRIVATE" | "PUBLIC">; /** * Public address. */ readonly PUBLIC: EnumInstance<"UNRECOGNIZED" | "IP_VISIBILITY_UNSPECIFIED" | "PRIVATE" | "PUBLIC">; } /** Defines the runtime API for {@link IpVisibility}. */ export type IpVisibilityClass = EnumClass<"UNRECOGNIZED" | "IP_VISIBILITY_UNSPECIFIED" | "PRIVATE" | "PUBLIC"> & IpVisibilityValueMembers; /** Converts and creates {@link IpVisibility} values. */ export declare const IpVisibility: IpVisibilityClass; /** * Possible states of the Pool. * */ export type PoolStatus_State = EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "CREATING" | "READY" | "DELETING">; /** Defines the static values of {@link PoolStatus_State}. */ export interface PoolStatus_StateValueMembers { /** * Default, unspecified state. */ readonly STATE_UNSPECIFIED: EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "CREATING" | "READY" | "DELETING">; /** * Pool is being created. */ readonly CREATING: EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "CREATING" | "READY" | "DELETING">; /** * Pool is ready for use. */ readonly READY: EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "CREATING" | "READY" | "DELETING">; /** * Pool is being deleted. */ readonly DELETING: EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "CREATING" | "READY" | "DELETING">; } /** Defines the runtime API for {@link PoolStatus_State}. */ export type PoolStatus_StateClass = EnumClass<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "CREATING" | "READY" | "DELETING"> & PoolStatus_StateValueMembers; /** Converts and creates {@link PoolStatus_State} values. */ export declare const PoolStatus_State: PoolStatus_StateClass; /** Represents the `nebius.vpc.v1.Pool` protobuf message. */ export interface Pool { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.Pool"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Metadata associated with the Pool. * `metadata.parent_id` represents the Project. * */ metadata?: ResourceMetadata | undefined; /** * Specification of the Pool. * */ spec?: PoolSpec | undefined; /** * Status information for the Pool. * */ status?: PoolStatus | undefined; } /** Encodes, decodes, converts, and creates {@link Pool} messages. */ export declare const Pool: MessageFns; /** Represents the `nebius.vpc.v1.PoolSpec` protobuf message. */ export interface PoolSpec { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.PoolSpec"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the source pool. * CIDR blocks of a pool must be within the range defined by its source pool. * */ sourcePoolId: string; /** * IP version of the pool. * */ version: IpVersion; /** * Configures whether the pool is private or public. * Only public pools IP addresses are routable in the Internet. * */ visibility: IpVisibility; /** * CIDR blocks defined by the pool. * */ cidrs: PoolCidr[]; } /** Encodes, decodes, converts, and creates {@link PoolSpec} messages. */ export declare const PoolSpec: MessageFns; /** Represents the `nebius.vpc.v1.PoolCidr` protobuf message. */ export interface PoolCidr { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.PoolCidr"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * A CIDR block (e.g., "10.1.2.0/24") or a prefix length (e.g., "/24"). * If prefix length is specified, the CIDR block will be auto-allocated from * the available space in the parent pool. * */ cidr: string; /** * Controls provisioning of IP addresses from the CIDR block to other pools * or allocations. Defaults to AVAILABLE. * */ state: AddressBlockState; /** * Maximum mask length for this pool child pools and allocations. * Default max_mask_length is 32 for IPv4. * */ maxMaskLength: Long; } /** Encodes, decodes, converts, and creates {@link PoolCidr} messages. */ export declare const PoolCidr: MessageFns; /** Represents the `nebius.vpc.v1.PoolStatus` protobuf message. */ export interface PoolStatus { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.PoolStatus"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Current state of the Pool. * */ state: PoolStatus_State; /** * CIDR blocks. * */ cidrs: string[]; /** * Scope is the unique identifier for single pool tree. * */ scopeId: string; /** * Assignment details for this Pool * */ assignment?: PoolAssignment | undefined; } /** Encodes, decodes, converts, and creates {@link PoolStatus} messages. */ export declare const PoolStatus: MessageFns; /** Represents the `nebius.vpc.v1.PoolAssignment` protobuf message. */ export interface PoolAssignment { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.PoolAssignment"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * IDs of Networks to which the Pool is assigned. * */ networks: string[]; /** * IDs of Subnets to which the Pool is assigned. * */ subnets: string[]; } /** Encodes, decodes, converts, and creates {@link PoolAssignment} messages. */ export declare const PoolAssignment: MessageFns; /** Represents the `nebius.vpc.v1.GetRouteRequest` protobuf message. */ export interface GetRouteRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.GetRouteRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the route. * */ id: string; } /** Encodes, decodes, converts, and creates {@link GetRouteRequest} messages. */ export declare const GetRouteRequest: MessageFns; /** Represents the `nebius.vpc.v1.GetRouteByNameRequest` protobuf message. */ export interface GetRouteByNameRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.GetRouteByNameRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the parent route table. * */ parentId: string; /** * Name of the route. * */ name: string; } /** Encodes, decodes, converts, and creates {@link GetRouteByNameRequest} messages. */ export declare const GetRouteByNameRequest: MessageFns; /** Represents the `nebius.vpc.v1.ListRoutesRequest` protobuf message. */ export interface ListRoutesRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.ListRoutesRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the parent route table. * */ parentId: string; /** * Maximum number of routes to return. * */ pageSize: Long; /** * Token to retrieve the next page of routes. * */ pageToken: string; } /** Encodes, decodes, converts, and creates {@link ListRoutesRequest} messages. */ export declare const ListRoutesRequest: MessageFns; /** Represents the `nebius.vpc.v1.ListRoutesResponse` protobuf message. */ export interface ListRoutesResponse { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.ListRoutesResponse"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `items` protobuf field. */ items: Route[]; /** Contains the `next_page_token` protobuf field. */ nextPageToken: string; } /** Encodes, decodes, converts, and creates {@link ListRoutesResponse} messages. */ export declare const ListRoutesResponse: MessageFns; /** Represents the `nebius.vpc.v1.CreateRouteRequest` protobuf message. */ export interface CreateRouteRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.CreateRouteRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Metadata of the route. * */ metadata?: ResourceMetadata | undefined; /** * Specification of the route. * */ spec?: RouteSpec | undefined; } /** Encodes, decodes, converts, and creates {@link CreateRouteRequest} messages. */ export declare const CreateRouteRequest: MessageFns; /** Represents the `nebius.vpc.v1.UpdateRouteRequest` protobuf message. */ export interface UpdateRouteRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.UpdateRouteRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Updated metadata of the route. * */ metadata?: ResourceMetadata | undefined; /** * Updated specification of the route. * */ spec?: RouteSpec | undefined; } /** Encodes, decodes, converts, and creates {@link UpdateRouteRequest} messages. */ export declare const UpdateRouteRequest: MessageFns; /** Represents the `nebius.vpc.v1.DeleteRouteRequest` protobuf message. */ export interface DeleteRouteRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.DeleteRouteRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the route. * */ id: string; } /** Encodes, decodes, converts, and creates {@link DeleteRouteRequest} messages. */ export declare const DeleteRouteRequest: MessageFns; /** * Defines the gRPC methods for the `nebius.vpc.v1.RouteService` service. */ export type RouteServiceServiceDescription = typeof RouteServiceServiceDescription; /** * Describes the gRPC methods for the `nebius.vpc.v1.RouteService` service. */ export declare const RouteServiceServiceDescription: { readonly get: { readonly path: "/nebius.vpc.v1.RouteService/Get"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: GetRouteRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => GetRouteRequest; readonly responseSerialize: (value: Route) => Buffer; readonly responseDeserialize: (value: Buffer) => Route; }; readonly getByName: { readonly path: "/nebius.vpc.v1.RouteService/GetByName"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: GetRouteByNameRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => GetRouteByNameRequest; readonly responseSerialize: (value: Route) => Buffer; readonly responseDeserialize: (value: Buffer) => Route; }; readonly list: { readonly path: "/nebius.vpc.v1.RouteService/List"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: ListRoutesRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => ListRoutesRequest; readonly responseSerialize: (value: ListRoutesResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => ListRoutesResponse; }; readonly create: { readonly path: "/nebius.vpc.v1.RouteService/Create"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: CreateRouteRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => CreateRouteRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; readonly update: { readonly path: "/nebius.vpc.v1.RouteService/Update"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: UpdateRouteRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: true; readonly requestDeserialize: (value: Buffer) => UpdateRouteRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; readonly delete: { readonly path: "/nebius.vpc.v1.RouteService/Delete"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: DeleteRouteRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => DeleteRouteRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; }; /** * Handles server calls for the `nebius.vpc.v1.RouteService` service. */ export interface RouteServiceServer extends UntypedServiceImplementation { /** * Retrieves a route by its ID. * */ get: handleUnaryCall; /** * Retrieves a route by its name within a specified route table. * */ getByName: handleUnaryCall; /** * Lists routes in a specified route table. * */ list: handleUnaryCall; /** * Creates a new route with the specified configuration. * */ create: handleUnaryCall; /** * Updates an existing route with new configuration parameters. * */ update: handleUnaryCall; /** * Deletes a route by its ID. * */ delete: handleUnaryCall; } /** * Defines the low-level gRPC client for the `nebius.vpc.v1.RouteService` service. */ export interface RouteServiceBaseClient extends Client { /** * Retrieves a route by its ID. * */ get(request: GetRouteRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: Route) => void): ClientUnaryCall; /** * Retrieves a route by its name within a specified route table. * */ getByName(request: GetRouteByNameRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: Route) => void): ClientUnaryCall; /** * Lists routes in a specified route table. * */ list(request: ListRoutesRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: ListRoutesResponse) => void): ClientUnaryCall; /** * Creates a new route with the specified configuration. * */ create(request: CreateRouteRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: Operation) => void): ClientUnaryCall; /** * Updates an existing route with new configuration parameters. * */ update(request: UpdateRouteRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: Operation) => void): ClientUnaryCall; /** * Deletes a route by its ID. * */ delete(request: DeleteRouteRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: Operation) => void): ClientUnaryCall; } /** * Creates low-level gRPC clients for the `nebius.vpc.v1.RouteService` service. */ export declare const RouteServiceBaseClient: { /** Creates a low-level client for the service address. */ new (address: string, credentials: ChannelCredentials, options?: Partial): RouteServiceBaseClient; /** Contains the gRPC service description. */ service: typeof RouteServiceServiceDescription; /** Contains the fully qualified protobuf service name. */ serviceName: string; }; /** * RouteService provides operations for managing routes. * */ export interface RouteService { /** Contains the fully qualified protobuf service name. */ $type: "nebius.vpc.v1.RouteService"; /** * Retrieves a route by its ID. * */ get(request: GetRouteRequest): SDKRequestClass; /** * Retrieves a route by its ID. * */ get(request: GetRouteRequest, metadata: Metadata): SDKRequestClass; /** * Retrieves a route by its ID. * */ get(request: GetRouteRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Retrieves a route by its name within a specified route table. * */ getByName(request: GetRouteByNameRequest): SDKRequestClass; /** * Retrieves a route by its name within a specified route table. * */ getByName(request: GetRouteByNameRequest, metadata: Metadata): SDKRequestClass; /** * Retrieves a route by its name within a specified route table. * */ getByName(request: GetRouteByNameRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Lists routes in a specified route table. * */ list(request: ListRoutesRequest): SDKRequestClass; /** * Lists routes in a specified route table. * */ list(request: ListRoutesRequest, metadata: Metadata): SDKRequestClass; /** * Lists routes in a specified route table. * */ list(request: ListRoutesRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Creates a new route with the specified configuration. * */ create(request: CreateRouteRequest): SDKRequestClass>; /** * Creates a new route with the specified configuration. * */ create(request: CreateRouteRequest, metadata: Metadata): SDKRequestClass>; /** * Creates a new route with the specified configuration. * */ create(request: CreateRouteRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * Updates an existing route with new configuration parameters. * */ update(request: UpdateRouteRequest): SDKRequestClass>; /** * Updates an existing route with new configuration parameters. * */ update(request: UpdateRouteRequest, metadata: Metadata): SDKRequestClass>; /** * Updates an existing route with new configuration parameters. * */ update(request: UpdateRouteRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * Deletes a route by its ID. * */ delete(request: DeleteRouteRequest): SDKRequestClass>; /** * Deletes a route by its ID. * */ delete(request: DeleteRouteRequest, metadata: Metadata): SDKRequestClass>; /** * Deletes a route by its ID. * */ delete(request: DeleteRouteRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; } /** * Calls the `nebius.vpc.v1.RouteService` service through the Nebius SDK. */ export declare class RouteService implements RouteService { private sdk; $type: "nebius.vpc.v1.RouteService"; private addr; private spec; private apiServiceName; /** Creates a client that uses the SDK service address. */ constructor(sdk: SDKInterface); /** Returns the operation service for this service address. */ getOperationService(): OperationService; /** * Retrieves a route by its ID. * */ get(request: GetRouteRequest): SDKRequestClass; /** * Retrieves a route by its ID. * */ get(request: GetRouteRequest, metadata: Metadata): SDKRequestClass; /** * Retrieves a route by its ID. * */ get(request: GetRouteRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Retrieves a route by its name within a specified route table. * */ getByName(request: GetRouteByNameRequest): SDKRequestClass; /** * Retrieves a route by its name within a specified route table. * */ getByName(request: GetRouteByNameRequest, metadata: Metadata): SDKRequestClass; /** * Retrieves a route by its name within a specified route table. * */ getByName(request: GetRouteByNameRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Lists routes in a specified route table. * */ list(request: ListRoutesRequest): SDKRequestClass; /** * Lists routes in a specified route table. * */ list(request: ListRoutesRequest, metadata: Metadata): SDKRequestClass; /** * Lists routes in a specified route table. * */ list(request: ListRoutesRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Creates a new route with the specified configuration. * */ create(request: CreateRouteRequest): SDKRequestClass>; /** * Creates a new route with the specified configuration. * */ create(request: CreateRouteRequest, metadata: Metadata): SDKRequestClass>; /** * Creates a new route with the specified configuration. * */ create(request: CreateRouteRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * Updates an existing route with new configuration parameters. * */ update(request: UpdateRouteRequest): SDKRequestClass>; /** * Updates an existing route with new configuration parameters. * */ update(request: UpdateRouteRequest, metadata: Metadata): SDKRequestClass>; /** * Updates an existing route with new configuration parameters. * */ update(request: UpdateRouteRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * Deletes a route by its ID. * */ delete(request: DeleteRouteRequest): SDKRequestClass>; /** * Deletes a route by its ID. * */ delete(request: DeleteRouteRequest, metadata: Metadata): SDKRequestClass>; /** * Deletes a route by its ID. * */ delete(request: DeleteRouteRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; } /** Represents the `nebius.vpc.v1.GetRouteTableRequest` protobuf message. */ export interface GetRouteTableRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.GetRouteTableRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the route table. * */ id: string; } /** Encodes, decodes, converts, and creates {@link GetRouteTableRequest} messages. */ export declare const GetRouteTableRequest: MessageFns; /** Represents the `nebius.vpc.v1.GetRouteTableByNameRequest` protobuf message. */ export interface GetRouteTableByNameRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.GetRouteTableByNameRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the parent project. * */ parentId: string; /** * Name of the route table. * */ name: string; } /** Encodes, decodes, converts, and creates {@link GetRouteTableByNameRequest} messages. */ export declare const GetRouteTableByNameRequest: MessageFns; /** Represents the `nebius.vpc.v1.ListRouteTablesRequest` protobuf message. */ export interface ListRouteTablesRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.ListRouteTablesRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the parent project. * */ parentId: string; /** * Maximum number of route tables to return. * */ pageSize: Long; /** * Token to retrieve the next page of route tables. * */ pageToken: string; } /** Encodes, decodes, converts, and creates {@link ListRouteTablesRequest} messages. */ export declare const ListRouteTablesRequest: MessageFns; /** Represents the `nebius.vpc.v1.ListRouteTablesByNetworkRequest` protobuf message. */ export interface ListRouteTablesByNetworkRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.ListRouteTablesByNetworkRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the network. * */ networkId: string; /** * Maximum number of route tables to return. * */ pageSize: Long; /** * Token to retrieve the next page of route tables. * */ pageToken: string; } /** Encodes, decodes, converts, and creates {@link ListRouteTablesByNetworkRequest} messages. */ export declare const ListRouteTablesByNetworkRequest: MessageFns; /** Represents the `nebius.vpc.v1.ListRouteTablesResponse` protobuf message. */ export interface ListRouteTablesResponse { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.ListRouteTablesResponse"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `items` protobuf field. */ items: RouteTable[]; /** Contains the `next_page_token` protobuf field. */ nextPageToken: string; } /** Encodes, decodes, converts, and creates {@link ListRouteTablesResponse} messages. */ export declare const ListRouteTablesResponse: MessageFns; /** Represents the `nebius.vpc.v1.CreateRouteTableRequest` protobuf message. */ export interface CreateRouteTableRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.CreateRouteTableRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Metadata of the route table. * */ metadata?: ResourceMetadata | undefined; /** * Specification of the route table. * */ spec?: RouteTableSpec | undefined; } /** Encodes, decodes, converts, and creates {@link CreateRouteTableRequest} messages. */ export declare const CreateRouteTableRequest: MessageFns; /** Represents the `nebius.vpc.v1.UpdateRouteTableRequest` protobuf message. */ export interface UpdateRouteTableRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.UpdateRouteTableRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Updated metadata of the route table. * */ metadata?: ResourceMetadata | undefined; /** * Updated specification of the route table. * */ spec?: RouteTableSpec | undefined; } /** Encodes, decodes, converts, and creates {@link UpdateRouteTableRequest} messages. */ export declare const UpdateRouteTableRequest: MessageFns; /** Represents the `nebius.vpc.v1.DeleteRouteTableRequest` protobuf message. */ export interface DeleteRouteTableRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.DeleteRouteTableRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the route table. * */ id: string; } /** Encodes, decodes, converts, and creates {@link DeleteRouteTableRequest} messages. */ export declare const DeleteRouteTableRequest: MessageFns; /** * Defines the gRPC methods for the `nebius.vpc.v1.RouteTableService` service. */ export type RouteTableServiceServiceDescription = typeof RouteTableServiceServiceDescription; /** * Describes the gRPC methods for the `nebius.vpc.v1.RouteTableService` service. */ export declare const RouteTableServiceServiceDescription: { readonly get: { readonly path: "/nebius.vpc.v1.RouteTableService/Get"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: GetRouteTableRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => GetRouteTableRequest; readonly responseSerialize: (value: RouteTable) => Buffer; readonly responseDeserialize: (value: Buffer) => RouteTable; }; readonly getByName: { readonly path: "/nebius.vpc.v1.RouteTableService/GetByName"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: GetRouteTableByNameRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => GetRouteTableByNameRequest; readonly responseSerialize: (value: RouteTable) => Buffer; readonly responseDeserialize: (value: Buffer) => RouteTable; }; readonly list: { readonly path: "/nebius.vpc.v1.RouteTableService/List"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: ListRouteTablesRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => ListRouteTablesRequest; readonly responseSerialize: (value: ListRouteTablesResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => ListRouteTablesResponse; }; readonly listByNetwork: { readonly path: "/nebius.vpc.v1.RouteTableService/ListByNetwork"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: ListRouteTablesByNetworkRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => ListRouteTablesByNetworkRequest; readonly responseSerialize: (value: ListRouteTablesResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => ListRouteTablesResponse; }; readonly create: { readonly path: "/nebius.vpc.v1.RouteTableService/Create"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: CreateRouteTableRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => CreateRouteTableRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; readonly update: { readonly path: "/nebius.vpc.v1.RouteTableService/Update"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: UpdateRouteTableRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: true; readonly requestDeserialize: (value: Buffer) => UpdateRouteTableRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; readonly delete: { readonly path: "/nebius.vpc.v1.RouteTableService/Delete"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: DeleteRouteTableRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => DeleteRouteTableRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; }; /** * Handles server calls for the `nebius.vpc.v1.RouteTableService` service. */ export interface RouteTableServiceServer extends UntypedServiceImplementation { /** * Retrieves a route table by its ID. * */ get: handleUnaryCall; /** * Retrieves a route table by its name within a specified parent. * */ getByName: handleUnaryCall; /** * Lists route tables within a specified parent. * */ list: handleUnaryCall; /** * Lists route tables that belong to a specified network. * */ listByNetwork: handleUnaryCall; /** * Creates a new route table with the specified configuration. * */ create: handleUnaryCall; /** * Updates an existing route table with new configuration parameters. * */ update: handleUnaryCall; /** * Deletes a route table by its ID. * */ delete: handleUnaryCall; } /** * Defines the low-level gRPC client for the `nebius.vpc.v1.RouteTableService` service. */ export interface RouteTableServiceBaseClient extends Client { /** * Retrieves a route table by its ID. * */ get(request: GetRouteTableRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: RouteTable) => void): ClientUnaryCall; /** * Retrieves a route table by its name within a specified parent. * */ getByName(request: GetRouteTableByNameRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: RouteTable) => void): ClientUnaryCall; /** * Lists route tables within a specified parent. * */ list(request: ListRouteTablesRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: ListRouteTablesResponse) => void): ClientUnaryCall; /** * Lists route tables that belong to a specified network. * */ listByNetwork(request: ListRouteTablesByNetworkRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: ListRouteTablesResponse) => void): ClientUnaryCall; /** * Creates a new route table with the specified configuration. * */ create(request: CreateRouteTableRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: Operation) => void): ClientUnaryCall; /** * Updates an existing route table with new configuration parameters. * */ update(request: UpdateRouteTableRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: Operation) => void): ClientUnaryCall; /** * Deletes a route table by its ID. * */ delete(request: DeleteRouteTableRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: Operation) => void): ClientUnaryCall; } /** * Creates low-level gRPC clients for the `nebius.vpc.v1.RouteTableService` service. */ export declare const RouteTableServiceBaseClient: { /** Creates a low-level client for the service address. */ new (address: string, credentials: ChannelCredentials, options?: Partial): RouteTableServiceBaseClient; /** Contains the gRPC service description. */ service: typeof RouteTableServiceServiceDescription; /** Contains the fully qualified protobuf service name. */ serviceName: string; }; /** * RouteTableService provides operations for managing route tables. * */ export interface RouteTableService { /** Contains the fully qualified protobuf service name. */ $type: "nebius.vpc.v1.RouteTableService"; /** * Retrieves a route table by its ID. * */ get(request: GetRouteTableRequest): SDKRequestClass; /** * Retrieves a route table by its ID. * */ get(request: GetRouteTableRequest, metadata: Metadata): SDKRequestClass; /** * Retrieves a route table by its ID. * */ get(request: GetRouteTableRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Retrieves a route table by its name within a specified parent. * */ getByName(request: GetRouteTableByNameRequest): SDKRequestClass; /** * Retrieves a route table by its name within a specified parent. * */ getByName(request: GetRouteTableByNameRequest, metadata: Metadata): SDKRequestClass; /** * Retrieves a route table by its name within a specified parent. * */ getByName(request: GetRouteTableByNameRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Lists route tables within a specified parent. * */ list(request: ListRouteTablesRequest): SDKRequestClass; /** * Lists route tables within a specified parent. * */ list(request: ListRouteTablesRequest, metadata: Metadata): SDKRequestClass; /** * Lists route tables within a specified parent. * */ list(request: ListRouteTablesRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Lists route tables that belong to a specified network. * */ listByNetwork(request: ListRouteTablesByNetworkRequest): SDKRequestClass; /** * Lists route tables that belong to a specified network. * */ listByNetwork(request: ListRouteTablesByNetworkRequest, metadata: Metadata): SDKRequestClass; /** * Lists route tables that belong to a specified network. * */ listByNetwork(request: ListRouteTablesByNetworkRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Creates a new route table with the specified configuration. * */ create(request: CreateRouteTableRequest): SDKRequestClass>; /** * Creates a new route table with the specified configuration. * */ create(request: CreateRouteTableRequest, metadata: Metadata): SDKRequestClass>; /** * Creates a new route table with the specified configuration. * */ create(request: CreateRouteTableRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * Updates an existing route table with new configuration parameters. * */ update(request: UpdateRouteTableRequest): SDKRequestClass>; /** * Updates an existing route table with new configuration parameters. * */ update(request: UpdateRouteTableRequest, metadata: Metadata): SDKRequestClass>; /** * Updates an existing route table with new configuration parameters. * */ update(request: UpdateRouteTableRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * Deletes a route table by its ID. * */ delete(request: DeleteRouteTableRequest): SDKRequestClass>; /** * Deletes a route table by its ID. * */ delete(request: DeleteRouteTableRequest, metadata: Metadata): SDKRequestClass>; /** * Deletes a route table by its ID. * */ delete(request: DeleteRouteTableRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; } /** * Calls the `nebius.vpc.v1.RouteTableService` service through the Nebius SDK. */ export declare class RouteTableService implements RouteTableService { private sdk; $type: "nebius.vpc.v1.RouteTableService"; private addr; private spec; private apiServiceName; /** Creates a client that uses the SDK service address. */ constructor(sdk: SDKInterface); /** Returns the operation service for this service address. */ getOperationService(): OperationService; /** * Retrieves a route table by its ID. * */ get(request: GetRouteTableRequest): SDKRequestClass; /** * Retrieves a route table by its ID. * */ get(request: GetRouteTableRequest, metadata: Metadata): SDKRequestClass; /** * Retrieves a route table by its ID. * */ get(request: GetRouteTableRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Retrieves a route table by its name within a specified parent. * */ getByName(request: GetRouteTableByNameRequest): SDKRequestClass; /** * Retrieves a route table by its name within a specified parent. * */ getByName(request: GetRouteTableByNameRequest, metadata: Metadata): SDKRequestClass; /** * Retrieves a route table by its name within a specified parent. * */ getByName(request: GetRouteTableByNameRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Lists route tables within a specified parent. * */ list(request: ListRouteTablesRequest): SDKRequestClass; /** * Lists route tables within a specified parent. * */ list(request: ListRouteTablesRequest, metadata: Metadata): SDKRequestClass; /** * Lists route tables within a specified parent. * */ list(request: ListRouteTablesRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Lists route tables that belong to a specified network. * */ listByNetwork(request: ListRouteTablesByNetworkRequest): SDKRequestClass; /** * Lists route tables that belong to a specified network. * */ listByNetwork(request: ListRouteTablesByNetworkRequest, metadata: Metadata): SDKRequestClass; /** * Lists route tables that belong to a specified network. * */ listByNetwork(request: ListRouteTablesByNetworkRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Creates a new route table with the specified configuration. * */ create(request: CreateRouteTableRequest): SDKRequestClass>; /** * Creates a new route table with the specified configuration. * */ create(request: CreateRouteTableRequest, metadata: Metadata): SDKRequestClass>; /** * Creates a new route table with the specified configuration. * */ create(request: CreateRouteTableRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * Updates an existing route table with new configuration parameters. * */ update(request: UpdateRouteTableRequest): SDKRequestClass>; /** * Updates an existing route table with new configuration parameters. * */ update(request: UpdateRouteTableRequest, metadata: Metadata): SDKRequestClass>; /** * Updates an existing route table with new configuration parameters. * */ update(request: UpdateRouteTableRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * Deletes a route table by its ID. * */ delete(request: DeleteRouteTableRequest): SDKRequestClass>; /** * Deletes a route table by its ID. * */ delete(request: DeleteRouteTableRequest, metadata: Metadata): SDKRequestClass>; /** * Deletes a route table by its ID. * */ delete(request: DeleteRouteTableRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; } /** * State indicates the current operational state of the route table. * */ export type RouteTableStatus_State = EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "READY">; /** Defines the static values of {@link RouteTableStatus_State}. */ export interface RouteTableStatus_StateValueMembers { /** * The state is unknown or not yet set. * */ readonly STATE_UNSPECIFIED: EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "READY">; /** * The route table is configured and operational. * */ readonly READY: EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "READY">; } /** Defines the runtime API for {@link RouteTableStatus_State}. */ export type RouteTableStatus_StateClass = EnumClass<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "READY"> & RouteTableStatus_StateValueMembers; /** Converts and creates {@link RouteTableStatus_State} values. */ export declare const RouteTableStatus_State: RouteTableStatus_StateClass; /** * RouteTable represents a routing configuration for a VPC network. * Each route table can be associated with multiple subnets * and contains rules for routing traffic to different destinations. * */ export interface RouteTable { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.RouteTable"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * `metadata.parent_id` represents the Project. * */ metadata?: ResourceMetadata | undefined; /** * Specification of the route table's configuration. * */ spec?: RouteTableSpec | undefined; /** * Current status of the route table. * */ status?: RouteTableStatus | undefined; } /** Encodes, decodes, converts, and creates {@link RouteTable} messages. */ export declare const RouteTable: MessageFns; /** Represents the `nebius.vpc.v1.RouteTableSpec` protobuf message. */ export interface RouteTableSpec { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.RouteTableSpec"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the VPC network this route table belongs to. * */ networkId: string; } /** Encodes, decodes, converts, and creates {@link RouteTableSpec} messages. */ export declare const RouteTableSpec: MessageFns; /** Represents the `nebius.vpc.v1.RouteTableStatus` protobuf message. */ export interface RouteTableStatus { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.RouteTableStatus"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Current state of the route table. * */ state: RouteTableStatus_State; /** * Indicates if this is the default route table for the network. * Only one route table can be default per network. * */ default: boolean; /** * Information about which subnets are using this route table. * */ assignment?: RouteTableAssignment | undefined; } /** Encodes, decodes, converts, and creates {@link RouteTableStatus} messages. */ export declare const RouteTableStatus: MessageFns; /** Represents the `nebius.vpc.v1.RouteTableAssignment` protobuf message. */ export interface RouteTableAssignment { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.RouteTableAssignment"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * List of subnet IDs that use this route table for their routing configuration. * */ subnets: string[]; } /** Encodes, decodes, converts, and creates {@link RouteTableAssignment} messages. */ export declare const RouteTableAssignment: MessageFns; /** * Represents the `nebius.vpc.v1.RouteStatus.State` protobuf enum. */ export type RouteStatus_State = EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "READY">; /** Defines the static values of {@link RouteStatus_State}. */ export interface RouteStatus_StateValueMembers { /** * The state is unknown or not yet set. * */ readonly STATE_UNSPECIFIED: EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "READY">; /** * The route is configured and operational. * */ readonly READY: EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "READY">; } /** Defines the runtime API for {@link RouteStatus_State}. */ export type RouteStatus_StateClass = EnumClass<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "READY"> & RouteStatus_StateValueMembers; /** Converts and creates {@link RouteStatus_State} values. */ export declare const RouteStatus_State: RouteStatus_StateClass; /** * Route type. * */ export type RouteStatus_Type = EnumInstance<"UNRECOGNIZED" | "TYPE_UNSPECIFIED" | "STATIC" | "REDISTRIBUTED">; /** Defines the static values of {@link RouteStatus_Type}. */ export interface RouteStatus_TypeValueMembers { /** * Represents the `TYPE_UNSPECIFIED` protobuf enum value. */ readonly TYPE_UNSPECIFIED: EnumInstance<"UNRECOGNIZED" | "TYPE_UNSPECIFIED" | "STATIC" | "REDISTRIBUTED">; /** * Represents the `STATIC` protobuf enum value. */ readonly STATIC: EnumInstance<"UNRECOGNIZED" | "TYPE_UNSPECIFIED" | "STATIC" | "REDISTRIBUTED">; /** * Represents the `REDISTRIBUTED` protobuf enum value. */ readonly REDISTRIBUTED: EnumInstance<"UNRECOGNIZED" | "TYPE_UNSPECIFIED" | "STATIC" | "REDISTRIBUTED">; } /** Defines the runtime API for {@link RouteStatus_Type}. */ export type RouteStatus_TypeClass = EnumClass<"UNRECOGNIZED" | "TYPE_UNSPECIFIED" | "STATIC" | "REDISTRIBUTED"> & RouteStatus_TypeValueMembers; /** Converts and creates {@link RouteStatus_Type} values. */ export declare const RouteStatus_Type: RouteStatus_TypeClass; /** * Routes determine how network traffic is directed within a VPC network, * specifying the path that traffic should take based on destination addresses. * */ export interface Route { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.Route"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * `metadata.parent_id` represents the RouteTable. * */ metadata?: ResourceMetadata | undefined; /** * Specification of the route's configuration. * */ spec?: RouteSpec | undefined; /** * Current status of the route. * */ status?: RouteStatus | undefined; } /** Encodes, decodes, converts, and creates {@link Route} messages. */ export declare const Route: MessageFns; /** Represents the `nebius.vpc.v1.RouteSpec` protobuf message. */ export interface RouteSpec { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.RouteSpec"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Optional description of the route. * */ description: string; /** * Destination for the route. * Each destination CIDR must be unique within a route table. * When multiple routes match a destination IP, the route with the longest * matching prefix (most specific match) is selected. * */ destination?: DestinationMatch | undefined; /** * Next hop configuration specifying where to send matching traffic. * */ nextHop?: NextHop | undefined; } /** Encodes, decodes, converts, and creates {@link RouteSpec} messages. */ export declare const RouteSpec: MessageFns; /** Represents the `nebius.vpc.v1.DestinationMatch` protobuf message. */ export interface DestinationMatch { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.DestinationMatch"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Destination CIDR block in IPv4 format (e.g., "0.0.0.0/0" for default route, "192.168.100.0/24" for specific subnet). * The CIDR notation specifies the range of IP addresses that this route will match. * Must be unique within a route table. * */ cidr: string; } /** Encodes, decodes, converts, and creates {@link DestinationMatch} messages. */ export declare const DestinationMatch: MessageFns; /** Represents the `nebius.vpc.v1.NextHop` protobuf message. */ export interface NextHop { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.NextHop"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Configuration for the next hop, which must be one of the following options. * */ nextHop?: { $case: "allocation"; allocation: AllocationNextHop; } | { $case: "defaultEgressGateway"; defaultEgressGateway: boolean; } | undefined; } /** Encodes, decodes, converts, and creates {@link NextHop} messages. */ export declare const NextHop: MessageFns; /** * AllocationNextHop specifies an IP allocation as the next hop. * */ export interface AllocationNextHop { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.AllocationNextHop"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the IP allocation to use as the next hop. * */ id: string; } /** Encodes, decodes, converts, and creates {@link AllocationNextHop} messages. */ export declare const AllocationNextHop: MessageFns; /** Represents the `nebius.vpc.v1.RouteStatus` protobuf message. */ export interface RouteStatus { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.RouteStatus"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Current state of the route. * */ state: RouteStatus_State; /** * Detailed status of the next hop configuration. * */ nextHop?: NextHopState | undefined; /** * Indicates the route type. * REDISTRIBUTED routes cannot be deleted directly. * */ type: RouteStatus_Type; /** * Indicates priority of the route. * That is 0 or a positive number. * Lower value = higher priority; 0 is the highest priority. * */ priority: number; } /** Encodes, decodes, converts, and creates {@link RouteStatus} messages. */ export declare const RouteStatus: MessageFns; /** Represents the `nebius.vpc.v1.NextHopState` protobuf message. */ export interface NextHopState { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.NextHopState"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Current state of the next hop configuration. * */ nextHop?: { $case: "allocation"; allocation: AllocationNextHopState; } | { $case: "defaultEgressGateway"; defaultEgressGateway: DefaultEgressGatewayState; } | undefined; } /** Encodes, decodes, converts, and creates {@link NextHopState} messages. */ export declare const NextHopState: MessageFns; /** Represents the `nebius.vpc.v1.AllocationNextHopState` protobuf message. */ export interface AllocationNextHopState { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.AllocationNextHopState"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * The CIDR of the allocation being used as the next hop. * */ cidr: string; } /** Encodes, decodes, converts, and creates {@link AllocationNextHopState} messages. */ export declare const AllocationNextHopState: MessageFns; /** Represents the `nebius.vpc.v1.DefaultEgressGatewayState` protobuf message. */ export interface DefaultEgressGatewayState { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.DefaultEgressGatewayState"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; } /** Encodes, decodes, converts, and creates {@link DefaultEgressGatewayState} messages. */ export declare const DefaultEgressGatewayState: MessageFns; /** Represents the `nebius.vpc.v1.GetSecurityGroupRequest` protobuf message. */ export interface GetSecurityGroupRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.GetSecurityGroupRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the security group. * */ id: string; } /** Encodes, decodes, converts, and creates {@link GetSecurityGroupRequest} messages. */ export declare const GetSecurityGroupRequest: MessageFns; /** Represents the `nebius.vpc.v1.GetSecurityGroupByNameRequest` protobuf message. */ export interface GetSecurityGroupByNameRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.GetSecurityGroupByNameRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the parent project. * */ parentId: string; /** * Name of the security group. * */ name: string; } /** Encodes, decodes, converts, and creates {@link GetSecurityGroupByNameRequest} messages. */ export declare const GetSecurityGroupByNameRequest: MessageFns; /** Represents the `nebius.vpc.v1.ListSecurityGroupsRequest` protobuf message. */ export interface ListSecurityGroupsRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.ListSecurityGroupsRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the parent project. * */ parentId: string; /** * Maximum number of security groups to return. * */ pageSize: Long; /** * Token to retrieve the next page of security groups. * */ pageToken: string; } /** Encodes, decodes, converts, and creates {@link ListSecurityGroupsRequest} messages. */ export declare const ListSecurityGroupsRequest: MessageFns; /** Represents the `nebius.vpc.v1.ListSecurityGroupsByNetworkRequest` protobuf message. */ export interface ListSecurityGroupsByNetworkRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.ListSecurityGroupsByNetworkRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the network. * */ networkId: string; /** * Maximum number of security groups to return. * */ pageSize: Long; /** * Token to retrieve the next page of security groups. * */ pageToken: string; } /** Encodes, decodes, converts, and creates {@link ListSecurityGroupsByNetworkRequest} messages. */ export declare const ListSecurityGroupsByNetworkRequest: MessageFns; /** Represents the `nebius.vpc.v1.ListSecurityGroupsResponse` protobuf message. */ export interface ListSecurityGroupsResponse { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.ListSecurityGroupsResponse"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `items` protobuf field. */ items: SecurityGroup[]; /** Contains the `next_page_token` protobuf field. */ nextPageToken: string; } /** Encodes, decodes, converts, and creates {@link ListSecurityGroupsResponse} messages. */ export declare const ListSecurityGroupsResponse: MessageFns; /** Represents the `nebius.vpc.v1.CreateSecurityGroupRequest` protobuf message. */ export interface CreateSecurityGroupRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.CreateSecurityGroupRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Metadata of the security group. * */ metadata?: ResourceMetadata | undefined; /** * Specification of the security group. * */ spec?: SecurityGroupSpec | undefined; } /** Encodes, decodes, converts, and creates {@link CreateSecurityGroupRequest} messages. */ export declare const CreateSecurityGroupRequest: MessageFns; /** Represents the `nebius.vpc.v1.UpdateSecurityGroupRequest` protobuf message. */ export interface UpdateSecurityGroupRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.UpdateSecurityGroupRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Updated metadata of the security group. * */ metadata?: ResourceMetadata | undefined; /** * Updated specification of the security group. * */ spec?: SecurityGroupSpec | undefined; } /** Encodes, decodes, converts, and creates {@link UpdateSecurityGroupRequest} messages. */ export declare const UpdateSecurityGroupRequest: MessageFns; /** Represents the `nebius.vpc.v1.DeleteSecurityGroupRequest` protobuf message. */ export interface DeleteSecurityGroupRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.DeleteSecurityGroupRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the security group. * */ id: string; } /** Encodes, decodes, converts, and creates {@link DeleteSecurityGroupRequest} messages. */ export declare const DeleteSecurityGroupRequest: MessageFns; /** * Defines the gRPC methods for the `nebius.vpc.v1.SecurityGroupService` service. */ export type SecurityGroupServiceServiceDescription = typeof SecurityGroupServiceServiceDescription; /** * Describes the gRPC methods for the `nebius.vpc.v1.SecurityGroupService` service. */ export declare const SecurityGroupServiceServiceDescription: { readonly get: { readonly path: "/nebius.vpc.v1.SecurityGroupService/Get"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: GetSecurityGroupRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => GetSecurityGroupRequest; readonly responseSerialize: (value: SecurityGroup) => Buffer; readonly responseDeserialize: (value: Buffer) => SecurityGroup; }; readonly getByName: { readonly path: "/nebius.vpc.v1.SecurityGroupService/GetByName"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: GetSecurityGroupByNameRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => GetSecurityGroupByNameRequest; readonly responseSerialize: (value: SecurityGroup) => Buffer; readonly responseDeserialize: (value: Buffer) => SecurityGroup; }; readonly list: { readonly path: "/nebius.vpc.v1.SecurityGroupService/List"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: ListSecurityGroupsRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => ListSecurityGroupsRequest; readonly responseSerialize: (value: ListSecurityGroupsResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => ListSecurityGroupsResponse; }; readonly listByNetwork: { readonly path: "/nebius.vpc.v1.SecurityGroupService/ListByNetwork"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: ListSecurityGroupsByNetworkRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => ListSecurityGroupsByNetworkRequest; readonly responseSerialize: (value: ListSecurityGroupsResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => ListSecurityGroupsResponse; }; readonly create: { readonly path: "/nebius.vpc.v1.SecurityGroupService/Create"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: CreateSecurityGroupRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => CreateSecurityGroupRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; readonly update: { readonly path: "/nebius.vpc.v1.SecurityGroupService/Update"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: UpdateSecurityGroupRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: true; readonly requestDeserialize: (value: Buffer) => UpdateSecurityGroupRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; readonly delete: { readonly path: "/nebius.vpc.v1.SecurityGroupService/Delete"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: DeleteSecurityGroupRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => DeleteSecurityGroupRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; }; /** * Handles server calls for the `nebius.vpc.v1.SecurityGroupService` service. */ export interface SecurityGroupServiceServer extends UntypedServiceImplementation { /** * Retrieves a security group by its ID. * */ get: handleUnaryCall; /** * Retrieves a security group by its name within a specified parent. * */ getByName: handleUnaryCall; /** * Lists security groups within a specified parent. * */ list: handleUnaryCall; /** * Lists security groups in a specified network. * */ listByNetwork: handleUnaryCall; /** * Creates a new security group with the specified configuration. * */ create: handleUnaryCall; /** * Updates an existing security group with new configuration parameters. * */ update: handleUnaryCall; /** * Deletes a security group by its ID. * */ delete: handleUnaryCall; } /** * Defines the low-level gRPC client for the `nebius.vpc.v1.SecurityGroupService` service. */ export interface SecurityGroupServiceBaseClient extends Client { /** * Retrieves a security group by its ID. * */ get(request: GetSecurityGroupRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: SecurityGroup) => void): ClientUnaryCall; /** * Retrieves a security group by its name within a specified parent. * */ getByName(request: GetSecurityGroupByNameRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: SecurityGroup) => void): ClientUnaryCall; /** * Lists security groups within a specified parent. * */ list(request: ListSecurityGroupsRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: ListSecurityGroupsResponse) => void): ClientUnaryCall; /** * Lists security groups in a specified network. * */ listByNetwork(request: ListSecurityGroupsByNetworkRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: ListSecurityGroupsResponse) => void): ClientUnaryCall; /** * Creates a new security group with the specified configuration. * */ create(request: CreateSecurityGroupRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: Operation) => void): ClientUnaryCall; /** * Updates an existing security group with new configuration parameters. * */ update(request: UpdateSecurityGroupRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: Operation) => void): ClientUnaryCall; /** * Deletes a security group by its ID. * */ delete(request: DeleteSecurityGroupRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: Operation) => void): ClientUnaryCall; } /** * Creates low-level gRPC clients for the `nebius.vpc.v1.SecurityGroupService` service. */ export declare const SecurityGroupServiceBaseClient: { /** Creates a low-level client for the service address. */ new (address: string, credentials: ChannelCredentials, options?: Partial): SecurityGroupServiceBaseClient; /** Contains the gRPC service description. */ service: typeof SecurityGroupServiceServiceDescription; /** Contains the fully qualified protobuf service name. */ serviceName: string; }; /** * SecurityGroupService provides operations for managing security groups. * */ export interface SecurityGroupService { /** Contains the fully qualified protobuf service name. */ $type: "nebius.vpc.v1.SecurityGroupService"; /** * Retrieves a security group by its ID. * */ get(request: GetSecurityGroupRequest): SDKRequestClass; /** * Retrieves a security group by its ID. * */ get(request: GetSecurityGroupRequest, metadata: Metadata): SDKRequestClass; /** * Retrieves a security group by its ID. * */ get(request: GetSecurityGroupRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Retrieves a security group by its name within a specified parent. * */ getByName(request: GetSecurityGroupByNameRequest): SDKRequestClass; /** * Retrieves a security group by its name within a specified parent. * */ getByName(request: GetSecurityGroupByNameRequest, metadata: Metadata): SDKRequestClass; /** * Retrieves a security group by its name within a specified parent. * */ getByName(request: GetSecurityGroupByNameRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Lists security groups within a specified parent. * */ list(request: ListSecurityGroupsRequest): SDKRequestClass; /** * Lists security groups within a specified parent. * */ list(request: ListSecurityGroupsRequest, metadata: Metadata): SDKRequestClass; /** * Lists security groups within a specified parent. * */ list(request: ListSecurityGroupsRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Lists security groups in a specified network. * */ listByNetwork(request: ListSecurityGroupsByNetworkRequest): SDKRequestClass; /** * Lists security groups in a specified network. * */ listByNetwork(request: ListSecurityGroupsByNetworkRequest, metadata: Metadata): SDKRequestClass; /** * Lists security groups in a specified network. * */ listByNetwork(request: ListSecurityGroupsByNetworkRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Creates a new security group with the specified configuration. * */ create(request: CreateSecurityGroupRequest): SDKRequestClass>; /** * Creates a new security group with the specified configuration. * */ create(request: CreateSecurityGroupRequest, metadata: Metadata): SDKRequestClass>; /** * Creates a new security group with the specified configuration. * */ create(request: CreateSecurityGroupRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * Updates an existing security group with new configuration parameters. * */ update(request: UpdateSecurityGroupRequest): SDKRequestClass>; /** * Updates an existing security group with new configuration parameters. * */ update(request: UpdateSecurityGroupRequest, metadata: Metadata): SDKRequestClass>; /** * Updates an existing security group with new configuration parameters. * */ update(request: UpdateSecurityGroupRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * Deletes a security group by its ID. * */ delete(request: DeleteSecurityGroupRequest): SDKRequestClass>; /** * Deletes a security group by its ID. * */ delete(request: DeleteSecurityGroupRequest, metadata: Metadata): SDKRequestClass>; /** * Deletes a security group by its ID. * */ delete(request: DeleteSecurityGroupRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; } /** * Calls the `nebius.vpc.v1.SecurityGroupService` service through the Nebius SDK. */ export declare class SecurityGroupService implements SecurityGroupService { private sdk; $type: "nebius.vpc.v1.SecurityGroupService"; private addr; private spec; private apiServiceName; /** Creates a client that uses the SDK service address. */ constructor(sdk: SDKInterface); /** Returns the operation service for this service address. */ getOperationService(): OperationService; /** * Retrieves a security group by its ID. * */ get(request: GetSecurityGroupRequest): SDKRequestClass; /** * Retrieves a security group by its ID. * */ get(request: GetSecurityGroupRequest, metadata: Metadata): SDKRequestClass; /** * Retrieves a security group by its ID. * */ get(request: GetSecurityGroupRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Retrieves a security group by its name within a specified parent. * */ getByName(request: GetSecurityGroupByNameRequest): SDKRequestClass; /** * Retrieves a security group by its name within a specified parent. * */ getByName(request: GetSecurityGroupByNameRequest, metadata: Metadata): SDKRequestClass; /** * Retrieves a security group by its name within a specified parent. * */ getByName(request: GetSecurityGroupByNameRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Lists security groups within a specified parent. * */ list(request: ListSecurityGroupsRequest): SDKRequestClass; /** * Lists security groups within a specified parent. * */ list(request: ListSecurityGroupsRequest, metadata: Metadata): SDKRequestClass; /** * Lists security groups within a specified parent. * */ list(request: ListSecurityGroupsRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Lists security groups in a specified network. * */ listByNetwork(request: ListSecurityGroupsByNetworkRequest): SDKRequestClass; /** * Lists security groups in a specified network. * */ listByNetwork(request: ListSecurityGroupsByNetworkRequest, metadata: Metadata): SDKRequestClass; /** * Lists security groups in a specified network. * */ listByNetwork(request: ListSecurityGroupsByNetworkRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Creates a new security group with the specified configuration. * */ create(request: CreateSecurityGroupRequest): SDKRequestClass>; /** * Creates a new security group with the specified configuration. * */ create(request: CreateSecurityGroupRequest, metadata: Metadata): SDKRequestClass>; /** * Creates a new security group with the specified configuration. * */ create(request: CreateSecurityGroupRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * Updates an existing security group with new configuration parameters. * */ update(request: UpdateSecurityGroupRequest): SDKRequestClass>; /** * Updates an existing security group with new configuration parameters. * */ update(request: UpdateSecurityGroupRequest, metadata: Metadata): SDKRequestClass>; /** * Updates an existing security group with new configuration parameters. * */ update(request: UpdateSecurityGroupRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * Deletes a security group by its ID. * */ delete(request: DeleteSecurityGroupRequest): SDKRequestClass>; /** * Deletes a security group by its ID. * */ delete(request: DeleteSecurityGroupRequest, metadata: Metadata): SDKRequestClass>; /** * Deletes a security group by its ID. * */ delete(request: DeleteSecurityGroupRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; } /** * Enumeration of possible states of the security group. * */ export type SecurityGroupStatus_State = EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "READY">; /** Defines the static values of {@link SecurityGroupStatus_State}. */ export interface SecurityGroupStatus_StateValueMembers { /** * Default state, unspecified. */ readonly STATE_UNSPECIFIED: EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "READY">; /** * Security group is ready for use. */ readonly READY: EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "READY">; } /** Defines the runtime API for {@link SecurityGroupStatus_State}. */ export type SecurityGroupStatus_StateClass = EnumClass<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "READY"> & SecurityGroupStatus_StateValueMembers; /** Converts and creates {@link SecurityGroupStatus_State} values. */ export declare const SecurityGroupStatus_State: SecurityGroupStatus_StateClass; /** * SecurityGroup is a logical grouping of resources * used to manage and apply network security policies collectively. * Security group applies implicit deny at the end (traffic not matched by any rule will be denied). * */ export interface SecurityGroup { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.SecurityGroup"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * `metadata.parent_id` represents the Project. * */ metadata?: ResourceMetadata | undefined; /** * Specification of the security group's configuration. * */ spec?: SecurityGroupSpec | undefined; /** * Current status of the security group. * */ status?: SecurityGroupStatus | undefined; } /** Encodes, decodes, converts, and creates {@link SecurityGroup} messages. */ export declare const SecurityGroup: MessageFns; /** Represents the `nebius.vpc.v1.SecurityGroupSpec` protobuf message. */ export interface SecurityGroupSpec { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.SecurityGroupSpec"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the VPC network this security group belongs to. * */ networkId: string; } /** Encodes, decodes, converts, and creates {@link SecurityGroupSpec} messages. */ export declare const SecurityGroupSpec: MessageFns; /** Represents the `nebius.vpc.v1.SecurityGroupStatus` protobuf message. */ export interface SecurityGroupStatus { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.SecurityGroupStatus"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Current state of the security group. * */ state: SecurityGroupStatus_State; /** * Indicates if this is the default security group for the network. * Only one security group can be default per network. * Will be used on the interface if no other is specified. * */ default: boolean; } /** Encodes, decodes, converts, and creates {@link SecurityGroupStatus} messages. */ export declare const SecurityGroupStatus: MessageFns; /** Represents the `nebius.vpc.v1.GetSecurityRuleRequest` protobuf message. */ export interface GetSecurityRuleRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.GetSecurityRuleRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the security rule. * */ id: string; } /** Encodes, decodes, converts, and creates {@link GetSecurityRuleRequest} messages. */ export declare const GetSecurityRuleRequest: MessageFns; /** Represents the `nebius.vpc.v1.GetSecurityRuleByNameRequest` protobuf message. */ export interface GetSecurityRuleByNameRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.GetSecurityRuleByNameRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the parent security group. * */ parentId: string; /** * Name of the security rule. * */ name: string; } /** Encodes, decodes, converts, and creates {@link GetSecurityRuleByNameRequest} messages. */ export declare const GetSecurityRuleByNameRequest: MessageFns; /** Represents the `nebius.vpc.v1.ListSecurityRulesRequest` protobuf message. */ export interface ListSecurityRulesRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.ListSecurityRulesRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the parent security group. * */ parentId: string; /** * Maximum number of security rules to return. * */ pageSize: Long; /** * Token to retrieve the next page of security rules. * */ pageToken: string; } /** Encodes, decodes, converts, and creates {@link ListSecurityRulesRequest} messages. */ export declare const ListSecurityRulesRequest: MessageFns; /** Represents the `nebius.vpc.v1.ListSecurityRulesResponse` protobuf message. */ export interface ListSecurityRulesResponse { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.ListSecurityRulesResponse"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `items` protobuf field. */ items: SecurityRule[]; /** Contains the `next_page_token` protobuf field. */ nextPageToken: string; } /** Encodes, decodes, converts, and creates {@link ListSecurityRulesResponse} messages. */ export declare const ListSecurityRulesResponse: MessageFns; /** Represents the `nebius.vpc.v1.CreateSecurityRuleRequest` protobuf message. */ export interface CreateSecurityRuleRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.CreateSecurityRuleRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Metadata of the security rule. * */ metadata?: ResourceMetadata | undefined; /** * Specification of the security rule. * */ spec?: SecurityRuleSpec | undefined; } /** Encodes, decodes, converts, and creates {@link CreateSecurityRuleRequest} messages. */ export declare const CreateSecurityRuleRequest: MessageFns; /** Represents the `nebius.vpc.v1.UpdateSecurityRuleRequest` protobuf message. */ export interface UpdateSecurityRuleRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.UpdateSecurityRuleRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Updated metadata of the security rule. * */ metadata?: ResourceMetadata | undefined; /** * Updated specification of the security rule. * */ spec?: SecurityRuleSpec | undefined; } /** Encodes, decodes, converts, and creates {@link UpdateSecurityRuleRequest} messages. */ export declare const UpdateSecurityRuleRequest: MessageFns; /** Represents the `nebius.vpc.v1.DeleteSecurityRuleRequest` protobuf message. */ export interface DeleteSecurityRuleRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.DeleteSecurityRuleRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the security rule. * */ id: string; } /** Encodes, decodes, converts, and creates {@link DeleteSecurityRuleRequest} messages. */ export declare const DeleteSecurityRuleRequest: MessageFns; /** * Defines the gRPC methods for the `nebius.vpc.v1.SecurityRuleService` service. */ export type SecurityRuleServiceServiceDescription = typeof SecurityRuleServiceServiceDescription; /** * Describes the gRPC methods for the `nebius.vpc.v1.SecurityRuleService` service. */ export declare const SecurityRuleServiceServiceDescription: { readonly get: { readonly path: "/nebius.vpc.v1.SecurityRuleService/Get"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: GetSecurityRuleRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => GetSecurityRuleRequest; readonly responseSerialize: (value: SecurityRule) => Buffer; readonly responseDeserialize: (value: Buffer) => SecurityRule; }; readonly getByName: { readonly path: "/nebius.vpc.v1.SecurityRuleService/GetByName"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: GetSecurityRuleByNameRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => GetSecurityRuleByNameRequest; readonly responseSerialize: (value: SecurityRule) => Buffer; readonly responseDeserialize: (value: Buffer) => SecurityRule; }; readonly list: { readonly path: "/nebius.vpc.v1.SecurityRuleService/List"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: ListSecurityRulesRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => ListSecurityRulesRequest; readonly responseSerialize: (value: ListSecurityRulesResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => ListSecurityRulesResponse; }; readonly create: { readonly path: "/nebius.vpc.v1.SecurityRuleService/Create"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: CreateSecurityRuleRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => CreateSecurityRuleRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; readonly update: { readonly path: "/nebius.vpc.v1.SecurityRuleService/Update"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: UpdateSecurityRuleRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: true; readonly requestDeserialize: (value: Buffer) => UpdateSecurityRuleRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; readonly delete: { readonly path: "/nebius.vpc.v1.SecurityRuleService/Delete"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: DeleteSecurityRuleRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => DeleteSecurityRuleRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; }; /** * Handles server calls for the `nebius.vpc.v1.SecurityRuleService` service. */ export interface SecurityRuleServiceServer extends UntypedServiceImplementation { /** * Retrieves a security rule by its ID. * */ get: handleUnaryCall; /** * Retrieves a security rule by its name within a specified security group. * */ getByName: handleUnaryCall; /** * Lists security rules in a specified security group. * */ list: handleUnaryCall; /** * Creates a new security rule with the specified configuration. * */ create: handleUnaryCall; /** * Updates an existing security rule with new configuration parameters. * */ update: handleUnaryCall; /** * Deletes a security rule by its ID. * */ delete: handleUnaryCall; } /** * Defines the low-level gRPC client for the `nebius.vpc.v1.SecurityRuleService` service. */ export interface SecurityRuleServiceBaseClient extends Client { /** * Retrieves a security rule by its ID. * */ get(request: GetSecurityRuleRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: SecurityRule) => void): ClientUnaryCall; /** * Retrieves a security rule by its name within a specified security group. * */ getByName(request: GetSecurityRuleByNameRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: SecurityRule) => void): ClientUnaryCall; /** * Lists security rules in a specified security group. * */ list(request: ListSecurityRulesRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: ListSecurityRulesResponse) => void): ClientUnaryCall; /** * Creates a new security rule with the specified configuration. * */ create(request: CreateSecurityRuleRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: Operation) => void): ClientUnaryCall; /** * Updates an existing security rule with new configuration parameters. * */ update(request: UpdateSecurityRuleRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: Operation) => void): ClientUnaryCall; /** * Deletes a security rule by its ID. * */ delete(request: DeleteSecurityRuleRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: Operation) => void): ClientUnaryCall; } /** * Creates low-level gRPC clients for the `nebius.vpc.v1.SecurityRuleService` service. */ export declare const SecurityRuleServiceBaseClient: { /** Creates a low-level client for the service address. */ new (address: string, credentials: ChannelCredentials, options?: Partial): SecurityRuleServiceBaseClient; /** Contains the gRPC service description. */ service: typeof SecurityRuleServiceServiceDescription; /** Contains the fully qualified protobuf service name. */ serviceName: string; }; /** * SecurityRuleService provides operations for managing security rules. * */ export interface SecurityRuleService { /** Contains the fully qualified protobuf service name. */ $type: "nebius.vpc.v1.SecurityRuleService"; /** * Retrieves a security rule by its ID. * */ get(request: GetSecurityRuleRequest): SDKRequestClass; /** * Retrieves a security rule by its ID. * */ get(request: GetSecurityRuleRequest, metadata: Metadata): SDKRequestClass; /** * Retrieves a security rule by its ID. * */ get(request: GetSecurityRuleRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Retrieves a security rule by its name within a specified security group. * */ getByName(request: GetSecurityRuleByNameRequest): SDKRequestClass; /** * Retrieves a security rule by its name within a specified security group. * */ getByName(request: GetSecurityRuleByNameRequest, metadata: Metadata): SDKRequestClass; /** * Retrieves a security rule by its name within a specified security group. * */ getByName(request: GetSecurityRuleByNameRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Lists security rules in a specified security group. * */ list(request: ListSecurityRulesRequest): SDKRequestClass; /** * Lists security rules in a specified security group. * */ list(request: ListSecurityRulesRequest, metadata: Metadata): SDKRequestClass; /** * Lists security rules in a specified security group. * */ list(request: ListSecurityRulesRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Creates a new security rule with the specified configuration. * */ create(request: CreateSecurityRuleRequest): SDKRequestClass>; /** * Creates a new security rule with the specified configuration. * */ create(request: CreateSecurityRuleRequest, metadata: Metadata): SDKRequestClass>; /** * Creates a new security rule with the specified configuration. * */ create(request: CreateSecurityRuleRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * Updates an existing security rule with new configuration parameters. * */ update(request: UpdateSecurityRuleRequest): SDKRequestClass>; /** * Updates an existing security rule with new configuration parameters. * */ update(request: UpdateSecurityRuleRequest, metadata: Metadata): SDKRequestClass>; /** * Updates an existing security rule with new configuration parameters. * */ update(request: UpdateSecurityRuleRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * Deletes a security rule by its ID. * */ delete(request: DeleteSecurityRuleRequest): SDKRequestClass>; /** * Deletes a security rule by its ID. * */ delete(request: DeleteSecurityRuleRequest, metadata: Metadata): SDKRequestClass>; /** * Deletes a security rule by its ID. * */ delete(request: DeleteSecurityRuleRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; } /** * Calls the `nebius.vpc.v1.SecurityRuleService` service through the Nebius SDK. */ export declare class SecurityRuleService implements SecurityRuleService { private sdk; $type: "nebius.vpc.v1.SecurityRuleService"; private addr; private spec; private apiServiceName; /** Creates a client that uses the SDK service address. */ constructor(sdk: SDKInterface); /** Returns the operation service for this service address. */ getOperationService(): OperationService; /** * Retrieves a security rule by its ID. * */ get(request: GetSecurityRuleRequest): SDKRequestClass; /** * Retrieves a security rule by its ID. * */ get(request: GetSecurityRuleRequest, metadata: Metadata): SDKRequestClass; /** * Retrieves a security rule by its ID. * */ get(request: GetSecurityRuleRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Retrieves a security rule by its name within a specified security group. * */ getByName(request: GetSecurityRuleByNameRequest): SDKRequestClass; /** * Retrieves a security rule by its name within a specified security group. * */ getByName(request: GetSecurityRuleByNameRequest, metadata: Metadata): SDKRequestClass; /** * Retrieves a security rule by its name within a specified security group. * */ getByName(request: GetSecurityRuleByNameRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Lists security rules in a specified security group. * */ list(request: ListSecurityRulesRequest): SDKRequestClass; /** * Lists security rules in a specified security group. * */ list(request: ListSecurityRulesRequest, metadata: Metadata): SDKRequestClass; /** * Lists security rules in a specified security group. * */ list(request: ListSecurityRulesRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Creates a new security rule with the specified configuration. * */ create(request: CreateSecurityRuleRequest): SDKRequestClass>; /** * Creates a new security rule with the specified configuration. * */ create(request: CreateSecurityRuleRequest, metadata: Metadata): SDKRequestClass>; /** * Creates a new security rule with the specified configuration. * */ create(request: CreateSecurityRuleRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * Updates an existing security rule with new configuration parameters. * */ update(request: UpdateSecurityRuleRequest): SDKRequestClass>; /** * Updates an existing security rule with new configuration parameters. * */ update(request: UpdateSecurityRuleRequest, metadata: Metadata): SDKRequestClass>; /** * Updates an existing security rule with new configuration parameters. * */ update(request: UpdateSecurityRuleRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * Deletes a security rule by its ID. * */ delete(request: DeleteSecurityRuleRequest): SDKRequestClass>; /** * Deletes a security rule by its ID. * */ delete(request: DeleteSecurityRuleRequest, metadata: Metadata): SDKRequestClass>; /** * Deletes a security rule by its ID. * */ delete(request: DeleteSecurityRuleRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; } /** * Direction specifies whether traffic is INGRESS (incoming) or EGRESS (outgoing). * */ export type RuleDirection = EnumInstance<"UNRECOGNIZED" | "DIRECTION_UNSPECIFIED" | "INGRESS" | "EGRESS">; /** Defines the static values of {@link RuleDirection}. */ export interface RuleDirectionValueMembers { /** * Represents the `DIRECTION_UNSPECIFIED` protobuf enum value. */ readonly DIRECTION_UNSPECIFIED: EnumInstance<"UNRECOGNIZED" | "DIRECTION_UNSPECIFIED" | "INGRESS" | "EGRESS">; /** * Represents the `INGRESS` protobuf enum value. */ readonly INGRESS: EnumInstance<"UNRECOGNIZED" | "DIRECTION_UNSPECIFIED" | "INGRESS" | "EGRESS">; /** * Represents the `EGRESS` protobuf enum value. */ readonly EGRESS: EnumInstance<"UNRECOGNIZED" | "DIRECTION_UNSPECIFIED" | "INGRESS" | "EGRESS">; } /** Defines the runtime API for {@link RuleDirection}. */ export type RuleDirectionClass = EnumClass<"UNRECOGNIZED" | "DIRECTION_UNSPECIFIED" | "INGRESS" | "EGRESS"> & RuleDirectionValueMembers; /** Converts and creates {@link RuleDirection} values. */ export declare const RuleDirection: RuleDirectionClass; /** * Protocol specifies traffic protocol. * */ export type RuleProtocol = EnumInstance<"UNRECOGNIZED" | "PROTOCOL_UNSPECIFIED" | "ANY" | "TCP" | "UDP" | "ICMP">; /** Defines the static values of {@link RuleProtocol}. */ export interface RuleProtocolValueMembers { /** * Represents the `PROTOCOL_UNSPECIFIED` protobuf enum value. */ readonly PROTOCOL_UNSPECIFIED: EnumInstance<"UNRECOGNIZED" | "PROTOCOL_UNSPECIFIED" | "ANY" | "TCP" | "UDP" | "ICMP">; /** * Represents the `ANY` protobuf enum value. */ readonly ANY: EnumInstance<"UNRECOGNIZED" | "PROTOCOL_UNSPECIFIED" | "ANY" | "TCP" | "UDP" | "ICMP">; /** * Represents the `TCP` protobuf enum value. */ readonly TCP: EnumInstance<"UNRECOGNIZED" | "PROTOCOL_UNSPECIFIED" | "ANY" | "TCP" | "UDP" | "ICMP">; /** * Represents the `UDP` protobuf enum value. */ readonly UDP: EnumInstance<"UNRECOGNIZED" | "PROTOCOL_UNSPECIFIED" | "ANY" | "TCP" | "UDP" | "ICMP">; /** * Represents the `ICMP` protobuf enum value. */ readonly ICMP: EnumInstance<"UNRECOGNIZED" | "PROTOCOL_UNSPECIFIED" | "ANY" | "TCP" | "UDP" | "ICMP">; } /** Defines the runtime API for {@link RuleProtocol}. */ export type RuleProtocolClass = EnumClass<"UNRECOGNIZED" | "PROTOCOL_UNSPECIFIED" | "ANY" | "TCP" | "UDP" | "ICMP"> & RuleProtocolValueMembers; /** Converts and creates {@link RuleProtocol} values. */ export declare const RuleProtocol: RuleProtocolClass; /** * Access specifies action on matching traffic: ALLOW or DENY. * */ export type RuleAccessAction = EnumInstance<"UNRECOGNIZED" | "ACCESS_UNSPECIFIED" | "ALLOW" | "DENY">; /** Defines the static values of {@link RuleAccessAction}. */ export interface RuleAccessActionValueMembers { /** * Represents the `ACCESS_UNSPECIFIED` protobuf enum value. */ readonly ACCESS_UNSPECIFIED: EnumInstance<"UNRECOGNIZED" | "ACCESS_UNSPECIFIED" | "ALLOW" | "DENY">; /** * Represents the `ALLOW` protobuf enum value. */ readonly ALLOW: EnumInstance<"UNRECOGNIZED" | "ACCESS_UNSPECIFIED" | "ALLOW" | "DENY">; /** * Represents the `DENY` protobuf enum value. */ readonly DENY: EnumInstance<"UNRECOGNIZED" | "ACCESS_UNSPECIFIED" | "ALLOW" | "DENY">; } /** Defines the runtime API for {@link RuleAccessAction}. */ export type RuleAccessActionClass = EnumClass<"UNRECOGNIZED" | "ACCESS_UNSPECIFIED" | "ALLOW" | "DENY"> & RuleAccessActionValueMembers; /** Converts and creates {@link RuleAccessAction} values. */ export declare const RuleAccessAction: RuleAccessActionClass; /** * RuleType specifies whether the security rule is stateful or stateless. * */ export type RuleType = EnumInstance<"UNRECOGNIZED" | "RULE_TYPE_UNSPECIFIED" | "STATEFUL" | "STATELESS">; /** Defines the static values of {@link RuleType}. */ export interface RuleTypeValueMembers { /** * Represents the `RULE_TYPE_UNSPECIFIED` protobuf enum value. */ readonly RULE_TYPE_UNSPECIFIED: EnumInstance<"UNRECOGNIZED" | "RULE_TYPE_UNSPECIFIED" | "STATEFUL" | "STATELESS">; /** * Represents the `STATEFUL` protobuf enum value. */ readonly STATEFUL: EnumInstance<"UNRECOGNIZED" | "RULE_TYPE_UNSPECIFIED" | "STATEFUL" | "STATELESS">; /** * Represents the `STATELESS` protobuf enum value. */ readonly STATELESS: EnumInstance<"UNRECOGNIZED" | "RULE_TYPE_UNSPECIFIED" | "STATEFUL" | "STATELESS">; } /** Defines the runtime API for {@link RuleType}. */ export type RuleTypeClass = EnumClass<"UNRECOGNIZED" | "RULE_TYPE_UNSPECIFIED" | "STATEFUL" | "STATELESS"> & RuleTypeValueMembers; /** Converts and creates {@link RuleType} values. */ export declare const RuleType: RuleTypeClass; /** * State describes lifecycle phases of a security rule. * */ export type SecurityRuleStatus_State = EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "CREATING" | "READY" | "DELETING">; /** Defines the static values of {@link SecurityRuleStatus_State}. */ export interface SecurityRuleStatus_StateValueMembers { /** * Represents the `STATE_UNSPECIFIED` protobuf enum value. */ readonly STATE_UNSPECIFIED: EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "CREATING" | "READY" | "DELETING">; /** * Represents the `CREATING` protobuf enum value. */ readonly CREATING: EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "CREATING" | "READY" | "DELETING">; /** * Represents the `READY` protobuf enum value. */ readonly READY: EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "CREATING" | "READY" | "DELETING">; /** * Represents the `DELETING` protobuf enum value. */ readonly DELETING: EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "CREATING" | "READY" | "DELETING">; } /** Defines the runtime API for {@link SecurityRuleStatus_State}. */ export type SecurityRuleStatus_StateClass = EnumClass<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "CREATING" | "READY" | "DELETING"> & SecurityRuleStatus_StateValueMembers; /** Converts and creates {@link SecurityRuleStatus_State} values. */ export declare const SecurityRuleStatus_State: SecurityRuleStatus_StateClass; /** * SecurityRules define rules for controlling network traffic within a network. * These rules specify when traffic is ALLOWED or DENIED based on direction, protocol, * match source, and ports. * */ export interface SecurityRule { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.SecurityRule"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * `metadata.parent_id` represents the SecurityGroup. * */ metadata?: ResourceMetadata | undefined; /** * Specification of the security rule's configuration. * Defines the parameters and constraints for rules that control network traffic. * */ spec?: SecurityRuleSpec | undefined; /** * Current status of the security rule. * */ status?: SecurityRuleStatus | undefined; } /** Encodes, decodes, converts, and creates {@link SecurityRule} messages. */ export declare const SecurityRule: MessageFns; /** Represents the `nebius.vpc.v1.SecurityRuleSpec` protobuf message. */ export interface SecurityRuleSpec { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.SecurityRuleSpec"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Access action for the rule. * Required. Determines whether matching traffic is allowed or denied. * */ access: RuleAccessAction; /** * Priority of the rule. Valid range: 0-1000. * Optional. If not specified or set to 0, defaults to 500. * Rules are evaluated in priority order (lower numbers first) using a first-match algorithm: * only the first matching rule takes effect (ALLOW or DENY), and subsequent rules are skipped. * * When multiple rules share the same priority, DENY rules are evaluated before ALLOW rules. * The final evaluation order is reflected in 'effective_priority' (see SecurityRuleStatus). * */ priority: number; /** * Protocol used in the rule. * Supported values: ANY, TCP, UDP, ICMP. * */ protocol: RuleProtocol; /** * Type of the rule (STATEFUL or STATELESS) * Default value is STATEFUL * */ type: RuleType; /** * Indicating whether the rule matches incoming or outgoing traffic. * */ match?: { $case: "ingress"; ingress: RuleIngress; } | { $case: "egress"; egress: RuleEgress; } | undefined; } /** Encodes, decodes, converts, and creates {@link SecurityRuleSpec} messages. */ export declare const SecurityRuleSpec: MessageFns; /** * Defines match for incoming traffic. * */ export interface RuleIngress { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.RuleIngress"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the referenced Security Group as the source. * */ sourceSecurityGroupId: string; /** * CIDR blocks as the source. * Optional. Empty list means any address. * Must be a valid IPv4 * Maximum of 8 CIDRs can be specified. * */ sourceCidrs: string[]; /** * List of destination ports to which the rule applies. * Optional. Empty list means any port. * Valid range: 1–65535. * Maximum of 8 ports can be specified. * */ destinationPorts: number[]; } /** Encodes, decodes, converts, and creates {@link RuleIngress} messages. */ export declare const RuleIngress: MessageFns; /** * Defines match for outgoing traffic. * */ export interface RuleEgress { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.RuleEgress"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the referenced Security Group as the destination. * */ destinationSecurityGroupId: string; /** * CIDR blocks as the destination. * Optional. Empty list means any address. * Must be a valid IPv4. * Maximum of 8 CIDRs can be specified. * */ destinationCidrs: string[]; /** * List of ports to which the rule applies. * Optional. Empty list means any port. * Valid range: 1–65535. * Maximum of 8 ports can be specified. * */ destinationPorts: number[]; } /** Encodes, decodes, converts, and creates {@link RuleEgress} messages. */ export declare const RuleEgress: MessageFns; /** Represents the `nebius.vpc.v1.SecurityRuleStatus` protobuf message. */ export interface SecurityRuleStatus { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.SecurityRuleStatus"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `state` protobuf field. */ state: SecurityRuleStatus_State; /** * Effective priority used for rule evaluation order, calculated by the system. * This value is computed from the user-specified 'priority' (SecurityRuleSpec). * Rules are evaluated in ascending order of effective_priority using a first-match algorithm. * */ effectivePriority: number; /** * Direction of traffic affected by the rule. * */ direction: RuleDirection; /** * Source of the traffic that matched the rule. * */ source?: RuleMatchStatus | undefined; /** * Destination of the traffic that matched the rule. * */ destination?: RuleMatchStatus | undefined; } /** Encodes, decodes, converts, and creates {@link SecurityRuleStatus} messages. */ export declare const SecurityRuleStatus: MessageFns; /** Represents the `nebius.vpc.v1.RuleMatchStatus` protobuf message. */ export interface RuleMatchStatus { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.RuleMatchStatus"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the Security Group. * */ securityGroupId: string; /** * List of CIDR blocks. * */ cidrs: string[]; /** * List of ports. * */ ports: number[]; } /** Encodes, decodes, converts, and creates {@link RuleMatchStatus} messages. */ export declare const RuleMatchStatus: MessageFns; /** Represents the `nebius.vpc.v1.GetSubnetRequest` protobuf message. */ export interface GetSubnetRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.GetSubnetRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the subnet. * */ id: string; } /** Encodes, decodes, converts, and creates {@link GetSubnetRequest} messages. */ export declare const GetSubnetRequest: MessageFns; /** Represents the `nebius.vpc.v1.GetSubnetByNameRequest` protobuf message. */ export interface GetSubnetByNameRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.GetSubnetByNameRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the parent project. * */ parentId: string; /** * Name of the subnet. * */ name: string; } /** Encodes, decodes, converts, and creates {@link GetSubnetByNameRequest} messages. */ export declare const GetSubnetByNameRequest: MessageFns; /** Represents the `nebius.vpc.v1.ListSubnetsRequest` protobuf message. */ export interface ListSubnetsRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.ListSubnetsRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the parent project. * */ parentId: string; /** * Maximum number of subnets to return. * */ pageSize: Long; /** * Token to retrieve the next page of subnets. * */ pageToken: string; } /** Encodes, decodes, converts, and creates {@link ListSubnetsRequest} messages. */ export declare const ListSubnetsRequest: MessageFns; /** Represents the `nebius.vpc.v1.ListSubnetsByNetworkRequest` protobuf message. */ export interface ListSubnetsByNetworkRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.ListSubnetsByNetworkRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the network. * */ networkId: string; /** * Maximum number of subnets to return. * */ pageSize: Long; /** * Token to retrieve the next page of subnets. * */ pageToken: string; } /** Encodes, decodes, converts, and creates {@link ListSubnetsByNetworkRequest} messages. */ export declare const ListSubnetsByNetworkRequest: MessageFns; /** Represents the `nebius.vpc.v1.ListSubnetsResponse` protobuf message. */ export interface ListSubnetsResponse { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.ListSubnetsResponse"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `items` protobuf field. */ items: Subnet[]; /** Contains the `next_page_token` protobuf field. */ nextPageToken: string; } /** Encodes, decodes, converts, and creates {@link ListSubnetsResponse} messages. */ export declare const ListSubnetsResponse: MessageFns; /** Represents the `nebius.vpc.v1.CreateSubnetRequest` protobuf message. */ export interface CreateSubnetRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.CreateSubnetRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Metadata of the subnet. * */ metadata?: ResourceMetadata | undefined; /** * Specification of the subnet. * */ spec?: SubnetSpec | undefined; } /** Encodes, decodes, converts, and creates {@link CreateSubnetRequest} messages. */ export declare const CreateSubnetRequest: MessageFns; /** Represents the `nebius.vpc.v1.UpdateSubnetRequest` protobuf message. */ export interface UpdateSubnetRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.UpdateSubnetRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Updated metadata of the subnet. * */ metadata?: ResourceMetadata | undefined; /** * Updated specification of the subnet. * */ spec?: SubnetSpec | undefined; } /** Encodes, decodes, converts, and creates {@link UpdateSubnetRequest} messages. */ export declare const UpdateSubnetRequest: MessageFns; /** Represents the `nebius.vpc.v1.DeleteSubnetRequest` protobuf message. */ export interface DeleteSubnetRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.DeleteSubnetRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the subnet. * */ id: string; } /** Encodes, decodes, converts, and creates {@link DeleteSubnetRequest} messages. */ export declare const DeleteSubnetRequest: MessageFns; /** * Defines the gRPC methods for the `nebius.vpc.v1.SubnetService` service. */ export type SubnetServiceServiceDescription = typeof SubnetServiceServiceDescription; /** * Describes the gRPC methods for the `nebius.vpc.v1.SubnetService` service. */ export declare const SubnetServiceServiceDescription: { readonly get: { readonly path: "/nebius.vpc.v1.SubnetService/Get"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: GetSubnetRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => GetSubnetRequest; readonly responseSerialize: (value: Subnet) => Buffer; readonly responseDeserialize: (value: Buffer) => Subnet; }; readonly getByName: { readonly path: "/nebius.vpc.v1.SubnetService/GetByName"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: GetSubnetByNameRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => GetSubnetByNameRequest; readonly responseSerialize: (value: Subnet) => Buffer; readonly responseDeserialize: (value: Buffer) => Subnet; }; readonly list: { readonly path: "/nebius.vpc.v1.SubnetService/List"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: ListSubnetsRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => ListSubnetsRequest; readonly responseSerialize: (value: ListSubnetsResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => ListSubnetsResponse; }; readonly listByNetwork: { readonly path: "/nebius.vpc.v1.SubnetService/ListByNetwork"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: ListSubnetsByNetworkRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => ListSubnetsByNetworkRequest; readonly responseSerialize: (value: ListSubnetsResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => ListSubnetsResponse; }; readonly create: { readonly path: "/nebius.vpc.v1.SubnetService/Create"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: CreateSubnetRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => CreateSubnetRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; readonly update: { readonly path: "/nebius.vpc.v1.SubnetService/Update"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: UpdateSubnetRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: true; readonly requestDeserialize: (value: Buffer) => UpdateSubnetRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; readonly delete: { readonly path: "/nebius.vpc.v1.SubnetService/Delete"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: DeleteSubnetRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => DeleteSubnetRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; }; /** * Handles server calls for the `nebius.vpc.v1.SubnetService` service. */ export interface SubnetServiceServer extends UntypedServiceImplementation { /** * Retrieves a subnet by its ID. * */ get: handleUnaryCall; /** * Retrieves a subnet by its name within a specified parent. * */ getByName: handleUnaryCall; /** * Lists subnets within a specified parent. * */ list: handleUnaryCall; /** * Lists subnets that belong to a specified network. * */ listByNetwork: handleUnaryCall; /** * Creates a new subnet with the specified configuration. * */ create: handleUnaryCall; /** * Updates an existing subnet with new configuration parameters. * */ update: handleUnaryCall; /** * Deletes a subnet by its ID. * */ delete: handleUnaryCall; } /** * Defines the low-level gRPC client for the `nebius.vpc.v1.SubnetService` service. */ export interface SubnetServiceBaseClient extends Client { /** * Retrieves a subnet by its ID. * */ get(request: GetSubnetRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: Subnet) => void): ClientUnaryCall; /** * Retrieves a subnet by its name within a specified parent. * */ getByName(request: GetSubnetByNameRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: Subnet) => void): ClientUnaryCall; /** * Lists subnets within a specified parent. * */ list(request: ListSubnetsRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: ListSubnetsResponse) => void): ClientUnaryCall; /** * Lists subnets that belong to a specified network. * */ listByNetwork(request: ListSubnetsByNetworkRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: ListSubnetsResponse) => void): ClientUnaryCall; /** * Creates a new subnet with the specified configuration. * */ create(request: CreateSubnetRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: Operation) => void): ClientUnaryCall; /** * Updates an existing subnet with new configuration parameters. * */ update(request: UpdateSubnetRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: Operation) => void): ClientUnaryCall; /** * Deletes a subnet by its ID. * */ delete(request: DeleteSubnetRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: Operation) => void): ClientUnaryCall; } /** * Creates low-level gRPC clients for the `nebius.vpc.v1.SubnetService` service. */ export declare const SubnetServiceBaseClient: { /** Creates a low-level client for the service address. */ new (address: string, credentials: ChannelCredentials, options?: Partial): SubnetServiceBaseClient; /** Contains the gRPC service description. */ service: typeof SubnetServiceServiceDescription; /** Contains the fully qualified protobuf service name. */ serviceName: string; }; /** * SubnetService provides operations for managing subnets. * */ export interface SubnetService { /** Contains the fully qualified protobuf service name. */ $type: "nebius.vpc.v1.SubnetService"; /** * Retrieves a subnet by its ID. * */ get(request: GetSubnetRequest): SDKRequestClass; /** * Retrieves a subnet by its ID. * */ get(request: GetSubnetRequest, metadata: Metadata): SDKRequestClass; /** * Retrieves a subnet by its ID. * */ get(request: GetSubnetRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Retrieves a subnet by its name within a specified parent. * */ getByName(request: GetSubnetByNameRequest): SDKRequestClass; /** * Retrieves a subnet by its name within a specified parent. * */ getByName(request: GetSubnetByNameRequest, metadata: Metadata): SDKRequestClass; /** * Retrieves a subnet by its name within a specified parent. * */ getByName(request: GetSubnetByNameRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Lists subnets within a specified parent. * */ list(request: ListSubnetsRequest): SDKRequestClass; /** * Lists subnets within a specified parent. * */ list(request: ListSubnetsRequest, metadata: Metadata): SDKRequestClass; /** * Lists subnets within a specified parent. * */ list(request: ListSubnetsRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Lists subnets that belong to a specified network. * */ listByNetwork(request: ListSubnetsByNetworkRequest): SDKRequestClass; /** * Lists subnets that belong to a specified network. * */ listByNetwork(request: ListSubnetsByNetworkRequest, metadata: Metadata): SDKRequestClass; /** * Lists subnets that belong to a specified network. * */ listByNetwork(request: ListSubnetsByNetworkRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Creates a new subnet with the specified configuration. * */ create(request: CreateSubnetRequest): SDKRequestClass>; /** * Creates a new subnet with the specified configuration. * */ create(request: CreateSubnetRequest, metadata: Metadata): SDKRequestClass>; /** * Creates a new subnet with the specified configuration. * */ create(request: CreateSubnetRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * Updates an existing subnet with new configuration parameters. * */ update(request: UpdateSubnetRequest): SDKRequestClass>; /** * Updates an existing subnet with new configuration parameters. * */ update(request: UpdateSubnetRequest, metadata: Metadata): SDKRequestClass>; /** * Updates an existing subnet with new configuration parameters. * */ update(request: UpdateSubnetRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * Deletes a subnet by its ID. * */ delete(request: DeleteSubnetRequest): SDKRequestClass>; /** * Deletes a subnet by its ID. * */ delete(request: DeleteSubnetRequest, metadata: Metadata): SDKRequestClass>; /** * Deletes a subnet by its ID. * */ delete(request: DeleteSubnetRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; } /** * Calls the `nebius.vpc.v1.SubnetService` service through the Nebius SDK. */ export declare class SubnetService implements SubnetService { private sdk; $type: "nebius.vpc.v1.SubnetService"; private addr; private spec; private apiServiceName; /** Creates a client that uses the SDK service address. */ constructor(sdk: SDKInterface); /** Returns the operation service for this service address. */ getOperationService(): OperationService; /** * Retrieves a subnet by its ID. * */ get(request: GetSubnetRequest): SDKRequestClass; /** * Retrieves a subnet by its ID. * */ get(request: GetSubnetRequest, metadata: Metadata): SDKRequestClass; /** * Retrieves a subnet by its ID. * */ get(request: GetSubnetRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Retrieves a subnet by its name within a specified parent. * */ getByName(request: GetSubnetByNameRequest): SDKRequestClass; /** * Retrieves a subnet by its name within a specified parent. * */ getByName(request: GetSubnetByNameRequest, metadata: Metadata): SDKRequestClass; /** * Retrieves a subnet by its name within a specified parent. * */ getByName(request: GetSubnetByNameRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Lists subnets within a specified parent. * */ list(request: ListSubnetsRequest): SDKRequestClass; /** * Lists subnets within a specified parent. * */ list(request: ListSubnetsRequest, metadata: Metadata): SDKRequestClass; /** * Lists subnets within a specified parent. * */ list(request: ListSubnetsRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Lists subnets that belong to a specified network. * */ listByNetwork(request: ListSubnetsByNetworkRequest): SDKRequestClass; /** * Lists subnets that belong to a specified network. * */ listByNetwork(request: ListSubnetsByNetworkRequest, metadata: Metadata): SDKRequestClass; /** * Lists subnets that belong to a specified network. * */ listByNetwork(request: ListSubnetsByNetworkRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Creates a new subnet with the specified configuration. * */ create(request: CreateSubnetRequest): SDKRequestClass>; /** * Creates a new subnet with the specified configuration. * */ create(request: CreateSubnetRequest, metadata: Metadata): SDKRequestClass>; /** * Creates a new subnet with the specified configuration. * */ create(request: CreateSubnetRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * Updates an existing subnet with new configuration parameters. * */ update(request: UpdateSubnetRequest): SDKRequestClass>; /** * Updates an existing subnet with new configuration parameters. * */ update(request: UpdateSubnetRequest, metadata: Metadata): SDKRequestClass>; /** * Updates an existing subnet with new configuration parameters. * */ update(request: UpdateSubnetRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * Deletes a subnet by its ID. * */ delete(request: DeleteSubnetRequest): SDKRequestClass>; /** * Deletes a subnet by its ID. * */ delete(request: DeleteSubnetRequest, metadata: Metadata): SDKRequestClass>; /** * Deletes a subnet by its ID. * */ delete(request: DeleteSubnetRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; } /** * Enumeration of possible states of the subnet. * */ export type SubnetStatus_State = EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "CREATING" | "READY" | "DELETING">; /** Defines the static values of {@link SubnetStatus_State}. */ export interface SubnetStatus_StateValueMembers { /** * Default state, unspecified. */ readonly STATE_UNSPECIFIED: EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "CREATING" | "READY" | "DELETING">; /** * Subnet is being created. */ readonly CREATING: EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "CREATING" | "READY" | "DELETING">; /** * Subnet is ready for use. */ readonly READY: EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "CREATING" | "READY" | "DELETING">; /** * Subnet is being deleted. */ readonly DELETING: EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "CREATING" | "READY" | "DELETING">; } /** Defines the runtime API for {@link SubnetStatus_State}. */ export type SubnetStatus_StateClass = EnumClass<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "CREATING" | "READY" | "DELETING"> & SubnetStatus_StateValueMembers; /** Converts and creates {@link SubnetStatus_State} values. */ export declare const SubnetStatus_State: SubnetStatus_StateClass; /** * Defines a Subnet, a segment of a network used for more granular control and management. * Subnet uses pools to organize address space. * */ export interface Subnet { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.Subnet"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Metadata for the subnet resource. * `metadata.parent_id` represents IAM container * */ metadata?: ResourceMetadata | undefined; /** * Specification of the subnet. * */ spec?: SubnetSpec | undefined; /** * Status of the subnet. * */ status?: SubnetStatus | undefined; } /** Encodes, decodes, converts, and creates {@link Subnet} messages. */ export declare const Subnet: MessageFns; /** Represents the `nebius.vpc.v1.SubnetSpec` protobuf message. */ export interface SubnetSpec { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.SubnetSpec"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the network this subnet belongs to. * */ networkId: string; /** * Private IPv4 address pools for this subnet. * If unspecified, pools from the associated network are used. * */ ipv4PrivatePools?: IPv4PrivateSubnetPools | undefined; /** * Public IPv4 address pools for this subnet. * If unspecified, pools from the associated network are used. * */ ipv4PublicPools?: IPv4PublicSubnetPools | undefined; /** * ID of the route table to associate with the subnet. * If unspecified, the network's default route table is used. * */ routeTableId: string; } /** Encodes, decodes, converts, and creates {@link SubnetSpec} messages. */ export declare const SubnetSpec: MessageFns; /** Represents the `nebius.vpc.v1.IPv4PrivateSubnetPools` protobuf message. */ export interface IPv4PrivateSubnetPools { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.IPv4PrivateSubnetPools"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * List of private IPv4 CIDR blocks for this subnet. * Must not overlap with other resources in the network * Must be empty if `use_network_pools` is true. * */ pools: SubnetPool[]; /** * If true, inherit private IPv4 pools from the network. Defaults to true. * Must be false if `pools` is specified. * */ useNetworkPools: boolean; } /** Encodes, decodes, converts, and creates {@link IPv4PrivateSubnetPools} messages. */ export declare const IPv4PrivateSubnetPools: MessageFns; /** Represents the `nebius.vpc.v1.IPv4PublicSubnetPools` protobuf message. */ export interface IPv4PublicSubnetPools { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.IPv4PublicSubnetPools"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * List of public IPv4 CIDR blocks for this subnet. * Must not overlap with other resources in the network. * Must be empty if `use_network_pools` is true. * */ pools: SubnetPool[]; /** * If true, inherit public IPv4 pools from the network. * Must be false if `pools` is specified. * */ useNetworkPools: boolean; } /** Encodes, decodes, converts, and creates {@link IPv4PublicSubnetPools} messages. */ export declare const IPv4PublicSubnetPools: MessageFns; /** Represents the `nebius.vpc.v1.SubnetPool` protobuf message. */ export interface SubnetPool { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.SubnetPool"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `cidrs` protobuf field. */ cidrs: SubnetCidr[]; } /** Encodes, decodes, converts, and creates {@link SubnetPool} messages. */ export declare const SubnetPool: MessageFns; /** Represents the `nebius.vpc.v1.SubnetCidr` protobuf message. */ export interface SubnetCidr { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.SubnetCidr"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * A CIDR block (e.g., "10.1.2.0/24") or a prefix length (e.g., "/24"). * If prefix length is specified, the CIDR block will be auto-allocated * from the network's available space. * */ cidr: string; /** * Controls provisioning of IP addresses from the CIDR block. Defaults to AVAILABLE. * */ state: AddressBlockState; /** * Maximum mask length for an allocation from this block. Defaults to /32 for IPv4. * */ maxMaskLength: Long; } /** Encodes, decodes, converts, and creates {@link SubnetCidr} messages. */ export declare const SubnetCidr: MessageFns; /** Represents the `nebius.vpc.v1.SubnetStatus` protobuf message. */ export interface SubnetStatus { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.SubnetStatus"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Current state of the subnet. * */ state: SubnetStatus_State; /** * CIDR blocks. * Deprecated: Use `ipv4_private_pools.cidrs` instead. * * @deprecated Deprecated, will be removed on 2027-02-01: Use `ipv4_private_pools.cidrs` instead.. */ ipv4PrivateCidrs: string[]; /** * CIDR blocks. * Deprecated: Use `ipv4_public_pools.cidrs` instead. * * @deprecated Deprecated, will be removed on 2027-02-01: Use `ipv4_public_pools.cidrs` instead.. */ ipv4PublicCidrs: string[]; /** * Information about the route table associated with this subnet. * Can be either a custom route table or the network's default route table. * */ routeTable?: SubnetAssociatedRouteTable | undefined; /** * Private IPv4 pools available for allocations in this subnet. * */ ipv4PrivatePools: SubnetStatusPool[]; /** * Public IPv4 pools available for allocations in this subnet. * */ ipv4PublicPools: SubnetStatusPool[]; } /** Encodes, decodes, converts, and creates {@link SubnetStatus} messages. */ export declare const SubnetStatus: MessageFns; /** Represents the `nebius.vpc.v1.SubnetStatusPool` protobuf message. */ export interface SubnetStatusPool { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.SubnetStatusPool"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the pool available for allocations in this subnet. * */ poolId: string; /** * CIDR blocks sourced from this pool. * */ cidrs: string[]; } /** Encodes, decodes, converts, and creates {@link SubnetStatusPool} messages. */ export declare const SubnetStatusPool: MessageFns; /** Represents the `nebius.vpc.v1.SubnetAssociatedRouteTable` protobuf message. */ export interface SubnetAssociatedRouteTable { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.SubnetAssociatedRouteTable"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the route table. * */ id: string; /** * Indicates whether this is the network's default route table. * If true, this is the default route table inherited from the network. * If false, this is a custom route table explicitly associated with the subnet via spec. * */ default: boolean; } /** Encodes, decodes, converts, and creates {@link SubnetAssociatedRouteTable} messages. */ export declare const SubnetAssociatedRouteTable: MessageFns; /** Represents the `nebius.vpc.v1.GetTargetGroupRequest` protobuf message. */ export interface GetTargetGroupRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.GetTargetGroupRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the target group. * */ id: string; } /** Encodes, decodes, converts, and creates {@link GetTargetGroupRequest} messages. */ export declare const GetTargetGroupRequest: MessageFns; /** Represents the `nebius.vpc.v1.UpdateTargetGroupRequest` protobuf message. */ export interface UpdateTargetGroupRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.UpdateTargetGroupRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Updated metadata of the target group. * */ metadata?: ResourceMetadata | undefined; /** * Updated specification of the target group. * */ spec?: TargetGroupSpec | undefined; } /** Encodes, decodes, converts, and creates {@link UpdateTargetGroupRequest} messages. */ export declare const UpdateTargetGroupRequest: MessageFns; /** * Defines the gRPC methods for the `nebius.vpc.v1.TargetGroupService` service. */ export type TargetGroupServiceServiceDescription = typeof TargetGroupServiceServiceDescription; /** * Describes the gRPC methods for the `nebius.vpc.v1.TargetGroupService` service. */ export declare const TargetGroupServiceServiceDescription: { readonly get: { readonly path: "/nebius.vpc.v1.TargetGroupService/Get"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: GetTargetGroupRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => GetTargetGroupRequest; readonly responseSerialize: (value: TargetGroup) => Buffer; readonly responseDeserialize: (value: Buffer) => TargetGroup; }; readonly update: { readonly path: "/nebius.vpc.v1.TargetGroupService/Update"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: UpdateTargetGroupRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: true; readonly requestDeserialize: (value: Buffer) => UpdateTargetGroupRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; }; /** * Handles server calls for the `nebius.vpc.v1.TargetGroupService` service. */ export interface TargetGroupServiceServer extends UntypedServiceImplementation { /** * Retrieves a target group by its ID. * */ get: handleUnaryCall; /** * Updates an existing target group with new configuration parameters. * */ update: handleUnaryCall; } /** * Defines the low-level gRPC client for the `nebius.vpc.v1.TargetGroupService` service. */ export interface TargetGroupServiceBaseClient extends Client { /** * Retrieves a target group by its ID. * */ get(request: GetTargetGroupRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: TargetGroup) => void): ClientUnaryCall; /** * Updates an existing target group with new configuration parameters. * */ update(request: UpdateTargetGroupRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: Operation) => void): ClientUnaryCall; } /** * Creates low-level gRPC clients for the `nebius.vpc.v1.TargetGroupService` service. */ export declare const TargetGroupServiceBaseClient: { /** Creates a low-level client for the service address. */ new (address: string, credentials: ChannelCredentials, options?: Partial): TargetGroupServiceBaseClient; /** Contains the gRPC service description. */ service: typeof TargetGroupServiceServiceDescription; /** Contains the fully qualified protobuf service name. */ serviceName: string; }; /** * TargetGroupService provides operations for managing target groups. * */ export interface TargetGroupService { /** Contains the fully qualified protobuf service name. */ $type: "nebius.vpc.v1.TargetGroupService"; /** * Retrieves a target group by its ID. * */ get(request: GetTargetGroupRequest): SDKRequestClass; /** * Retrieves a target group by its ID. * */ get(request: GetTargetGroupRequest, metadata: Metadata): SDKRequestClass; /** * Retrieves a target group by its ID. * */ get(request: GetTargetGroupRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Updates an existing target group with new configuration parameters. * */ update(request: UpdateTargetGroupRequest): SDKRequestClass>; /** * Updates an existing target group with new configuration parameters. * */ update(request: UpdateTargetGroupRequest, metadata: Metadata): SDKRequestClass>; /** * Updates an existing target group with new configuration parameters. * */ update(request: UpdateTargetGroupRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; } /** * Calls the `nebius.vpc.v1.TargetGroupService` service through the Nebius SDK. */ export declare class TargetGroupService implements TargetGroupService { private sdk; $type: "nebius.vpc.v1.TargetGroupService"; private addr; private spec; private apiServiceName; /** Creates a client that uses the SDK service address. */ constructor(sdk: SDKInterface); /** Returns the operation service for this service address. */ getOperationService(): OperationService; /** * Retrieves a target group by its ID. * */ get(request: GetTargetGroupRequest): SDKRequestClass; /** * Retrieves a target group by its ID. * */ get(request: GetTargetGroupRequest, metadata: Metadata): SDKRequestClass; /** * Retrieves a target group by its ID. * */ get(request: GetTargetGroupRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Updates an existing target group with new configuration parameters. * */ update(request: UpdateTargetGroupRequest): SDKRequestClass>; /** * Updates an existing target group with new configuration parameters. * */ update(request: UpdateTargetGroupRequest, metadata: Metadata): SDKRequestClass>; /** * Updates an existing target group with new configuration parameters. * */ update(request: UpdateTargetGroupRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; } /** * Represents the `nebius.vpc.v1.TargetStatus.TargetState` protobuf enum. */ export type TargetStatus_TargetState = EnumInstance<"UNRECOGNIZED" | "TARGET_STATE_UNSPECIFIED" | "READY" | "DISABLED" | "DELETED">; /** Defines the static values of {@link TargetStatus_TargetState}. */ export interface TargetStatus_TargetStateValueMembers { /** * Represents the `TARGET_STATE_UNSPECIFIED` protobuf enum value. */ readonly TARGET_STATE_UNSPECIFIED: EnumInstance<"UNRECOGNIZED" | "TARGET_STATE_UNSPECIFIED" | "READY" | "DISABLED" | "DELETED">; /** * The target exists and ready to receive traffic * */ readonly READY: EnumInstance<"UNRECOGNIZED" | "TARGET_STATE_UNSPECIFIED" | "READY" | "DISABLED" | "DELETED">; /** * The target exists, but not ready to receive traffic (i.e. network interface is not allocated) * */ readonly DISABLED: EnumInstance<"UNRECOGNIZED" | "TARGET_STATE_UNSPECIFIED" | "READY" | "DISABLED" | "DELETED">; /** * The target does not exist anymore (i.e. network interface was deleted) * */ readonly DELETED: EnumInstance<"UNRECOGNIZED" | "TARGET_STATE_UNSPECIFIED" | "READY" | "DISABLED" | "DELETED">; } /** Defines the runtime API for {@link TargetStatus_TargetState}. */ export type TargetStatus_TargetStateClass = EnumClass<"UNRECOGNIZED" | "TARGET_STATE_UNSPECIFIED" | "READY" | "DISABLED" | "DELETED"> & TargetStatus_TargetStateValueMembers; /** Converts and creates {@link TargetStatus_TargetState} values. */ export declare const TargetStatus_TargetState: TargetStatus_TargetStateClass; /** * Target group represents the set of resources that receive traffic from a load balancer listener * */ export interface TargetGroup { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.TargetGroup"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Metadata for the TargetGroup resource. * `metadata.parent_id` represents IAM container * */ metadata?: ResourceMetadata | undefined; /** * Specification of the TargetGroup. * */ spec?: TargetGroupSpec | undefined; /** * Status of the TargetGroup. * */ status?: TargetGroupStatus | undefined; } /** Encodes, decodes, converts, and creates {@link TargetGroup} messages. */ export declare const TargetGroup: MessageFns; /** Represents the `nebius.vpc.v1.TargetGroupSpec` protobuf message. */ export interface TargetGroupSpec { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.TargetGroupSpec"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Targets of the TargetGroup * */ targets: Target[]; } /** Encodes, decodes, converts, and creates {@link TargetGroupSpec} messages. */ export declare const TargetGroupSpec: MessageFns; /** * Represents the target which can receive traffic from a load balancer listener * */ export interface Target { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.Target"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the selected value for the `target` protobuf oneof. */ target?: { $case: "computeInstance"; computeInstance: ComputeInstance; } | undefined; } /** Encodes, decodes, converts, and creates {@link Target} messages. */ export declare const Target: MessageFns; /** * Target representing compute instance * */ export interface ComputeInstance { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.ComputeInstance"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Compute instance id to send traffic to * */ id: string; /** * Name of the compute instance's NetworkInterface to send traffic to. If not specified the first one will be used. * */ networkInterfaceName: string; } /** Encodes, decodes, converts, and creates {@link ComputeInstance} messages. */ export declare const ComputeInstance: MessageFns; /** Represents the `nebius.vpc.v1.TargetGroupStatus` protobuf message. */ export interface TargetGroupStatus { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.TargetGroupStatus"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * LoadBalancer ids target group is attached to * */ loadBalancerIds: string[]; /** * Statuses of specified targets * */ targetStatuses: TargetStatus[]; } /** Encodes, decodes, converts, and creates {@link TargetGroupStatus} messages. */ export declare const TargetGroupStatus: MessageFns; /** Represents the `nebius.vpc.v1.TargetStatus` protobuf message. */ export interface TargetStatus { /** Contains the fully qualified protobuf type name. */ $type: "nebius.vpc.v1.TargetStatus"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `compute_instance_id` protobuf field. */ computeInstanceId: string; /** Contains the `target_state` protobuf field. */ targetState: TargetStatus_TargetState; } /** Encodes, decodes, converts, and creates {@link TargetStatus} messages. */ export declare const TargetStatus: MessageFns; //# sourceMappingURL=index.d.ts.map