import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
/**
 * This resource manages the Switch configuration.
 *
 * It can be used to define specific configuration at the device level or to override Org/Site Network template settings.
 *
 * > **WARNING** For **adopted** devices, make sure to set `managed`=`true` to allow Mist to manage the switch
 *
 * ## Import
 *
 * Using `pulumi import`, import `junipermist.device.Switch` with:
 * Switch Configuration can be imported by specifying the siteId and the deviceId
 *
 * ```sh
 * $ pulumi import junipermist:device/switch:Switch switch_one 17b46405-3a6d-4715-8bb4-6bb6d06f316a.d3c42998-9012-4859-9743-6b9bee475309
 * ```
 */
export declare class Switch extends pulumi.CustomResource {
    /**
     * Get an existing Switch 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?: SwitchState, opts?: pulumi.CustomResourceOptions): Switch;
    /**
     * Returns true if the given object is an instance of Switch.  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 Switch;
    /**
     * ACL policies applied to traffic handled by this switch
     */
    readonly aclPolicies: pulumi.Output<outputs.device.SwitchAclPolicy[] | undefined>;
    /**
     * ACL tags used by switch access policies
     */
    readonly aclTags: pulumi.Output<{
        [key: string]: outputs.device.SwitchAclTags;
    } | undefined>;
    /**
     * Additional CLI configuration commands to apply to this switch
     */
    readonly additionalConfigCmds: pulumi.Output<string[] | undefined>;
    /**
     * BGP routing configuration for this switch. Property key is the BGP session name
     */
    readonly bgpConfig: pulumi.Output<{
        [key: string]: outputs.device.SwitchBgpConfig;
    } | undefined>;
    /**
     * Port usage to assign to switch ports without any port usage assigned. Default: `default` to preserve default behavior
     */
    readonly defaultPortUsage: pulumi.Output<string>;
    readonly deviceId: pulumi.Output<string>;
    /**
     * DHCP snooping configuration for this switch
     */
    readonly dhcpSnooping: pulumi.Output<outputs.device.SwitchDhcpSnooping | undefined>;
    /**
     * DHCP server configuration served by this switch
     */
    readonly dhcpdConfig: pulumi.Output<outputs.device.SwitchDhcpdConfig | undefined>;
    /**
     * This disables the default behavior of a cloud-ready switch/gateway being managed/configured by Mist. Setting this to `true` means you want to disable the default behavior and do not want the device to be Mist-managed.
     *
     * @deprecated This attribute is being deprecated, please use `mistConfigured` instead
     */
    readonly disableAutoConfig: pulumi.Output<boolean>;
    /**
     * DNS servers configured for this switch
     */
    readonly dnsServers: pulumi.Output<string[]>;
    /**
     * DNS search suffixes configured for this switch
     */
    readonly dnsSuffixes: pulumi.Output<string[]>;
    /**
     * Additional IPv4 routes configured on this switch
     */
    readonly extraRoutes: pulumi.Output<{
        [key: string]: outputs.device.SwitchExtraRoutes;
    } | undefined>;
    /**
     * Additional IPv6 routes configured on this switch
     */
    readonly extraRoutes6: pulumi.Output<{
        [key: string]: outputs.device.SwitchExtraRoutes6;
    } | undefined>;
    /**
     * First custom image URL associated with the switch
     */
    readonly image1Url: pulumi.Output<string>;
    /**
     * Second custom image URL associated with the switch
     */
    readonly image2Url: pulumi.Output<string>;
    /**
     * Third custom image URL associated with the switch
     */
    readonly image3Url: pulumi.Output<string>;
    /**
     * Management IP addressing settings for this switch
     */
    readonly ipConfig: pulumi.Output<outputs.device.SwitchIpConfig | undefined>;
    /**
     * Local port configuration settings for this switch
     */
    readonly localPortConfig: pulumi.Output<{
        [key: string]: outputs.device.SwitchLocalPortConfig;
    } | undefined>;
    /**
     * Switch MAC address used to identify the device
     */
    readonly mac: pulumi.Output<string>;
    /**
     * An adopted switch/gateway will not be managed/configured by Mist by default. Setting this parameter to `true` enables the adopted switch/gateway to be managed/configured by Mist. Deprecated in favour of mist_configured, which is more intuitive and can be used for both adopted and claimed devices.
     *
     * @deprecated This attribute is being deprecated, please use `mistConfigured` instead
     */
    readonly managed: pulumi.Output<boolean>;
    /**
     * Map where the device belongs to
     */
    readonly mapId: pulumi.Output<string | undefined>;
    /**
     * whether the device can be configured by Mist or not. This deprecates `managed` (for adopted device) and `disableAutoConfig` for claimed device)
     */
    readonly mistConfigured: pulumi.Output<boolean>;
    /**
     * Mist NAC settings applied to this switch
     */
    readonly mistNac: pulumi.Output<outputs.device.SwitchMistNac | undefined>;
    /**
     * Switch model reported for the device
     */
    readonly model: pulumi.Output<string>;
    /**
     * Friendly display name assigned to the switch
     */
    readonly name: pulumi.Output<string>;
    /**
     * Layer 3 networks configured for use by this switch
     */
    readonly networks: pulumi.Output<{
        [key: string]: outputs.device.SwitchNetworks;
    } | undefined>;
    /**
     * Free-form administrative notes for this switch
     */
    readonly notes: pulumi.Output<string | undefined>;
    /**
     * NTP servers used by this switch
     */
    readonly ntpServers: pulumi.Output<string[]>;
    /**
     * Out-of-band management IP configuration for this switch
     */
    readonly oobIpConfig: pulumi.Output<outputs.device.SwitchOobIpConfig | undefined>;
    /**
     * Organization that owns this switch
     */
    readonly orgId: pulumi.Output<string>;
    /**
     * OSPF area configuration for this switch
     */
    readonly ospfAreas: pulumi.Output<{
        [key: string]: outputs.device.SwitchOspfAreas;
    } | undefined>;
    /**
     * OSPF routing configuration for this switch
     */
    readonly ospfConfig: pulumi.Output<outputs.device.SwitchOspfConfig | undefined>;
    /**
     * Property key is the network name. Defines the additional IP Addresses configured on the device.
     */
    readonly otherIpConfigs: pulumi.Output<{
        [key: string]: outputs.device.SwitchOtherIpConfigs;
    } | undefined>;
    /**
     * Per-port wired configuration for this switch
     */
    readonly portConfig: pulumi.Output<{
        [key: string]: outputs.device.SwitchPortConfig;
    } | undefined>;
    /**
     * Per-port overrides for switch port usage attributes
     */
    readonly portConfigOverwrite: pulumi.Output<{
        [key: string]: outputs.device.SwitchPortConfigOverwrite;
    } | undefined>;
    /**
     * Port mirroring configuration for this switch
     */
    readonly portMirroring: pulumi.Output<{
        [key: string]: outputs.device.SwitchPortMirroring;
    } | undefined>;
    /**
     * Reusable switch port usage profiles available on this switch
     */
    readonly portUsages: pulumi.Output<{
        [key: string]: outputs.device.SwitchPortUsages;
    } | undefined>;
    /**
     * RADIUS authentication and accounting settings for this switch
     */
    readonly radiusConfig: pulumi.Output<outputs.device.SwitchRadiusConfig | undefined>;
    /**
     * Remote syslog settings for this switch
     */
    readonly remoteSyslog: pulumi.Output<outputs.device.SwitchRemoteSyslog | undefined>;
    /**
     * Deployment role label for this switch
     */
    readonly role: pulumi.Output<string | undefined>;
    /**
     * Used for OSPF / BGP / EVPN
     */
    readonly routerId: pulumi.Output<string>;
    /**
     * Routing policies applied by this switch
     */
    readonly routingPolicies: pulumi.Output<{
        [key: string]: outputs.device.SwitchRoutingPolicies;
    } | undefined>;
    /**
     * Manufacturer serial number for the switch
     */
    readonly serial: pulumi.Output<string>;
    /**
     * Site where this switch is assigned
     */
    readonly siteId: pulumi.Output<string>;
    /**
     * SNMP configuration for this switch
     */
    readonly snmpConfig: pulumi.Output<outputs.device.SwitchSnmpConfig | undefined>;
    /**
     * Spanning Tree Protocol configuration for this switch
     */
    readonly stpConfig: pulumi.Output<outputs.device.SwitchStpConfig | undefined>;
    /**
     * Management-plane settings for this switch
     */
    readonly switchMgmt: pulumi.Output<outputs.device.SwitchSwitchMgmt | undefined>;
    /**
     * Device type discriminator for switch records
     */
    readonly type: pulumi.Output<string>;
    /**
     * Whether to use it for snmp / syslog / tacplus / radius
     */
    readonly useRouterIdAsSourceIp: pulumi.Output<boolean>;
    /**
     * Variable values that override site variables for this switch
     */
    readonly vars: pulumi.Output<{
        [key: string]: string;
    } | undefined>;
    /**
     * Virtual Chassis membership and provisioning settings for this switch
     */
    readonly virtualChassis: pulumi.Output<outputs.device.SwitchVirtualChassis | undefined>;
    /**
     * VRF configuration applied to this switch
     */
    readonly vrfConfig: pulumi.Output<outputs.device.SwitchVrfConfig | undefined>;
    /**
     * VRF instances configured on this switch
     */
    readonly vrfInstances: pulumi.Output<{
        [key: string]: outputs.device.SwitchVrfInstances;
    } | undefined>;
    /**
     * VRRP configuration applied to this switch
     */
    readonly vrrpConfig: pulumi.Output<outputs.device.SwitchVrrpConfig | undefined>;
    /**
     * Horizontal map position of the switch, in pixels
     */
    readonly x: pulumi.Output<number | undefined>;
    /**
     * Vertical map position of the switch, in pixels
     */
    readonly y: pulumi.Output<number | undefined>;
    /**
     * Create a Switch 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: SwitchArgs, opts?: pulumi.CustomResourceOptions);
}
/**
 * Input properties used for looking up and filtering Switch resources.
 */
export interface SwitchState {
    /**
     * ACL policies applied to traffic handled by this switch
     */
    aclPolicies?: pulumi.Input<pulumi.Input<inputs.device.SwitchAclPolicy>[] | undefined>;
    /**
     * ACL tags used by switch access policies
     */
    aclTags?: pulumi.Input<{
        [key: string]: pulumi.Input<inputs.device.SwitchAclTags>;
    } | undefined>;
    /**
     * Additional CLI configuration commands to apply to this switch
     */
    additionalConfigCmds?: pulumi.Input<pulumi.Input<string>[] | undefined>;
    /**
     * BGP routing configuration for this switch. Property key is the BGP session name
     */
    bgpConfig?: pulumi.Input<{
        [key: string]: pulumi.Input<inputs.device.SwitchBgpConfig>;
    } | undefined>;
    /**
     * Port usage to assign to switch ports without any port usage assigned. Default: `default` to preserve default behavior
     */
    defaultPortUsage?: pulumi.Input<string | undefined>;
    deviceId?: pulumi.Input<string | undefined>;
    /**
     * DHCP snooping configuration for this switch
     */
    dhcpSnooping?: pulumi.Input<inputs.device.SwitchDhcpSnooping | undefined>;
    /**
     * DHCP server configuration served by this switch
     */
    dhcpdConfig?: pulumi.Input<inputs.device.SwitchDhcpdConfig | undefined>;
    /**
     * This disables the default behavior of a cloud-ready switch/gateway being managed/configured by Mist. Setting this to `true` means you want to disable the default behavior and do not want the device to be Mist-managed.
     *
     * @deprecated This attribute is being deprecated, please use `mistConfigured` instead
     */
    disableAutoConfig?: pulumi.Input<boolean | undefined>;
    /**
     * DNS servers configured for this switch
     */
    dnsServers?: pulumi.Input<pulumi.Input<string>[] | undefined>;
    /**
     * DNS search suffixes configured for this switch
     */
    dnsSuffixes?: pulumi.Input<pulumi.Input<string>[] | undefined>;
    /**
     * Additional IPv4 routes configured on this switch
     */
    extraRoutes?: pulumi.Input<{
        [key: string]: pulumi.Input<inputs.device.SwitchExtraRoutes>;
    } | undefined>;
    /**
     * Additional IPv6 routes configured on this switch
     */
    extraRoutes6?: pulumi.Input<{
        [key: string]: pulumi.Input<inputs.device.SwitchExtraRoutes6>;
    } | undefined>;
    /**
     * First custom image URL associated with the switch
     */
    image1Url?: pulumi.Input<string | undefined>;
    /**
     * Second custom image URL associated with the switch
     */
    image2Url?: pulumi.Input<string | undefined>;
    /**
     * Third custom image URL associated with the switch
     */
    image3Url?: pulumi.Input<string | undefined>;
    /**
     * Management IP addressing settings for this switch
     */
    ipConfig?: pulumi.Input<inputs.device.SwitchIpConfig | undefined>;
    /**
     * Local port configuration settings for this switch
     */
    localPortConfig?: pulumi.Input<{
        [key: string]: pulumi.Input<inputs.device.SwitchLocalPortConfig>;
    } | undefined>;
    /**
     * Switch MAC address used to identify the device
     */
    mac?: pulumi.Input<string | undefined>;
    /**
     * An adopted switch/gateway will not be managed/configured by Mist by default. Setting this parameter to `true` enables the adopted switch/gateway to be managed/configured by Mist. Deprecated in favour of mist_configured, which is more intuitive and can be used for both adopted and claimed devices.
     *
     * @deprecated This attribute is being deprecated, please use `mistConfigured` instead
     */
    managed?: pulumi.Input<boolean | undefined>;
    /**
     * Map where the device belongs to
     */
    mapId?: pulumi.Input<string | undefined>;
    /**
     * whether the device can be configured by Mist or not. This deprecates `managed` (for adopted device) and `disableAutoConfig` for claimed device)
     */
    mistConfigured?: pulumi.Input<boolean | undefined>;
    /**
     * Mist NAC settings applied to this switch
     */
    mistNac?: pulumi.Input<inputs.device.SwitchMistNac | undefined>;
    /**
     * Switch model reported for the device
     */
    model?: pulumi.Input<string | undefined>;
    /**
     * Friendly display name assigned to the switch
     */
    name?: pulumi.Input<string | undefined>;
    /**
     * Layer 3 networks configured for use by this switch
     */
    networks?: pulumi.Input<{
        [key: string]: pulumi.Input<inputs.device.SwitchNetworks>;
    } | undefined>;
    /**
     * Free-form administrative notes for this switch
     */
    notes?: pulumi.Input<string | undefined>;
    /**
     * NTP servers used by this switch
     */
    ntpServers?: pulumi.Input<pulumi.Input<string>[] | undefined>;
    /**
     * Out-of-band management IP configuration for this switch
     */
    oobIpConfig?: pulumi.Input<inputs.device.SwitchOobIpConfig | undefined>;
    /**
     * Organization that owns this switch
     */
    orgId?: pulumi.Input<string | undefined>;
    /**
     * OSPF area configuration for this switch
     */
    ospfAreas?: pulumi.Input<{
        [key: string]: pulumi.Input<inputs.device.SwitchOspfAreas>;
    } | undefined>;
    /**
     * OSPF routing configuration for this switch
     */
    ospfConfig?: pulumi.Input<inputs.device.SwitchOspfConfig | undefined>;
    /**
     * Property key is the network name. Defines the additional IP Addresses configured on the device.
     */
    otherIpConfigs?: pulumi.Input<{
        [key: string]: pulumi.Input<inputs.device.SwitchOtherIpConfigs>;
    } | undefined>;
    /**
     * Per-port wired configuration for this switch
     */
    portConfig?: pulumi.Input<{
        [key: string]: pulumi.Input<inputs.device.SwitchPortConfig>;
    } | undefined>;
    /**
     * Per-port overrides for switch port usage attributes
     */
    portConfigOverwrite?: pulumi.Input<{
        [key: string]: pulumi.Input<inputs.device.SwitchPortConfigOverwrite>;
    } | undefined>;
    /**
     * Port mirroring configuration for this switch
     */
    portMirroring?: pulumi.Input<{
        [key: string]: pulumi.Input<inputs.device.SwitchPortMirroring>;
    } | undefined>;
    /**
     * Reusable switch port usage profiles available on this switch
     */
    portUsages?: pulumi.Input<{
        [key: string]: pulumi.Input<inputs.device.SwitchPortUsages>;
    } | undefined>;
    /**
     * RADIUS authentication and accounting settings for this switch
     */
    radiusConfig?: pulumi.Input<inputs.device.SwitchRadiusConfig | undefined>;
    /**
     * Remote syslog settings for this switch
     */
    remoteSyslog?: pulumi.Input<inputs.device.SwitchRemoteSyslog | undefined>;
    /**
     * Deployment role label for this switch
     */
    role?: pulumi.Input<string | undefined>;
    /**
     * Used for OSPF / BGP / EVPN
     */
    routerId?: pulumi.Input<string | undefined>;
    /**
     * Routing policies applied by this switch
     */
    routingPolicies?: pulumi.Input<{
        [key: string]: pulumi.Input<inputs.device.SwitchRoutingPolicies>;
    } | undefined>;
    /**
     * Manufacturer serial number for the switch
     */
    serial?: pulumi.Input<string | undefined>;
    /**
     * Site where this switch is assigned
     */
    siteId?: pulumi.Input<string | undefined>;
    /**
     * SNMP configuration for this switch
     */
    snmpConfig?: pulumi.Input<inputs.device.SwitchSnmpConfig | undefined>;
    /**
     * Spanning Tree Protocol configuration for this switch
     */
    stpConfig?: pulumi.Input<inputs.device.SwitchStpConfig | undefined>;
    /**
     * Management-plane settings for this switch
     */
    switchMgmt?: pulumi.Input<inputs.device.SwitchSwitchMgmt | undefined>;
    /**
     * Device type discriminator for switch records
     */
    type?: pulumi.Input<string | undefined>;
    /**
     * Whether to use it for snmp / syslog / tacplus / radius
     */
    useRouterIdAsSourceIp?: pulumi.Input<boolean | undefined>;
    /**
     * Variable values that override site variables for this switch
     */
    vars?: pulumi.Input<{
        [key: string]: pulumi.Input<string>;
    } | undefined>;
    /**
     * Virtual Chassis membership and provisioning settings for this switch
     */
    virtualChassis?: pulumi.Input<inputs.device.SwitchVirtualChassis | undefined>;
    /**
     * VRF configuration applied to this switch
     */
    vrfConfig?: pulumi.Input<inputs.device.SwitchVrfConfig | undefined>;
    /**
     * VRF instances configured on this switch
     */
    vrfInstances?: pulumi.Input<{
        [key: string]: pulumi.Input<inputs.device.SwitchVrfInstances>;
    } | undefined>;
    /**
     * VRRP configuration applied to this switch
     */
    vrrpConfig?: pulumi.Input<inputs.device.SwitchVrrpConfig | undefined>;
    /**
     * Horizontal map position of the switch, in pixels
     */
    x?: pulumi.Input<number | undefined>;
    /**
     * Vertical map position of the switch, in pixels
     */
    y?: pulumi.Input<number | undefined>;
}
/**
 * The set of arguments for constructing a Switch resource.
 */
export interface SwitchArgs {
    /**
     * ACL policies applied to traffic handled by this switch
     */
    aclPolicies?: pulumi.Input<pulumi.Input<inputs.device.SwitchAclPolicy>[] | undefined>;
    /**
     * ACL tags used by switch access policies
     */
    aclTags?: pulumi.Input<{
        [key: string]: pulumi.Input<inputs.device.SwitchAclTags>;
    } | undefined>;
    /**
     * Additional CLI configuration commands to apply to this switch
     */
    additionalConfigCmds?: pulumi.Input<pulumi.Input<string>[] | undefined>;
    /**
     * BGP routing configuration for this switch. Property key is the BGP session name
     */
    bgpConfig?: pulumi.Input<{
        [key: string]: pulumi.Input<inputs.device.SwitchBgpConfig>;
    } | undefined>;
    /**
     * Port usage to assign to switch ports without any port usage assigned. Default: `default` to preserve default behavior
     */
    defaultPortUsage?: pulumi.Input<string | undefined>;
    deviceId: pulumi.Input<string>;
    /**
     * DHCP snooping configuration for this switch
     */
    dhcpSnooping?: pulumi.Input<inputs.device.SwitchDhcpSnooping | undefined>;
    /**
     * DHCP server configuration served by this switch
     */
    dhcpdConfig?: pulumi.Input<inputs.device.SwitchDhcpdConfig | undefined>;
    /**
     * This disables the default behavior of a cloud-ready switch/gateway being managed/configured by Mist. Setting this to `true` means you want to disable the default behavior and do not want the device to be Mist-managed.
     *
     * @deprecated This attribute is being deprecated, please use `mistConfigured` instead
     */
    disableAutoConfig?: pulumi.Input<boolean | undefined>;
    /**
     * DNS servers configured for this switch
     */
    dnsServers?: pulumi.Input<pulumi.Input<string>[] | undefined>;
    /**
     * DNS search suffixes configured for this switch
     */
    dnsSuffixes?: pulumi.Input<pulumi.Input<string>[] | undefined>;
    /**
     * Additional IPv4 routes configured on this switch
     */
    extraRoutes?: pulumi.Input<{
        [key: string]: pulumi.Input<inputs.device.SwitchExtraRoutes>;
    } | undefined>;
    /**
     * Additional IPv6 routes configured on this switch
     */
    extraRoutes6?: pulumi.Input<{
        [key: string]: pulumi.Input<inputs.device.SwitchExtraRoutes6>;
    } | undefined>;
    /**
     * Management IP addressing settings for this switch
     */
    ipConfig?: pulumi.Input<inputs.device.SwitchIpConfig | undefined>;
    /**
     * Local port configuration settings for this switch
     */
    localPortConfig?: pulumi.Input<{
        [key: string]: pulumi.Input<inputs.device.SwitchLocalPortConfig>;
    } | undefined>;
    /**
     * An adopted switch/gateway will not be managed/configured by Mist by default. Setting this parameter to `true` enables the adopted switch/gateway to be managed/configured by Mist. Deprecated in favour of mist_configured, which is more intuitive and can be used for both adopted and claimed devices.
     *
     * @deprecated This attribute is being deprecated, please use `mistConfigured` instead
     */
    managed?: pulumi.Input<boolean | undefined>;
    /**
     * Map where the device belongs to
     */
    mapId?: pulumi.Input<string | undefined>;
    /**
     * whether the device can be configured by Mist or not. This deprecates `managed` (for adopted device) and `disableAutoConfig` for claimed device)
     */
    mistConfigured?: pulumi.Input<boolean | undefined>;
    /**
     * Mist NAC settings applied to this switch
     */
    mistNac?: pulumi.Input<inputs.device.SwitchMistNac | undefined>;
    /**
     * Friendly display name assigned to the switch
     */
    name?: pulumi.Input<string | undefined>;
    /**
     * Layer 3 networks configured for use by this switch
     */
    networks?: pulumi.Input<{
        [key: string]: pulumi.Input<inputs.device.SwitchNetworks>;
    } | undefined>;
    /**
     * Free-form administrative notes for this switch
     */
    notes?: pulumi.Input<string | undefined>;
    /**
     * NTP servers used by this switch
     */
    ntpServers?: pulumi.Input<pulumi.Input<string>[] | undefined>;
    /**
     * Out-of-band management IP configuration for this switch
     */
    oobIpConfig?: pulumi.Input<inputs.device.SwitchOobIpConfig | undefined>;
    /**
     * OSPF area configuration for this switch
     */
    ospfAreas?: pulumi.Input<{
        [key: string]: pulumi.Input<inputs.device.SwitchOspfAreas>;
    } | undefined>;
    /**
     * OSPF routing configuration for this switch
     */
    ospfConfig?: pulumi.Input<inputs.device.SwitchOspfConfig | undefined>;
    /**
     * Property key is the network name. Defines the additional IP Addresses configured on the device.
     */
    otherIpConfigs?: pulumi.Input<{
        [key: string]: pulumi.Input<inputs.device.SwitchOtherIpConfigs>;
    } | undefined>;
    /**
     * Per-port wired configuration for this switch
     */
    portConfig?: pulumi.Input<{
        [key: string]: pulumi.Input<inputs.device.SwitchPortConfig>;
    } | undefined>;
    /**
     * Per-port overrides for switch port usage attributes
     */
    portConfigOverwrite?: pulumi.Input<{
        [key: string]: pulumi.Input<inputs.device.SwitchPortConfigOverwrite>;
    } | undefined>;
    /**
     * Port mirroring configuration for this switch
     */
    portMirroring?: pulumi.Input<{
        [key: string]: pulumi.Input<inputs.device.SwitchPortMirroring>;
    } | undefined>;
    /**
     * Reusable switch port usage profiles available on this switch
     */
    portUsages?: pulumi.Input<{
        [key: string]: pulumi.Input<inputs.device.SwitchPortUsages>;
    } | undefined>;
    /**
     * RADIUS authentication and accounting settings for this switch
     */
    radiusConfig?: pulumi.Input<inputs.device.SwitchRadiusConfig | undefined>;
    /**
     * Remote syslog settings for this switch
     */
    remoteSyslog?: pulumi.Input<inputs.device.SwitchRemoteSyslog | undefined>;
    /**
     * Deployment role label for this switch
     */
    role?: pulumi.Input<string | undefined>;
    /**
     * Used for OSPF / BGP / EVPN
     */
    routerId?: pulumi.Input<string | undefined>;
    /**
     * Routing policies applied by this switch
     */
    routingPolicies?: pulumi.Input<{
        [key: string]: pulumi.Input<inputs.device.SwitchRoutingPolicies>;
    } | undefined>;
    /**
     * Site where this switch is assigned
     */
    siteId: pulumi.Input<string>;
    /**
     * SNMP configuration for this switch
     */
    snmpConfig?: pulumi.Input<inputs.device.SwitchSnmpConfig | undefined>;
    /**
     * Spanning Tree Protocol configuration for this switch
     */
    stpConfig?: pulumi.Input<inputs.device.SwitchStpConfig | undefined>;
    /**
     * Management-plane settings for this switch
     */
    switchMgmt?: pulumi.Input<inputs.device.SwitchSwitchMgmt | undefined>;
    /**
     * Whether to use it for snmp / syslog / tacplus / radius
     */
    useRouterIdAsSourceIp?: pulumi.Input<boolean | undefined>;
    /**
     * Variable values that override site variables for this switch
     */
    vars?: pulumi.Input<{
        [key: string]: pulumi.Input<string>;
    } | undefined>;
    /**
     * Virtual Chassis membership and provisioning settings for this switch
     */
    virtualChassis?: pulumi.Input<inputs.device.SwitchVirtualChassis | undefined>;
    /**
     * VRF configuration applied to this switch
     */
    vrfConfig?: pulumi.Input<inputs.device.SwitchVrfConfig | undefined>;
    /**
     * VRF instances configured on this switch
     */
    vrfInstances?: pulumi.Input<{
        [key: string]: pulumi.Input<inputs.device.SwitchVrfInstances>;
    } | undefined>;
    /**
     * VRRP configuration applied to this switch
     */
    vrrpConfig?: pulumi.Input<inputs.device.SwitchVrrpConfig | undefined>;
    /**
     * Horizontal map position of the switch, in pixels
     */
    x?: pulumi.Input<number | undefined>;
    /**
     * Vertical map position of the switch, in pixels
     */
    y?: pulumi.Input<number | undefined>;
}
//# sourceMappingURL=switch.d.ts.map