import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
/**
 * This resource manages MxEdge devices in the Mist Organization.
 *
 * MxEdge is a multi-service edge platform that provides tunneling, switching, and other network services.
 *
 * ## Import
 *
 * Using `pulumi import`, import `junipermist.org.Mxedge` with:
 * Mist Org MxEdge can be imported by specifying the orgId and the mxedgeId
 *
 * ```sh
 * $ pulumi import junipermist:org/mxedge:Mxedge edge_one 17f90707-aebe-4274-af42-f42952a665a3.387804a7-3474-85ce-15a2-f9a9684c9c90
 * ```
 */
export declare class Mxedge extends pulumi.CustomResource {
    /**
     * Get an existing Mxedge resource's state with the given name, ID, and optional extra
     * properties used to qualify the lookup.
     *
     * @param name The _unique_ name of the resulting resource.
     * @param id The _unique_ provider ID of the resource to lookup.
     * @param state Any extra arguments used during the lookup.
     * @param opts Optional settings to control the behavior of the CustomResource.
     */
    static get(name: string, id: pulumi.Input<pulumi.ID>, state?: MxedgeState, opts?: pulumi.CustomResourceOptions): Mxedge;
    /**
     * Returns true if the given object is an instance of Mxedge.  This is designed to work even
     * when multiple copies of the Pulumi SDK have been loaded into the same process.
     */
    static isInstance(obj: any): obj is Mxedge;
    /**
     * Registration claim code for the Mist Edge
     */
    readonly claimCode: pulumi.Output<string>;
    /**
     * Whether this Mist Edge is scoped to a site
     */
    readonly forSite: pulumi.Output<boolean>;
    /**
     * Mist Edge MAC address
     */
    readonly mac: pulumi.Output<string>;
    /**
     * Mist Edge hardware or virtual appliance model
     */
    readonly model: pulumi.Output<string>;
    /**
     * Whether the Mist Edge agent has registered with Mist cloud
     */
    readonly mxagentRegistered: pulumi.Output<boolean>;
    /**
     * Mist Edge cluster identifier that this appliance belongs to
     */
    readonly mxclusterId: pulumi.Output<string | undefined>;
    /**
     * Management credentials and settings for the Mist Edge
     */
    readonly mxedgeMgmt: pulumi.Output<outputs.org.MxedgeMxedgeMgmt | undefined>;
    /**
     * Display name of the Mist Edge
     */
    readonly name: pulumi.Output<string>;
    /**
     * Free-form notes for the Mist Edge
     */
    readonly notes: pulumi.Output<string | undefined>;
    /**
     * Time synchronization servers used by the Mist Edge
     */
    readonly ntpServers: pulumi.Output<string[] | undefined>;
    /**
     * Out-of-band management IP configuration for the Mist Edge
     */
    readonly oobIpConfig: pulumi.Output<outputs.org.MxedgeOobIpConfig | undefined>;
    /**
     * Identifier of the org that owns the Mist Edge
     */
    readonly orgId: pulumi.Output<string>;
    /**
     * Network proxy settings used by the Mist Edge
     */
    readonly proxy: pulumi.Output<outputs.org.MxedgeProxy | undefined>;
    /**
     * List of services enabled to run on the Mist Edge
     */
    readonly services: pulumi.Output<string[]>;
    /**
     * Identifier of the site when the Mist Edge is site-scoped
     */
    readonly siteId: pulumi.Output<string | undefined>;
    /**
     * DHCP relay or server settings for Mist Tunneled VLANs
     */
    readonly tuntermDhcpdConfig: pulumi.Output<{
        [key: string]: outputs.org.MxedgeTuntermDhcpdConfig;
    } | undefined>;
    /**
     * Extra routes for Mist Tunneled VLAN traffic; property key is a CIDR
     */
    readonly tuntermExtraRoutes: pulumi.Output<{
        [key: string]: outputs.org.MxedgeTuntermExtraRoutes;
    } | undefined>;
    /**
     * IGMP snooping settings for Mist Tunneled VLANs
     */
    readonly tuntermIgmpSnoopingConfig: pulumi.Output<outputs.org.MxedgeTuntermIgmpSnoopingConfig | undefined>;
    /**
     * Tunnel termination IP configuration for the Mist Edge
     */
    readonly tuntermIpConfig: pulumi.Output<outputs.org.MxedgeTuntermIpConfig | undefined>;
    /**
     * Monitoring checks for tunnel termination reachability
     */
    readonly tuntermMonitorings: pulumi.Output<outputs.org.MxedgeTuntermMonitoring[][] | undefined>;
    /**
     * Multicast forwarding settings for tunnel termination
     */
    readonly tuntermMulticastConfig: pulumi.Output<outputs.org.MxedgeTuntermMulticastConfig | undefined>;
    /**
     * IPconfigs by VLAN ID. Property key is the VLAN ID
     */
    readonly tuntermOtherIpConfigs: pulumi.Output<{
        [key: string]: outputs.org.MxedgeTuntermOtherIpConfigs;
    } | undefined>;
    /**
     * Port configuration for tunnel termination traffic
     */
    readonly tuntermPortConfig: pulumi.Output<outputs.org.MxedgeTuntermPortConfig | undefined>;
    /**
     * Whether the tunnel termination service has registered with Mist cloud
     */
    readonly tuntermRegistered: pulumi.Output<boolean>;
    /**
     * Switch VLAN settings for tunnel termination
     */
    readonly tuntermSwitchConfig: pulumi.Output<{
        [key: string]: outputs.org.MxedgeTuntermSwitchConfig;
    } | undefined>;
    /**
     * Service version information reported by the Mist Edge
     */
    readonly versions: pulumi.Output<outputs.org.MxedgeVersions | undefined>;
    /**
     * Create a Mxedge resource with the given unique name, arguments, and options.
     *
     * @param name The _unique_ name of the resource.
     * @param args The arguments to use to populate this resource's properties.
     * @param opts A bag of options that control this resource's behavior.
     */
    constructor(name: string, args: MxedgeArgs, opts?: pulumi.CustomResourceOptions);
}
/**
 * Input properties used for looking up and filtering Mxedge resources.
 */
