/**
 * The BaseRoute model module.
 * @module Ntnx/BaseRoute
 * @version 4.0.1
 * @class BaseRoute
 * @extends NetworkingBaseModel
 */
export default class BaseRoute extends NetworkingBaseModel {
    /**
     * Returns Route name.
     * @return {string}
     */
    getName(): string;
    /**
     * Sets Route name.
     * @param {string} name Route name.
     */
    setName(name: string): void;
    name: string;
    /**
     * Returns BGP session description.
     * @return {string}
     */
    getDescription(): string;
    /**
     * Sets BGP session description.
     * @param {string} description BGP session description.
     */
    setDescription(description: string): void;
    description: string;
    /**
     * @return {IPSubnet}
     */
    getDestination(): IPSubnet;
    /**
     * @param {IPSubnet} destination
     */
    setDestination(destination: IPSubnet): void;
    destination: IPSubnet;
    /**
     * @return {Nexthop}
     */
    getNexthop(): Nexthop;
    /**
     * @param {Nexthop} nexthop
     */
    setNexthop(nexthop: Nexthop): void;
    nexthop: Nexthop;
    toJson(forMutation: any): {
        $reserved: any;
        $objectType: string;
        $unknownFields: any;
        tenantId?: string;
        links?: {
            $reserved: any;
            $objectType: string;
            $unknownFields: any;
            rel?: string;
            href?: string;
        }[];
        extId?: string;
        metadata?: {
            $reserved: any;
            $objectType: string;
            $unknownFields: any;
            categoryIds?: string[];
            projectName?: string;
            projectReferenceId?: string;
            ownerUserName?: string;
            ownerReferenceId?: string;
        };
        nexthop?: {
            $reserved: any;
            $objectType: string;
            $unknownFields: any;
            nexthopName?: string;
            nexthopIpAddress?: {
                $reserved: any;
                $objectType: string;
                $unknownFields: any;
                ipv6?: {
                    $reserved: any;
                    $objectType: string;
                    $unknownFields: any;
                    prefixLength?: number;
                    value?: string;
                };
                ipv4?: {
                    $reserved: any;
                    $objectType: string;
                    $unknownFields: any;
                    prefixLength?: number;
                    value?: string;
                };
            };
            nexthopReference?: string;
            nexthopType?: string;
        };
        destination?: {
            $reserved: any;
            $objectType: string;
            $unknownFields: any;
            ipv6?: {
                $reserved: any;
                $objectType: string;
                $unknownFields: any;
                prefixLength?: number;
                ip?: {
                    $reserved: any;
                    $objectType: string;
                    $unknownFields: any;
                    prefixLength?: number;
                    value?: string;
                };
            };
            ipv4?: {
                $reserved: any;
                $objectType: string;
                $unknownFields: any;
                prefixLength?: number;
                ip?: {
                    $reserved: any;
                    $objectType: string;
                    $unknownFields: any;
                    prefixLength?: number;
                    value?: string;
                };
            };
        };
        description?: string;
        name?: string;
    };
    #private;
}
import NetworkingBaseModel from "./NetworkingBaseModel";
import IPSubnet from "./IPSubnet";
import Nexthop from "./Nexthop";
