@trajectonomics/tax 0.0.0-stage → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +48 -2
- package/dist/clamp-BKG7kjVf.cjs +509 -0
- package/dist/clamp-BKG7kjVf.cjs.map +1 -0
- package/dist/clamp-Bse4u0H-.mjs +426 -0
- package/dist/clamp-Bse4u0H-.mjs.map +1 -0
- package/dist/index.cjs +27 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +102 -0
- package/dist/index.d.mts +102 -0
- package/dist/index.mjs +15 -0
- package/dist/index.mjs.map +1 -0
- package/dist/th/index.cjs +1480 -0
- package/dist/th/index.cjs.map +1 -0
- package/dist/th/index.d.cts +636 -0
- package/dist/th/index.d.mts +636 -0
- package/dist/th/index.mjs +1473 -0
- package/dist/th/index.mjs.map +1 -0
- package/dist/types-798sLpt6.d.cts +170 -0
- package/dist/types-798sLpt6.d.mts +170 -0
- package/dist/us/index.cjs +2921 -0
- package/dist/us/index.cjs.map +1 -0
- package/dist/us/index.d.cts +649 -0
- package/dist/us/index.d.mts +649 -0
- package/dist/us/index.mjs +2897 -0
- package/dist/us/index.mjs.map +1 -0
- package/package.json +78 -5
|
@@ -0,0 +1,649 @@
|
|
|
1
|
+
import { h as TaxBracket, i as Money, m as BracketSlice, n as TaxResult, r as TaxSystem, u as ClampedAmount } from "../types-798sLpt6.mjs";
|
|
2
|
+
/**
|
|
3
|
+
* Breakdown of Form 6251 Alternative Minimum Tax (AMT).
|
|
4
|
+
*
|
|
5
|
+
* @statute IRC § 55
|
|
6
|
+
*/
|
|
7
|
+
interface UsAmtBreakdown {
|
|
8
|
+
readonly taxableIncome: Money<"USD">;
|
|
9
|
+
readonly saltAddBack: Money<"USD">;
|
|
10
|
+
readonly preferences: Money<"USD">;
|
|
11
|
+
readonly amti: Money<"USD">;
|
|
12
|
+
readonly baseExemption: Money<"USD">;
|
|
13
|
+
readonly phaseoutThreshold: Money<"USD">;
|
|
14
|
+
readonly exemptionReduction: Money<"USD">;
|
|
15
|
+
readonly allowedExemption: Money<"USD">;
|
|
16
|
+
readonly amtTaxableBase: Money<"USD">;
|
|
17
|
+
readonly tentativeMinimumTax: Money<"USD">;
|
|
18
|
+
readonly regularTax: Money<"USD">;
|
|
19
|
+
readonly amtTax: Money<"USD">;
|
|
20
|
+
}
|
|
21
|
+
interface UsChildCreditsBreakdown {
|
|
22
|
+
readonly qualifyingChildren: number;
|
|
23
|
+
readonly otherDependents: number;
|
|
24
|
+
readonly initialCtc: Money<"USD">;
|
|
25
|
+
readonly initialOdc: Money<"USD">;
|
|
26
|
+
readonly phaseoutReduction: Money<"USD">;
|
|
27
|
+
readonly allowedCtc: Money<"USD">;
|
|
28
|
+
readonly allowedOdc: Money<"USD">;
|
|
29
|
+
readonly nonRefundableCtcUsed: Money<"USD">;
|
|
30
|
+
readonly nonRefundableOdcUsed: Money<"USD">;
|
|
31
|
+
readonly actcRefundable: Money<"USD">;
|
|
32
|
+
}
|
|
33
|
+
interface UsEitcBreakdown {
|
|
34
|
+
readonly qualifyingChildren: number;
|
|
35
|
+
readonly earnedIncome: Money<"USD">;
|
|
36
|
+
readonly disqualifiedByInvestmentIncome: boolean;
|
|
37
|
+
readonly credit: Money<"USD">;
|
|
38
|
+
}
|
|
39
|
+
interface UsEducationCreditsBreakdown {
|
|
40
|
+
readonly aotcNonRefundable: Money<"USD">;
|
|
41
|
+
readonly aotcRefundable: Money<"USD">;
|
|
42
|
+
readonly llcNonRefundable: Money<"USD">;
|
|
43
|
+
readonly totalNonRefundable: Money<"USD">;
|
|
44
|
+
readonly totalRefundable: Money<"USD">;
|
|
45
|
+
}
|
|
46
|
+
interface UsCreditsBreakdown {
|
|
47
|
+
readonly childCredits: UsChildCreditsBreakdown;
|
|
48
|
+
readonly eitc: UsEitcBreakdown;
|
|
49
|
+
readonly childAndDependentCare: Money<"USD">;
|
|
50
|
+
readonly education: UsEducationCreditsBreakdown;
|
|
51
|
+
readonly foreignTaxCredit: Money<"USD">;
|
|
52
|
+
readonly customNonRefundable: Money<"USD">;
|
|
53
|
+
readonly customRefundable: Money<"USD">;
|
|
54
|
+
readonly totalNonRefundableClaimed: Money<"USD">;
|
|
55
|
+
readonly totalNonRefundableAllowed: Money<"USD">;
|
|
56
|
+
readonly totalRefundable: Money<"USD">;
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Breakdown of W-2 FICA payroll taxes.
|
|
60
|
+
*
|
|
61
|
+
* @statute IRC § 3101
|
|
62
|
+
*/
|
|
63
|
+
interface UsFicaBreakdown {
|
|
64
|
+
readonly enabled: boolean;
|
|
65
|
+
readonly socialSecurityWages: Money<"USD">;
|
|
66
|
+
readonly socialSecurityTax: Money<"USD">;
|
|
67
|
+
readonly medicareWages: Money<"USD">;
|
|
68
|
+
readonly medicareTax: Money<"USD">;
|
|
69
|
+
readonly additionalMedicareSubject: Money<"USD">;
|
|
70
|
+
readonly additionalMedicareTax: Money<"USD">;
|
|
71
|
+
readonly totalFicaTax: Money<"USD">;
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Breakdown of Schedule SE Self-Employment Tax (SECA).
|
|
75
|
+
*
|
|
76
|
+
* @statute IRC § 1401, § 1402
|
|
77
|
+
*/
|
|
78
|
+
interface UsScheduleSeBreakdown {
|
|
79
|
+
readonly netEarnings: Money<"USD">;
|
|
80
|
+
readonly netEarningsMultiplier: number;
|
|
81
|
+
readonly subjectEarnings: Money<"USD">;
|
|
82
|
+
readonly socialSecurityTaxable: Money<"USD">;
|
|
83
|
+
readonly socialSecurityTax: Money<"USD">;
|
|
84
|
+
readonly medicareTax: Money<"USD">;
|
|
85
|
+
readonly totalSelfEmploymentTax: Money<"USD">;
|
|
86
|
+
readonly deductiblePortion: Money<"USD">;
|
|
87
|
+
}
|
|
88
|
+
declare const STATE_CODES: readonly ["AL", "AK", "AZ", "AR", "CA", "CO", "CT", "DE", "DC", "FL", "GA", "HI", "ID", "IL", "IN", "IA", "KS", "KY", "LA", "ME", "MD", "MA", "MI", "MN", "MS", "MO", "MT", "NE", "NV", "NH", "NJ", "NM", "NY", "NC", "ND", "OH", "OK", "OR", "PA", "RI", "SC", "SD", "TN", "TX", "UT", "VT", "VA", "WA", "WV", "WI", "WY"];
|
|
89
|
+
/** ISO 3166-2 state code for all 50 US states plus the District of Columbia. */
|
|
90
|
+
type UsStateCode = (typeof STATE_CODES)[number];
|
|
91
|
+
/** Read-only runtime registry of every supported US state code. */
|
|
92
|
+
export declare const US_STATE_CODES: readonly UsStateCode[];
|
|
93
|
+
/** Statutory structure of a state individual income tax schedule. */
|
|
94
|
+
type UsStateTaxType = "none" | "flat" | "progressive";
|
|
95
|
+
/** Caller-supplied state non-refundable and refundable credits in major dollars. */
|
|
96
|
+
interface UsStateCreditsInput {
|
|
97
|
+
readonly nonRefundable?: number;
|
|
98
|
+
readonly refundable?: number;
|
|
99
|
+
}
|
|
100
|
+
/** Audit trail for state personal, dependent, and caller-supplied credits. */
|
|
101
|
+
interface UsStateCreditsBreakdown {
|
|
102
|
+
readonly personal: Money<"USD">;
|
|
103
|
+
readonly dependent: Money<"USD">;
|
|
104
|
+
readonly claimedNonRefundable: Money<"USD">;
|
|
105
|
+
readonly allowedNonRefundable: Money<"USD">;
|
|
106
|
+
readonly refundable: Money<"USD">;
|
|
107
|
+
}
|
|
108
|
+
/** Detailed audit trail for a state individual income tax calculation. */
|
|
109
|
+
interface UsStateBreakdown {
|
|
110
|
+
readonly code: UsStateCode;
|
|
111
|
+
readonly name: string;
|
|
112
|
+
readonly type: UsStateTaxType;
|
|
113
|
+
readonly agi: Money<"USD">;
|
|
114
|
+
readonly standardDeduction: Money<"USD">;
|
|
115
|
+
readonly personalExemption: Money<"USD">;
|
|
116
|
+
readonly dependentExemption: Money<"USD">;
|
|
117
|
+
readonly taxableIncome: Money<"USD">;
|
|
118
|
+
readonly slices: readonly BracketSlice[];
|
|
119
|
+
readonly bracketTax: Money<"USD">;
|
|
120
|
+
readonly surtax: Money<"USD">;
|
|
121
|
+
readonly taxBeforeCredits: Money<"USD">;
|
|
122
|
+
readonly credits: UsStateCreditsBreakdown;
|
|
123
|
+
readonly totalTax: Money<"USD">;
|
|
124
|
+
readonly withholding: Money<"USD">;
|
|
125
|
+
readonly netTaxPayable: Money<"USD">;
|
|
126
|
+
readonly effectiveRate: number;
|
|
127
|
+
readonly marginalRate: number;
|
|
128
|
+
}
|
|
129
|
+
/** Audit slice for Long-Term Capital Gains & Qualified Dividends (IRC § 1(h)). */
|
|
130
|
+
interface UsPreferentialSlice {
|
|
131
|
+
readonly tier: number;
|
|
132
|
+
readonly rate: number;
|
|
133
|
+
readonly taxableAmount: Money<"USD">;
|
|
134
|
+
readonly tax: Money<"USD">;
|
|
135
|
+
}
|
|
136
|
+
/** Breakdown of Standard Deduction evaluation (IRC § 63(c), § 63(f)). */
|
|
137
|
+
interface UsStandardDeductionBreakdown {
|
|
138
|
+
readonly base: Money<"USD">;
|
|
139
|
+
readonly additionalConditionsCount: number;
|
|
140
|
+
readonly additionalPerCondition: Money<"USD">;
|
|
141
|
+
readonly additionalTotal: Money<"USD">;
|
|
142
|
+
readonly total: Money<"USD">;
|
|
143
|
+
}
|
|
144
|
+
/** Breakdown of Schedule A Itemized Deductions audit trail (IRC §§ 164, 170, 213). */
|
|
145
|
+
interface UsItemizedBreakdown {
|
|
146
|
+
readonly medical: ClampedAmount;
|
|
147
|
+
readonly salt: ClampedAmount;
|
|
148
|
+
readonly mortgageInterest: Money<"USD">;
|
|
149
|
+
readonly charity: ClampedAmount;
|
|
150
|
+
readonly total: Money<"USD">;
|
|
151
|
+
}
|
|
152
|
+
/** Breakdown of Schedule 1 Above-the-Line Adjustments to income (IRC § 62). */
|
|
153
|
+
interface UsAdjustmentsBreakdown {
|
|
154
|
+
readonly educatorExpenses: ClampedAmount;
|
|
155
|
+
readonly hsa: ClampedAmount;
|
|
156
|
+
readonly traditionalIra: ClampedAmount;
|
|
157
|
+
readonly studentLoanInterest: ClampedAmount;
|
|
158
|
+
readonly preTaxDeferrals401k: ClampedAmount;
|
|
159
|
+
readonly deductibleSelfEmploymentTax: Money<"USD">;
|
|
160
|
+
readonly totalAdjustments: Money<"USD">;
|
|
161
|
+
}
|
|
162
|
+
/** Breakdown of Net Investment Income Tax (NIIT) computation (IRC § 1411). */
|
|
163
|
+
interface UsNiitBreakdown {
|
|
164
|
+
readonly netInvestmentIncome: Money<"USD">;
|
|
165
|
+
readonly magi: Money<"USD">;
|
|
166
|
+
readonly threshold: Money<"USD">;
|
|
167
|
+
readonly excessMagi: Money<"USD">;
|
|
168
|
+
readonly subjectAmount: Money<"USD">;
|
|
169
|
+
readonly tax: Money<"USD">;
|
|
170
|
+
}
|
|
171
|
+
/** Detailed audit trail breakdown for US Federal Individual Income Tax (IRC § 1 et seq.). */
|
|
172
|
+
interface UsTaxBreakdown {
|
|
173
|
+
readonly ordinaryGrossIncome: Money<"USD">;
|
|
174
|
+
readonly preferentialGrossIncome: Money<"USD">;
|
|
175
|
+
readonly grossIncome: Money<"USD">;
|
|
176
|
+
readonly adjustments: UsAdjustmentsBreakdown;
|
|
177
|
+
readonly agi: Money<"USD">;
|
|
178
|
+
readonly electedDeduction: "standard" | "itemized";
|
|
179
|
+
readonly standardDeduction: UsStandardDeductionBreakdown;
|
|
180
|
+
readonly itemizedDeductions?: UsItemizedBreakdown | undefined;
|
|
181
|
+
readonly allowableDeduction: Money<"USD">;
|
|
182
|
+
readonly ordinaryTaxableIncome: Money<"USD">;
|
|
183
|
+
readonly preferentialTaxableIncome: Money<"USD">;
|
|
184
|
+
readonly taxableIncome: Money<"USD">;
|
|
185
|
+
readonly ordinaryTax: Money<"USD">;
|
|
186
|
+
readonly ordinarySlices: readonly BracketSlice[];
|
|
187
|
+
readonly preferentialTax: Money<"USD">;
|
|
188
|
+
readonly preferentialSlices: readonly UsPreferentialSlice[];
|
|
189
|
+
readonly regularIncomeTax: Money<"USD">;
|
|
190
|
+
readonly amt?: UsAmtBreakdown | undefined;
|
|
191
|
+
readonly niit: UsNiitBreakdown;
|
|
192
|
+
readonly fica?: UsFicaBreakdown | undefined;
|
|
193
|
+
readonly scheduleSe?: UsScheduleSeBreakdown | undefined;
|
|
194
|
+
readonly credits?: UsCreditsBreakdown | undefined;
|
|
195
|
+
readonly state?: UsStateBreakdown | undefined;
|
|
196
|
+
readonly totalTax: Money<"USD">;
|
|
197
|
+
readonly withholding: Money<"USD">;
|
|
198
|
+
readonly netTaxPayable: Money<"USD">;
|
|
199
|
+
}
|
|
200
|
+
/**
|
|
201
|
+
* Qualifying education expense item per student for Education Credits (Form 8863).
|
|
202
|
+
*
|
|
203
|
+
* @statute IRC § 25A
|
|
204
|
+
*/
|
|
205
|
+
interface UsEducationCreditStudent {
|
|
206
|
+
/** Education credit type elected: American Opportunity (AOTC) or Lifetime Learning (LLC). */
|
|
207
|
+
readonly type: "aotc" | "llc";
|
|
208
|
+
/** Adjusted qualified education expenses paid during the tax year. */
|
|
209
|
+
readonly qualifiedExpenses: number;
|
|
210
|
+
}
|
|
211
|
+
/**
|
|
212
|
+
* Statutory federal tax credits inputs.
|
|
213
|
+
*
|
|
214
|
+
* Units: Amounts in major currency units ($ USD) and integer counts.
|
|
215
|
+
* @statute IRC §§ 21, 24, 25A, 32, 901
|
|
216
|
+
*/
|
|
217
|
+
interface UsCreditsInput {
|
|
218
|
+
/** Number of qualifying children under age 17 for Child Tax Credit (CTC). */
|
|
219
|
+
readonly qualifyingChildrenForChildTaxCredit?: number;
|
|
220
|
+
/** Number of other qualifying dependents for Other Dependent Credit (ODC). */
|
|
221
|
+
readonly otherDependents?: number;
|
|
222
|
+
/** Number of qualifying children for Earned Income Tax Credit (EITC: 0, 1, 2, 3+). */
|
|
223
|
+
readonly eitcQualifyingChildren?: 0 | 1 | 2 | 3 | number;
|
|
224
|
+
/** Disqualifying investment income test for EITC. */
|
|
225
|
+
readonly eitcInvestmentIncome?: number;
|
|
226
|
+
/** Qualified child and dependent care expenses paid (Form 2441). */
|
|
227
|
+
readonly childAndDependentCareExpenses?: number;
|
|
228
|
+
/** Number of qualifying individuals for child and dependent care credit (1 or 2+). */
|
|
229
|
+
readonly qualifyingIndividualsForCare?: number;
|
|
230
|
+
/** Qualified education expenses per student (Form 8863). */
|
|
231
|
+
readonly educationStudents?: readonly UsEducationCreditStudent[];
|
|
232
|
+
/** Foreign taxes paid or accrued eligible for Foreign Tax Credit (Form 1116). */
|
|
233
|
+
readonly foreignTaxCredit?: number;
|
|
234
|
+
/** Custom non-refundable credits offsetting income and AMT tax. */
|
|
235
|
+
readonly customNonRefundableCredits?: number;
|
|
236
|
+
/** Custom refundable credits offsetting total tax liability. */
|
|
237
|
+
readonly customRefundableCredits?: number;
|
|
238
|
+
}
|
|
239
|
+
/**
|
|
240
|
+
* Diagnostic and reporting field identifiers for US income sources.
|
|
241
|
+
*/
|
|
242
|
+
export declare enum UsIncomeField {
|
|
243
|
+
W2Wages = "income.w2Wages",
|
|
244
|
+
SelfEmploymentNetEarnings = "income.selfEmploymentNetEarnings",
|
|
245
|
+
OrdinaryInterest = "income.ordinaryInterest",
|
|
246
|
+
OrdinaryDividends = "income.ordinaryDividends",
|
|
247
|
+
ShortTermCapitalGains = "income.shortTermCapitalGains",
|
|
248
|
+
RentalAndOtherOrdinaryIncome = "income.rentalAndOtherOrdinaryIncome",
|
|
249
|
+
LongTermCapitalGains = "income.longTermCapitalGains",
|
|
250
|
+
QualifiedDividends = "income.qualifiedDividends"
|
|
251
|
+
}
|
|
252
|
+
/**
|
|
253
|
+
* Diagnostic and reporting field identifiers for Schedule 1 adjustments.
|
|
254
|
+
*/
|
|
255
|
+
export declare enum UsAdjustmentField {
|
|
256
|
+
EducatorExpenses = "adjustments.educatorExpenses",
|
|
257
|
+
HsaContributions = "adjustments.hsaContributions",
|
|
258
|
+
TraditionalIra = "adjustments.traditionalIra",
|
|
259
|
+
StudentLoanInterest = "adjustments.studentLoanInterest",
|
|
260
|
+
PreTaxDeferrals401k = "adjustments.preTaxDeferrals401k",
|
|
261
|
+
DeductibleSeTax = "adjustments.deductibleSeTax"
|
|
262
|
+
}
|
|
263
|
+
/**
|
|
264
|
+
* Diagnostic and reporting field identifiers for Schedule A itemized deductions.
|
|
265
|
+
*/
|
|
266
|
+
export declare enum UsDeductionField {
|
|
267
|
+
MedicalExpenses = "itemized.medicalExpenses",
|
|
268
|
+
StateAndLocalTaxes = "itemized.stateAndLocalTaxes",
|
|
269
|
+
MortgageInterest = "itemized.mortgageInterest",
|
|
270
|
+
CharitableContributions = "itemized.charitableContributions",
|
|
271
|
+
StandardDeduction = "deductions.standard"
|
|
272
|
+
}
|
|
273
|
+
/**
|
|
274
|
+
* Diagnostic and reporting field identifiers for Payroll and Self-Employment taxes.
|
|
275
|
+
*/
|
|
276
|
+
export declare enum UsPayrollField {
|
|
277
|
+
FicaSocialSecurity = "payroll.fica.socialSecurity",
|
|
278
|
+
FicaMedicare = "payroll.fica.medicare",
|
|
279
|
+
FicaAdditionalMedicare = "payroll.fica.additionalMedicare",
|
|
280
|
+
SeSocialSecurity = "payroll.se.socialSecurity",
|
|
281
|
+
SeMedicare = "payroll.se.medicare",
|
|
282
|
+
SeDeductiblePortion = "payroll.se.deductiblePortion"
|
|
283
|
+
}
|
|
284
|
+
/**
|
|
285
|
+
* Diagnostic and reporting field identifiers for Alternative Minimum Tax.
|
|
286
|
+
*/
|
|
287
|
+
export declare enum UsAmtField {
|
|
288
|
+
Amti = "amt.amti",
|
|
289
|
+
Exemption = "amt.exemption",
|
|
290
|
+
Preferences = "amt.preferences",
|
|
291
|
+
TentativeMinimumTax = "amt.tentativeMinimumTax",
|
|
292
|
+
AmtTax = "amt.tax"
|
|
293
|
+
}
|
|
294
|
+
/**
|
|
295
|
+
* Diagnostic and reporting field identifiers for Federal Tax Credits.
|
|
296
|
+
*/
|
|
297
|
+
export declare enum UsCreditField {
|
|
298
|
+
ChildTaxCredit = "credits.ctc",
|
|
299
|
+
AdditionalChildTaxCredit = "credits.actc",
|
|
300
|
+
OtherDependentCredit = "credits.odc",
|
|
301
|
+
EarnedIncomeTaxCredit = "credits.eitc",
|
|
302
|
+
ChildAndDependentCare = "credits.care",
|
|
303
|
+
Aotc = "credits.aotc",
|
|
304
|
+
Llc = "credits.llc",
|
|
305
|
+
ForeignTaxCredit = "credits.ftc",
|
|
306
|
+
CustomNonRefundable = "credits.customNonRefundable",
|
|
307
|
+
CustomRefundable = "credits.customRefundable"
|
|
308
|
+
}
|
|
309
|
+
/**
|
|
310
|
+
* Diagnostic and reporting field identifiers for US federal tax totals.
|
|
311
|
+
*/
|
|
312
|
+
export declare enum UsTaxField {
|
|
313
|
+
GrossIncome = "grossIncome",
|
|
314
|
+
TaxableIncome = "taxableIncome",
|
|
315
|
+
RegularIncomeTax = "regularIncomeTax",
|
|
316
|
+
TotalTax = "totalTax",
|
|
317
|
+
Withholding = "withholding",
|
|
318
|
+
NetTaxPayable = "netTaxPayable"
|
|
319
|
+
}
|
|
320
|
+
/** Four statutory US Federal individual income tax filing statuses (IRC § 1). */
|
|
321
|
+
type UsFilingStatus = "single" | "married_filing_jointly" | "married_filing_separately" | "head_of_household";
|
|
322
|
+
/** Gross income components categorized by tax treatment (IRC §§ 61, 1(h)). */
|
|
323
|
+
interface UsIncomeInput {
|
|
324
|
+
readonly w2Wages?: number;
|
|
325
|
+
readonly selfEmploymentNetEarnings?: number;
|
|
326
|
+
readonly ordinaryInterest?: number;
|
|
327
|
+
readonly ordinaryDividends?: number;
|
|
328
|
+
readonly shortTermCapitalGains?: number;
|
|
329
|
+
readonly rentalAndOtherOrdinaryIncome?: number;
|
|
330
|
+
readonly longTermCapitalGains?: number;
|
|
331
|
+
readonly qualifiedDividends?: number;
|
|
332
|
+
}
|
|
333
|
+
/** Schedule 1 Above-the-Line Adjustments to income (IRC §§ 62, 219, 223, 221). */
|
|
334
|
+
interface UsAdjustmentsInput {
|
|
335
|
+
readonly educatorExpenses?: number;
|
|
336
|
+
readonly bothSpousesEducators?: boolean;
|
|
337
|
+
readonly hsaContributions?: number;
|
|
338
|
+
readonly hsaCoverageType?: "self_only" | "family";
|
|
339
|
+
readonly traditionalIraContributions?: number;
|
|
340
|
+
readonly studentLoanInterest?: number;
|
|
341
|
+
readonly preTaxDeferrals401k?: number;
|
|
342
|
+
readonly age50OrOlder?: boolean;
|
|
343
|
+
readonly age55OrOlder?: boolean;
|
|
344
|
+
readonly deductibleSelfEmploymentTax?: number;
|
|
345
|
+
}
|
|
346
|
+
/** Schedule A Itemized Deductions (IRC §§ 164, 170, 213). */
|
|
347
|
+
interface UsItemizedDeductionsInput {
|
|
348
|
+
readonly medicalExpenses?: number;
|
|
349
|
+
readonly stateAndLocalTaxes?: number;
|
|
350
|
+
readonly mortgageInterest?: number;
|
|
351
|
+
readonly charitableContributions?: number;
|
|
352
|
+
}
|
|
353
|
+
/** Complete statutory input for US Federal Individual Income Tax calculation. */
|
|
354
|
+
interface UsTaxInput {
|
|
355
|
+
readonly taxYear?: 2026 | number;
|
|
356
|
+
readonly filingStatus: UsFilingStatus;
|
|
357
|
+
readonly income: UsIncomeInput;
|
|
358
|
+
readonly adjustments?: UsAdjustmentsInput;
|
|
359
|
+
readonly itemizedDeductions?: UsItemizedDeductionsInput;
|
|
360
|
+
readonly deductionElection?: "auto" | "standard" | "itemized";
|
|
361
|
+
readonly taxpayerAge65OrOlder?: boolean;
|
|
362
|
+
readonly taxpayerBlind?: boolean;
|
|
363
|
+
readonly spouseAge65OrOlder?: boolean;
|
|
364
|
+
readonly spouseBlind?: boolean;
|
|
365
|
+
readonly withholding?: number;
|
|
366
|
+
readonly netInvestmentIncome?: number;
|
|
367
|
+
readonly magi?: number;
|
|
368
|
+
/** Include W-2 FICA payroll taxes (default: true). */
|
|
369
|
+
readonly includeFica?: boolean;
|
|
370
|
+
/** Form 6251 AMT tax preferences (e.g. ISO exercise bargain element). */
|
|
371
|
+
readonly amtPreferences?: number;
|
|
372
|
+
/** Non-refundable and refundable tax credits input. */
|
|
373
|
+
readonly credits?: UsCreditsInput;
|
|
374
|
+
/** Optional US state or District of Columbia ISO code for state income tax. */
|
|
375
|
+
readonly state?: UsStateCode;
|
|
376
|
+
/** Number of dependents claimed for state dependent exemptions or credits. */
|
|
377
|
+
readonly stateDependents?: number;
|
|
378
|
+
/** State income tax withheld from wages in major dollars. */
|
|
379
|
+
readonly stateWithholding?: number;
|
|
380
|
+
/** State non-refundable and refundable credits in major dollars. */
|
|
381
|
+
readonly stateCredits?: UsStateCreditsInput;
|
|
382
|
+
}
|
|
383
|
+
/**
|
|
384
|
+
* Diagnostic and reporting field identifiers for state income tax calculations.
|
|
385
|
+
*/
|
|
386
|
+
export declare enum UsStateField {
|
|
387
|
+
BracketBound = "state.bracketBound",
|
|
388
|
+
Agi = "state.agi",
|
|
389
|
+
StandardDeduction = "state.standardDeduction",
|
|
390
|
+
PersonalExemption = "state.personalExemption",
|
|
391
|
+
DependentExemption = "state.dependentExemption",
|
|
392
|
+
TaxableIncome = "state.taxableIncome",
|
|
393
|
+
BracketTax = "state.bracketTax",
|
|
394
|
+
Surtax = "state.surtax",
|
|
395
|
+
SurtaxThreshold = "state.surtaxThreshold",
|
|
396
|
+
PhaseOutThreshold = "state.phaseOutThreshold",
|
|
397
|
+
CreditsPersonal = "state.credits.personal",
|
|
398
|
+
CreditsDependent = "state.credits.dependent",
|
|
399
|
+
CreditsClaimedNonRefundable = "state.credits.claimedNonRefundable",
|
|
400
|
+
CreditsNonRefundable = "state.credits.nonRefundable",
|
|
401
|
+
CreditsRefundable = "state.credits.refundable",
|
|
402
|
+
Withholding = "state.withholding",
|
|
403
|
+
TaxBeforeCredits = "state.taxBeforeCredits",
|
|
404
|
+
TotalTax = "state.totalTax",
|
|
405
|
+
NetTaxPayable = "state.netTaxPayable"
|
|
406
|
+
}
|
|
407
|
+
interface UsAmtParameters {
|
|
408
|
+
readonly baseExemptions: Record<UsFilingStatus, number>;
|
|
409
|
+
readonly phaseoutThresholds: Record<UsFilingStatus, number>;
|
|
410
|
+
readonly phaseoutRate: number;
|
|
411
|
+
readonly rate26Thresholds: Record<UsFilingStatus, number>;
|
|
412
|
+
readonly rate26: number;
|
|
413
|
+
readonly rate28: number;
|
|
414
|
+
}
|
|
415
|
+
/**
|
|
416
|
+
* Statutory 2026 Alternative Minimum Tax (AMT) exemptions, phaseouts, and rates.
|
|
417
|
+
*
|
|
418
|
+
* @statute IRC § 55
|
|
419
|
+
*/
|
|
420
|
+
export declare const US_2026_AMT: UsAmtParameters;
|
|
421
|
+
/**
|
|
422
|
+
* Statutory 2026 US Federal ordinary income progressive brackets in minor units (cents).
|
|
423
|
+
*
|
|
424
|
+
* @statute IRC § 1(j), Rev. Proc. 2025-XX
|
|
425
|
+
*/
|
|
426
|
+
export declare const US_2026_ORDINARY_BRACKETS: Record<UsFilingStatus, readonly TaxBracket[]>;
|
|
427
|
+
/**
|
|
428
|
+
* Statutory 2026 US Federal preferential capital gains brackets in minor units (cents).
|
|
429
|
+
*
|
|
430
|
+
* @statute IRC § 1(h), Rev. Proc. 2025-XX
|
|
431
|
+
*/
|
|
432
|
+
export declare const US_2026_PREFERENTIAL_BRACKETS: Record<UsFilingStatus, readonly TaxBracket[]>;
|
|
433
|
+
interface UsAdditionalStandardDeduction {
|
|
434
|
+
readonly unmarried: number;
|
|
435
|
+
readonly married: number;
|
|
436
|
+
}
|
|
437
|
+
interface UsAboveTheLineCaps {
|
|
438
|
+
readonly educatorSingle: number;
|
|
439
|
+
readonly educatorMfjBoth: number;
|
|
440
|
+
readonly studentLoanInterest: number;
|
|
441
|
+
readonly traditional401kBase: number;
|
|
442
|
+
readonly traditional401kCatchUpAge50: number;
|
|
443
|
+
readonly traditionalIraBase: number;
|
|
444
|
+
readonly traditionalIraCatchUpAge50: number;
|
|
445
|
+
readonly hsaSelfOnlyBase: number;
|
|
446
|
+
readonly hsaFamilyBase: number;
|
|
447
|
+
readonly hsaCatchUpAge55: number;
|
|
448
|
+
}
|
|
449
|
+
interface UsItemizedParameters {
|
|
450
|
+
readonly medicalFloorRate: number;
|
|
451
|
+
readonly saltCap: number;
|
|
452
|
+
readonly saltCapMfs: number;
|
|
453
|
+
readonly charityCeilingRate: number;
|
|
454
|
+
}
|
|
455
|
+
interface UsNiitParameters {
|
|
456
|
+
readonly rate: number;
|
|
457
|
+
readonly thresholds: Record<UsFilingStatus, number>;
|
|
458
|
+
}
|
|
459
|
+
/**
|
|
460
|
+
* Statutory 2026 US Federal base standard deduction amounts in major dollars.
|
|
461
|
+
*
|
|
462
|
+
* @statute IRC § 63(c)(2), Rev. Proc. 2025-XX
|
|
463
|
+
*/
|
|
464
|
+
export declare const US_2026_STANDARD_DEDUCTION: Record<UsFilingStatus, number>;
|
|
465
|
+
/**
|
|
466
|
+
* Statutory 2026 additional standard deduction for age 65+ and blindness per condition.
|
|
467
|
+
*
|
|
468
|
+
* @statute IRC § 63(f), Rev. Proc. 2025-XX
|
|
469
|
+
*/
|
|
470
|
+
export declare const US_2026_ADDITIONAL_STANDARD_DEDUCTION: UsAdditionalStandardDeduction;
|
|
471
|
+
/**
|
|
472
|
+
* Statutory 2026 Schedule 1 Above-the-Line deduction limits in major dollars.
|
|
473
|
+
*
|
|
474
|
+
* @statute IRC § 62, § 219, § 221, § 223, § 402(g)
|
|
475
|
+
*/
|
|
476
|
+
export declare const US_2026_ABOVE_THE_LINE_CAPS: UsAboveTheLineCaps;
|
|
477
|
+
/**
|
|
478
|
+
* Statutory 2026 Schedule A Itemized Deduction thresholds and caps.
|
|
479
|
+
*
|
|
480
|
+
* @statute IRC §§ 164, 170, 213
|
|
481
|
+
*/
|
|
482
|
+
export declare const US_2026_ITEMIZED: UsItemizedParameters;
|
|
483
|
+
/**
|
|
484
|
+
* Statutory Net Investment Income Tax (NIIT) rates and MAGI thresholds.
|
|
485
|
+
*
|
|
486
|
+
* @statute IRC § 1411
|
|
487
|
+
*/
|
|
488
|
+
export declare const US_2026_NIIT: UsNiitParameters;
|
|
489
|
+
interface UsEitcTier {
|
|
490
|
+
readonly creditRate: number;
|
|
491
|
+
readonly maxEarnedIncome: number;
|
|
492
|
+
readonly maxCredit: number;
|
|
493
|
+
readonly phaseoutThresholdSingle: number;
|
|
494
|
+
readonly phaseoutThresholdMfj: number;
|
|
495
|
+
readonly phaseoutRate: number;
|
|
496
|
+
}
|
|
497
|
+
interface UsCreditsParameters {
|
|
498
|
+
readonly ctcAmountPerChild: number;
|
|
499
|
+
readonly actcMaxPerChild: number;
|
|
500
|
+
readonly actcEarnedIncomeThreshold: number;
|
|
501
|
+
readonly actcRate: number;
|
|
502
|
+
readonly ctcPhaseoutThresholds: Record<UsFilingStatus, number>;
|
|
503
|
+
readonly ctcPhaseoutStepAmount: number;
|
|
504
|
+
readonly ctcPhaseoutStepRate: number;
|
|
505
|
+
readonly odcAmountPerDependent: number;
|
|
506
|
+
readonly eitcInvestmentIncomeLimit: number;
|
|
507
|
+
readonly eitcTiers: Record<0 | 1 | 2 | 3, UsEitcTier>;
|
|
508
|
+
readonly careMaxExpenseOne: number;
|
|
509
|
+
readonly careMaxExpenseTwoPlus: number;
|
|
510
|
+
readonly careBaseRate: number;
|
|
511
|
+
readonly careFloorRate: number;
|
|
512
|
+
readonly carePhaseoutAgiThreshold: number;
|
|
513
|
+
readonly carePhaseoutStepAgi: number;
|
|
514
|
+
readonly carePhaseoutStepRate: number;
|
|
515
|
+
readonly aotcMaxPerStudent: number;
|
|
516
|
+
readonly aotcTier1MaxExpense: number;
|
|
517
|
+
readonly aotcTier1Rate: number;
|
|
518
|
+
readonly aotcTier2MaxExpense: number;
|
|
519
|
+
readonly aotcTier2Rate: number;
|
|
520
|
+
readonly aotcRefundableRate: number;
|
|
521
|
+
readonly aotcPhaseoutMin: Record<UsFilingStatus, number>;
|
|
522
|
+
readonly aotcPhaseoutMax: Record<UsFilingStatus, number>;
|
|
523
|
+
readonly llcMaxExpensePerReturn: number;
|
|
524
|
+
readonly llcRate: number;
|
|
525
|
+
}
|
|
526
|
+
/**
|
|
527
|
+
* Statutory 2026 Federal Tax Credits parameters.
|
|
528
|
+
*
|
|
529
|
+
* @statute IRC § 21, § 24, § 25A, § 32
|
|
530
|
+
*/
|
|
531
|
+
export declare const US_2026_CREDITS: UsCreditsParameters;
|
|
532
|
+
interface UsPayrollParameters {
|
|
533
|
+
readonly socialSecurityWageBase: number;
|
|
534
|
+
readonly ficaSocialSecurityRate: number;
|
|
535
|
+
readonly ficaMedicareRate: number;
|
|
536
|
+
readonly additionalMedicareRate: number;
|
|
537
|
+
readonly additionalMedicareThresholds: Record<UsFilingStatus, number>;
|
|
538
|
+
readonly seNetEarningsFactor: number;
|
|
539
|
+
readonly seThresholdFloor: number;
|
|
540
|
+
readonly seSocialSecurityRate: number;
|
|
541
|
+
readonly seMedicareRate: number;
|
|
542
|
+
readonly seDeductibleRate: number;
|
|
543
|
+
}
|
|
544
|
+
/**
|
|
545
|
+
* Statutory 2026 FICA & SECA Payroll parameters.
|
|
546
|
+
*
|
|
547
|
+
* @statute IRC § 1401, § 1402, § 3101
|
|
548
|
+
*/
|
|
549
|
+
export declare const US_2026_PAYROLL: UsPayrollParameters;
|
|
550
|
+
export interface UsTaxParameters {
|
|
551
|
+
readonly taxYear: 2026;
|
|
552
|
+
readonly currency: "USD";
|
|
553
|
+
readonly standardDeduction: Record<UsFilingStatus, number>;
|
|
554
|
+
readonly additionalStandardDeduction: UsAdditionalStandardDeduction;
|
|
555
|
+
readonly aboveTheLineCaps: UsAboveTheLineCaps;
|
|
556
|
+
readonly itemized: UsItemizedParameters;
|
|
557
|
+
readonly niit: UsNiitParameters;
|
|
558
|
+
readonly ordinaryBrackets: Record<UsFilingStatus, readonly TaxBracket[]>;
|
|
559
|
+
readonly preferentialBrackets: Record<UsFilingStatus, readonly TaxBracket[]>;
|
|
560
|
+
readonly payroll: UsPayrollParameters;
|
|
561
|
+
readonly amt: UsAmtParameters;
|
|
562
|
+
readonly credits: UsCreditsParameters;
|
|
563
|
+
}
|
|
564
|
+
/**
|
|
565
|
+
* Consolidated statutory parameter table for US Federal Income Tax (Tax Year 2026).
|
|
566
|
+
*
|
|
567
|
+
* @statute IRC § 1 et seq.
|
|
568
|
+
*/
|
|
569
|
+
export declare const US_2026_PARAMETERS: UsTaxParameters;
|
|
570
|
+
/** Major-dollar amount for each filing status. */
|
|
571
|
+
type UsStatePerStatus = Readonly<Record<UsFilingStatus, number>>;
|
|
572
|
+
/**
|
|
573
|
+
* Linear phase-out to zero: the allowed share falls from 1 to 0 as federal AGI rises from
|
|
574
|
+
* `start` to `start + width` (Maine standard deduction, 36 M.R.S. § 5124-C(2)).
|
|
575
|
+
*/
|
|
576
|
+
interface UsStateLinearPhaseOut {
|
|
577
|
+
readonly kind: "linear";
|
|
578
|
+
readonly start: UsStatePerStatus;
|
|
579
|
+
readonly width: UsStatePerStatus;
|
|
580
|
+
}
|
|
581
|
+
/**
|
|
582
|
+
* Stepped disallowance: `ratePerStep` of the amount is disallowed for each `step` dollars, or
|
|
583
|
+
* fraction, of AGI above `start`, up to 100% (Minnesota dependent exemption, § 290.0121 subd. 2).
|
|
584
|
+
*/
|
|
585
|
+
interface UsStateSteppedPhaseOut {
|
|
586
|
+
readonly kind: "stepped";
|
|
587
|
+
readonly start: UsStatePerStatus;
|
|
588
|
+
readonly step: UsStatePerStatus;
|
|
589
|
+
readonly ratePerStep: number;
|
|
590
|
+
}
|
|
591
|
+
/**
|
|
592
|
+
* Two-rate reduction: `rate` of AGI between `start` and `second` plus `secondRate` of AGI
|
|
593
|
+
* above `second` is removed, never more than `maxShare` of the amount (Minnesota standard
|
|
594
|
+
* deduction, § 290.0123 subd. 5).
|
|
595
|
+
*/
|
|
596
|
+
interface UsStateTieredPhaseOut {
|
|
597
|
+
readonly kind: "tiered";
|
|
598
|
+
readonly start: UsStatePerStatus;
|
|
599
|
+
readonly second: UsStatePerStatus;
|
|
600
|
+
readonly rate: number;
|
|
601
|
+
readonly secondRate: number;
|
|
602
|
+
readonly maxShare: number;
|
|
603
|
+
}
|
|
604
|
+
/** Statutory income-based reduction of a deduction or exemption. */
|
|
605
|
+
type UsStatePhaseOut = UsStateLinearPhaseOut | UsStateSteppedPhaseOut | UsStateTieredPhaseOut;
|
|
606
|
+
/** Surtax threshold: one amount for every filing status, or an amount per filing status. */
|
|
607
|
+
type UsStateSurtaxThreshold = number | Readonly<Record<UsFilingStatus, number>>;
|
|
608
|
+
/** Optional millionaire or high-income surtax applied above a taxable-income threshold. */
|
|
609
|
+
interface UsStateSurtax {
|
|
610
|
+
readonly threshold: UsStateSurtaxThreshold;
|
|
611
|
+
readonly rate: number;
|
|
612
|
+
}
|
|
613
|
+
/** Complete statutory parameter table for one state's 2026 individual income tax. */
|
|
614
|
+
interface UsStateParameters {
|
|
615
|
+
readonly code: UsStateCode;
|
|
616
|
+
readonly name: string;
|
|
617
|
+
readonly type: UsStateTaxType;
|
|
618
|
+
readonly brackets: Record<UsFilingStatus, readonly TaxBracket[]>;
|
|
619
|
+
readonly standardDeduction: Record<UsFilingStatus, number>;
|
|
620
|
+
readonly personalExemption: Record<UsFilingStatus, number>;
|
|
621
|
+
readonly personalCredit: Record<UsFilingStatus, number>;
|
|
622
|
+
readonly dependentExemption: number;
|
|
623
|
+
readonly dependentCredit: number;
|
|
624
|
+
readonly surtax?: UsStateSurtax;
|
|
625
|
+
readonly standardDeductionPhaseOut?: UsStatePhaseOut;
|
|
626
|
+
readonly dependentExemptionPhaseOut?: UsStatePhaseOut;
|
|
627
|
+
}
|
|
628
|
+
/**
|
|
629
|
+
* Consolidated statutory parameter table for all 50 US states and the District of Columbia
|
|
630
|
+
* for Tax Year 2026.
|
|
631
|
+
*
|
|
632
|
+
* @statute State individual income tax statutes; 2026 schedules as published by the
|
|
633
|
+
* state revenue departments and compiled by the Tax Foundation (February 2026).
|
|
634
|
+
*/
|
|
635
|
+
export declare const US_2026_STATE_PARAMETERS: Record<UsStateCode, UsStateParameters>;
|
|
636
|
+
/**
|
|
637
|
+
* US Federal and state Individual Income Tax System implementation for 2026.
|
|
638
|
+
*
|
|
639
|
+
* @statute IRC § 1 et seq.; state individual income tax statutes for Tax Year 2026.
|
|
640
|
+
*/
|
|
641
|
+
export declare const us: TaxSystem<UsTaxInput, "USD", UsTaxBreakdown>;
|
|
642
|
+
/**
|
|
643
|
+
* Calculates 2026 US federal and optional state Individual Income Tax for the specified input.
|
|
644
|
+
*
|
|
645
|
+
* @statute IRC § 1 et seq.; state individual income tax statutes for Tax Year 2026.
|
|
646
|
+
*/
|
|
647
|
+
export declare function calculateUsTax(input: UsTaxInput): TaxResult<"USD", UsTaxBreakdown>;
|
|
648
|
+
export { type UsAdjustmentsBreakdown, type UsAdjustmentsInput, type UsAmtBreakdown, type UsChildCreditsBreakdown, type UsCreditsBreakdown, type UsCreditsInput, type UsEducationCreditStudent, type UsEducationCreditsBreakdown, type UsEitcBreakdown, type UsFicaBreakdown, UsPayrollField as UsFicaField, type UsFilingStatus, type UsIncomeInput, type UsItemizedBreakdown, type UsItemizedDeductionsInput, type UsNiitBreakdown, type UsPreferentialSlice, type UsScheduleSeBreakdown, type UsStandardDeductionBreakdown, type UsStateBreakdown, type UsStateCode, type UsStateCreditsBreakdown, type UsStateCreditsInput, type UsStateParameters, type UsStateSurtax, type UsStateTaxType, type UsTaxBreakdown, type UsTaxInput };
|
|
649
|
+
//# sourceMappingURL=index.d.mts.map
|