# 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
    AccessPolicy,
    AccountImmutabilityPolicyProperties,
    AccountLimits,
    AccountSasParameters,
    AccountUsage,
    AccountUsageElements,
    ActiveDirectoryProperties,
    AdvancedPlatformMetricsRule,
    AdvancedPlatformMetricsRuleConfig,
    AdvancedPlatformMetricsRuleProperties,
    AzureEntityResource,
    AzureFilesIdentityBasedAuthentication,
    BlobContainer,
    BlobInventoryCreationTime,
    BlobInventoryPolicy,
    BlobInventoryPolicyDefinition,
    BlobInventoryPolicyFilter,
    BlobInventoryPolicyProperties,
    BlobInventoryPolicyRule,
    BlobInventoryPolicySchema,
    BlobRestoreParameters,
    BlobRestoreRange,
    BlobRestoreStatus,
    BlobServiceProperties,
    BlobServicePropertiesProperties,
    BurstingConstants,
    ChangeFeed,
    CheckNameAvailabilityResult,
    CloudError,
    CloudErrorBody,
    Connector,
    ConnectorUpdate,
    ContainerProperties,
    CorsRule,
    CorsRules,
    CustomDomain,
    DataShare,
    DataShareConnection,
    DataShareSource,
    DataShareSourceUpdate,
    DataShareUpdate,
    DateAfterCreation,
    DateAfterModification,
    DeleteRetentionPolicy,
    DeletedAccount,
    DeletedAccountProperties,
    DeletedShare,
    Dimension,
    DualStackEndpointPreference,
    Encryption,
    EncryptionIdentity,
    EncryptionInTransit,
    EncryptionScope,
    EncryptionScopeKeyVaultProperties,
    EncryptionScopeProperties,
    EncryptionService,
    EncryptionServices,
    Endpoints,
    ErrorAdditionalInfo,
    ErrorDetail,
    ErrorResponse,
    ErrorResponseAutoGenerated,
    ErrorResponseBody,
    ExecutionTarget,
    ExecutionTrigger,
    ExecutionTriggerUpdate,
    ExtendedLocation,
    FileServiceItems,
    FileServiceProperties,
    FileServicePropertiesProperties,
    FileServiceUsage,
    FileServiceUsageProperties,
    FileShare,
    FileShareItem,
    FileShareLimits,
    FileShareProperties,
    FileSharePropertiesFileSharePaidBursting,
    FileShareRecommendations,
    GeoPriorityReplicationStatus,
    GeoReplicationStats,
    IPRule,
    Identity,
    ImmutabilityPolicy,
    ImmutabilityPolicyProperties,
    ImmutabilityPolicyProperty,
    ImmutableStorageAccount,
    ImmutableStorageWithVersioning,
    KeyCreationTime,
    KeyPolicy,
    KeyVaultProperties,
    LastAccessTimeTrackingPolicy,
    LeaseContainerRequest,
    LeaseContainerResponse,
    LeaseShareRequest,
    LeaseShareResponse,
    LegalHold,
    LegalHoldProperties,
    ListAccountSasResponse,
    ListContainerItem,
    ListQueue,
    ListQueueProperties,
    ListQueueServices,
    ListServiceSasResponse,
    ListTableServices,
    LocalUser,
    LocalUserKeys,
    LocalUserProperties,
    LocalUserRegeneratePasswordResult,
    ManagedIdentityAuthProperties,
    ManagedIdentityAuthPropertiesUpdate,
    ManagementPolicy,
    ManagementPolicyAction,
    ManagementPolicyBaseBlob,
    ManagementPolicyDefinition,
    ManagementPolicyFilter,
    ManagementPolicyProperties,
    ManagementPolicyRule,
    ManagementPolicySchema,
    ManagementPolicySnapShot,
    ManagementPolicyVersion,
    MetricSpecification,
    Multichannel,
    NetworkRuleSet,
    NetworkSecurityPerimeter,
    NetworkSecurityPerimeterConfiguration,
    NetworkSecurityPerimeterConfigurationProperties,
    NetworkSecurityPerimeterConfigurationPropertiesProfile,
    NetworkSecurityPerimeterConfigurationPropertiesResourceAssociation,
    NfsSetting,
    NspAccessRule,
    NspAccessRuleProperties,
    NspAccessRulePropertiesSubscriptionsItem,
    ObjectReplicationPolicy,
    ObjectReplicationPolicyFilter,
    ObjectReplicationPolicyProperties,
    ObjectReplicationPolicyPropertiesMetrics,
    ObjectReplicationPolicyPropertiesPriorityReplication,
    ObjectReplicationPolicyPropertiesTagsReplication,
    ObjectReplicationPolicyRule,
    Operation,
    OperationDisplay,
    OperationProperties,
    PermissionScope,
    Placement,
    PrivateEndpoint,
    PrivateEndpointConnection,
    PrivateEndpointConnectionProperties,
    PrivateLinkResource,
    PrivateLinkResourceListResult,
    PrivateLinkResourceProperties,
    PrivateLinkServiceConnectionState,
    ProtectedAppendWritesHistory,
    ProtocolSettings,
    ProvisioningIssue,
    ProvisioningIssueProperties,
    ProxyResource,
    QueueProperties,
    QueueServiceProperties,
    QueueServicePropertiesProperties,
    ResourceAccessRule,
    ResourceAutoGenerated,
    RestorePolicyProperties,
    Restriction,
    RoutingPreference,
    SKUCapability,
    SasPolicy,
    ServiceSasParameters,
    ServiceSharedKeyAccessProperties,
    ServiceSpecification,
    SignedIdentifier,
    Sku,
    SkuInformation,
    SkuInformationLocationInfoItem,
    SmbOAuthSettings,
    SmbSetting,
    SshPublicKey,
    StaticWebsite,
    StorageAccount,
    StorageAccountCheckNameAvailabilityParameters,
    StorageAccountCreateParameters,
    StorageAccountInternetEndpoints,
    StorageAccountIpv6Endpoints,
    StorageAccountKey,
    StorageAccountListKeysResult,
    StorageAccountMicrosoftEndpoints,
    StorageAccountMigration,
    StorageAccountMigrationProperties,
    StorageAccountProperties,
    StorageAccountPropertiesCreateParameters,
    StorageAccountPropertiesUpdateParameters,
    StorageAccountRegenerateKeyParameters,
    StorageAccountSharedKeyAccessProperties,
    StorageAccountSkuConversionStatus,
    StorageAccountUpdateParameters,
    StorageConnectorAuthProperties,
    StorageConnectorAuthPropertiesUpdate,
    StorageConnectorConnection,
    StorageConnectorProperties,
    StorageConnectorPropertiesUpdate,
    StorageConnectorSource,
    StorageConnectorSourceUpdate,
    StorageDataCollaborationPolicyProperties,
    StorageDataShareAccessPolicy,
    StorageDataShareAsset,
    StorageDataShareProperties,
    StorageDataSharePropertiesUpdate,
    StorageQueue,
    StorageTaskAssignment,
    StorageTaskAssignmentExecutionContext,
    StorageTaskAssignmentProperties,
    StorageTaskAssignmentReport,
    StorageTaskAssignmentUpdateExecutionContext,
    StorageTaskAssignmentUpdateParameters,
    StorageTaskAssignmentUpdateProperties,
    StorageTaskAssignmentUpdateReport,
    StorageTaskReportInstance,
    StorageTaskReportProperties,
    SystemData,
    Table,
    TableAccessPolicy,
    TableProperties,
    TableServiceProperties,
    TableServicePropertiesProperties,
    TableSignedIdentifier,
    TagFilter,
    TagProperty,
    TestConnectionResponse,
    TestExistingConnectionRequest,
    TrackedResource,
    TrackedResourceUpdate,
    TriggerParameters,
    TriggerParametersUpdate,
    UpdateHistoryProperty,
    Usage,
    UsageName,
    UserAssignedIdentity,
    VirtualNetworkRule,
)

