# This file was auto-generated by Fern from our API Definition.

# isort: skip_file

import typing
from importlib import import_module

if typing.TYPE_CHECKING:
    from .types import (
        AccountObject,
        ApproverObject,
        ApproverObjectApprover,
        ApproverObjectPolicy,
        BatchProgressResponse,
        BatchProgressResponseStatus,
        BatchResultsResponse,
        BatchResultsResponseResultsItem,
        BulkInvoiceFailure,
        BulkInvoiceOperationResponse,
        BulkInvoiceOperationResponseFailedItem,
        BulkInvoiceUnexportOperationResponse,
        BulkInvoiceUnexportOperationResponseFailedItem,
        BulkInvoiceUnexportOperationResponseSkippedItem,
        BulkUpsertAsyncResponse,
        BulkUpsertAsyncResponseSummary,
        CatalogAllowanceBulkItem,
        CatalogAllowanceBulkItemAllowanceType,
        CatalogAllowanceListResponse,
        CatalogAllowanceListResponseResultsItem,
        CatalogAllowanceListResponseResultsItemAllowanceType,
        CatalogAllowanceListResponseResultsItemTargetType,
        CatalogAllowanceNestedCreateRequest,
        CatalogAllowanceNestedCreateRequestAllowanceType,
        CatalogAllowanceNestedObject,
        CatalogAllowanceNestedObjectAllowanceType,
        CatalogAllowanceNestedObjectTargetType,
        CatalogAllowanceObject,
        CatalogAllowanceObjectAllowanceType,
        CatalogAllowanceObjectTargetType,
        CatalogBulkErrorItem,
        CatalogBulkResponse,
        CatalogBulkResponseErrorsItem,
        CatalogBulkResponseSkippedItem,
        CatalogBulkSkippedItem,
        CatalogEntryBasicObject,
        CatalogEntryBulkItem,
        CatalogEntryBulkItemAllowancesItem,
        CatalogEntryBulkItemAllowancesItemAllowanceType,
        CatalogEntryBulkItemPricesItem,
        CatalogEntryBulkItemPricesItemPriceType,
        CatalogEntryCreateRequest,
        CatalogEntryCreateRequestAllowancesItem,
        CatalogEntryCreateRequestAllowancesItemAllowanceType,
        CatalogEntryCreateRequestPricesItem,
        CatalogEntryCreateRequestPricesItemPriceType,
        CatalogEntryListResponse,
        CatalogEntryListResponseResultsItem,
        CatalogEntryObject,
        CatalogEntryObjectAllowancesItem,
        CatalogEntryObjectAllowancesItemAllowanceType,
        CatalogEntryObjectAllowancesItemTargetType,
        CatalogEntryObjectPricesItem,
        CatalogEntryObjectPricesItemPriceTypeDisplay,
        CatalogErrorResponse,
        CatalogPriceCreateRequest,
        CatalogPriceCreateRequestPriceType,
        CatalogPriceItem,
        CatalogPriceItemPriceTypeDisplay,
        CompanyObject,
        ErrorResponse,
        InstantCaptureFileObject,
        InvoiceCreationResponse,
        InvoiceCreationResponseBatch,
        InvoiceCreationResponseBatchStatus,
        InvoiceCreationResponseContainer,
        InvoiceCreationResponseInvoice,
        InvoiceCreationResponseInvoiceStatus,
        InvoiceCreationResponseProcessing,
        InvoiceCreationResponseProcessingStatus,
        InvoiceCreationResponseUpload,
        InvoiceCreationResponseUploadUploadMethod,
        InvoiceDetailObject,
        InvoiceDetailObjectGlSplitsItem,
        InvoiceDetailObjectHistoryItem,
        InvoiceDetailObjectHistoryItemUser,
        InvoiceDetailObjectImagesItem,
        InvoiceDetailObjectItemsProcessingResult,
        InvoiceDetailObjectItemsProcessingResultStatus,
        InvoiceDetailObjectPaymentInfo,
        InvoiceDetailObjectPaymentStatus,
        InvoiceDetailObjectType,
        InvoiceItemVarianceListResponse,
        InvoiceItemVarianceListResponseResultsItem,
        InvoiceNeedsAttentionObject,
        InvoiceNeedsAttentionObjectOnHold,
        InvoiceNeedsAttentionObjectPaymentStatus,
        InvoiceNeedsAttentionObjectType,
        InvoiceObject,
        InvoiceObjectImagesItem,
        InvoiceObjectOnHold,
        InvoiceObjectPaymentStatus,
        InvoiceObjectType,
        LineItemObject,
        LocationObject,
        OauthScope,
        PurchaseOrderCreateResponse,
        PurchaseOrderCreateResponseItemsItem,
        PurchaseOrderCreateResponseStatus,
        PurchaseOrderDetail,
        PurchaseOrderDetailPurchaseOrder,
        PurchaseOrderDetailPurchaseOrderItemsItem,
        PurchaseOrderDetailPurchaseOrderStatus,
        PurchaseOrderSummary,
        PurchaseOrderSummaryStatus,
        PurchaseOrderUpdateResponse,
        PurchaseOrderUpdateResponseStatus,
        ReceiptBulkUpsertAsyncResponse,
        ReceiptBulkUpsertAsyncResponseSummary,
        ReceiptCreateResponse,
        ReceiptCreateResponseStatus,
        ReceiptDetail,
        ReceiptDetailReceipt,
        ReceiptDetailReceiptItemsItem,
        ReceiptDetailReceiptStatus,
        ReceiptItem,
        ReceiptSummary,
        ReceiptSummaryStatus,
        ReceiptUpdateResponse,
        ReceiptUpdateResponseStatus,
        VarianceListResponse,
        VarianceListResponseResultsItem,
        VarianceListResponseResultsItemLastInvoiceItem,
        VarianceObject,
        VarianceObjectInvoiceItems,
        VarianceObjectInvoiceItemsDataItem,
        VarianceObjectLastInvoiceItem,
    )
    from .errors import (
        BadRequestError,
        ContentTooLargeError,
        ForbiddenError,
        InternalServerError,
        NotFoundError,
        PreconditionFailedError,
        UnauthorizedError,
        UnprocessableEntityError,
    )
    from . import accounts, batch, catalog, dimensions, invoices, oauth, purchase_orders, receipts, vendors
    from .accounts import GetAccountsIdCompaniesResponse, GetAccountsIdLocationsResponse, GetAccountsRootResponse
    from .batch import (
        GetBatchRootRequestStatus,
        GetBatchRootResponse,
        GetBatchRootResponseResultsItem,
        GetBatchRootResponseResultsItemStatus,
    )
    from .catalog import (
        CatalogAllowanceBulkCreateRequestAllowancesItem,
        CatalogAllowanceBulkCreateRequestAllowancesItemAllowanceType,
        CatalogEntryBulkCreateRequestEntriesItem,
        CatalogEntryBulkCreateRequestEntriesItemAllowancesItem,
        CatalogEntryBulkCreateRequestEntriesItemAllowancesItemAllowanceType,
        CatalogEntryBulkCreateRequestEntriesItemPricesItem,
        CatalogEntryBulkCreateRequestEntriesItemPricesItemPriceType,
        CatalogPricesBulkCreateRequestPricesItem,
        CatalogPricesBulkCreateRequestPricesItemPriceType,
        GetCatalogPricesRequestPriceType,
        GetCatalogPricesResponse,
        GetCatalogVariancesRequestExceptionType,
        PatchCatalogAllowancesIdRequestAllowanceType,
        PatchCatalogEntriesIdRequestProperties,
        PostCatalogAllowancesRequestAllowanceType,
        PostCatalogEntriesRequestAllowancesItem,
        PostCatalogEntriesRequestPricesItem,
        PostCatalogEntriesRequestPricesItemPriceType,
        PostCatalogPricesBulkResponse,
        PostCatalogPricesRequestPriceType,
    )
    from .client import AsyncOttimate, Ottimate
    from .dimensions import (
        GetDimensionsIdResponse,
        GetDimensionsIdResponseDimension,
        GetDimensionsIdResponseDimensionOttimateType,
        GetDimensionsRootResponse,
        GetDimensionsRootResponseDimensionsItem,
        GetDimensionsRootResponseDimensionsItemOttimateType,
        PostDimensionsBulkRequestDimensionsItem,
        PostDimensionsBulkRequestDimensionsItemOttimateType,
        PostDimensionsBulkResponse,
        PostDimensionsBulkResponseCreatedItem,
        PostDimensionsBulkResponseErrorsItem,
        PostDimensionsBulkResponseUpdatedItem,
        PostDimensionsRootRequestOttimateType,
        PostDimensionsRootResponse,
        PostDimensionsRootResponseOttimateType,
    )
    from .environment import OttimateEnvironment
    from .invoices import (
        DeleteInvoicesIdApproversResponse,
        GetInvoicesIdApproversResponse,
        GetInvoicesRootRequestPaymentStatus,
        GetInvoicesRootRequestStatus,
        GetInvoicesRootResponse,
        GetInvoicesUploadsResponse,
        PatchInvoicesIdRequestItemsItem,
        PatchInvoicesIdRequestType,
        PostInvoicesIdApproveResponse,
        PostInvoicesIdApproveResponseInvoice,
        PostInvoicesIdApproversResponse,
        PostInvoicesIdFlagResponse,
        PostInvoicesIdFlagResponseInvoice,
        PostInvoicesMarkExportedRequestInvoicesItem,
        PostInvoicesMarkUnexportedRequestInvoicesItem,
        PostInvoicesRootRequestItemsItem,
        PostInvoicesRootRequestType,
        PostInvoicesRootResponse,
        PostInvoicesRootResponseItems,
    )
    from .oauth import PostOauthTokenResponse
    from .purchase_orders import (
        GetPurchaseOrdersRootRequestStatus,
        GetPurchaseOrdersRootResponse,
        PatchPurchaseOrdersIdRequestItemsItem,
        PurchaseOrderBulkUpsertRequestPurchaseOrdersItem,
        PurchaseOrderBulkUpsertRequestPurchaseOrdersItemItemsItem,
        PurchaseOrderCreateRequestItemsItem,
    )
    from .receipts import (
        GetReceiptsRootResponse,
        PatchReceiptsIdRequestItemsItem,
        ReceiptBulkUpsertRequestReceiptsItem,
        ReceiptBulkUpsertRequestReceiptsItemItemsItem,
        ReceiptCreateRequestItemsItem,
    )
    from .vendors import (
        GetVendorsIdResponse,
        GetVendorsIdResponseVendor,
        GetVendorsIdResponseVendorPaymentMethod,
        GetVendorsRootResponse,
        GetVendorsRootResponseVendorsItem,
        GetVendorsRootResponseVendorsItemPaymentMethod,
        PostVendorsBulkRequestVendorsItem,
        PostVendorsBulkRequestVendorsItemPaymentMethod,
        PostVendorsBulkResponse,
        PostVendorsBulkResponseCreatedItem,
        PostVendorsBulkResponseCreatedItemPaymentMethod,
        PostVendorsBulkResponseErrorsItem,
        PostVendorsBulkResponseUpdatedItem,
        PostVendorsBulkResponseUpdatedItemPaymentMethod,
        PostVendorsRootRequestPaymentMethod,
        PostVendorsRootResponse,
        PostVendorsRootResponseVendor,
        PostVendorsRootResponseVendorPaymentMethod,
    )