export interface MxedgeState {
    /**
     * Registration claim code for the Mist Edge
     */
    claimCode?: pulumi.Input<string | undefined>;
    /**
     * Whether this Mist Edge is scoped to a site
     */
    forSite?: pulumi.Input<boolean | undefined>;
    /**
     * Mist Edge MAC address
     */
    mac?: pulumi.Input<string | undefined>;
    /**
     * Mist Edge hardware or virtual appliance model
     */
    model?: pulumi.Input<string | undefined>;
    /**
     * Whether the Mist Edge agent has registered with Mist cloud
     */
    mxagentRegistered?: pulumi.Input<boolean | undefined>;
    /**
     * Mist Edge cluster identifier that this appliance belongs to
     */
    mxclusterId?: pulumi.Input<string | undefined>;
    /**
     * Management credentials and settings for the Mist Edge
     */
    mxedgeMgmt?: pulumi.Input<inputs.org.MxedgeMxedgeMgmt | undefined>;
    /**
     * Display name of the Mist Edge
     */
    name?: pulumi.Input<string | undefined>;
    /**
     * Free-form notes for the Mist Edge
     */
    notes?: pulumi.Input<string | undefined>;
    /**
     * Time synchronization servers used by the Mist Edge
     */
    ntpServers?: pulumi.Input<pulumi.Input<string>[] | undefined>;
    /**
     * Out-of-band management IP configuration for the Mist Edge
     */
    oobIpConfig?: pulumi.Input<inputs.org.MxedgeOobIpConfig | undefined>;
    /**
     * Identifier of the org that owns the Mist Edge
     */
    orgId?: pulumi.Input<string | undefined>;
    /**
     * Network proxy settings used by the Mist Edge
     */
    proxy?: pulumi.Input<inputs.org.MxedgeProxy | undefined>;
    /**
     * List of services enabled to run on the Mist Edge
     */
    services?: pulumi.Input<pulumi.Input<string>[] | undefined>;
    /**
     * Identifier of the site when the Mist Edge is site-scoped
     */
    siteId?: pulumi.Input<string | undefined>;
    /**
     * DHCP relay or server settings for Mist Tunneled VLANs
     */
    tuntermDhcpdConfig?: pulumi.Input<{
        [key: string]: pulumi.Input<inputs.org.MxedgeTuntermDhcpdConfig>;
    } | undefined>;
    /**
     * Extra routes for Mist Tunneled VLAN traffic; property key is a CIDR
     */
    tuntermExtraRoutes?: pulumi.Input<{
        [key: string]: pulumi.Input<inputs.org.MxedgeTuntermExtraRoutes>;
    } | undefined>;
    /**
     * IGMP snooping settings for Mist Tunneled VLANs
     */
    tuntermIgmpSnoopingConfig?: pulumi.Input<inputs.org.MxedgeTuntermIgmpSnoopingConfig | undefined>;
    /**
     * Tunnel termination IP configuration for the Mist Edge
     */
    tuntermIpConfig?: pulumi.Input<inputs.org.MxedgeTuntermIpConfig | undefined>;
    /**
     * Monitoring checks for tunnel termination reachability
     */
    tuntermMonitorings?: pulumi.Input<pulumi.Input<pulumi.Input<inputs.org.MxedgeTuntermMonitoring>[]>[] | undefined>;
    /**
     * Multicast forwarding settings for tunnel termination
     */
    tuntermMulticastConfig?: pulumi.Input<inputs.org.MxedgeTuntermMulticastConfig | undefined>;
    /**
     * IPconfigs by VLAN ID. Property key is the VLAN ID
     */
    tuntermOtherIpConfigs?: pulumi.Input<{
        [key: string]: pulumi.Input<inputs.org.MxedgeTuntermOtherIpConfigs>;
    } | undefined>;
    /**
     * Port configuration for tunnel termination traffic
     */
    tuntermPortConfig?: pulumi.Input<inputs.org.MxedgeTuntermPortConfig | undefined>;
    /**
     * Whether the tunnel termination service has registered with Mist cloud
     */
    tuntermRegistered?: pulumi.Input<boolean | undefined>;
    /**
     * Switch VLAN settings for tunnel termination
     */
    tuntermSwitchConfig?: pulumi.Input<{
        [key: string]: pulumi.Input<inputs.org.MxedgeTuntermSwitchConfig>;
    } | undefined>;
    /**
     * Service version information reported by the Mist Edge
     */
    versions?: pulumi.Input<inputs.org.MxedgeVersions | undefined>;
}
/**
 * The set of arguments for constructing a Mxedge resource.
 */
