# pylint: disable=too-many-lines
# 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.
# --------------------------------------------------------------------------

from copy import deepcopy
import sys
from typing import Any, Awaitable, Optional, TYPE_CHECKING, cast

from azure.core.pipeline import policies
from azure.core.rest import AsyncHttpResponse, HttpRequest
from azure.core.settings import settings
from azure.mgmt.core import AsyncARMPipelineClient
from azure.mgmt.core.policies import AsyncARMAutoResourceProviderRegistrationPolicy
from azure.mgmt.core.tools import get_arm_endpoints

from .._utils.serialization import Deserializer, Serializer
from ._configuration import SqlManagementClientConfiguration
from .operations import (
    BackupShortTermRetentionPoliciesOperations,
    CapabilitiesOperations,
    DataMaskingPoliciesOperations,
    DataMaskingRulesOperations,
    DataWarehouseUserActivitiesOperations,
    DatabaseAdvancedThreatProtectionSettingsOperations,
    DatabaseAdvisorsOperations,
    DatabaseAutomaticTuningOperations,
    DatabaseBlobAuditingPoliciesOperations,
    DatabaseColumnsOperations,
    DatabaseEncryptionProtectorsOperations,
    DatabaseExtensionsOperations,
    DatabaseOperationsOperations,
    DatabaseRecommendedActionsOperations,
    DatabaseSchemasOperations,
    DatabaseSecurityAlertPoliciesOperations,
    DatabaseSqlVulnerabilityAssessmentBaselinesOperations,
    DatabaseSqlVulnerabilityAssessmentExecuteScanOperations,
    DatabaseSqlVulnerabilityAssessmentRuleBaselinesOperations,
    DatabaseSqlVulnerabilityAssessmentScanResultOperations,
    DatabaseSqlVulnerabilityAssessmentScansOperations,
    DatabaseSqlVulnerabilityAssessmentsSettingsOperations,
    DatabaseTablesOperations,
    DatabaseUsagesOperations,
    DatabaseVulnerabilityAssessmentRuleBaselinesOperations,
    DatabaseVulnerabilityAssessmentScansOperations,
    DatabaseVulnerabilityAssessmentsOperations,
    DatabasesOperations,
    DeletedServersOperations,
    DistributedAvailabilityGroupsOperations,
    ElasticPoolOperationsOperations,
    ElasticPoolsOperations,
    EncryptionProtectorsOperations,
    EndpointCertificatesOperations,
    ExtendedDatabaseBlobAuditingPoliciesOperations,
    ExtendedServerBlobAuditingPoliciesOperations,
    FailoverGroupsOperations,
    FirewallRulesOperations,
    GeoBackupPoliciesOperations,
    IPv6FirewallRulesOperations,
    InstanceFailoverGroupsOperations,
    InstancePoolOperationsOperations,
    InstancePoolsOperations,
    JobAgentsOperations,
    JobCredentialsOperations,
    JobExecutionsOperations,
    JobPrivateEndpointsOperations,
    JobStepExecutionsOperations,
    JobStepsOperations,
    JobTargetExecutionsOperations,
    JobTargetGroupsOperations,
    JobVersionsOperations,
    JobsOperations,
    LedgerDigestUploadsOperations,
    LongTermRetentionBackupsOperations,
    LongTermRetentionManagedInstanceBackupsOperations,
    LongTermRetentionPoliciesOperations,
    MaintenanceWindowOptionsOperations,
    MaintenanceWindowsOperations,
    ManagedBackupShortTermRetentionPoliciesOperations,
    ManagedDatabaseAdvancedThreatProtectionSettingsOperations,
    ManagedDatabaseColumnsOperations,
    ManagedDatabaseMoveOperationsOperations,
    ManagedDatabaseQueriesOperations,
    ManagedDatabaseRecommendedSensitivityLabelsOperations,
    ManagedDatabaseRestoreDetailsOperations,
    ManagedDatabaseSchemasOperations,
    ManagedDatabaseSecurityAlertPoliciesOperations,
    ManagedDatabaseSecurityEventsOperations,
    ManagedDatabaseSensitivityLabelsOperations,
    ManagedDatabaseTablesOperations,
    ManagedDatabaseTransparentDataEncryptionOperations,
    ManagedDatabaseVulnerabilityAssessmentRuleBaselinesOperations,
    ManagedDatabaseVulnerabilityAssessmentScansOperations,
    ManagedDatabaseVulnerabilityAssessmentsOperations,
    ManagedDatabasesOperations,
    ManagedInstanceAdministratorsOperations,
    ManagedInstanceAdvancedThreatProtectionSettingsOperations,
    ManagedInstanceAzureADOnlyAuthenticationsOperations,
    ManagedInstanceDtcsOperations,
    ManagedInstanceEncryptionProtectorsOperations,
    ManagedInstanceKeysOperations,
    ManagedInstanceLongTermRetentionPoliciesOperations,
    ManagedInstanceOperationsOperations,
    ManagedInstancePrivateEndpointConnectionsOperations,
    ManagedInstancePrivateLinkResourcesOperations,
    ManagedInstanceTdeCertificatesOperations,
    ManagedInstanceVulnerabilityAssessmentsOperations,
    ManagedInstancesOperations,
    ManagedLedgerDigestUploadsOperations,
    ManagedRestorableDroppedDatabaseBackupShortTermRetentionPoliciesOperations,
    ManagedServerDnsAliasesOperations,
    ManagedServerSecurityAlertPoliciesOperations,
    NetworkSecurityPerimeterConfigurationsOperations,
    Operations,
    OutboundFirewallRulesOperations,
    PrivateEndpointConnectionsOperations,
    PrivateLinkResourcesOperations,
    RecommendedSensitivityLabelsOperations,
    RecoverableDatabasesOperations,
    RecoverableManagedDatabasesOperations,
    ReplicationLinksOperations,
    RestorableDroppedDatabasesOperations,
    RestorableDroppedManagedDatabasesOperations,
    RestorePointsOperations,
    SensitivityLabelsOperations,
    ServerAdvancedThreatProtectionSettingsOperations,
    ServerAdvisorsOperations,
    ServerAutomaticTuningOperations,
    ServerAzureADAdministratorsOperations,
    ServerAzureADOnlyAuthenticationsOperations,
    ServerBlobAuditingPoliciesOperations,
    ServerConfigurationOptionsOperations,
    ServerConnectionPoliciesOperations,
    ServerDevOpsAuditSettingsOperations,
    ServerDnsAliasesOperations,
    ServerKeysOperations,
    ServerOperationsOperations,
    ServerSecurityAlertPoliciesOperations,
    ServerTrustCertificatesOperations,
    ServerTrustGroupsOperations,
    ServerUsagesOperations,
    ServerVulnerabilityAssessmentsOperations,
    ServersOperations,
    SqlAgentOperations,
    SqlVulnerabilityAssessmentBaselineOperations,
    SqlVulnerabilityAssessmentBaselinesOperations,
    SqlVulnerabilityAssessmentExecuteScanOperations,
    SqlVulnerabilityAssessmentRuleBaselineOperations,
    SqlVulnerabilityAssessmentRuleBaselinesOperations,
    SqlVulnerabilityAssessmentScanResultOperations,
    SqlVulnerabilityAssessmentScansOperations,
    SqlVulnerabilityAssessmentsOperations,
    SqlVulnerabilityAssessmentsSettingsOperations,
    StartStopManagedInstanceSchedulesOperations,
    SubscriptionUsagesOperations,
    SynapseLinkWorkspacesOperations,
    SyncAgentsOperations,
    SyncGroupsOperations,
    SyncMembersOperations,
    TdeCertificatesOperations,
    TimeZonesOperations,
    TransparentDataEncryptionsOperations,
    UsagesOperations,
    VirtualClustersOperations,
    VirtualNetworkRulesOperations,
    WorkloadClassifiersOperations,
    WorkloadGroupsOperations,
)

