"""Import all models for Alembic metadata discovery."""
from app.models.compliance import (  # noqa: F401
    ApprovalRequest,
    ApprovalStep,
    ApprovalWorkflow,
    AuditHistory,
    AuditRecord,
    CompliancePolicy,
    ControlDefinition,
    Delegation,
    Evidence,
    GovernanceRule,
    PolicyViolation,
    RetentionPolicy,
    RiskRecord,
)
from app.models.fixed_assets import (  # noqa: F401
    Asset,
    AssetAccountingProfile,
    AssetCategory,
    AssetDepreciation,
    AssetDisposal,
    AssetGroup,
    AssetHistory,
    AssetImpairment,
    AssetLocation,
    AssetRevaluation,
    AssetTransfer,
    DepreciationSchedule,
)
from app.models.foundation import (  # noqa: F401
    Account,
    AccountingSettings,
    ChartOfAccounts,
    CostCenter,
    Currency,
    Dimension,
    DocumentNumberSequence,
    ExchangeRate,
    FiscalPeriod,
    FiscalYear,
    Project,
    TenantAccountingConfiguration,
)
from app.models.ledger import (  # noqa: F401
    AccountingCalendar,
    BalanceSnapshot,
    ClosingEntry,
    GeneralLedger,
    LedgerBalance,
    OpeningEntry,
    TrialBalanceSnapshot,
)
from app.models.payroll import (  # noqa: F401
    Allowance,
    Benefit,
    Deduction,
    Department,
    Employee,
    EmployeeAdvance,
    EmployeeLoan,
    EmploymentContract,
    Payroll,
    PayrollAccountingProfile,
    PayrollHistory,
    PayrollItem,
    PayrollPeriod,
    PayrollSettlement,
    Position,
    SalaryComponent,
)
from app.models.posting import (  # noqa: F401
    AccountingAuditLog,
    Journal,
    JournalEntry,
    PostingError,
    PostingLog,
    PostingReference,
    Voucher,
    VoucherLine,
)
from app.models.purchase_inventory import (  # noqa: F401
    InventoryAccountingConfiguration,
    InventoryCostAdjustment,
    InventoryPostingProfile,
    InventorySnapshot,
    InventoryValuationHistory,
    InventoryValuationMethodConfig,
    PurchaseAccountingConfiguration,
    PurchasePostingProfile,
)
from app.models.receivable_payable import (  # noqa: F401
    AdvancePayment,
    AdvanceReceipt,
    AgingSnapshot,
    CreditNote,
    CustomerAccount,
    CustomerStatement,
    DebitNote,
    PayableInvoice,
    ReceivableInvoice,
    Settlement,
    SettlementAllocation,
    SupplierAccount,
    SupplierStatement,
)
from app.models.reporting import (  # noqa: F401
    Dashboard,
    DashboardWidget,
    FinancialReport,
    KPI,
    ReportConfiguration,
    ReportExport,
    ReportHistory,
    ReportSnapshot,
    ReportTemplate,
    ScheduledReport,
)
from app.models.sales_accounting import (  # noqa: F401
    AccountingPreview,
    AccountingProfile,
    PostingRule,
    PostingSimulation,
    RevenueRecognition,
    RevenueSchedule,
    SalesAccountingConfiguration,
    SalesPostingProfile,
)
from app.models.treasury import (  # noqa: F401
    Bank,
    BankAccount,
    BankTransaction,
    CashBox,
    CashTransaction,
    Cheque,
    ChequeBook,
    PaymentVoucher,
    ReceiptVoucher,
    Reconciliation,
    Transfer,
    TreasurySettings,
)
from app.models.operational import (  # noqa: F401
    BusinessDocument,
    InventoryItem,
    Warehouse,
)
