//! Tax-rate engine types and computation (Sub-project B). Federal-only (NFR5 exact Decimal;
//! NFR4 determinism). No float anywhere — all rates are `Decimal` literals.
//! Tables and compute modules are added in Tasks 2–5.
pub mod compute;
pub mod se;
pub mod tables;
pub mod types;

pub use compute::{
    carryforward_consistency, compute_tax_year, net_1222, ordinary_tax_on, preferential_tax,
    CapNet, PrefSplit,
};
pub use se::{compute_se_tax, se_net_income, SeTaxResult};
pub use tables::{
    loss_limit, niit_threshold, se_addl_medicare_threshold, LtcgBreakpoints, OrdinaryBracket,
    OrdinarySchedule, TaxTable, TaxTables, NIIT_RATE, QUALIFIED_APPRAISAL_THRESHOLD,
    SE_NET_EARNINGS_FACTOR, SE_RATE_ADDL_MEDICARE, SE_RATE_MEDICARE, SE_RATE_SS,
};
pub use types::{Carryforward, FilingStatus, MarginalRates, TaxOutcome, TaxProfile, TaxResult};
