# 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
    AcceptTransferProperties,
    AcceptTransferRequest,
    AddressDetails,
    AddressValidationResponse,
    Agreement,
    AgreementProperties,
    Amount,
    AppliedScopeProperties,
    AssociatedTenant,
    AssociatedTenantProperties,
    AvailableBalance,
    AvailableBalanceProperties,
    AvailableBalancePropertiesAmount,
    AvailableBalancePropertiesTotalPaymentsOnAccount,
    AzurePlan,
    Beneficiary,
    BillingAccount,
    BillingAccountPatch,
    BillingAccountPolicy,
    BillingAccountPolicyProperties,
    BillingAccountPolicyPropertiesEnterpriseAgreementPolicies,
    BillingAccountProperties,
    BillingAccountPropertiesEnrollmentDetails,
    BillingAccountPropertiesRegistrationNumber,
    BillingAccountPropertiesSoldTo,
    BillingPermission,
    BillingPlanInformation,
    BillingProfile,
    BillingProfileInfo,
    BillingProfilePolicy,
    BillingProfilePolicyProperties,
    BillingProfilePolicyPropertiesEnterpriseAgreementPolicies,
    BillingProfileProperties,
    BillingProfilePropertiesBillTo,
    BillingProfilePropertiesCurrentPaymentTerm,
    BillingProfilePropertiesIndirectRelationshipInfo,
    BillingProfilePropertiesShipTo,
    BillingProfilePropertiesSoldTo,
    BillingProperty,
    BillingPropertyProperties,
    BillingPropertyPropertiesEnrollmentDetails,
    BillingPropertyPropertiesSubscriptionServiceUsageAddress,
    BillingRequest,
    BillingRequestProperties,
    BillingRequestPropertiesCreatedBy,
    BillingRequestPropertiesLastUpdatedBy,
    BillingRequestPropertiesReviewedBy,
    BillingRoleAssignment,
    BillingRoleAssignmentListResult,
    BillingRoleAssignmentProperties,
    BillingRoleDefinition,
    BillingRoleDefinitionProperties,
    BillingSubscription,
    BillingSubscriptionAlias,
    BillingSubscriptionAliasProperties,
    BillingSubscriptionMergeRequest,
    BillingSubscriptionPatch,
    BillingSubscriptionProperties,
    BillingSubscriptionSplitRequest,
    BillingSubscriptionStatusDetails,
    CancelSubscriptionRequest,
    CheckAccessRequest,
    CheckAccessResponse,
    Commitment,
    Customer,
    CustomerPolicy,
    CustomerPolicyProperties,
    CustomerProperties,
    DeleteBillingProfileEligibilityDetail,
    DeleteBillingProfileEligibilityResult,
    DeleteInvoiceSectionEligibilityDetail,
    DeleteInvoiceSectionEligibilityResult,
    Department,
    DepartmentProperties,
    DetailedTransferStatus,
    DocumentDownloadRequest,
    DocumentDownloadResult,
    EnrollmentAccount,
    EnrollmentAccountProperties,
    EnrollmentAccountSubscriptionDetails,
    EnrollmentDetails,
    EnrollmentDetailsIndirectRelationshipInfo,
    EnterpriseAgreementPolicies,
    ErrorAdditionalInfo,
    ErrorDetail,
    ErrorResponse,
    ExtendedStatusDefinitionProperties,
    ExtendedStatusInfo,
    ExtendedStatusInfoProperties,
    FailedPayment,
    IndirectRelationshipInfo,
    InitiateTransferProperties,
    InitiateTransferRequest,
    Invoice,
    InvoiceDocument,
    InvoiceProperties,
    InvoicePropertiesAmountDue,
    InvoicePropertiesAzurePrepaymentApplied,
    InvoicePropertiesBilledAmount,
    InvoicePropertiesCreditAmount,
    InvoicePropertiesFreeAzureCreditApplied,
    InvoicePropertiesRebillDetails,
    InvoicePropertiesRefundDetails,
    InvoicePropertiesSubTotal,
    InvoicePropertiesTaxAmount,
    InvoicePropertiesTotalAmount,
    InvoiceSection,
    InvoiceSectionProperties,
    InvoiceSectionWithCreateSubPermission,
    MoveBillingSubscriptionEligibilityResult,
    MoveBillingSubscriptionErrorDetails,
    MoveBillingSubscriptionRequest,
    MoveProductEligibilityResult,
    MoveProductEligibilityResultErrorDetails,
    MoveProductErrorDetails,
    MoveProductRequest,
    NextBillingCycleDetails,
    Operation,
    OperationDisplay,
    Participant,
    PartnerInitiateTransferProperties,
    PartnerInitiateTransferRequest,
    PartnerTransferDetails,
    PartnerTransferProperties,
    Patch,
    PatchProperties,
    PatchPropertiesRenewProperties,
    Payment,
    PaymentAmount,
    PaymentDetail,
    PaymentMethod,
    PaymentMethodLink,
    PaymentMethodLinkProperties,
    PaymentMethodLogo,
    PaymentMethodProperties,
    PaymentOnAccount,
    PaymentOnAccountAmount,
    PaymentTerm,
    PaymentTermsEligibilityDetail,
    PaymentTermsEligibilityResult,
    PolicySummary,
    Price,
    Principal,
    Product,
    ProductDetails,
    ProductPatch,
    ProductProperties,
    ProductPropertiesLastCharge,
    ProductPropertiesReseller,
    ProxyResource,
    ProxyResourceWithTags,
    PurchaseRequest,
    PurchaseRequestProperties,
    RebillDetails,
    RecipientTransferDetails,
    RecipientTransferProperties,
    RefundDetailsSummary,
    RefundDetailsSummaryAmountRefunded,
    RefundDetailsSummaryAmountRequested,
    RefundTransactionDetails,
    RefundTransactionDetailsAmountRefunded,
    RefundTransactionDetailsAmountRequested,
    RegistrationNumber,
    RenewProperties,
    RenewPropertiesResponse,
    RenewalTermDetails,
    Reseller,
    Reservation,
    ReservationAppliedScopeProperties,
    ReservationExtendedStatusInfo,
    ReservationMergeProperties,
    ReservationOrder,
    ReservationOrderBillingPlanInformation,
    ReservationOrderProperty,
    ReservationPaymentDetail,
    ReservationProperty,
    ReservationPropertyUtilization,
    ReservationPurchaseRequest,
    ReservationPurchaseRequestProperties,
    ReservationPurchaseRequestPropertiesReservedResourceProperties,
    ReservationSkuProperty,
    ReservationSplitProperties,
    ReservationSummary,
    ReservationSwapProperties,
    ReservationUtilizationAggregates,
    Resource,
    SavingsPlanModel,
    SavingsPlanModelProperties,
    SavingsPlanOrderModel,
    SavingsPlanOrderModelProperties,
    SavingsPlanSummaryCount,
    SavingsPlanUpdateRequest,
    SavingsPlanUpdateRequestProperties,
    SavingsPlanUpdateValidateRequest,
    SavingsPlanValidResponseProperty,
    SavingsPlanValidateResponse,
    Sku,
    SkuName,
    SpendingLimitDetails,
    SubscriptionEnrollmentDetails,
    SubscriptionPolicy,
    SubscriptionPolicyProperties,
    SystemData,
    SystemOverrides,
    TaxIdentifier,
    Transaction,
    TransactionProperties,
    TransactionPropertiesAzureCreditApplied,
    TransactionPropertiesConsumptionCommitmentDecremented,
    TransactionPropertiesEffectivePrice,
    TransactionPropertiesMarketPrice,
    TransactionPropertiesRefundTransactionDetails,
    TransactionPropertiesSubTotal,
    TransactionPropertiesTax,
    TransactionPropertiesTransactionAmount,
    TransactionSummary,
    TransferDetails,
    TransferError,
    TransferProperties,
    TransitionDetails,
    Utilization,
    UtilizationAggregates,
    ValidateTransferListResponse,
    ValidateTransferResponse,
    ValidateTransferResponseProperties,
    ValidationResultProperties,
)