_dynamic_imports: typing.Dict[str, str] = {
    "AccountObject": ".types",
    "ApproverObject": ".types",
    "ApproverObjectApprover": ".types",
    "ApproverObjectPolicy": ".types",
    "AsyncOttimate": ".client",
    "BadRequestError": ".errors",
    "BatchProgressResponse": ".types",
    "BatchProgressResponseStatus": ".types",
    "BatchResultsResponse": ".types",
    "BatchResultsResponseResultsItem": ".types",
    "BulkInvoiceFailure": ".types",
    "BulkInvoiceOperationResponse": ".types",
    "BulkInvoiceOperationResponseFailedItem": ".types",
    "BulkInvoiceUnexportOperationResponse": ".types",
    "BulkInvoiceUnexportOperationResponseFailedItem": ".types",
    "BulkInvoiceUnexportOperationResponseSkippedItem": ".types",
    "BulkUpsertAsyncResponse": ".types",
    "BulkUpsertAsyncResponseSummary": ".types",
    "CatalogAllowanceBulkCreateRequestAllowancesItem": ".catalog",
    "CatalogAllowanceBulkCreateRequestAllowancesItemAllowanceType": ".catalog",
    "CatalogAllowanceBulkItem": ".types",
    "CatalogAllowanceBulkItemAllowanceType": ".types",
    "CatalogAllowanceListResponse": ".types",
    "CatalogAllowanceListResponseResultsItem": ".types",
    "CatalogAllowanceListResponseResultsItemAllowanceType": ".types",
    "CatalogAllowanceListResponseResultsItemTargetType": ".types",
    "CatalogAllowanceNestedCreateRequest": ".types",
    "CatalogAllowanceNestedCreateRequestAllowanceType": ".types",
    "CatalogAllowanceNestedObject": ".types",
    "CatalogAllowanceNestedObjectAllowanceType": ".types",
    "CatalogAllowanceNestedObjectTargetType": ".types",
    "CatalogAllowanceObject": ".types",
    "CatalogAllowanceObjectAllowanceType": ".types",
    "CatalogAllowanceObjectTargetType": ".types",
    "CatalogBulkErrorItem": ".types",
    "CatalogBulkResponse": ".types",
    "CatalogBulkResponseErrorsItem": ".types",
    "CatalogBulkResponseSkippedItem": ".types",
    "CatalogBulkSkippedItem": ".types",
    "CatalogEntryBasicObject": ".types",
    "CatalogEntryBulkCreateRequestEntriesItem": ".catalog",
    "CatalogEntryBulkCreateRequestEntriesItemAllowancesItem": ".catalog",
    "CatalogEntryBulkCreateRequestEntriesItemAllowancesItemAllowanceType": ".catalog",
    "CatalogEntryBulkCreateRequestEntriesItemPricesItem": ".catalog",
    "CatalogEntryBulkCreateRequestEntriesItemPricesItemPriceType": ".catalog",
    "CatalogEntryBulkItem": ".types",
    "CatalogEntryBulkItemAllowancesItem": ".types",
    "CatalogEntryBulkItemAllowancesItemAllowanceType": ".types",
    "CatalogEntryBulkItemPricesItem": ".types",
    "CatalogEntryBulkItemPricesItemPriceType": ".types",
    "CatalogEntryCreateRequest": ".types",
    "CatalogEntryCreateRequestAllowancesItem": ".types",
    "CatalogEntryCreateRequestAllowancesItemAllowanceType": ".types",
    "CatalogEntryCreateRequestPricesItem": ".types",
    "CatalogEntryCreateRequestPricesItemPriceType": ".types",
    "CatalogEntryListResponse": ".types",
    "CatalogEntryListResponseResultsItem": ".types",
    "CatalogEntryObject": ".types",
    "CatalogEntryObjectAllowancesItem": ".types",
    "CatalogEntryObjectAllowancesItemAllowanceType": ".types",
    "CatalogEntryObjectAllowancesItemTargetType": ".types",
    "CatalogEntryObjectPricesItem": ".types",
    "CatalogEntryObjectPricesItemPriceTypeDisplay": ".types",
    "CatalogErrorResponse": ".types",
    "CatalogPriceCreateRequest": ".types",
    "CatalogPriceCreateRequestPriceType": ".types",
    "CatalogPriceItem": ".types",
    "CatalogPriceItemPriceTypeDisplay": ".types",
    "CatalogPricesBulkCreateRequestPricesItem": ".catalog",
    "CatalogPricesBulkCreateRequestPricesItemPriceType": ".catalog",
    "CompanyObject": ".types",
    "ContentTooLargeError": ".errors",
    "DeleteInvoicesIdApproversResponse": ".invoices",
    "ErrorResponse": ".types",
    "ForbiddenError": ".errors",
    "GetAccountsIdCompaniesResponse": ".accounts",
    "GetAccountsIdLocationsResponse": ".accounts",
    "GetAccountsRootResponse": ".accounts",
    "GetBatchRootRequestStatus": ".batch",
    "GetBatchRootResponse": ".batch",
    "GetBatchRootResponseResultsItem": ".batch",
    "GetBatchRootResponseResultsItemStatus": ".batch",
    "GetCatalogPricesRequestPriceType": ".catalog",
    "GetCatalogPricesResponse": ".catalog",
    "GetCatalogVariancesRequestExceptionType": ".catalog",
    "GetDimensionsIdResponse": ".dimensions",
    "GetDimensionsIdResponseDimension": ".dimensions",
    "GetDimensionsIdResponseDimensionOttimateType": ".dimensions",
    "GetDimensionsRootResponse": ".dimensions",
    "GetDimensionsRootResponseDimensionsItem": ".dimensions",
    "GetDimensionsRootResponseDimensionsItemOttimateType": ".dimensions",
    "GetInvoicesIdApproversResponse": ".invoices",
    "GetInvoicesRootRequestPaymentStatus": ".invoices",
    "GetInvoicesRootRequestStatus": ".invoices",
    "GetInvoicesRootResponse": ".invoices",
    "GetInvoicesUploadsResponse": ".invoices",
    "GetPurchaseOrdersRootRequestStatus": ".purchase_orders",
    "GetPurchaseOrdersRootResponse": ".purchase_orders",
    "GetReceiptsRootResponse": ".receipts",
    "GetVendorsIdResponse": ".vendors",
    "GetVendorsIdResponseVendor": ".vendors",
    "GetVendorsIdResponseVendorPaymentMethod": ".vendors",
    "GetVendorsRootResponse": ".vendors",
    "GetVendorsRootResponseVendorsItem": ".vendors",
    "GetVendorsRootResponseVendorsItemPaymentMethod": ".vendors",
    "InstantCaptureFileObject": ".types",
    "InternalServerError": ".errors",
    "InvoiceCreationResponse": ".types",
    "InvoiceCreationResponseBatch": ".types",
    "InvoiceCreationResponseBatchStatus": ".types",
    "InvoiceCreationResponseContainer": ".types",
    "InvoiceCreationResponseInvoice": ".types",
    "InvoiceCreationResponseInvoiceStatus": ".types",
    "InvoiceCreationResponseProcessing": ".types",
    "InvoiceCreationResponseProcessingStatus": ".types",
    "InvoiceCreationResponseUpload": ".types",
    "InvoiceCreationResponseUploadUploadMethod": ".types",
    "InvoiceDetailObject": ".types",
    "InvoiceDetailObjectGlSplitsItem": ".types",
    "InvoiceDetailObjectHistoryItem": ".types",
    "InvoiceDetailObjectHistoryItemUser": ".types",
    "InvoiceDetailObjectImagesItem": ".types",
    "InvoiceDetailObjectItemsProcessingResult": ".types",
    "InvoiceDetailObjectItemsProcessingResultStatus": ".types",
    "InvoiceDetailObjectPaymentInfo": ".types",
    "InvoiceDetailObjectPaymentStatus": ".types",
    "InvoiceDetailObjectType": ".types",
    "InvoiceItemVarianceListResponse": ".types",
    "InvoiceItemVarianceListResponseResultsItem": ".types",
    "InvoiceNeedsAttentionObject": ".types",
    "InvoiceNeedsAttentionObjectOnHold": ".types",
    "InvoiceNeedsAttentionObjectPaymentStatus": ".types",
    "InvoiceNeedsAttentionObjectType": ".types",
    "InvoiceObject": ".types",
    "InvoiceObjectImagesItem": ".types",
    "InvoiceObjectOnHold": ".types",
    "InvoiceObjectPaymentStatus": ".types",
    "InvoiceObjectType": ".types",
    "LineItemObject": ".types",
    "LocationObject": ".types",
    "NotFoundError": ".errors",
    "OauthScope": ".types",
    "Ottimate": ".client",
    "OttimateEnvironment": ".environment",
    "PatchCatalogAllowancesIdRequestAllowanceType": ".catalog",
    "PatchCatalogEntriesIdRequestProperties": ".catalog",
    "PatchInvoicesIdRequestItemsItem": ".invoices",
    "PatchInvoicesIdRequestType": ".invoices",
    "PatchPurchaseOrdersIdRequestItemsItem": ".purchase_orders",
    "PatchReceiptsIdRequestItemsItem": ".receipts",
    "PostCatalogAllowancesRequestAllowanceType": ".catalog",
    "PostCatalogEntriesRequestAllowancesItem": ".catalog",
    "PostCatalogEntriesRequestPricesItem": ".catalog",
    "PostCatalogEntriesRequestPricesItemPriceType": ".catalog",
    "PostCatalogPricesBulkResponse": ".catalog",
    "PostCatalogPricesRequestPriceType": ".catalog",
    "PostDimensionsBulkRequestDimensionsItem": ".dimensions",
    "PostDimensionsBulkRequestDimensionsItemOttimateType": ".dimensions",
    "PostDimensionsBulkResponse": ".dimensions",
    "PostDimensionsBulkResponseCreatedItem": ".dimensions",
    "PostDimensionsBulkResponseErrorsItem": ".dimensions",
    "PostDimensionsBulkResponseUpdatedItem": ".dimensions",
    "PostDimensionsRootRequestOttimateType": ".dimensions",
    "PostDimensionsRootResponse": ".dimensions",
    "PostDimensionsRootResponseOttimateType": ".dimensions",
    "PostInvoicesIdApproveResponse": ".invoices",
    "PostInvoicesIdApproveResponseInvoice": ".invoices",
    "PostInvoicesIdApproversResponse": ".invoices",
    "PostInvoicesIdFlagResponse": ".invoices",
    "PostInvoicesIdFlagResponseInvoice": ".invoices",
    "PostInvoicesMarkExportedRequestInvoicesItem": ".invoices",
    "PostInvoicesMarkUnexportedRequestInvoicesItem": ".invoices",
    "PostInvoicesRootRequestItemsItem": ".invoices",
    "PostInvoicesRootRequestType": ".invoices",
    "PostInvoicesRootResponse": ".invoices",
    "PostInvoicesRootResponseItems": ".invoices",
    "PostOauthTokenResponse": ".oauth",
    "PostVendorsBulkRequestVendorsItem": ".vendors",
    "PostVendorsBulkRequestVendorsItemPaymentMethod": ".vendors",
    "PostVendorsBulkResponse": ".vendors",
    "PostVendorsBulkResponseCreatedItem": ".vendors",
    "PostVendorsBulkResponseCreatedItemPaymentMethod": ".vendors",
    "PostVendorsBulkResponseErrorsItem": ".vendors",
    "PostVendorsBulkResponseUpdatedItem": ".vendors",
    "PostVendorsBulkResponseUpdatedItemPaymentMethod": ".vendors",
    "PostVendorsRootRequestPaymentMethod": ".vendors",
    "PostVendorsRootResponse": ".vendors",
    "PostVendorsRootResponseVendor": ".vendors",
    "PostVendorsRootResponseVendorPaymentMethod": ".vendors",
    "PreconditionFailedError": ".errors",
    "PurchaseOrderBulkUpsertRequestPurchaseOrdersItem": ".purchase_orders",
    "PurchaseOrderBulkUpsertRequestPurchaseOrdersItemItemsItem": ".purchase_orders",
    "PurchaseOrderCreateRequestItemsItem": ".purchase_orders",
    "PurchaseOrderCreateResponse": ".types",
    "PurchaseOrderCreateResponseItemsItem": ".types",
    "PurchaseOrderCreateResponseStatus": ".types",
    "PurchaseOrderDetail": ".types",
    "PurchaseOrderDetailPurchaseOrder": ".types",
    "PurchaseOrderDetailPurchaseOrderItemsItem": ".types",
    "PurchaseOrderDetailPurchaseOrderStatus": ".types",
    "PurchaseOrderSummary": ".types",
    "PurchaseOrderSummaryStatus": ".types",
    "PurchaseOrderUpdateResponse": ".types",
    "PurchaseOrderUpdateResponseStatus": ".types",
    "ReceiptBulkUpsertAsyncResponse": ".types",
    "ReceiptBulkUpsertAsyncResponseSummary": ".types",
    "ReceiptBulkUpsertRequestReceiptsItem": ".receipts",
    "ReceiptBulkUpsertRequestReceiptsItemItemsItem": ".receipts",
    "ReceiptCreateRequestItemsItem": ".receipts",
    "ReceiptCreateResponse": ".types",
    "ReceiptCreateResponseStatus": ".types",
    "ReceiptDetail": ".types",
    "ReceiptDetailReceipt": ".types",
    "ReceiptDetailReceiptItemsItem": ".types",
    "ReceiptDetailReceiptStatus": ".types",
    "ReceiptItem": ".types",
    "ReceiptSummary": ".types",
    "ReceiptSummaryStatus": ".types",
    "ReceiptUpdateResponse": ".types",
    "ReceiptUpdateResponseStatus": ".types",
    "UnauthorizedError": ".errors",
    "UnprocessableEntityError": ".errors",
    "VarianceListResponse": ".types",
    "VarianceListResponseResultsItem": ".types",
    "VarianceListResponseResultsItemLastInvoiceItem": ".types",
    "VarianceObject": ".types",
    "VarianceObjectInvoiceItems": ".types",
    "VarianceObjectInvoiceItemsDataItem": ".types",
    "VarianceObjectLastInvoiceItem": ".types",
    "accounts": ".accounts",
    "batch": ".batch",
    "catalog": ".catalog",
    "dimensions": ".dimensions",
    "invoices": ".invoices",
    "oauth": ".oauth",
    "purchase_orders": ".purchase_orders",
    "receipts": ".receipts",
    "vendors": ".vendors",
}


