def __init__(__self__, auto_scale_configuration=None, etag=None, express_route_connections=None, id=None, location=None, name=None, provisioning_state=None, tags=None, type=None, virtual_hub=None):
    if (auto_scale_configuration and (not isinstance(auto_scale_configuration, dict))):
        raise TypeError("Expected argument 'auto_scale_configuration' to be a dict")
    pulumi.set(__self__, 'auto_scale_configuration', auto_scale_configuration)
    if (etag and (not isinstance(etag, str))):
        raise TypeError("Expected argument 'etag' to be a str")
    pulumi.set(__self__, 'etag', etag)
    if (express_route_connections and (not isinstance(express_route_connections, list))):
        raise TypeError("Expected argument 'express_route_connections' to be a list")
    pulumi.set(__self__, 'express_route_connections', express_route_connections)
    if (id and (not isinstance(id, str))):
        raise TypeError("Expected argument 'id' to be a str")
    pulumi.set(__self__, 'id', id)
    if (location and (not isinstance(location, str))):
        raise TypeError("Expected argument 'location' to be a str")
    pulumi.set(__self__, 'location', location)
    if (name and (not isinstance(name, str))):
        raise TypeError("Expected argument 'name' to be a str")
    pulumi.set(__self__, 'name', name)
    if (provisioning_state and (not isinstance(provisioning_state, str))):
        raise TypeError("Expected argument 'provisioning_state' to be a str")
    pulumi.set(__self__, 'provisioning_state', provisioning_state)
    if (tags and (not isinstance(tags, dict))):
        raise TypeError("Expected argument 'tags' to be a dict")
    pulumi.set(__self__, 'tags', tags)
    if (type and (not isinstance(type, str))):
        raise TypeError("Expected argument 'type' to be a str")
    pulumi.set(__self__, 'type', type)
    if (virtual_hub and (not isinstance(virtual_hub, dict))):
        raise TypeError("Expected argument 'virtual_hub' to be a dict")
    pulumi.set(__self__, 'virtual_hub', virtual_hub)
def __init__(__self__, auto_scale_configuration=None, etag=None, express_route_connections=None, id=None, location=None, name=None, provisioning_state=None, tags=None, type=None, virtual_hub=None):
    if (auto_scale_configuration and (not isinstance(auto_scale_configuration, dict))):
        raise TypeError("Expected argument 'auto_scale_configuration' to be a dict")
    pulumi.set(__self__, 'auto_scale_configuration', auto_scale_configuration)
    if (etag and (not isinstance(etag, str))):
        raise TypeError("Expected argument 'etag' to be a str")
    pulumi.set(__self__, 'etag', etag)
    if (express_route_connections and (not isinstance(express_route_connections, list))):
        raise TypeError("Expected argument 'express_route_connections' to be a list")
    pulumi.set(__self__, 'express_route_connections', express_route_connections)
    if (id and (not isinstance(id, str))):
        raise TypeError("Expected argument 'id' to be a str")
    pulumi.set(__self__, 'id', id)
    if (location and (not isinstance(location, str))):
        raise TypeError("Expected argument 'location' to be a str")
    pulumi.set(__self__, 'location', location)
    if (name and (not isinstance(name, str))):
        raise TypeError("Expected argument 'name' to be a str")
    pulumi.set(__self__, 'name', name)
    if (provisioning_state and (not isinstance(provisioning_state, str))):
        raise TypeError("Expected argument 'provisioning_state' to be a str")
    pulumi.set(__self__, 'provisioning_state', provisioning_state)
    if (tags and (not isinstance(tags, dict))):
        raise TypeError("Expected argument 'tags' to be a dict")
    pulumi.set(__self__, 'tags', tags)
    if (type and (not isinstance(type, str))):
        raise TypeError("Expected argument 'type' to be a str")
    pulumi.set(__self__, 'type', type)
    if (virtual_hub and (not isinstance(virtual_hub, dict))):
        raise TypeError("Expected argument 'virtual_hub' to be a dict")
    pulumi.set(__self__, 'virtual_hub', virtual_hub)