if sys.version_info >= (3, 11):
    from typing import Self
else:
    from typing_extensions import Self  # type: ignore

if TYPE_CHECKING:
    from azure.core import AzureClouds
    from azure.core.credentials_async import AsyncTokenCredential


class SqlManagementClient:  # pylint: disable=too-many-instance-attributes
    """The Azure SQL Database management API provides a RESTful set of web APIs that interact with
    Azure SQL Database services to manage your databases. The API enables users to create,
    retrieve, update, and delete databases, servers, and other entities.

    :ivar operations: Operations operations
    :vartype operations: azure.mgmt.sql.aio.operations.Operations
    :ivar backup_short_term_retention_policies: BackupShortTermRetentionPoliciesOperations
     operations
    :vartype backup_short_term_retention_policies:
     azure.mgmt.sql.aio.operations.BackupShortTermRetentionPoliciesOperations
    :ivar database_columns: DatabaseColumnsOperations operations
    :vartype database_columns: azure.mgmt.sql.aio.operations.DatabaseColumnsOperations
    :ivar restore_points: RestorePointsOperations operations
    :vartype restore_points: azure.mgmt.sql.aio.operations.RestorePointsOperations
    :ivar sensitivity_labels: SensitivityLabelsOperations operations
    :vartype sensitivity_labels: azure.mgmt.sql.aio.operations.SensitivityLabelsOperations
    :ivar databases: DatabasesOperations operations
    :vartype databases: azure.mgmt.sql.aio.operations.DatabasesOperations
    :ivar firewall_rules: FirewallRulesOperations operations
    :vartype firewall_rules: azure.mgmt.sql.aio.operations.FirewallRulesOperations
    :ivar replication_links: ReplicationLinksOperations operations
    :vartype replication_links: azure.mgmt.sql.aio.operations.ReplicationLinksOperations
    :ivar servers: ServersOperations operations
    :vartype servers: azure.mgmt.sql.aio.operations.ServersOperations
    :ivar server_blob_auditing_policies: ServerBlobAuditingPoliciesOperations operations
    :vartype server_blob_auditing_policies:
     azure.mgmt.sql.aio.operations.ServerBlobAuditingPoliciesOperations
    :ivar database_blob_auditing_policies: DatabaseBlobAuditingPoliciesOperations operations
    :vartype database_blob_auditing_policies:
     azure.mgmt.sql.aio.operations.DatabaseBlobAuditingPoliciesOperations
    :ivar extended_database_blob_auditing_policies: ExtendedDatabaseBlobAuditingPoliciesOperations
     operations
    :vartype extended_database_blob_auditing_policies:
     azure.mgmt.sql.aio.operations.ExtendedDatabaseBlobAuditingPoliciesOperations
    :ivar extended_server_blob_auditing_policies: ExtendedServerBlobAuditingPoliciesOperations
     operations
    :vartype extended_server_blob_auditing_policies:
     azure.mgmt.sql.aio.operations.ExtendedServerBlobAuditingPoliciesOperations
    :ivar server_advisors: ServerAdvisorsOperations operations
    :vartype server_advisors: azure.mgmt.sql.aio.operations.ServerAdvisorsOperations
    :ivar managed_database_columns: ManagedDatabaseColumnsOperations operations
    :vartype managed_database_columns:
     azure.mgmt.sql.aio.operations.ManagedDatabaseColumnsOperations
    :ivar database_tables: DatabaseTablesOperations operations
    :vartype database_tables: azure.mgmt.sql.aio.operations.DatabaseTablesOperations
    :ivar managed_database_tables: ManagedDatabaseTablesOperations operations
    :vartype managed_database_tables: azure.mgmt.sql.aio.operations.ManagedDatabaseTablesOperations
    :ivar database_schemas: DatabaseSchemasOperations operations
    :vartype database_schemas: azure.mgmt.sql.aio.operations.DatabaseSchemasOperations
    :ivar managed_database_schemas: ManagedDatabaseSchemasOperations operations
    :vartype managed_database_schemas:
     azure.mgmt.sql.aio.operations.ManagedDatabaseSchemasOperations
    :ivar database_security_alert_policies: DatabaseSecurityAlertPoliciesOperations operations
    :vartype database_security_alert_policies:
     azure.mgmt.sql.aio.operations.DatabaseSecurityAlertPoliciesOperations
    :ivar sql_vulnerability_assessment_baseline: SqlVulnerabilityAssessmentBaselineOperations
     operations
    :vartype sql_vulnerability_assessment_baseline:
     azure.mgmt.sql.aio.operations.SqlVulnerabilityAssessmentBaselineOperations
    :ivar sql_vulnerability_assessments: SqlVulnerabilityAssessmentsOperations operations
    :vartype sql_vulnerability_assessments:
     azure.mgmt.sql.aio.operations.SqlVulnerabilityAssessmentsOperations
    :ivar sql_vulnerability_assessments_settings: SqlVulnerabilityAssessmentsSettingsOperations
     operations
    :vartype sql_vulnerability_assessments_settings:
     azure.mgmt.sql.aio.operations.SqlVulnerabilityAssessmentsSettingsOperations
    :ivar database_sql_vulnerability_assessment_rule_baselines:
     DatabaseSqlVulnerabilityAssessmentRuleBaselinesOperations operations
    :vartype database_sql_vulnerability_assessment_rule_baselines:
     azure.mgmt.sql.aio.operations.DatabaseSqlVulnerabilityAssessmentRuleBaselinesOperations
    :ivar sql_vulnerability_assessment_rule_baseline:
     SqlVulnerabilityAssessmentRuleBaselineOperations operations
    :vartype sql_vulnerability_assessment_rule_baseline:
     azure.mgmt.sql.aio.operations.SqlVulnerabilityAssessmentRuleBaselineOperations
    :ivar database_sql_vulnerability_assessment_scan_result:
     DatabaseSqlVulnerabilityAssessmentScanResultOperations operations
    :vartype database_sql_vulnerability_assessment_scan_result:
     azure.mgmt.sql.aio.operations.DatabaseSqlVulnerabilityAssessmentScanResultOperations
    :ivar sql_vulnerability_assessment_scan_result: SqlVulnerabilityAssessmentScanResultOperations
     operations
    :vartype sql_vulnerability_assessment_scan_result:
     azure.mgmt.sql.aio.operations.SqlVulnerabilityAssessmentScanResultOperations
    :ivar sql_vulnerability_assessment_scans: SqlVulnerabilityAssessmentScansOperations operations
    :vartype sql_vulnerability_assessment_scans:
     azure.mgmt.sql.aio.operations.SqlVulnerabilityAssessmentScansOperations
    :ivar database_vulnerability_assessment_rule_baselines:
     DatabaseVulnerabilityAssessmentRuleBaselinesOperations operations
    :vartype database_vulnerability_assessment_rule_baselines:
     azure.mgmt.sql.aio.operations.DatabaseVulnerabilityAssessmentRuleBaselinesOperations
    :ivar managed_database_vulnerability_assessment_rule_baselines:
     ManagedDatabaseVulnerabilityAssessmentRuleBaselinesOperations operations
    :vartype managed_database_vulnerability_assessment_rule_baselines:
     azure.mgmt.sql.aio.operations.ManagedDatabaseVulnerabilityAssessmentRuleBaselinesOperations
    :ivar database_vulnerability_assessments: DatabaseVulnerabilityAssessmentsOperations operations
    :vartype database_vulnerability_assessments:
     azure.mgmt.sql.aio.operations.DatabaseVulnerabilityAssessmentsOperations
    :ivar managed_database_vulnerability_assessments:
     ManagedDatabaseVulnerabilityAssessmentsOperations operations
    :vartype managed_database_vulnerability_assessments:
     azure.mgmt.sql.aio.operations.ManagedDatabaseVulnerabilityAssessmentsOperations
    :ivar managed_database_vulnerability_assessment_scans:
     ManagedDatabaseVulnerabilityAssessmentScansOperations operations
    :vartype managed_database_vulnerability_assessment_scans:
     azure.mgmt.sql.aio.operations.ManagedDatabaseVulnerabilityAssessmentScansOperations
    :ivar data_masking_policies: DataMaskingPoliciesOperations operations
    :vartype data_masking_policies: azure.mgmt.sql.aio.operations.DataMaskingPoliciesOperations
    :ivar deleted_servers: DeletedServersOperations operations
    :vartype deleted_servers: azure.mgmt.sql.aio.operations.DeletedServersOperations
    :ivar distributed_availability_groups: DistributedAvailabilityGroupsOperations operations
    :vartype distributed_availability_groups:
     azure.mgmt.sql.aio.operations.DistributedAvailabilityGroupsOperations
    :ivar managed_databases: ManagedDatabasesOperations operations
    :vartype managed_databases: azure.mgmt.sql.aio.operations.ManagedDatabasesOperations
    :ivar server_trust_groups: ServerTrustGroupsOperations operations
    :vartype server_trust_groups: azure.mgmt.sql.aio.operations.ServerTrustGroupsOperations
    :ivar managed_instances: ManagedInstancesOperations operations
    :vartype managed_instances: azure.mgmt.sql.aio.operations.ManagedInstancesOperations
    :ivar elastic_pools: ElasticPoolsOperations operations
    :vartype elastic_pools: azure.mgmt.sql.aio.operations.ElasticPoolsOperations
    :ivar encryption_protectors: EncryptionProtectorsOperations operations
    :vartype encryption_protectors: azure.mgmt.sql.aio.operations.EncryptionProtectorsOperations
    :ivar endpoint_certificates: EndpointCertificatesOperations operations
    :vartype endpoint_certificates: azure.mgmt.sql.aio.operations.EndpointCertificatesOperations
    :ivar failover_groups: FailoverGroupsOperations operations
    :vartype failover_groups: azure.mgmt.sql.aio.operations.FailoverGroupsOperations
    :ivar geo_backup_policies: GeoBackupPoliciesOperations operations
    :vartype geo_backup_policies: azure.mgmt.sql.aio.operations.GeoBackupPoliciesOperations
    :ivar instance_failover_groups: InstanceFailoverGroupsOperations operations
    :vartype instance_failover_groups:
     azure.mgmt.sql.aio.operations.InstanceFailoverGroupsOperations
    :ivar instance_pool_operations: InstancePoolOperationsOperations operations
    :vartype instance_pool_operations:
     azure.mgmt.sql.aio.operations.InstancePoolOperationsOperations
    :ivar instance_pools: InstancePoolsOperations operations
    :vartype instance_pools: azure.mgmt.sql.aio.operations.InstancePoolsOperations
    :ivar ipv6_firewall_rules: IPv6FirewallRulesOperations operations
    :vartype ipv6_firewall_rules: azure.mgmt.sql.aio.operations.IPv6FirewallRulesOperations
    :ivar job_executions: JobExecutionsOperations operations
    :vartype job_executions: azure.mgmt.sql.aio.operations.JobExecutionsOperations
    :ivar job_agents: JobAgentsOperations operations
    :vartype job_agents: azure.mgmt.sql.aio.operations.JobAgentsOperations
    :ivar job_credentials: JobCredentialsOperations operations
    :vartype job_credentials: azure.mgmt.sql.aio.operations.JobCredentialsOperations
    :ivar job_step_executions: JobStepExecutionsOperations operations
    :vartype job_step_executions: azure.mgmt.sql.aio.operations.JobStepExecutionsOperations
    :ivar job_target_executions: JobTargetExecutionsOperations operations
    :vartype job_target_executions: azure.mgmt.sql.aio.operations.JobTargetExecutionsOperations
    :ivar jobs: JobsOperations operations
    :vartype jobs: azure.mgmt.sql.aio.operations.JobsOperations
    :ivar job_private_endpoints: JobPrivateEndpointsOperations operations
    :vartype job_private_endpoints: azure.mgmt.sql.aio.operations.JobPrivateEndpointsOperations
    :ivar job_steps: JobStepsOperations operations
    :vartype job_steps: azure.mgmt.sql.aio.operations.JobStepsOperations
    :ivar job_target_groups: JobTargetGroupsOperations operations
    :vartype job_target_groups: azure.mgmt.sql.aio.operations.JobTargetGroupsOperations
    :ivar job_versions: JobVersionsOperations operations
    :vartype job_versions: azure.mgmt.sql.aio.operations.JobVersionsOperations
    :ivar long_term_retention_backups: LongTermRetentionBackupsOperations operations
    :vartype long_term_retention_backups:
     azure.mgmt.sql.aio.operations.LongTermRetentionBackupsOperations
    :ivar long_term_retention_managed_instance_backups:
     LongTermRetentionManagedInstanceBackupsOperations operations
    :vartype long_term_retention_managed_instance_backups:
     azure.mgmt.sql.aio.operations.LongTermRetentionManagedInstanceBackupsOperations
    :ivar long_term_retention_policies: LongTermRetentionPoliciesOperations operations
    :vartype long_term_retention_policies:
     azure.mgmt.sql.aio.operations.LongTermRetentionPoliciesOperations
    :ivar managed_backup_short_term_retention_policies:
     ManagedBackupShortTermRetentionPoliciesOperations operations
    :vartype managed_backup_short_term_retention_policies:
     azure.mgmt.sql.aio.operations.ManagedBackupShortTermRetentionPoliciesOperations
    :ivar managed_restorable_dropped_database_backup_short_term_retention_policies:
     ManagedRestorableDroppedDatabaseBackupShortTermRetentionPoliciesOperations operations
    :vartype managed_restorable_dropped_database_backup_short_term_retention_policies:
     azure.mgmt.sql.aio.operations.ManagedRestorableDroppedDatabaseBackupShortTermRetentionPoliciesOperations
    :ivar managed_database_security_alert_policies: ManagedDatabaseSecurityAlertPoliciesOperations
     operations
    :vartype managed_database_security_alert_policies:
     azure.mgmt.sql.aio.operations.ManagedDatabaseSecurityAlertPoliciesOperations
    :ivar managed_instance_administrators: ManagedInstanceAdministratorsOperations operations
    :vartype managed_instance_administrators:
     azure.mgmt.sql.aio.operations.ManagedInstanceAdministratorsOperations
    :ivar managed_instance_azure_ad_only_authentications:
     ManagedInstanceAzureADOnlyAuthenticationsOperations operations
    :vartype managed_instance_azure_ad_only_authentications:
     azure.mgmt.sql.aio.operations.ManagedInstanceAzureADOnlyAuthenticationsOperations
    :ivar managed_instance_dtcs: ManagedInstanceDtcsOperations operations
    :vartype managed_instance_dtcs: azure.mgmt.sql.aio.operations.ManagedInstanceDtcsOperations
    :ivar managed_instance_encryption_protectors: ManagedInstanceEncryptionProtectorsOperations
     operations
    :vartype managed_instance_encryption_protectors:
     azure.mgmt.sql.aio.operations.ManagedInstanceEncryptionProtectorsOperations
    :ivar managed_instance_keys: ManagedInstanceKeysOperations operations
    :vartype managed_instance_keys: azure.mgmt.sql.aio.operations.ManagedInstanceKeysOperations
    :ivar managed_instance_long_term_retention_policies:
     ManagedInstanceLongTermRetentionPoliciesOperations operations
    :vartype managed_instance_long_term_retention_policies:
     azure.mgmt.sql.aio.operations.ManagedInstanceLongTermRetentionPoliciesOperations
    :ivar managed_instance_operations: ManagedInstanceOperationsOperations operations
    :vartype managed_instance_operations:
     azure.mgmt.sql.aio.operations.ManagedInstanceOperationsOperations
    :ivar managed_instance_private_endpoint_connections:
     ManagedInstancePrivateEndpointConnectionsOperations operations
    :vartype managed_instance_private_endpoint_connections:
     azure.mgmt.sql.aio.operations.ManagedInstancePrivateEndpointConnectionsOperations
    :ivar managed_instance_vulnerability_assessments:
     ManagedInstanceVulnerabilityAssessmentsOperations operations
    :vartype managed_instance_vulnerability_assessments:
     azure.mgmt.sql.aio.operations.ManagedInstanceVulnerabilityAssessmentsOperations
    :ivar managed_server_dns_aliases: ManagedServerDnsAliasesOperations operations
    :vartype managed_server_dns_aliases:
     azure.mgmt.sql.aio.operations.ManagedServerDnsAliasesOperations
    :ivar managed_server_security_alert_policies: ManagedServerSecurityAlertPoliciesOperations
     operations
    :vartype managed_server_security_alert_policies:
     azure.mgmt.sql.aio.operations.ManagedServerSecurityAlertPoliciesOperations
    :ivar network_security_perimeter_configurations:
     NetworkSecurityPerimeterConfigurationsOperations operations
    :vartype network_security_perimeter_configurations:
     azure.mgmt.sql.aio.operations.NetworkSecurityPerimeterConfigurationsOperations
    :ivar outbound_firewall_rules: OutboundFirewallRulesOperations operations
    :vartype outbound_firewall_rules: azure.mgmt.sql.aio.operations.OutboundFirewallRulesOperations
    :ivar private_endpoint_connections: PrivateEndpointConnectionsOperations operations
    :vartype private_endpoint_connections:
     azure.mgmt.sql.aio.operations.PrivateEndpointConnectionsOperations
    :ivar private_link_resources: PrivateLinkResourcesOperations operations
    :vartype private_link_resources: azure.mgmt.sql.aio.operations.PrivateLinkResourcesOperations
    :ivar recoverable_databases: RecoverableDatabasesOperations operations
    :vartype recoverable_databases: azure.mgmt.sql.aio.operations.RecoverableDatabasesOperations
    :ivar recoverable_managed_databases: RecoverableManagedDatabasesOperations operations
    :vartype recoverable_managed_databases:
     azure.mgmt.sql.aio.operations.RecoverableManagedDatabasesOperations
    :ivar restorable_dropped_databases: RestorableDroppedDatabasesOperations operations
    :vartype restorable_dropped_databases:
     azure.mgmt.sql.aio.operations.RestorableDroppedDatabasesOperations
    :ivar restorable_dropped_managed_databases: RestorableDroppedManagedDatabasesOperations
     operations
    :vartype restorable_dropped_managed_databases:
     azure.mgmt.sql.aio.operations.RestorableDroppedManagedDatabasesOperations
    :ivar server_azure_ad_administrators: ServerAzureADAdministratorsOperations operations
    :vartype server_azure_ad_administrators:
     azure.mgmt.sql.aio.operations.ServerAzureADAdministratorsOperations
    :ivar server_azure_ad_only_authentications: ServerAzureADOnlyAuthenticationsOperations
     operations
    :vartype server_azure_ad_only_authentications:
     azure.mgmt.sql.aio.operations.ServerAzureADOnlyAuthenticationsOperations
    :ivar server_configuration_options: ServerConfigurationOptionsOperations operations
    :vartype server_configuration_options:
     azure.mgmt.sql.aio.operations.ServerConfigurationOptionsOperations
    :ivar server_connection_policies: ServerConnectionPoliciesOperations operations
    :vartype server_connection_policies:
     azure.mgmt.sql.aio.operations.ServerConnectionPoliciesOperations
    :ivar server_dev_ops_audit_settings: ServerDevOpsAuditSettingsOperations operations
    :vartype server_dev_ops_audit_settings:
     azure.mgmt.sql.aio.operations.ServerDevOpsAuditSettingsOperations
    :ivar server_dns_aliases: ServerDnsAliasesOperations operations
    :vartype server_dns_aliases: azure.mgmt.sql.aio.operations.ServerDnsAliasesOperations
    :ivar server_keys: ServerKeysOperations operations
    :vartype server_keys: azure.mgmt.sql.aio.operations.ServerKeysOperations
    :ivar server_security_alert_policies: ServerSecurityAlertPoliciesOperations operations
    :vartype server_security_alert_policies:
     azure.mgmt.sql.aio.operations.ServerSecurityAlertPoliciesOperations
    :ivar server_trust_certificates: ServerTrustCertificatesOperations operations
    :vartype server_trust_certificates:
     azure.mgmt.sql.aio.operations.ServerTrustCertificatesOperations
    :ivar server_vulnerability_assessments: ServerVulnerabilityAssessmentsOperations operations
    :vartype server_vulnerability_assessments:
     azure.mgmt.sql.aio.operations.ServerVulnerabilityAssessmentsOperations
    :ivar start_stop_managed_instance_schedules: StartStopManagedInstanceSchedulesOperations
     operations
    :vartype start_stop_managed_instance_schedules:
     azure.mgmt.sql.aio.operations.StartStopManagedInstanceSchedulesOperations
    :ivar subscription_usages: SubscriptionUsagesOperations operations
    :vartype subscription_usages: azure.mgmt.sql.aio.operations.SubscriptionUsagesOperations
    :ivar sync_agents: SyncAgentsOperations operations
    :vartype sync_agents: azure.mgmt.sql.aio.operations.SyncAgentsOperations
    :ivar sync_groups: SyncGroupsOperations operations
    :vartype sync_groups: azure.mgmt.sql.aio.operations.SyncGroupsOperations
    :ivar sync_members: SyncMembersOperations operations
    :vartype sync_members: azure.mgmt.sql.aio.operations.SyncMembersOperations
    :ivar time_zones: TimeZonesOperations operations
    :vartype time_zones: azure.mgmt.sql.aio.operations.TimeZonesOperations
    :ivar virtual_clusters: VirtualClustersOperations operations
    :vartype virtual_clusters: azure.mgmt.sql.aio.operations.VirtualClustersOperations
    :ivar virtual_network_rules: VirtualNetworkRulesOperations operations
    :vartype virtual_network_rules: azure.mgmt.sql.aio.operations.VirtualNetworkRulesOperations
    :ivar workload_classifiers: WorkloadClassifiersOperations operations
    :vartype workload_classifiers: azure.mgmt.sql.aio.operations.WorkloadClassifiersOperations
    :ivar workload_groups: WorkloadGroupsOperations operations
    :vartype workload_groups: azure.mgmt.sql.aio.operations.WorkloadGroupsOperations
    :ivar managed_database_sensitivity_labels: ManagedDatabaseSensitivityLabelsOperations
     operations
    :vartype managed_database_sensitivity_labels:
     azure.mgmt.sql.aio.operations.ManagedDatabaseSensitivityLabelsOperations
    :ivar database_encryption_protectors: DatabaseEncryptionProtectorsOperations operations
    :vartype database_encryption_protectors:
     azure.mgmt.sql.aio.operations.DatabaseEncryptionProtectorsOperations
    :ivar database_operations: DatabaseOperationsOperations operations
    :vartype database_operations: azure.mgmt.sql.aio.operations.DatabaseOperationsOperations
    :ivar database_usages: DatabaseUsagesOperations operations
    :vartype database_usages: azure.mgmt.sql.aio.operations.DatabaseUsagesOperations
    :ivar recommended_sensitivity_labels: RecommendedSensitivityLabelsOperations operations
    :vartype recommended_sensitivity_labels:
     azure.mgmt.sql.aio.operations.RecommendedSensitivityLabelsOperations
    :ivar synapse_link_workspaces: SynapseLinkWorkspacesOperations operations
    :vartype synapse_link_workspaces: azure.mgmt.sql.aio.operations.SynapseLinkWorkspacesOperations
    :ivar server_operations: ServerOperationsOperations operations
    :vartype server_operations: azure.mgmt.sql.aio.operations.ServerOperationsOperations
    :ivar server_usages: ServerUsagesOperations operations
    :vartype server_usages: azure.mgmt.sql.aio.operations.ServerUsagesOperations
    :ivar tde_certificates: TdeCertificatesOperations operations
    :vartype tde_certificates: azure.mgmt.sql.aio.operations.TdeCertificatesOperations
    :ivar database_advanced_threat_protection_settings:
     DatabaseAdvancedThreatProtectionSettingsOperations operations
    :vartype database_advanced_threat_protection_settings:
     azure.mgmt.sql.aio.operations.DatabaseAdvancedThreatProtectionSettingsOperations
    :ivar database_advisors: DatabaseAdvisorsOperations operations
    :vartype database_advisors: azure.mgmt.sql.aio.operations.DatabaseAdvisorsOperations
    :ivar database_automatic_tuning: DatabaseAutomaticTuningOperations operations
    :vartype database_automatic_tuning:
     azure.mgmt.sql.aio.operations.DatabaseAutomaticTuningOperations
    :ivar database_extensions: DatabaseExtensionsOperations operations
    :vartype database_extensions: azure.mgmt.sql.aio.operations.DatabaseExtensionsOperations
    :ivar database_recommended_actions: DatabaseRecommendedActionsOperations operations
    :vartype database_recommended_actions:
     azure.mgmt.sql.aio.operations.DatabaseRecommendedActionsOperations
    :ivar database_sql_vulnerability_assessment_baselines:
     DatabaseSqlVulnerabilityAssessmentBaselinesOperations operations
    :vartype database_sql_vulnerability_assessment_baselines:
     azure.mgmt.sql.aio.operations.DatabaseSqlVulnerabilityAssessmentBaselinesOperations
    :ivar sql_vulnerability_assessment_baselines: SqlVulnerabilityAssessmentBaselinesOperations
     operations
    :vartype sql_vulnerability_assessment_baselines:
     azure.mgmt.sql.aio.operations.SqlVulnerabilityAssessmentBaselinesOperations
    :ivar database_sql_vulnerability_assessments_settings:
     DatabaseSqlVulnerabilityAssessmentsSettingsOperations operations
    :vartype database_sql_vulnerability_assessments_settings:
     azure.mgmt.sql.aio.operations.DatabaseSqlVulnerabilityAssessmentsSettingsOperations
    :ivar database_sql_vulnerability_assessment_execute_scan:
     DatabaseSqlVulnerabilityAssessmentExecuteScanOperations operations
    :vartype database_sql_vulnerability_assessment_execute_scan:
     azure.mgmt.sql.aio.operations.DatabaseSqlVulnerabilityAssessmentExecuteScanOperations
    :ivar sql_vulnerability_assessment_execute_scan:
     SqlVulnerabilityAssessmentExecuteScanOperations operations
    :vartype sql_vulnerability_assessment_execute_scan:
     azure.mgmt.sql.aio.operations.SqlVulnerabilityAssessmentExecuteScanOperations
    :ivar sql_vulnerability_assessment_rule_baselines:
     SqlVulnerabilityAssessmentRuleBaselinesOperations operations
    :vartype sql_vulnerability_assessment_rule_baselines:
     azure.mgmt.sql.aio.operations.SqlVulnerabilityAssessmentRuleBaselinesOperations
    :ivar database_sql_vulnerability_assessment_scans:
     DatabaseSqlVulnerabilityAssessmentScansOperations operations
    :vartype database_sql_vulnerability_assessment_scans:
     azure.mgmt.sql.aio.operations.DatabaseSqlVulnerabilityAssessmentScansOperations
    :ivar database_vulnerability_assessment_scans: DatabaseVulnerabilityAssessmentScansOperations
     operations
    :vartype database_vulnerability_assessment_scans:
     azure.mgmt.sql.aio.operations.DatabaseVulnerabilityAssessmentScansOperations
    :ivar data_masking_rules: DataMaskingRulesOperations operations
    :vartype data_masking_rules: azure.mgmt.sql.aio.operations.DataMaskingRulesOperations
    :ivar data_warehouse_user_activities: DataWarehouseUserActivitiesOperations operations
    :vartype data_warehouse_user_activities:
     azure.mgmt.sql.aio.operations.DataWarehouseUserActivitiesOperations
    :ivar managed_database_security_events: ManagedDatabaseSecurityEventsOperations operations
    :vartype managed_database_security_events:
     azure.mgmt.sql.aio.operations.ManagedDatabaseSecurityEventsOperations
    :ivar managed_database_recommended_sensitivity_labels:
     ManagedDatabaseRecommendedSensitivityLabelsOperations operations
    :vartype managed_database_recommended_sensitivity_labels:
     azure.mgmt.sql.aio.operations.ManagedDatabaseRecommendedSensitivityLabelsOperations
    :ivar managed_instance_tde_certificates: ManagedInstanceTdeCertificatesOperations operations
    :vartype managed_instance_tde_certificates:
     azure.mgmt.sql.aio.operations.ManagedInstanceTdeCertificatesOperations
    :ivar elastic_pool_operations: ElasticPoolOperationsOperations operations
    :vartype elastic_pool_operations: azure.mgmt.sql.aio.operations.ElasticPoolOperationsOperations
    :ivar usages: UsagesOperations operations
    :vartype usages: azure.mgmt.sql.aio.operations.UsagesOperations
    :ivar ledger_digest_uploads: LedgerDigestUploadsOperations operations
    :vartype ledger_digest_uploads: azure.mgmt.sql.aio.operations.LedgerDigestUploadsOperations
    :ivar maintenance_window_options: MaintenanceWindowOptionsOperations operations
    :vartype maintenance_window_options:
     azure.mgmt.sql.aio.operations.MaintenanceWindowOptionsOperations
    :ivar maintenance_windows: MaintenanceWindowsOperations operations
    :vartype maintenance_windows: azure.mgmt.sql.aio.operations.MaintenanceWindowsOperations
    :ivar managed_database_advanced_threat_protection_settings:
     ManagedDatabaseAdvancedThreatProtectionSettingsOperations operations
    :vartype managed_database_advanced_threat_protection_settings:
     azure.mgmt.sql.aio.operations.ManagedDatabaseAdvancedThreatProtectionSettingsOperations
    :ivar managed_database_move_operations: ManagedDatabaseMoveOperationsOperations operations
    :vartype managed_database_move_operations:
     azure.mgmt.sql.aio.operations.ManagedDatabaseMoveOperationsOperations
    :ivar managed_database_queries: ManagedDatabaseQueriesOperations operations
    :vartype managed_database_queries:
     azure.mgmt.sql.aio.operations.ManagedDatabaseQueriesOperations
    :ivar managed_database_restore_details: ManagedDatabaseRestoreDetailsOperations operations
    :vartype managed_database_restore_details:
     azure.mgmt.sql.aio.operations.ManagedDatabaseRestoreDetailsOperations
    :ivar managed_database_transparent_data_encryption:
     ManagedDatabaseTransparentDataEncryptionOperations operations
    :vartype managed_database_transparent_data_encryption:
     azure.mgmt.sql.aio.operations.ManagedDatabaseTransparentDataEncryptionOperations
    :ivar managed_instance_advanced_threat_protection_settings:
     ManagedInstanceAdvancedThreatProtectionSettingsOperations operations
    :vartype managed_instance_advanced_threat_protection_settings:
     azure.mgmt.sql.aio.operations.ManagedInstanceAdvancedThreatProtectionSettingsOperations
    :ivar managed_instance_private_link_resources: ManagedInstancePrivateLinkResourcesOperations
     operations
    :vartype managed_instance_private_link_resources:
     azure.mgmt.sql.aio.operations.ManagedInstancePrivateLinkResourcesOperations
    :ivar managed_ledger_digest_uploads: ManagedLedgerDigestUploadsOperations operations
    :vartype managed_ledger_digest_uploads:
     azure.mgmt.sql.aio.operations.ManagedLedgerDigestUploadsOperations
    :ivar server_advanced_threat_protection_settings:
     ServerAdvancedThreatProtectionSettingsOperations operations
    :vartype server_advanced_threat_protection_settings:
     azure.mgmt.sql.aio.operations.ServerAdvancedThreatProtectionSettingsOperations
    :ivar server_automatic_tuning: ServerAutomaticTuningOperations operations
    :vartype server_automatic_tuning: azure.mgmt.sql.aio.operations.ServerAutomaticTuningOperations
    :ivar sql_agent: SqlAgentOperations operations
    :vartype sql_agent: azure.mgmt.sql.aio.operations.SqlAgentOperations
    :ivar transparent_data_encryptions: TransparentDataEncryptionsOperations operations
    :vartype transparent_data_encryptions:
     azure.mgmt.sql.aio.operations.TransparentDataEncryptionsOperations
    :ivar capabilities: CapabilitiesOperations operations
    :vartype capabilities: azure.mgmt.sql.aio.operations.CapabilitiesOperations
    :param credential: Credential used to authenticate requests to the service. Required.
    :type credential: ~azure.core.credentials_async.AsyncTokenCredential
    :param subscription_id: The ID of the target subscription. The value must be an UUID. Required.
    :type subscription_id: str
    :param base_url: Service host. Default value is None.
    :type base_url: str
    :keyword cloud_setting: The cloud setting for which to get the ARM endpoint. Default value is
     None.
    :paramtype cloud_setting: ~azure.core.AzureClouds
    :keyword api_version: The API version to use for this operation. Known values are "2025-01-01"
     and None. Default value is None. If not set, the operation's default API version will be used.
     Note that overriding this default value may result in unsupported behavior.
    :paramtype api_version: str
    :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
     Retry-After header is present.
    """

    def __init__(
        self,
        credential: "AsyncTokenCredential",
        subscription_id: str,
        base_url: Optional[str] = None,
        *,
        cloud_setting: Optional["AzureClouds"] = None,
        **kwargs: Any
    ) -> None:
        _endpoint = "{endpoint}"
        _cloud = cloud_setting or settings.current.azure_cloud  # type: ignore
        _endpoints = get_arm_endpoints(_cloud)
        if not base_url:
            base_url = _endpoints["resource_manager"]
        credential_scopes = kwargs.pop("credential_scopes", _endpoints["credential_scopes"])
        self._config = SqlManagementClientConfiguration(
            credential=credential,
            subscription_id=subscription_id,
            base_url=cast(str, base_url),
            cloud_setting=cloud_setting,
            credential_scopes=credential_scopes,
            **kwargs
        )

        _policies = kwargs.pop("policies", None)
        if _policies is None:
            _policies = [
                policies.RequestIdPolicy(**kwargs),
                self._config.headers_policy,
                self._config.user_agent_policy,
                self._config.proxy_policy,
                policies.ContentDecodePolicy(**kwargs),
                AsyncARMAutoResourceProviderRegistrationPolicy(),
                self._config.redirect_policy,
                self._config.retry_policy,
                self._config.authentication_policy,
                self._config.custom_hook_policy,
                self._config.logging_policy,
                policies.DistributedTracingPolicy(**kwargs),
                policies.SensitiveHeaderCleanupPolicy(**kwargs) if self._config.redirect_policy else None,
                self._config.http_logging_policy,
            ]
        self._client: AsyncARMPipelineClient = AsyncARMPipelineClient(
            base_url=cast(str, _endpoint), policies=_policies, **kwargs
        )

        self._serialize = Serializer()
        self._deserialize = Deserializer()
        self._serialize.client_side_validation = False
        self.operations = Operations(self._client, self._config, self._serialize, self._deserialize)
        self.backup_short_term_retention_policies = BackupShortTermRetentionPoliciesOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.database_columns = DatabaseColumnsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.restore_points = RestorePointsOperations(self._client, self._config, self._serialize, self._deserialize)
        self.sensitivity_labels = SensitivityLabelsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.databases = DatabasesOperations(self._client, self._config, self._serialize, self._deserialize)
        self.firewall_rules = FirewallRulesOperations(self._client, self._config, self._serialize, self._deserialize)
        self.replication_links = ReplicationLinksOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.servers = ServersOperations(self._client, self._config, self._serialize, self._deserialize)
        self.server_blob_auditing_policies = ServerBlobAuditingPoliciesOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.database_blob_auditing_policies = DatabaseBlobAuditingPoliciesOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.extended_database_blob_auditing_policies = ExtendedDatabaseBlobAuditingPoliciesOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.extended_server_blob_auditing_policies = ExtendedServerBlobAuditingPoliciesOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.server_advisors = ServerAdvisorsOperations(self._client, self._config, self._serialize, self._deserialize)
        self.managed_database_columns = ManagedDatabaseColumnsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.database_tables = DatabaseTablesOperations(self._client, self._config, self._serialize, self._deserialize)
        self.managed_database_tables = ManagedDatabaseTablesOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.database_schemas = DatabaseSchemasOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.managed_database_schemas = ManagedDatabaseSchemasOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.database_security_alert_policies = DatabaseSecurityAlertPoliciesOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.sql_vulnerability_assessment_baseline = SqlVulnerabilityAssessmentBaselineOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.sql_vulnerability_assessments = SqlVulnerabilityAssessmentsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.sql_vulnerability_assessments_settings = SqlVulnerabilityAssessmentsSettingsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.database_sql_vulnerability_assessment_rule_baselines = (
            DatabaseSqlVulnerabilityAssessmentRuleBaselinesOperations(
                self._client, self._config, self._serialize, self._deserialize
            )
        )
        self.sql_vulnerability_assessment_rule_baseline = SqlVulnerabilityAssessmentRuleBaselineOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.database_sql_vulnerability_assessment_scan_result = DatabaseSqlVulnerabilityAssessmentScanResultOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.sql_vulnerability_assessment_scan_result = SqlVulnerabilityAssessmentScanResultOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.sql_vulnerability_assessment_scans = SqlVulnerabilityAssessmentScansOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.database_vulnerability_assessment_rule_baselines = DatabaseVulnerabilityAssessmentRuleBaselinesOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.managed_database_vulnerability_assessment_rule_baselines = (
            ManagedDatabaseVulnerabilityAssessmentRuleBaselinesOperations(
                self._client, self._config, self._serialize, self._deserialize
            )
        )
        self.database_vulnerability_assessments = DatabaseVulnerabilityAssessmentsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.managed_database_vulnerability_assessments = ManagedDatabaseVulnerabilityAssessmentsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.managed_database_vulnerability_assessment_scans = ManagedDatabaseVulnerabilityAssessmentScansOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.data_masking_policies = DataMaskingPoliciesOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.deleted_servers = DeletedServersOperations(self._client, self._config, self._serialize, self._deserialize)
        self.distributed_availability_groups = DistributedAvailabilityGroupsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.managed_databases = ManagedDatabasesOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.server_trust_groups = ServerTrustGroupsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.managed_instances = ManagedInstancesOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.elastic_pools = ElasticPoolsOperations(self._client, self._config, self._serialize, self._deserialize)
        self.encryption_protectors = EncryptionProtectorsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.endpoint_certificates = EndpointCertificatesOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.failover_groups = FailoverGroupsOperations(self._client, self._config, self._serialize, self._deserialize)
        self.geo_backup_policies = GeoBackupPoliciesOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.instance_failover_groups = InstanceFailoverGroupsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.instance_pool_operations = InstancePoolOperationsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.instance_pools = InstancePoolsOperations(self._client, self._config, self._serialize, self._deserialize)
        self.ipv6_firewall_rules = IPv6FirewallRulesOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.job_executions = JobExecutionsOperations(self._client, self._config, self._serialize, self._deserialize)
        self.job_agents = JobAgentsOperations(self._client, self._config, self._serialize, self._deserialize)
        self.job_credentials = JobCredentialsOperations(self._client, self._config, self._serialize, self._deserialize)
        self.job_step_executions = JobStepExecutionsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.job_target_executions = JobTargetExecutionsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.jobs = JobsOperations(self._client, self._config, self._serialize, self._deserialize)
        self.job_private_endpoints = JobPrivateEndpointsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.job_steps = JobStepsOperations(self._client, self._config, self._serialize, self._deserialize)
        self.job_target_groups = JobTargetGroupsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.job_versions = JobVersionsOperations(self._client, self._config, self._serialize, self._deserialize)
        self.long_term_retention_backups = LongTermRetentionBackupsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.long_term_retention_managed_instance_backups = LongTermRetentionManagedInstanceBackupsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.long_term_retention_policies = LongTermRetentionPoliciesOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.managed_backup_short_term_retention_policies = ManagedBackupShortTermRetentionPoliciesOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.managed_restorable_dropped_database_backup_short_term_retention_policies = (
            ManagedRestorableDroppedDatabaseBackupShortTermRetentionPoliciesOperations(
                self._client, self._config, self._serialize, self._deserialize
            )
        )
        self.managed_database_security_alert_policies = ManagedDatabaseSecurityAlertPoliciesOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.managed_instance_administrators = ManagedInstanceAdministratorsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.managed_instance_azure_ad_only_authentications = ManagedInstanceAzureADOnlyAuthenticationsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.managed_instance_dtcs = ManagedInstanceDtcsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.managed_instance_encryption_protectors = ManagedInstanceEncryptionProtectorsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.managed_instance_keys = ManagedInstanceKeysOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.managed_instance_long_term_retention_policies = ManagedInstanceLongTermRetentionPoliciesOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.managed_instance_operations = ManagedInstanceOperationsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.managed_instance_private_endpoint_connections = ManagedInstancePrivateEndpointConnectionsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.managed_instance_vulnerability_assessments = ManagedInstanceVulnerabilityAssessmentsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.managed_server_dns_aliases = ManagedServerDnsAliasesOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.managed_server_security_alert_policies = ManagedServerSecurityAlertPoliciesOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.network_security_perimeter_configurations = NetworkSecurityPerimeterConfigurationsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.outbound_firewall_rules = OutboundFirewallRulesOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.private_endpoint_connections = PrivateEndpointConnectionsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.private_link_resources = PrivateLinkResourcesOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.recoverable_databases = RecoverableDatabasesOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.recoverable_managed_databases = RecoverableManagedDatabasesOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.restorable_dropped_databases = RestorableDroppedDatabasesOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.restorable_dropped_managed_databases = RestorableDroppedManagedDatabasesOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.server_azure_ad_administrators = ServerAzureADAdministratorsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.server_azure_ad_only_authentications = ServerAzureADOnlyAuthenticationsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.server_configuration_options = ServerConfigurationOptionsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.server_connection_policies = ServerConnectionPoliciesOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.server_dev_ops_audit_settings = ServerDevOpsAuditSettingsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.server_dns_aliases = ServerDnsAliasesOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.server_keys = ServerKeysOperations(self._client, self._config, self._serialize, self._deserialize)
        self.server_security_alert_policies = ServerSecurityAlertPoliciesOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.server_trust_certificates = ServerTrustCertificatesOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.server_vulnerability_assessments = ServerVulnerabilityAssessmentsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.start_stop_managed_instance_schedules = StartStopManagedInstanceSchedulesOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.subscription_usages = SubscriptionUsagesOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.sync_agents = SyncAgentsOperations(self._client, self._config, self._serialize, self._deserialize)
        self.sync_groups = SyncGroupsOperations(self._client, self._config, self._serialize, self._deserialize)
        self.sync_members = SyncMembersOperations(self._client, self._config, self._serialize, self._deserialize)
        self.time_zones = TimeZonesOperations(self._client, self._config, self._serialize, self._deserialize)
        self.virtual_clusters = VirtualClustersOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.virtual_network_rules = VirtualNetworkRulesOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.workload_classifiers = WorkloadClassifiersOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.workload_groups = WorkloadGroupsOperations(self._client, self._config, self._serialize, self._deserialize)
        self.managed_database_sensitivity_labels = ManagedDatabaseSensitivityLabelsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.database_encryption_protectors = DatabaseEncryptionProtectorsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.database_operations = DatabaseOperationsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.database_usages = DatabaseUsagesOperations(self._client, self._config, self._serialize, self._deserialize)
        self.recommended_sensitivity_labels = RecommendedSensitivityLabelsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.synapse_link_workspaces = SynapseLinkWorkspacesOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.server_operations = ServerOperationsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.server_usages = ServerUsagesOperations(self._client, self._config, self._serialize, self._deserialize)
        self.tde_certificates = TdeCertificatesOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.database_advanced_threat_protection_settings = DatabaseAdvancedThreatProtectionSettingsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.database_advisors = DatabaseAdvisorsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.database_automatic_tuning = DatabaseAutomaticTuningOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.database_extensions = DatabaseExtensionsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.database_recommended_actions = DatabaseRecommendedActionsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.database_sql_vulnerability_assessment_baselines = DatabaseSqlVulnerabilityAssessmentBaselinesOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.sql_vulnerability_assessment_baselines = SqlVulnerabilityAssessmentBaselinesOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.database_sql_vulnerability_assessments_settings = DatabaseSqlVulnerabilityAssessmentsSettingsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.database_sql_vulnerability_assessment_execute_scan = (
            DatabaseSqlVulnerabilityAssessmentExecuteScanOperations(
                self._client, self._config, self._serialize, self._deserialize
            )
        )
        self.sql_vulnerability_assessment_execute_scan = SqlVulnerabilityAssessmentExecuteScanOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.sql_vulnerability_assessment_rule_baselines = SqlVulnerabilityAssessmentRuleBaselinesOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.database_sql_vulnerability_assessment_scans = DatabaseSqlVulnerabilityAssessmentScansOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.database_vulnerability_assessment_scans = DatabaseVulnerabilityAssessmentScansOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.data_masking_rules = DataMaskingRulesOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.data_warehouse_user_activities = DataWarehouseUserActivitiesOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.managed_database_security_events = ManagedDatabaseSecurityEventsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.managed_database_recommended_sensitivity_labels = ManagedDatabaseRecommendedSensitivityLabelsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.managed_instance_tde_certificates = ManagedInstanceTdeCertificatesOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.elastic_pool_operations = ElasticPoolOperationsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.usages = UsagesOperations(self._client, self._config, self._serialize, self._deserialize)
        self.ledger_digest_uploads = LedgerDigestUploadsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.maintenance_window_options = MaintenanceWindowOptionsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.maintenance_windows = MaintenanceWindowsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.managed_database_advanced_threat_protection_settings = (
            ManagedDatabaseAdvancedThreatProtectionSettingsOperations(
                self._client, self._config, self._serialize, self._deserialize
            )
        )
        self.managed_database_move_operations = ManagedDatabaseMoveOperationsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.managed_database_queries = ManagedDatabaseQueriesOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.managed_database_restore_details = ManagedDatabaseRestoreDetailsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.managed_database_transparent_data_encryption = ManagedDatabaseTransparentDataEncryptionOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.managed_instance_advanced_threat_protection_settings = (
            ManagedInstanceAdvancedThreatProtectionSettingsOperations(
                self._client, self._config, self._serialize, self._deserialize
            )
        )
        self.managed_instance_private_link_resources = ManagedInstancePrivateLinkResourcesOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.managed_ledger_digest_uploads = ManagedLedgerDigestUploadsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.server_advanced_threat_protection_settings = ServerAdvancedThreatProtectionSettingsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.server_automatic_tuning = ServerAutomaticTuningOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.sql_agent = SqlAgentOperations(self._client, self._config, self._serialize, self._deserialize)
        self.transparent_data_encryptions = TransparentDataEncryptionsOperations(
            self._client, self._config, self._serialize, self._deserialize
        )
        self.capabilities = CapabilitiesOperations(self._client, self._config, self._serialize, self._deserialize)

    def send_request(
        self, request: HttpRequest, *, stream: bool = False, **kwargs: Any
    ) -> Awaitable[AsyncHttpResponse]:
        """Runs the network request through the client's chained policies.

        >>> from azure.core.rest import HttpRequest
        >>> request = HttpRequest("GET", "https://www.example.org/")
        <HttpRequest [GET], url: 'https://www.example.org/'>
        >>> response = await client.send_request(request)
        <AsyncHttpResponse: 200 OK>

        For more information on this code flow, see https://aka.ms/azsdk/dpcodegen/python/send_request

        :param request: The network request you want to make. Required.
        :type request: ~azure.core.rest.HttpRequest
        :keyword bool stream: Whether the response payload will be streamed. Defaults to False.
        :return: The response of your network call. Does not do error handling on your response.
        :rtype: ~azure.core.rest.AsyncHttpResponse
        """

        request_copy = deepcopy(request)
        path_format_arguments = {
            "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True),
        }

        request_copy.url = self._client.format_url(request_copy.url, **path_format_arguments)
        return self._client.send_request(request_copy, stream=stream, **kwargs)  # type: ignore

    async def close(self) -> None:
        await self._client.close()

    async def __aenter__(self) -> Self:
        await self._client.__aenter__()
        return self

    async def __aexit__(self, *exc_details: Any) -> None:
        await self._client.__aexit__(*exc_details)
