import _m0 from 'protobufjs/minimal'; export declare const protobufPackage = "yandex.cloud.vpc.v1"; /** A RouteTable resource. For more information, see [Static Routes](/docs/vpc/concepts/routing). */ export interface RouteTable { /** ID of the route table. */ id: string; /** ID of the folder that the route table belongs to. */ folderId: string; /** Creation timestamp in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format. */ createdAt?: Date; /** * Name of the route table. * The name must be unique within the folder. * Value must match the regular expression `|[a-zA-Z]([-_a-zA-Z0-9]{0,61}[a-zA-Z0-9])?`. */ name: string; /** Optional description of the route table. 0-256 characters long. */ description: string; /** * Resource labels, `key:value` pairs. * No more than 64 per resource. * The string length in characters for each key must be 1-63. * Each value must match the regular expression `[-_0-9a-z]*`. * Each key must match the regular expression `[a-z][-_0-9a-z]*`. */ labels: { [key: string]: string; }; /** ID of the network the route table belongs to. */ networkId: string; /** List of static routes. */ staticRoutes: StaticRoute[]; } export interface RouteTable_LabelsEntry { key: string; value: string; } /** A StaticRoute resource. For more information, see [Static Routes](/docs/vpc/concepts/routing). */ export interface StaticRoute { /** Destination subnet in CIDR notation */ destinationPrefix: string | undefined; /** Next hop IP address */ nextHopAddress: string | undefined; /** Next hop gateway id */ gatewayId: string | undefined; /** Resource labels as `` key:value `` pairs. Maximum of 64 per resource. */ labels: { [key: string]: string; }; } export interface StaticRoute_LabelsEntry { key: string; value: string; } export declare const RouteTable: { encode(message: RouteTable, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): RouteTable; fromJSON(object: any): RouteTable; toJSON(message: RouteTable): unknown; fromPartial, never>) | undefined; networkId?: string | undefined; staticRoutes?: ({ destinationPrefix?: string | undefined; nextHopAddress?: string | undefined; gatewayId?: string | undefined; labels?: { [x: string]: string | undefined; } | undefined; }[] & ({ destinationPrefix?: string | undefined; nextHopAddress?: string | undefined; gatewayId?: string | undefined; labels?: { [x: string]: string | undefined; } | undefined; } & { destinationPrefix?: string | undefined; nextHopAddress?: string | undefined; gatewayId?: string | undefined; labels?: ({ [x: string]: string | undefined; } & { [x: string]: string | undefined; } & Record, never>) | undefined; } & Record, never>)[] & Record, never>) | undefined; } & Record, never>>(object: I): RouteTable; }; export declare const RouteTable_LabelsEntry: { encode(message: RouteTable_LabelsEntry, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): RouteTable_LabelsEntry; fromJSON(object: any): RouteTable_LabelsEntry; toJSON(message: RouteTable_LabelsEntry): unknown; fromPartial, never>>(object: I): RouteTable_LabelsEntry; }; export declare const StaticRoute: { encode(message: StaticRoute, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): StaticRoute; fromJSON(object: any): StaticRoute; toJSON(message: StaticRoute): unknown; fromPartial, never>) | undefined; } & Record, never>>(object: I): StaticRoute; }; export declare const StaticRoute_LabelsEntry: { encode(message: StaticRoute_LabelsEntry, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): StaticRoute_LabelsEntry; fromJSON(object: any): StaticRoute_LabelsEntry; toJSON(message: StaticRoute_LabelsEntry): unknown; fromPartial, never>>(object: I): StaticRoute_LabelsEntry; }; 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 {};