def __getattr__(attr_name: str) -> typing.Any:
    module_name = _dynamic_imports.get(attr_name)
    if module_name is None:
        raise AttributeError(f"No {attr_name} found in _dynamic_imports for module name -> {__name__}")
    try:
        module = import_module(module_name, __package__)
        if module_name == f".{attr_name}":
            return module
        else:
            return getattr(module, attr_name)
    except ImportError as e:
        raise ImportError(f"Failed to import {attr_name} from {module_name}: {e}") from e
    except AttributeError as e:
        raise AttributeError(f"Failed to get {attr_name} from {module_name}: {e}") from e


def __dir__():
    lazy_attrs = list(_dynamic_imports.keys())
    return sorted(lazy_attrs)


__all__ = [
    "AccountObject",
    "ApproverObject",
    "ApproverObjectApprover",
    "ApproverObjectPolicy",
    "AsyncOttimate",
    "BadRequestError",
    "BatchProgressResponse",
    "BatchProgressResponseStatus",
    "BatchResultsResponse",
    "BatchResultsResponseResultsItem",
    "BulkInvoiceFailure",
    "BulkInvoiceOperationResponse",
    "BulkInvoiceOperationResponseFailedItem",
    "BulkInvoiceUnexportOperationResponse",
    "BulkInvoiceUnexportOperationResponseFailedItem",
    "BulkInvoiceUnexportOperationResponseSkippedItem",
    "BulkUpsertAsyncResponse",
    "BulkUpsertAsyncResponseSummary",
    "CatalogAllowanceBulkCreateRequestAllowancesItem",
    "CatalogAllowanceBulkCreateRequestAllowancesItemAllowanceType",
    "CatalogAllowanceBulkItem",
    "CatalogAllowanceBulkItemAllowanceType",
    "CatalogAllowanceListResponse",
    "CatalogAllowanceListResponseResultsItem",
    "CatalogAllowanceListResponseResultsItemAllowanceType",
    "CatalogAllowanceListResponseResultsItemTargetType",
    "CatalogAllowanceNestedCreateRequest",
    "CatalogAllowanceNestedCreateRequestAllowanceType",
    "CatalogAllowanceNestedObject",
    "CatalogAllowanceNestedObjectAllowanceType",
    "CatalogAllowanceNestedObjectTargetType",
    "CatalogAllowanceObject",
    "CatalogAllowanceObjectAllowanceType",
    "CatalogAllowanceObjectTargetType",
    "CatalogBulkErrorItem",
    "CatalogBulkResponse",
    "CatalogBulkResponseErrorsItem",
    "CatalogBulkResponseSkippedItem",
    "CatalogBulkSkippedItem",
    "CatalogEntryBasicObject",
    "CatalogEntryBulkCreateRequestEntriesItem",
    "CatalogEntryBulkCreateRequestEntriesItemAllowancesItem",
    "CatalogEntryBulkCreateRequestEntriesItemAllowancesItemAllowanceType",
    "CatalogEntryBulkCreateRequestEntriesItemPricesItem",
    "CatalogEntryBulkCreateRequestEntriesItemPricesItemPriceType",
    "CatalogEntryBulkItem",
    "CatalogEntryBulkItemAllowancesItem",
    "CatalogEntryBulkItemAllowancesItemAllowanceType",
    "CatalogEntryBulkItemPricesItem",
    "CatalogEntryBulkItemPricesItemPriceType",
    "CatalogEntryCreateRequest",
    "CatalogEntryCreateRequestAllowancesItem",
    "CatalogEntryCreateRequestAllowancesItemAllowanceType",
    "CatalogEntryCreateRequestPricesItem",
    "CatalogEntryCreateRequestPricesItemPriceType",
    "CatalogEntryListResponse",
    "CatalogEntryListResponseResultsItem",
    "CatalogEntryObject",
    "CatalogEntryObjectAllowancesItem",
    "CatalogEntryObjectAllowancesItemAllowanceType",
    "CatalogEntryObjectAllowancesItemTargetType",
    "CatalogEntryObjectPricesItem",
    "CatalogEntryObjectPricesItemPriceTypeDisplay",
    "CatalogErrorResponse",
    "CatalogPriceCreateRequest",
    "CatalogPriceCreateRequestPriceType",
    "CatalogPriceItem",
    "CatalogPriceItemPriceTypeDisplay",
    "CatalogPricesBulkCreateRequestPricesItem",
    "CatalogPricesBulkCreateRequestPricesItemPriceType",
    "CompanyObject",
    "ContentTooLargeError",
    "DeleteInvoicesIdApproversResponse",
    "ErrorResponse",
    "ForbiddenError",
    "GetAccountsIdCompaniesResponse",
    "GetAccountsIdLocationsResponse",
    "GetAccountsRootResponse",
    "GetBatchRootRequestStatus",
    "GetBatchRootResponse",
    "GetBatchRootResponseResultsItem",
    "GetBatchRootResponseResultsItemStatus",
    "GetCatalogPricesRequestPriceType",
    "GetCatalogPricesResponse",
    "GetCatalogVariancesRequestExceptionType",
    "GetDimensionsIdResponse",
    "GetDimensionsIdResponseDimension",
    "GetDimensionsIdResponseDimensionOttimateType",
    "GetDimensionsRootResponse",
    "GetDimensionsRootResponseDimensionsItem",
    "GetDimensionsRootResponseDimensionsItemOttimateType",
    "GetInvoicesIdApproversResponse",
    "GetInvoicesRootRequestPaymentStatus",
    "GetInvoicesRootRequestStatus",
    "GetInvoicesRootResponse",
    "GetInvoicesUploadsResponse",
    "GetPurchaseOrdersRootRequestStatus",
    "GetPurchaseOrdersRootResponse",
    "GetReceiptsRootResponse",
    "GetVendorsIdResponse",
    "GetVendorsIdResponseVendor",
    "GetVendorsIdResponseVendorPaymentMethod",
    "GetVendorsRootResponse",
    "GetVendorsRootResponseVendorsItem",
    "GetVendorsRootResponseVendorsItemPaymentMethod",
    "InstantCaptureFileObject",
    "InternalServerError",
    "InvoiceCreationResponse",
    "InvoiceCreationResponseBatch",
    "InvoiceCreationResponseBatchStatus",
    "InvoiceCreationResponseContainer",
    "InvoiceCreationResponseInvoice",
    "InvoiceCreationResponseInvoiceStatus",
    "InvoiceCreationResponseProcessing",
    "InvoiceCreationResponseProcessingStatus",
    "InvoiceCreationResponseUpload",
    "InvoiceCreationResponseUploadUploadMethod",
    "InvoiceDetailObject",
    "InvoiceDetailObjectGlSplitsItem",
    "InvoiceDetailObjectHistoryItem",
    "InvoiceDetailObjectHistoryItemUser",
    "InvoiceDetailObjectImagesItem",
    "InvoiceDetailObjectItemsProcessingResult",
    "InvoiceDetailObjectItemsProcessingResultStatus",
    "InvoiceDetailObjectPaymentInfo",
    "InvoiceDetailObjectPaymentStatus",
    "InvoiceDetailObjectType",
    "InvoiceItemVarianceListResponse",
    "InvoiceItemVarianceListResponseResultsItem",
    "InvoiceNeedsAttentionObject",
    "InvoiceNeedsAttentionObjectOnHold",
    "InvoiceNeedsAttentionObjectPaymentStatus",
    "InvoiceNeedsAttentionObjectType",
    "InvoiceObject",
    "InvoiceObjectImagesItem",
    "InvoiceObjectOnHold",
    "InvoiceObjectPaymentStatus",
    "InvoiceObjectType",
    "LineItemObject",
    "LocationObject",
    "NotFoundError",
    "OauthScope",
    "Ottimate",
    "OttimateEnvironment",
    "PatchCatalogAllowancesIdRequestAllowanceType",
    "PatchCatalogEntriesIdRequestProperties",
    "PatchInvoicesIdRequestItemsItem",
    "PatchInvoicesIdRequestType",
    "PatchPurchaseOrdersIdRequestItemsItem",
    "PatchReceiptsIdRequestItemsItem",
    "PostCatalogAllowancesRequestAllowanceType",
    "PostCatalogEntriesRequestAllowancesItem",
    "PostCatalogEntriesRequestPricesItem",
    "PostCatalogEntriesRequestPricesItemPriceType",
    "PostCatalogPricesBulkResponse",
    "PostCatalogPricesRequestPriceType",
    "PostDimensionsBulkRequestDimensionsItem",
    "PostDimensionsBulkRequestDimensionsItemOttimateType",
    "PostDimensionsBulkResponse",
    "PostDimensionsBulkResponseCreatedItem",
    "PostDimensionsBulkResponseErrorsItem",
    "PostDimensionsBulkResponseUpdatedItem",
    "PostDimensionsRootRequestOttimateType",
    "PostDimensionsRootResponse",
    "PostDimensionsRootResponseOttimateType",
    "PostInvoicesIdApproveResponse",
    "PostInvoicesIdApproveResponseInvoice",
    "PostInvoicesIdApproversResponse",
    "PostInvoicesIdFlagResponse",
    "PostInvoicesIdFlagResponseInvoice",
    "PostInvoicesMarkExportedRequestInvoicesItem",
    "PostInvoicesMarkUnexportedRequestInvoicesItem",
    "PostInvoicesRootRequestItemsItem",
    "PostInvoicesRootRequestType",
    "PostInvoicesRootResponse",
    "PostInvoicesRootResponseItems",
    "PostOauthTokenResponse",
    "PostVendorsBulkRequestVendorsItem",
    "PostVendorsBulkRequestVendorsItemPaymentMethod",
    "PostVendorsBulkResponse",
    "PostVendorsBulkResponseCreatedItem",
    "PostVendorsBulkResponseCreatedItemPaymentMethod",
    "PostVendorsBulkResponseErrorsItem",
    "PostVendorsBulkResponseUpdatedItem",
    "PostVendorsBulkResponseUpdatedItemPaymentMethod",
    "PostVendorsRootRequestPaymentMethod",
    "PostVendorsRootResponse",
    "PostVendorsRootResponseVendor",
    "PostVendorsRootResponseVendorPaymentMethod",
    "PreconditionFailedError",
    "PurchaseOrderBulkUpsertRequestPurchaseOrdersItem",
    "PurchaseOrderBulkUpsertRequestPurchaseOrdersItemItemsItem",
    "PurchaseOrderCreateRequestItemsItem",
    "PurchaseOrderCreateResponse",
    "PurchaseOrderCreateResponseItemsItem",
    "PurchaseOrderCreateResponseStatus",
    "PurchaseOrderDetail",
    "PurchaseOrderDetailPurchaseOrder",
    "PurchaseOrderDetailPurchaseOrderItemsItem",
    "PurchaseOrderDetailPurchaseOrderStatus",
    "PurchaseOrderSummary",
    "PurchaseOrderSummaryStatus",
    "PurchaseOrderUpdateResponse",
    "PurchaseOrderUpdateResponseStatus",
    "ReceiptBulkUpsertAsyncResponse",
    "ReceiptBulkUpsertAsyncResponseSummary",
    "ReceiptBulkUpsertRequestReceiptsItem",
    "ReceiptBulkUpsertRequestReceiptsItemItemsItem",
    "ReceiptCreateRequestItemsItem",
    "ReceiptCreateResponse",
    "ReceiptCreateResponseStatus",
    "ReceiptDetail",
    "ReceiptDetailReceipt",
    "ReceiptDetailReceiptItemsItem",
    "ReceiptDetailReceiptStatus",
    "ReceiptItem",
    "ReceiptSummary",
    "ReceiptSummaryStatus",
    "ReceiptUpdateResponse",
    "ReceiptUpdateResponseStatus",
    "UnauthorizedError",
    "UnprocessableEntityError",
    "VarianceListResponse",
    "VarianceListResponseResultsItem",
    "VarianceListResponseResultsItemLastInvoiceItem",
    "VarianceObject",
    "VarianceObjectInvoiceItems",
    "VarianceObjectInvoiceItemsDataItem",
    "VarianceObjectLastInvoiceItem",
    "accounts",
    "batch",
    "catalog",
    "dimensions",
    "invoices",
    "oauth",
    "purchase_orders",
    "receipts",
    "vendors",
]