from ._enums import (  # type: ignore
    AccessTier,
    AccountImmutabilityPolicyState,
    AccountStatus,
    AccountType,
    AdvancedPlatformMetricsFilterType,
    AdvancedPlatformMetricsRuleType,
    AllowedCopyScope,
    AllowedMethods,
    BlobInventoryPolicyName,
    BlobRestoreProgressStatus,
    Bypass,
    CreatedByType,
    DefaultAction,
    DefaultSharePermission,
    DirectoryServiceOptions,
    DnsEndpointType,
    EnabledProtocols,
    EncryptionScopeSource,
    EncryptionScopeState,
    ExpirationAction,
    ExtendedLocationTypes,
    Format,
    GeoReplicationStatus,
    HttpProtocol,
    IdentityType,
    ImmutabilityPolicyState,
    ImmutabilityPolicyUpdateType,
    IntervalUnit,
    InventoryRuleType,
    IssueType,
    KeyPermission,
    KeySource,
    KeyType,
    Kind,
    LargeFileSharesState,
    LeaseContainerRequestAction,
    LeaseDuration,
    LeaseShareAction,
    LeaseState,
    LeaseStatus,
    ListContainersInclude,
    ListEncryptionScopesInclude,
    ListLocalUserIncludeParam,
    ManagementPolicyName,
    MetricsEmitted,
    MigrationName,
    MigrationState,
    MigrationStatus,
    MinimumTlsVersion,
    Name,
    NativeDataSharingProvisioningState,
    NetworkSecurityPerimeterConfigurationProvisioningState,
    NspAccessRuleDirection,
    ObjectType,
    Permissions,
    PostFailoverRedundancy,
    PostPlannedFailoverRedundancy,
    PrivateEndpointConnectionProvisioningState,
    PrivateEndpointServiceConnectionStatus,
    ProvisioningState,
    PublicAccess,
    PublicNetworkAccess,
    Reason,
    ReasonCode,
    ResourceAssociationAccessMode,
    RootSquashType,
    RoutingChoice,
    RuleType,
    RunResult,
    RunStatusEnum,
    Schedule,
    Services,
    Severity,
    ShareAccessTier,
    SignedResource,
    SignedResourceTypes,
    SkuConversionStatus,
    SkuName,
    SkuTier,
    State,
    StorageAccountExpand,
    StorageConnectorAuthType,
    StorageConnectorConnectionType,
    StorageConnectorDataSourceType,
    StorageConnectorSourceType,
    StorageConnectorState,
    StorageDataShareAccessPolicyPermission,
    StorageTaskAssignmentProvisioningState,
    TriggerType,
    UsageUnit,
    ZonePlacementPolicy,
)
from ._patch import __all__ as _patch_all
from ._patch import *
from ._patch import patch_sdk as _patch_sdk

