# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for license information.
# Code generated by Microsoft (R) Python Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
# pylint: disable=wrong-import-position

from typing import TYPE_CHECKING

if TYPE_CHECKING:
    from ._patch import *  # pylint: disable=unused-wildcard-import


from ._models import (  # type: ignore
    CloudError,
    CloudErrorBody,
    DnsForwardingRuleset,
    DnsForwardingRulesetPatch,
    DnsForwardingRulesetProperties,
    DnsResolver,
    DnsResolverDomainList,
    DnsResolverDomainListBulk,
    DnsResolverDomainListBulkProperties,
    DnsResolverDomainListPatch,
    DnsResolverDomainListPatchProperties,
    DnsResolverDomainListProperties,
    DnsResolverPatch,
    DnsResolverPolicy,
    DnsResolverPolicyPatch,
    DnsResolverPolicyProperties,
    DnsResolverPolicyVirtualNetworkLink,
    DnsResolverPolicyVirtualNetworkLinkPatch,
    DnsResolverPolicyVirtualNetworkLinkProperties,
    DnsResolverProperties,
    DnsSecurityRule,
    DnsSecurityRuleAction,
    DnsSecurityRulePatch,
    DnsSecurityRulePatchProperties,
    DnsSecurityRuleProperties,
    ErrorAdditionalInfo,
    ErrorDetail,
    ErrorResponse,
    ForwardingRule,
    ForwardingRulePatch,
    ForwardingRulePatchProperties,
    ForwardingRuleProperties,
    InboundEndpoint,
    InboundEndpointPatch,
    InboundEndpointProperties,
    IpConfiguration,
    OutboundEndpoint,
    OutboundEndpointPatch,
    OutboundEndpointProperties,
    ProxyResource,
    Resource,
    SubResource,
    SystemData,
    TargetDnsServer,
    TrackedResource,
    VirtualNetworkDnsForwardingRuleset,
    VirtualNetworkLink,
    VirtualNetworkLinkPatch,
    VirtualNetworkLinkPatchProperties,
    VirtualNetworkLinkProperties,
    VirtualNetworkLinkSubResourceProperties,
)

from ._enums import (  # type: ignore
    Action,
    ActionType,
    CreatedByType,
    DnsResolverState,
    DnsSecurityRuleState,
    ForwardingRuleState,
    IpAllocationMethod,
    ManagedDomainList,
    ProvisioningState,
)
from ._patch import __all__ as _patch_all
from ._patch import *
from ._patch import patch_sdk as _patch_sdk

__all__ = [
    "CloudError",
    "CloudErrorBody",
    "DnsForwardingRuleset",
    "DnsForwardingRulesetPatch",
    "DnsForwardingRulesetProperties",
    "DnsResolver",
    "DnsResolverDomainList",
    "DnsResolverDomainListBulk",
    "DnsResolverDomainListBulkProperties",
    "DnsResolverDomainListPatch",
    "DnsResolverDomainListPatchProperties",
    "DnsResolverDomainListProperties",
    "DnsResolverPatch",
    "DnsResolverPolicy",
    "DnsResolverPolicyPatch",
    "DnsResolverPolicyProperties",
    "DnsResolverPolicyVirtualNetworkLink",
    "DnsResolverPolicyVirtualNetworkLinkPatch",
    "DnsResolverPolicyVirtualNetworkLinkProperties",
    "DnsResolverProperties",
    "DnsSecurityRule",
    "DnsSecurityRuleAction",
    "DnsSecurityRulePatch",
    "DnsSecurityRulePatchProperties",
    "DnsSecurityRuleProperties",
    "ErrorAdditionalInfo",
    "ErrorDetail",
    "ErrorResponse",
    "ForwardingRule",
    "ForwardingRulePatch",
    "ForwardingRulePatchProperties",
    "ForwardingRuleProperties",
    "InboundEndpoint",
    "InboundEndpointPatch",
    "InboundEndpointProperties",
    "IpConfiguration",
    "OutboundEndpoint",
    "OutboundEndpointPatch",
    "OutboundEndpointProperties",
    "ProxyResource",
    "Resource",
    "SubResource",
    "SystemData",
    "TargetDnsServer",
    "TrackedResource",
    "VirtualNetworkDnsForwardingRuleset",
    "VirtualNetworkLink",
    "VirtualNetworkLinkPatch",
    "VirtualNetworkLinkPatchProperties",
    "VirtualNetworkLinkProperties",
    "VirtualNetworkLinkSubResourceProperties",
    "Action",
    "ActionType",
    "CreatedByType",
    "DnsResolverState",
    "DnsSecurityRuleState",
    "ForwardingRuleState",
    "IpAllocationMethod",
    "ManagedDomainList",
    "ProvisioningState",
]
__all__.extend([p for p in _patch_all if p not in __all__])  # pyright: ignore
_patch_sdk()