export interface MxedgeArgs {
    /**
     * Registration claim code for the Mist Edge
     */
    claimCode?: pulumi.Input<string | undefined>;
    /**
     * Mist Edge hardware or virtual appliance model
     */
    model?: pulumi.Input<string | undefined>;
    /**
     * Mist Edge cluster identifier that this appliance belongs to
     */
    mxclusterId?: pulumi.Input<string | undefined>;
    /**
     * Management credentials and settings for the Mist Edge
     */
    mxedgeMgmt?: pulumi.Input<inputs.org.MxedgeMxedgeMgmt | undefined>;
    /**
     * Display name of the Mist Edge
     */
    name?: pulumi.Input<string | undefined>;
    /**
     * Free-form notes for the Mist Edge
     */
    notes?: pulumi.Input<string | undefined>;
    /**
     * Time synchronization servers used by the Mist Edge
     */
    ntpServers?: pulumi.Input<pulumi.Input<string>[] | undefined>;
    /**
     * Out-of-band management IP configuration for the Mist Edge
     */
    oobIpConfig?: pulumi.Input<inputs.org.MxedgeOobIpConfig | undefined>;
    /**
     * Identifier of the org that owns the Mist Edge
     */
    orgId: pulumi.Input<string>;
    /**
     * Network proxy settings used by the Mist Edge
     */
    proxy?: pulumi.Input<inputs.org.MxedgeProxy | undefined>;
    /**
     * Identifier of the site when the Mist Edge is site-scoped
     */
    siteId?: pulumi.Input<string | undefined>;
    /**
     * DHCP relay or server settings for Mist Tunneled VLANs
     */
    tuntermDhcpdConfig?: pulumi.Input<{
        [key: string]: pulumi.Input<inputs.org.MxedgeTuntermDhcpdConfig>;
    } | undefined>;
    /**
     * Extra routes for Mist Tunneled VLAN traffic; property key is a CIDR
     */
    tuntermExtraRoutes?: pulumi.Input<{
        [key: string]: pulumi.Input<inputs.org.MxedgeTuntermExtraRoutes>;
    } | undefined>;
    /**
     * IGMP snooping settings for Mist Tunneled VLANs
     */
    tuntermIgmpSnoopingConfig?: pulumi.Input<inputs.org.MxedgeTuntermIgmpSnoopingConfig | undefined>;
    /**
     * Tunnel termination IP configuration for the Mist Edge
     */
    tuntermIpConfig?: pulumi.Input<inputs.org.MxedgeTuntermIpConfig | undefined>;
    /**
     * Monitoring checks for tunnel termination reachability
     */
    tuntermMonitorings?: pulumi.Input<pulumi.Input<pulumi.Input<inputs.org.MxedgeTuntermMonitoring>[]>[] | undefined>;
    /**
     * Multicast forwarding settings for tunnel termination
     */
    tuntermMulticastConfig?: pulumi.Input<inputs.org.MxedgeTuntermMulticastConfig | undefined>;
    /**
     * IPconfigs by VLAN ID. Property key is the VLAN ID
     */
    tuntermOtherIpConfigs?: pulumi.Input<{
        [key: string]: pulumi.Input<inputs.org.MxedgeTuntermOtherIpConfigs>;
    } | undefined>;
    /**
     * Port configuration for tunnel termination traffic
     */
    tuntermPortConfig?: pulumi.Input<inputs.org.MxedgeTuntermPortConfig | undefined>;
    /**
     * Switch VLAN settings for tunnel termination
     */
    tuntermSwitchConfig?: pulumi.Input<{
        [key: string]: pulumi.Input<inputs.org.MxedgeTuntermSwitchConfig>;
    } | undefined>;
    /**
     * Service version information reported by the Mist Edge
     */
    versions?: pulumi.Input<inputs.org.MxedgeVersions | undefined>;
}
//# sourceMappingURL=mxedge.d.ts.map