import _m0 from 'protobufjs/minimal'; import { DhcpOptions } from '../../../../yandex/cloud/baremetal/v1alpha/dhcp'; export declare const protobufPackage = "yandex.cloud.baremetal.v1alpha"; /** A PrivateSubnet resource. */ export interface PrivateSubnet { /** ID of the private subnet. */ id: string; /** ID of the cloud that the private subnet belongs to. */ cloudId: string; /** ID of the folder that the private subnet belongs to. */ folderId: string; /** * Name of the private subnet. * The name is unique within the folder. */ name: string; /** Optional description of the private subnet. */ description: string; /** Status of the private subnet. */ status: PrivateSubnet_Status; /** ID of the availability zone where the server resides. */ zoneId: string; /** ID of the hardware pool that the private subnet belongs to. */ hardwarePoolId: string; /** * Optional VRF options for the private subnet. If missing, the private subnet will be unrouted, * i.e. it will lack a DHCP server and routing capabilities between this subnet and other private * subnets. */ vrfOptions?: PrivateSubnet_VrfOptions; /** Creation timestamp. */ createdAt?: Date; /** Resource labels as `key:value` pairs. */ labels: { [key: string]: string; }; } /** Private subnet status. */ export declare enum PrivateSubnet_Status { /** STATUS_UNSPECIFIED - Unspecified private subnet status. */ STATUS_UNSPECIFIED = 0, /** CREATING - Private subnet is being created. */ CREATING = 1, /** READY - Private subnet is ready to use. */ READY = 2, /** UPDATING - Private subnet is being updated. */ UPDATING = 3, /** DELETING - Private subnet is being deleted. */ DELETING = 4, /** ERROR - Private subnet encountered a problem and cannot operate. */ ERROR = 5, UNRECOGNIZED = -1 } export declare function privateSubnet_StatusFromJSON(object: any): PrivateSubnet_Status; export declare function privateSubnet_StatusToJSON(object: PrivateSubnet_Status): string; export interface PrivateSubnet_LabelsEntry { key: string; value: string; } /** VRF options for the private subnet. */ export interface PrivateSubnet_VrfOptions { /** ID of the VRF. */ vrfId: string; /** CIDR block for the subnet. */ cidr: string; /** DHCP options for the subnet. */ dhcpOptions?: DhcpOptions; /** Gateway IP address for the subnet. */ gatewayIp: string; } export declare const PrivateSubnet: { encode(message: PrivateSubnet, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): PrivateSubnet; fromJSON(object: any): PrivateSubnet; toJSON(message: PrivateSubnet): unknown; fromPartial, never>) | undefined; gatewayIp?: string | undefined; } & Record, never>) | undefined; createdAt?: Date | undefined; labels?: ({ [x: string]: string | undefined; } & { [x: string]: string | undefined; } & Record, never>) | undefined; } & Record, never>>(object: I): PrivateSubnet; }; export declare const PrivateSubnet_LabelsEntry: { encode(message: PrivateSubnet_LabelsEntry, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): PrivateSubnet_LabelsEntry; fromJSON(object: any): PrivateSubnet_LabelsEntry; toJSON(message: PrivateSubnet_LabelsEntry): unknown; fromPartial, never>>(object: I): PrivateSubnet_LabelsEntry; }; export declare const PrivateSubnet_VrfOptions: { encode(message: PrivateSubnet_VrfOptions, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): PrivateSubnet_VrfOptions; fromJSON(object: any): PrivateSubnet_VrfOptions; toJSON(message: PrivateSubnet_VrfOptions): unknown; fromPartial, never>) | undefined; gatewayIp?: string | undefined; } & Record, never>>(object: I): PrivateSubnet_VrfOptions; }; type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; export type DeepPartial = T extends Builtin ? T : T extends Array ? Array> : T extends ReadonlyArray ? ReadonlyArray> : T extends {} ? { [K in keyof T]?: DeepPartial; } : Partial; type KeysOfUnion = T extends T ? keyof T : never; export type Exact = P extends Builtin ? P : P & { [K in keyof P]: Exact; } & Record>, never>; export {};