from ._enums import (  # type: ignore
    AcceptanceMode,
    AccessDecision,
    AccountStatus,
    AccountSubType,
    AccountType,
    AddressValidationStatus,
    AgreementType,
    AppliedScopeType,
    AutoRenew,
    BillingAccountStatusReasonCode,
    BillingManagementTenantState,
    BillingPlan,
    BillingProfileStatus,
    BillingProfileStatusReasonCode,
    BillingRelationshipType,
    BillingRequestStatus,
    BillingRequestType,
    BillingSubscriptionOperationStatus,
    BillingSubscriptionStatus,
    Cancellation,
    CancellationReason,
    Category,
    CommitmentGrain,
    CreatedByType,
    CreditType,
    CustomerStatus,
    DeleteBillingProfileEligibilityCode,
    DeleteBillingProfileEligibilityStatus,
    DeleteInvoiceSectionEligibilityCode,
    DeleteInvoiceSectionEligibilityStatus,
    DocumentSource,
    EligibleProductType,
    EnrollmentAccountOwnerViewCharges,
    EnrollmentAuthLevelState,
    EnrollmentDepartmentAdminViewCharges,
    ExtendedTermOption,
    FailedPaymentReason,
    InitiatorCustomerType,
    InstanceFlexibility,
    InvoiceDocumentType,
    InvoiceSectionLabelManagementPolicy,
    InvoiceSectionState,
    InvoiceSectionStateReasonCode,
    InvoiceStatus,
    InvoiceType,
    MarketplacePurchasesPolicy,
    MarkupStatus,
    MoveValidationErrorCode,
    PaymentMethodFamily,
    PaymentMethodStatus,
    PaymentStatus,
    PaymentTermsEligibilityCode,
    PaymentTermsEligibilityStatus,
    PolicyType,
    PrincipalType,
    ProductStatus,
    ProductTransferStatus,
    ProductType,
    ProvisioningState,
    ProvisioningTenantState,
    RefundReasonCode,
    RefundStatus,
    ReservationBillingPlan,
    ReservationPurchasesPolicy,
    ReservationStatusCode,
    SavingsPlanPurchasesPolicy,
    SavingsPlanTerm,
    ServiceDefinedResourceName,
    SpecialTaxationType,
    SpendingLimit,
    SpendingLimitStatus,
    SpendingLimitType,
    SubscriptionBillingType,
    SubscriptionEnrollmentAccountStatus,
    SubscriptionStatusReason,
    SubscriptionTransferValidationErrorCode,
    SubscriptionWorkloadType,
    SupportLevel,
    SupportedAccountType,
    TaxIdentifierStatus,
    TaxIdentifierType,
    TransactionKind,
    TransactionType,
    TransferStatus,
    ViewChargesPolicy,
)
from ._patch import __all__ as _patch_all
from ._patch import *
from ._patch import patch_sdk as _patch_sdk