__all__ = [
    "AccessPolicy",
    "AccountImmutabilityPolicyProperties",
    "AccountLimits",
    "AccountSasParameters",
    "AccountUsage",
    "AccountUsageElements",
    "ActiveDirectoryProperties",
    "AdvancedPlatformMetricsRule",
    "AdvancedPlatformMetricsRuleConfig",
    "AdvancedPlatformMetricsRuleProperties",
    "AzureEntityResource",
    "AzureFilesIdentityBasedAuthentication",
    "BlobContainer",
    "BlobInventoryCreationTime",
    "BlobInventoryPolicy",
    "BlobInventoryPolicyDefinition",
    "BlobInventoryPolicyFilter",
    "BlobInventoryPolicyProperties",
    "BlobInventoryPolicyRule",
    "BlobInventoryPolicySchema",
    "BlobRestoreParameters",
    "BlobRestoreRange",
    "BlobRestoreStatus",
    "BlobServiceProperties",
    "BlobServicePropertiesProperties",
    "BurstingConstants",
    "ChangeFeed",
    "CheckNameAvailabilityResult",
    "CloudError",
    "CloudErrorBody",
    "Connector",
    "ConnectorUpdate",
    "ContainerProperties",
    "CorsRule",
    "CorsRules",
    "CustomDomain",
    "DataShare",
    "DataShareConnection",
    "DataShareSource",
    "DataShareSourceUpdate",
    "DataShareUpdate",
    "DateAfterCreation",
    "DateAfterModification",
    "DeleteRetentionPolicy",
    "DeletedAccount",
    "DeletedAccountProperties",
    "DeletedShare",
    "Dimension",
    "DualStackEndpointPreference",
    "Encryption",
    "EncryptionIdentity",
    "EncryptionInTransit",
    "EncryptionScope",
    "EncryptionScopeKeyVaultProperties",
    "EncryptionScopeProperties",
    "EncryptionService",
    "EncryptionServices",
    "Endpoints",
    "ErrorAdditionalInfo",
    "ErrorDetail",
    "ErrorResponse",
    "ErrorResponseAutoGenerated",
    "ErrorResponseBody",
    "ExecutionTarget",
    "ExecutionTrigger",
    "ExecutionTriggerUpdate",
    "ExtendedLocation",
    "FileServiceItems",
    "FileServiceProperties",
    "FileServicePropertiesProperties",
    "FileServiceUsage",
    "FileServiceUsageProperties",
    "FileShare",
    "FileShareItem",
    "FileShareLimits",
    "FileShareProperties",
    "FileSharePropertiesFileSharePaidBursting",
    "FileShareRecommendations",
    "GeoPriorityReplicationStatus",
    "GeoReplicationStats",
    "IPRule",
    "Identity",
    "ImmutabilityPolicy",
    "ImmutabilityPolicyProperties",
    "ImmutabilityPolicyProperty",
    "ImmutableStorageAccount",
    "ImmutableStorageWithVersioning",
    "KeyCreationTime",
    "KeyPolicy",
    "KeyVaultProperties",
    "LastAccessTimeTrackingPolicy",
    "LeaseContainerRequest",
    "LeaseContainerResponse",
    "LeaseShareRequest",
    "LeaseShareResponse",
    "LegalHold",
    "LegalHoldProperties",
    "ListAccountSasResponse",
    "ListContainerItem",
    "ListQueue",
    "ListQueueProperties",
    "ListQueueServices",
    "ListServiceSasResponse",
    "ListTableServices",
    "LocalUser",
    "LocalUserKeys",
    "LocalUserProperties",
    "LocalUserRegeneratePasswordResult",
    "ManagedIdentityAuthProperties",
    "ManagedIdentityAuthPropertiesUpdate",
    "ManagementPolicy",
    "ManagementPolicyAction",
    "ManagementPolicyBaseBlob",
    "ManagementPolicyDefinition",
    "ManagementPolicyFilter",
    "ManagementPolicyProperties",
    "ManagementPolicyRule",
    "ManagementPolicySchema",
    "ManagementPolicySnapShot",
    "ManagementPolicyVersion",
    "MetricSpecification",
    "Multichannel",
    "NetworkRuleSet",
    "NetworkSecurityPerimeter",
    "NetworkSecurityPerimeterConfiguration",
    "NetworkSecurityPerimeterConfigurationProperties",
    "NetworkSecurityPerimeterConfigurationPropertiesProfile",
    "NetworkSecurityPerimeterConfigurationPropertiesResourceAssociation",
    "NfsSetting",
    "NspAccessRule",
    "NspAccessRuleProperties",
    "NspAccessRulePropertiesSubscriptionsItem",
    "ObjectReplicationPolicy",
    "ObjectReplicationPolicyFilter",
    "ObjectReplicationPolicyProperties",
    "ObjectReplicationPolicyPropertiesMetrics",
    "ObjectReplicationPolicyPropertiesPriorityReplication",
    "ObjectReplicationPolicyPropertiesTagsReplication",
    "ObjectReplicationPolicyRule",
    "Operation",
    "OperationDisplay",
    "OperationProperties",
    "PermissionScope",
    "Placement",
    "PrivateEndpoint",
    "PrivateEndpointConnection",
    "PrivateEndpointConnectionProperties",
    "PrivateLinkResource",
    "PrivateLinkResourceListResult",
    "PrivateLinkResourceProperties",
    "PrivateLinkServiceConnectionState",
    "ProtectedAppendWritesHistory",
    "ProtocolSettings",
    "ProvisioningIssue",
    "ProvisioningIssueProperties",
    "ProxyResource",
    "QueueProperties",
    "QueueServiceProperties",
    "QueueServicePropertiesProperties",
    "ResourceAccessRule",
    "ResourceAutoGenerated",
    "RestorePolicyProperties",
    "Restriction",
    "RoutingPreference",
    "SKUCapability",
    "SasPolicy",
    "ServiceSasParameters",
    "ServiceSharedKeyAccessProperties",
    "ServiceSpecification",
    "SignedIdentifier",
    "Sku",
    "SkuInformation",
    "SkuInformationLocationInfoItem",
    "SmbOAuthSettings",
    "SmbSetting",
    "SshPublicKey",
    "StaticWebsite",
    "StorageAccount",
    "StorageAccountCheckNameAvailabilityParameters",
    "StorageAccountCreateParameters",
    "StorageAccountInternetEndpoints",
    "StorageAccountIpv6Endpoints",
    "StorageAccountKey",
    "StorageAccountListKeysResult",
    "StorageAccountMicrosoftEndpoints",
    "StorageAccountMigration",
    "StorageAccountMigrationProperties",
    "StorageAccountProperties",
    "StorageAccountPropertiesCreateParameters",
    "StorageAccountPropertiesUpdateParameters",
    "StorageAccountRegenerateKeyParameters",
    "StorageAccountSharedKeyAccessProperties",
    "StorageAccountSkuConversionStatus",
    "StorageAccountUpdateParameters",
    "StorageConnectorAuthProperties",
    "StorageConnectorAuthPropertiesUpdate",
    "StorageConnectorConnection",
    "StorageConnectorProperties",
    "StorageConnectorPropertiesUpdate",
    "StorageConnectorSource",
    "StorageConnectorSourceUpdate",
    "StorageDataCollaborationPolicyProperties",
    "StorageDataShareAccessPolicy",
    "StorageDataShareAsset",
    "StorageDataShareProperties",
    "StorageDataSharePropertiesUpdate",
    "StorageQueue",
    "StorageTaskAssignment",
    "StorageTaskAssignmentExecutionContext",
    "StorageTaskAssignmentProperties",
    "StorageTaskAssignmentReport",
    "StorageTaskAssignmentUpdateExecutionContext",
    "StorageTaskAssignmentUpdateParameters",
    "StorageTaskAssignmentUpdateProperties",
    "StorageTaskAssignmentUpdateReport",
    "StorageTaskReportInstance",
    "StorageTaskReportProperties",
    "SystemData",
    "Table",
    "TableAccessPolicy",
    "TableProperties",
    "TableServiceProperties",
    "TableServicePropertiesProperties",
    "TableSignedIdentifier",
    "TagFilter",
    "TagProperty",
    "TestConnectionResponse",
    "TestExistingConnectionRequest",
    "TrackedResource",
    "TrackedResourceUpdate",
    "TriggerParameters",
    "TriggerParametersUpdate",
    "UpdateHistoryProperty",
    "Usage",
    "UsageName",
    "UserAssignedIdentity",
    "VirtualNetworkRule",
    "AccessTier",
    "AccountImmutabilityPolicyState",
    "AccountStatus",
    "AccountType",
    "AdvancedPlatformMetricsFilterType",
    "AdvancedPlatformMetricsRuleType",
    "AllowedCopyScope",
    "AllowedMethods",
    "BlobInventoryPolicyName",
    "BlobRestoreProgressStatus",
    "Bypass",
    "CreatedByType",
    "DefaultAction",
    "DefaultSharePermission",
    "DirectoryServiceOptions",
    "DnsEndpointType",
    "EnabledProtocols",
    "EncryptionScopeSource",
    "EncryptionScopeState",
    "ExpirationAction",
    "ExtendedLocationTypes",
    "Format",
    "GeoReplicationStatus",
    "HttpProtocol",
    "IdentityType",
    "ImmutabilityPolicyState",
    "ImmutabilityPolicyUpdateType",
    "IntervalUnit",
    "InventoryRuleType",
    "IssueType",
    "KeyPermission",
    "KeySource",
    "KeyType",
    "Kind",
    "LargeFileSharesState",
    "LeaseContainerRequestAction",
    "LeaseDuration",
    "LeaseShareAction",
    "LeaseState",
    "LeaseStatus",
    "ListContainersInclude",
    "ListEncryptionScopesInclude",
    "ListLocalUserIncludeParam",
    "ManagementPolicyName",
    "MetricsEmitted",
    "MigrationName",
    "MigrationState",
    "MigrationStatus",
    "MinimumTlsVersion",
    "Name",
    "NativeDataSharingProvisioningState",
    "NetworkSecurityPerimeterConfigurationProvisioningState",
    "NspAccessRuleDirection",
    "ObjectType",
    "Permissions",
    "PostFailoverRedundancy",
    "PostPlannedFailoverRedundancy",
    "PrivateEndpointConnectionProvisioningState",
    "PrivateEndpointServiceConnectionStatus",
    "ProvisioningState",
    "PublicAccess",
    "PublicNetworkAccess",
    "Reason",
    "ReasonCode",
    "ResourceAssociationAccessMode",
    "RootSquashType",
    "RoutingChoice",
    "RuleType",
    "RunResult",
    "RunStatusEnum",
    "Schedule",
    "Services",
    "Severity",
    "ShareAccessTier",
    "SignedResource",
    "SignedResourceTypes",
    "SkuConversionStatus",
    "SkuName",
    "SkuTier",
    "State",
    "StorageAccountExpand",
    "StorageConnectorAuthType",
    "StorageConnectorConnectionType",
    "StorageConnectorDataSourceType",
    "StorageConnectorSourceType",
    "StorageConnectorState",
    "StorageDataShareAccessPolicyPermission",
    "StorageTaskAssignmentProvisioningState",
    "TriggerType",
    "UsageUnit",
    "ZonePlacementPolicy",
]
__all__.extend([p for p in _patch_all if p not in __all__])  # pyright: ignore
_patch_sdk()