__all__ = [
    "AcceptTransferProperties",
    "AcceptTransferRequest",
    "AddressDetails",
    "AddressValidationResponse",
    "Agreement",
    "AgreementProperties",
    "Amount",
    "AppliedScopeProperties",
    "AssociatedTenant",
    "AssociatedTenantProperties",
    "AvailableBalance",
    "AvailableBalanceProperties",
    "AvailableBalancePropertiesAmount",
    "AvailableBalancePropertiesTotalPaymentsOnAccount",
    "AzurePlan",
    "Beneficiary",
    "BillingAccount",
    "BillingAccountPatch",
    "BillingAccountPolicy",
    "BillingAccountPolicyProperties",
    "BillingAccountPolicyPropertiesEnterpriseAgreementPolicies",
    "BillingAccountProperties",
    "BillingAccountPropertiesEnrollmentDetails",
    "BillingAccountPropertiesRegistrationNumber",
    "BillingAccountPropertiesSoldTo",
    "BillingPermission",
    "BillingPlanInformation",
    "BillingProfile",
    "BillingProfileInfo",
    "BillingProfilePolicy",
    "BillingProfilePolicyProperties",
    "BillingProfilePolicyPropertiesEnterpriseAgreementPolicies",
    "BillingProfileProperties",
    "BillingProfilePropertiesBillTo",
    "BillingProfilePropertiesCurrentPaymentTerm",
    "BillingProfilePropertiesIndirectRelationshipInfo",
    "BillingProfilePropertiesShipTo",
    "BillingProfilePropertiesSoldTo",
    "BillingProperty",
    "BillingPropertyProperties",
    "BillingPropertyPropertiesEnrollmentDetails",
    "BillingPropertyPropertiesSubscriptionServiceUsageAddress",
    "BillingRequest",
    "BillingRequestProperties",
    "BillingRequestPropertiesCreatedBy",
    "BillingRequestPropertiesLastUpdatedBy",
    "BillingRequestPropertiesReviewedBy",
    "BillingRoleAssignment",
    "BillingRoleAssignmentListResult",
    "BillingRoleAssignmentProperties",
    "BillingRoleDefinition",
    "BillingRoleDefinitionProperties",
    "BillingSubscription",
    "BillingSubscriptionAlias",
    "BillingSubscriptionAliasProperties",
    "BillingSubscriptionMergeRequest",
    "BillingSubscriptionPatch",
    "BillingSubscriptionProperties",
    "BillingSubscriptionSplitRequest",
    "BillingSubscriptionStatusDetails",
    "CancelSubscriptionRequest",
    "CheckAccessRequest",
    "CheckAccessResponse",
    "Commitment",
    "Customer",
    "CustomerPolicy",
    "CustomerPolicyProperties",
    "CustomerProperties",
    "DeleteBillingProfileEligibilityDetail",
    "DeleteBillingProfileEligibilityResult",
    "DeleteInvoiceSectionEligibilityDetail",
    "DeleteInvoiceSectionEligibilityResult",
    "Department",
    "DepartmentProperties",
    "DetailedTransferStatus",
    "DocumentDownloadRequest",
    "DocumentDownloadResult",
    "EnrollmentAccount",
    "EnrollmentAccountProperties",
    "EnrollmentAccountSubscriptionDetails",
    "EnrollmentDetails",
    "EnrollmentDetailsIndirectRelationshipInfo",
    "EnterpriseAgreementPolicies",
    "ErrorAdditionalInfo",
    "ErrorDetail",
    "ErrorResponse",
    "ExtendedStatusDefinitionProperties",
    "ExtendedStatusInfo",
    "ExtendedStatusInfoProperties",
    "FailedPayment",
    "IndirectRelationshipInfo",
    "InitiateTransferProperties",
    "InitiateTransferRequest",
    "Invoice",
    "InvoiceDocument",
    "InvoiceProperties",
    "InvoicePropertiesAmountDue",
    "InvoicePropertiesAzurePrepaymentApplied",
    "InvoicePropertiesBilledAmount",
    "InvoicePropertiesCreditAmount",
    "InvoicePropertiesFreeAzureCreditApplied",
    "InvoicePropertiesRebillDetails",
    "InvoicePropertiesRefundDetails",
    "InvoicePropertiesSubTotal",
    "InvoicePropertiesTaxAmount",
    "InvoicePropertiesTotalAmount",
    "InvoiceSection",
    "InvoiceSectionProperties",
    "InvoiceSectionWithCreateSubPermission",
    "MoveBillingSubscriptionEligibilityResult",
    "MoveBillingSubscriptionErrorDetails",
    "MoveBillingSubscriptionRequest",
    "MoveProductEligibilityResult",
    "MoveProductEligibilityResultErrorDetails",
    "MoveProductErrorDetails",
    "MoveProductRequest",
    "NextBillingCycleDetails",
    "Operation",
    "OperationDisplay",
    "Participant",
    "PartnerInitiateTransferProperties",
    "PartnerInitiateTransferRequest",
    "PartnerTransferDetails",
    "PartnerTransferProperties",
    "Patch",
    "PatchProperties",
    "PatchPropertiesRenewProperties",
    "Payment",
    "PaymentAmount",
    "PaymentDetail",
    "PaymentMethod",
    "PaymentMethodLink",
    "PaymentMethodLinkProperties",
    "PaymentMethodLogo",
    "PaymentMethodProperties",
    "PaymentOnAccount",
    "PaymentOnAccountAmount",
    "PaymentTerm",
    "PaymentTermsEligibilityDetail",
    "PaymentTermsEligibilityResult",
    "PolicySummary",
    "Price",
    "Principal",
    "Product",
    "ProductDetails",
    "ProductPatch",
    "ProductProperties",
    "ProductPropertiesLastCharge",
    "ProductPropertiesReseller",
    "ProxyResource",
    "ProxyResourceWithTags",
    "PurchaseRequest",
    "PurchaseRequestProperties",
    "RebillDetails",
    "RecipientTransferDetails",
    "RecipientTransferProperties",
    "RefundDetailsSummary",
    "RefundDetailsSummaryAmountRefunded",
    "RefundDetailsSummaryAmountRequested",
    "RefundTransactionDetails",
    "RefundTransactionDetailsAmountRefunded",
    "RefundTransactionDetailsAmountRequested",
    "RegistrationNumber",
    "RenewProperties",
    "RenewPropertiesResponse",
    "RenewalTermDetails",
    "Reseller",
    "Reservation",
    "ReservationAppliedScopeProperties",
    "ReservationExtendedStatusInfo",
    "ReservationMergeProperties",
    "ReservationOrder",
    "ReservationOrderBillingPlanInformation",
    "ReservationOrderProperty",
    "ReservationPaymentDetail",
    "ReservationProperty",
    "ReservationPropertyUtilization",
    "ReservationPurchaseRequest",
    "ReservationPurchaseRequestProperties",
    "ReservationPurchaseRequestPropertiesReservedResourceProperties",
    "ReservationSkuProperty",
    "ReservationSplitProperties",
    "ReservationSummary",
    "ReservationSwapProperties",
    "ReservationUtilizationAggregates",
    "Resource",
    "SavingsPlanModel",
    "SavingsPlanModelProperties",
    "SavingsPlanOrderModel",
    "SavingsPlanOrderModelProperties",
    "SavingsPlanSummaryCount",
    "SavingsPlanUpdateRequest",
    "SavingsPlanUpdateRequestProperties",
    "SavingsPlanUpdateValidateRequest",
    "SavingsPlanValidResponseProperty",
    "SavingsPlanValidateResponse",
    "Sku",
    "SkuName",
    "SpendingLimitDetails",
    "SubscriptionEnrollmentDetails",
    "SubscriptionPolicy",
    "SubscriptionPolicyProperties",
    "SystemData",
    "SystemOverrides",
    "TaxIdentifier",
    "Transaction",
    "TransactionProperties",
    "TransactionPropertiesAzureCreditApplied",
    "TransactionPropertiesConsumptionCommitmentDecremented",
    "TransactionPropertiesEffectivePrice",
    "TransactionPropertiesMarketPrice",
    "TransactionPropertiesRefundTransactionDetails",
    "TransactionPropertiesSubTotal",
    "TransactionPropertiesTax",
    "TransactionPropertiesTransactionAmount",
    "TransactionSummary",
    "TransferDetails",
    "TransferError",
    "TransferProperties",
    "TransitionDetails",
    "Utilization",
    "UtilizationAggregates",
    "ValidateTransferListResponse",
    "ValidateTransferResponse",
    "ValidateTransferResponseProperties",
    "ValidationResultProperties",
    "AcceptanceMode",
    "AccessDecision",
    "AccountStatus",
    "AccountSubType",
    "AccountType",
    "AddressValidationStatus",
    "AgreementType",
    "AppliedScopeType",
    "AutoRenew",
    "BillingAccountStatusReasonCode",
    "BillingManagementTenantState",
    "BillingPlan",
    "BillingProfileStatus",
    "BillingProfileStatusReasonCode",
    "BillingRelationshipType",
    "BillingRequestStatus",
    "BillingRequestType",
    "BillingSubscriptionOperationStatus",
    "BillingSubscriptionStatus",
    "Cancellation",
    "CancellationReason",
    "Category",
    "CommitmentGrain",
    "CreatedByType",
    "CreditType",
    "CustomerStatus",
    "DeleteBillingProfileEligibilityCode",
    "DeleteBillingProfileEligibilityStatus",
    "DeleteInvoiceSectionEligibilityCode",
    "DeleteInvoiceSectionEligibilityStatus",
    "DocumentSource",
    "EligibleProductType",
    "EnrollmentAccountOwnerViewCharges",
    "EnrollmentAuthLevelState",
    "EnrollmentDepartmentAdminViewCharges",
    "ExtendedTermOption",
    "FailedPaymentReason",
    "InitiatorCustomerType",
    "InstanceFlexibility",
    "InvoiceDocumentType",
    "InvoiceSectionLabelManagementPolicy",
    "InvoiceSectionState",
    "InvoiceSectionStateReasonCode",
    "InvoiceStatus",
    "InvoiceType",
    "MarketplacePurchasesPolicy",
    "MarkupStatus",
    "MoveValidationErrorCode",
    "PaymentMethodFamily",
    "PaymentMethodStatus",
    "PaymentStatus",
    "PaymentTermsEligibilityCode",
    "PaymentTermsEligibilityStatus",
    "PolicyType",
    "PrincipalType",
    "ProductStatus",
    "ProductTransferStatus",
    "ProductType",
    "ProvisioningState",
    "ProvisioningTenantState",
    "RefundReasonCode",
    "RefundStatus",
    "ReservationBillingPlan",
    "ReservationPurchasesPolicy",
    "ReservationStatusCode",
    "SavingsPlanPurchasesPolicy",
    "SavingsPlanTerm",
    "ServiceDefinedResourceName",
    "SpecialTaxationType",
    "SpendingLimit",
    "SpendingLimitStatus",
    "SpendingLimitType",
    "SubscriptionBillingType",
    "SubscriptionEnrollmentAccountStatus",
    "SubscriptionStatusReason",
    "SubscriptionTransferValidationErrorCode",
    "SubscriptionWorkloadType",
    "SupportLevel",
    "SupportedAccountType",
    "TaxIdentifierStatus",
    "TaxIdentifierType",
    "TransactionKind",
    "TransactionType",
    "TransferStatus",
    "ViewChargesPolicy",
]
__all__.extend([p for p in _patch_all if p not in __all__])  # pyright: ignore
_patch_sdk()
