@novha/calc-engines 6.3.0 → 7.0.1
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/all-commits.bundle +0 -0
- package/dist/capital-gains/brazil/BrazilCapitalGainsService.js +3 -0
- package/dist/capital-gains/brazil/BrazilCapitalGainsServiceImpl.js +56 -0
- package/dist/capital-gains/brazil/domain/types.js +3 -0
- package/dist/capital-gains/canada/CanadaCapitalGainsServiceImpl.js +29 -17
- package/dist/capital-gains/index.js +17 -2
- package/dist/capital-gains/india/IndiaCapitalGainsService.js +3 -0
- package/dist/capital-gains/india/IndiaCapitalGainsServiceImpl.js +58 -0
- package/dist/capital-gains/india/domain/types.js +3 -0
- package/dist/capital-gains/israel/IsraelCapitalGainsService.js +3 -0
- package/dist/capital-gains/israel/IsraelCapitalGainsServiceImpl.js +56 -0
- package/dist/capital-gains/israel/domain/types.js +3 -0
- package/dist/capital-gains/japan/JapanCapitalGainsService.js +3 -0
- package/dist/capital-gains/japan/JapanCapitalGainsServiceImpl.js +41 -0
- package/dist/capital-gains/japan/domain/types.js +3 -0
- package/dist/capital-gains/spain/SpainCapitalGainsService.js +3 -0
- package/dist/capital-gains/spain/SpainCapitalGainsServiceImpl.js +56 -0
- package/dist/capital-gains/spain/domain/types.js +3 -0
- package/dist/corporate/brazil/BrazilCorporateTaxService.js +3 -0
- package/dist/corporate/brazil/BrazilCorporateTaxServiceImpl.js +33 -0
- package/dist/corporate/brazil/domain/types.js +3 -0
- package/dist/corporate/index.js +19 -2
- package/dist/corporate/india/IndiaCorporateTaxService.js +3 -0
- package/dist/corporate/india/IndiaCorporateTaxServiceImpl.js +29 -0
- package/dist/corporate/india/domain/types.js +3 -0
- package/dist/corporate/israel/IsraelCorporateTaxService.js +3 -0
- package/dist/corporate/israel/IsraelCorporateTaxServiceImpl.js +29 -0
- package/dist/corporate/israel/domain/types.js +3 -0
- package/dist/corporate/japan/JapanCorporateTaxService.js +3 -0
- package/dist/corporate/japan/JapanCorporateTaxServiceImpl.js +29 -0
- package/dist/corporate/japan/domain/types.js +3 -0
- package/dist/corporate/netherlands/NetherlandsCorporateTaxService.js +3 -0
- package/dist/corporate/netherlands/NetherlandsCorporateTaxServiceImpl.js +40 -0
- package/dist/corporate/netherlands/domain/types.js +3 -0
- package/dist/corporate/spain/SpainCorporateTaxService.js +3 -0
- package/dist/corporate/spain/SpainCorporateTaxServiceImpl.js +29 -0
- package/dist/corporate/spain/domain/types.js +3 -0
- package/dist/corporate/switzerland/SwitzerlandCorporateTaxService.js +3 -0
- package/dist/corporate/switzerland/SwitzerlandCorporateTaxServiceImpl.js +29 -0
- package/dist/corporate/switzerland/domain/types.js +3 -0
- package/dist/income-tax/brazil/BrazilIncomeTaxService.js +3 -0
- package/dist/income-tax/brazil/BrazilIncomeTaxServiceImpl.js +78 -0
- package/dist/income-tax/brazil/domain/types.js +3 -0
- package/dist/income-tax/index.js +23 -2
- package/dist/income-tax/india/IndiaIncomeTaxService.js +3 -0
- package/dist/income-tax/india/IndiaIncomeTaxServiceImpl.js +75 -0
- package/dist/income-tax/india/domain/types.js +3 -0
- package/dist/income-tax/israel/IsraelIncomeTaxService.js +3 -0
- package/dist/income-tax/israel/IsraelIncomeTaxServiceImpl.js +62 -0
- package/dist/income-tax/israel/domain/types.js +3 -0
- package/dist/income-tax/japan/JapanIncomeTaxService.js +3 -0
- package/dist/income-tax/japan/JapanIncomeTaxServiceImpl.js +75 -0
- package/dist/income-tax/japan/domain/types.js +3 -0
- package/dist/income-tax/netherlands/NetherlandsIncomeTaxService.js +3 -0
- package/dist/income-tax/netherlands/NetherlandsIncomeTaxServiceImpl.js +62 -0
- package/dist/income-tax/netherlands/domain/types.js +3 -0
- package/dist/income-tax/spain/SpainIncomeTaxService.js +3 -0
- package/dist/income-tax/spain/SpainIncomeTaxServiceImpl.js +62 -0
- package/dist/income-tax/spain/domain/types.js +3 -0
- package/dist/income-tax/switzerland/SwitzerlandIncomeTaxService.js +3 -0
- package/dist/income-tax/switzerland/SwitzerlandIncomeTaxServiceImpl.js +62 -0
- package/dist/income-tax/switzerland/domain/types.js +3 -0
- package/dist/index.js +3 -2
- package/dist/inheritance-tax/australia/AustraliaInheritanceTaxService.js +3 -0
- package/dist/inheritance-tax/australia/AustraliaInheritanceTaxServiceImpl.js +19 -0
- package/dist/inheritance-tax/australia/domain/types.js +3 -0
- package/dist/inheritance-tax/canada/CanadaInheritanceTaxService.js +3 -0
- package/dist/inheritance-tax/canada/CanadaInheritanceTaxServiceImpl.js +51 -0
- package/dist/inheritance-tax/canada/domain/types.js +3 -0
- package/dist/inheritance-tax/domain/types.js +3 -0
- package/dist/inheritance-tax/france/FranceInheritanceTaxService.js +3 -0
- package/dist/inheritance-tax/france/FranceInheritanceTaxServiceImpl.js +52 -0
- package/dist/inheritance-tax/france/domain/types.js +3 -0
- package/dist/inheritance-tax/germany/GermanyInheritanceTaxService.js +3 -0
- package/dist/inheritance-tax/germany/GermanyInheritanceTaxServiceImpl.js +52 -0
- package/dist/inheritance-tax/germany/domain/types.js +3 -0
- package/dist/inheritance-tax/index.js +34 -0
- package/dist/inheritance-tax/japan/JapanInheritanceTaxService.js +3 -0
- package/dist/inheritance-tax/japan/JapanInheritanceTaxServiceImpl.js +53 -0
- package/dist/inheritance-tax/japan/domain/types.js +3 -0
- package/dist/inheritance-tax/netherlands/NetherlandsInheritanceTaxService.js +3 -0
- package/dist/inheritance-tax/netherlands/NetherlandsInheritanceTaxServiceImpl.js +52 -0
- package/dist/inheritance-tax/netherlands/domain/types.js +3 -0
- package/dist/inheritance-tax/south-africa/SouthAfricaInheritanceTaxService.js +3 -0
- package/dist/inheritance-tax/south-africa/SouthAfricaInheritanceTaxServiceImpl.js +52 -0
- package/dist/inheritance-tax/south-africa/domain/types.js +3 -0
- package/dist/inheritance-tax/spain/SpainInheritanceTaxService.js +3 -0
- package/dist/inheritance-tax/spain/SpainInheritanceTaxServiceImpl.js +51 -0
- package/dist/inheritance-tax/spain/domain/types.js +3 -0
- package/dist/inheritance-tax/uk/UKInheritanceTaxService.js +3 -0
- package/dist/inheritance-tax/uk/UKInheritanceTaxServiceImpl.js +39 -0
- package/dist/inheritance-tax/uk/domain/types.js +3 -0
- package/dist/inheritance-tax/usa/USAInheritanceTaxService.js +3 -0
- package/dist/inheritance-tax/usa/USAInheritanceTaxServiceImpl.js +51 -0
- package/dist/inheritance-tax/usa/domain/types.js +3 -0
- package/dist/mortgage/brazil/BrazilMortgageService.js +3 -0
- package/dist/mortgage/brazil/BrazilMortgageServiceImpl.js +76 -0
- package/dist/mortgage/brazil/domain/types.js +3 -0
- package/dist/mortgage/index.js +23 -2
- package/dist/mortgage/india/IndiaMortgageService.js +3 -0
- package/dist/mortgage/india/IndiaMortgageServiceImpl.js +76 -0
- package/dist/mortgage/india/domain/types.js +3 -0
- package/dist/mortgage/israel/IsraelMortgageService.js +3 -0
- package/dist/mortgage/israel/IsraelMortgageServiceImpl.js +100 -0
- package/dist/mortgage/israel/domain/types.js +3 -0
- package/dist/mortgage/japan/JapanMortgageService.js +3 -0
- package/dist/mortgage/japan/JapanMortgageServiceImpl.js +76 -0
- package/dist/mortgage/japan/domain/types.js +3 -0
- package/dist/mortgage/netherlands/NetherlandsMortgageService.js +3 -0
- package/dist/mortgage/netherlands/NetherlandsMortgageServiceImpl.js +83 -0
- package/dist/mortgage/netherlands/domain/types.js +3 -0
- package/dist/mortgage/spain/SpainMortgageService.js +3 -0
- package/dist/mortgage/spain/SpainMortgageServiceImpl.js +96 -0
- package/dist/mortgage/spain/domain/types.js +3 -0
- package/dist/mortgage/switzerland/SwitzerlandMortgageService.js +3 -0
- package/dist/mortgage/switzerland/SwitzerlandMortgageServiceImpl.js +80 -0
- package/dist/mortgage/switzerland/domain/types.js +3 -0
- package/dist/shared/domain/types.js +2 -1
- package/dist/types/capital-gains/brazil/BrazilCapitalGainsService.d.ts +4 -0
- package/dist/types/capital-gains/brazil/BrazilCapitalGainsServiceImpl.d.ts +10 -0
- package/dist/types/capital-gains/brazil/domain/types.d.ts +11 -0
- package/dist/types/capital-gains/canada/CanadaCapitalGainsServiceImpl.d.ts +1 -1
- package/dist/types/capital-gains/index.d.ts +11 -1
- package/dist/types/capital-gains/india/IndiaCapitalGainsService.d.ts +4 -0
- package/dist/types/capital-gains/india/IndiaCapitalGainsServiceImpl.d.ts +9 -0
- package/dist/types/capital-gains/india/domain/types.d.ts +9 -0
- package/dist/types/capital-gains/israel/IsraelCapitalGainsService.d.ts +4 -0
- package/dist/types/capital-gains/israel/IsraelCapitalGainsServiceImpl.d.ts +10 -0
- package/dist/types/capital-gains/israel/domain/types.d.ts +11 -0
- package/dist/types/capital-gains/japan/JapanCapitalGainsService.d.ts +4 -0
- package/dist/types/capital-gains/japan/JapanCapitalGainsServiceImpl.d.ts +9 -0
- package/dist/types/capital-gains/japan/domain/types.d.ts +6 -0
- package/dist/types/capital-gains/spain/SpainCapitalGainsService.d.ts +4 -0
- package/dist/types/capital-gains/spain/SpainCapitalGainsServiceImpl.d.ts +10 -0
- package/dist/types/capital-gains/spain/domain/types.d.ts +11 -0
- package/dist/types/corporate/brazil/BrazilCorporateTaxService.d.ts +4 -0
- package/dist/types/corporate/brazil/BrazilCorporateTaxServiceImpl.d.ts +8 -0
- package/dist/types/corporate/brazil/domain/types.d.ts +19 -0
- package/dist/types/corporate/index.d.ts +15 -1
- package/dist/types/corporate/india/IndiaCorporateTaxService.d.ts +4 -0
- package/dist/types/corporate/india/IndiaCorporateTaxServiceImpl.d.ts +8 -0
- package/dist/types/corporate/india/domain/types.d.ts +15 -0
- package/dist/types/corporate/israel/IsraelCorporateTaxService.d.ts +4 -0
- package/dist/types/corporate/israel/IsraelCorporateTaxServiceImpl.d.ts +8 -0
- package/dist/types/corporate/israel/domain/types.d.ts +15 -0
- package/dist/types/corporate/japan/JapanCorporateTaxService.d.ts +4 -0
- package/dist/types/corporate/japan/JapanCorporateTaxServiceImpl.d.ts +8 -0
- package/dist/types/corporate/japan/domain/types.d.ts +15 -0
- package/dist/types/corporate/netherlands/NetherlandsCorporateTaxService.d.ts +4 -0
- package/dist/types/corporate/netherlands/NetherlandsCorporateTaxServiceImpl.d.ts +8 -0
- package/dist/types/corporate/netherlands/domain/types.d.ts +17 -0
- package/dist/types/corporate/spain/SpainCorporateTaxService.d.ts +4 -0
- package/dist/types/corporate/spain/SpainCorporateTaxServiceImpl.d.ts +8 -0
- package/dist/types/corporate/spain/domain/types.d.ts +15 -0
- package/dist/types/corporate/switzerland/SwitzerlandCorporateTaxService.d.ts +4 -0
- package/dist/types/corporate/switzerland/SwitzerlandCorporateTaxServiceImpl.d.ts +8 -0
- package/dist/types/corporate/switzerland/domain/types.d.ts +15 -0
- package/dist/types/income-tax/brazil/BrazilIncomeTaxService.d.ts +4 -0
- package/dist/types/income-tax/brazil/BrazilIncomeTaxServiceImpl.d.ts +11 -0
- package/dist/types/income-tax/brazil/domain/types.d.ts +18 -0
- package/dist/types/income-tax/index.d.ts +15 -1
- package/dist/types/income-tax/india/IndiaIncomeTaxService.d.ts +4 -0
- package/dist/types/income-tax/india/IndiaIncomeTaxServiceImpl.d.ts +10 -0
- package/dist/types/income-tax/india/domain/types.d.ts +16 -0
- package/dist/types/income-tax/israel/IsraelIncomeTaxService.d.ts +4 -0
- package/dist/types/income-tax/israel/IsraelIncomeTaxServiceImpl.d.ts +10 -0
- package/dist/types/income-tax/israel/domain/types.d.ts +16 -0
- package/dist/types/income-tax/japan/JapanIncomeTaxService.d.ts +4 -0
- package/dist/types/income-tax/japan/JapanIncomeTaxServiceImpl.d.ts +10 -0
- package/dist/types/income-tax/japan/domain/types.d.ts +16 -0
- package/dist/types/income-tax/netherlands/NetherlandsIncomeTaxService.d.ts +4 -0
- package/dist/types/income-tax/netherlands/NetherlandsIncomeTaxServiceImpl.d.ts +10 -0
- package/dist/types/income-tax/netherlands/domain/types.d.ts +16 -0
- package/dist/types/income-tax/spain/SpainIncomeTaxService.d.ts +4 -0
- package/dist/types/income-tax/spain/SpainIncomeTaxServiceImpl.d.ts +10 -0
- package/dist/types/income-tax/spain/domain/types.d.ts +16 -0
- package/dist/types/income-tax/switzerland/SwitzerlandIncomeTaxService.d.ts +4 -0
- package/dist/types/income-tax/switzerland/SwitzerlandIncomeTaxServiceImpl.d.ts +10 -0
- package/dist/types/income-tax/switzerland/domain/types.d.ts +16 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/inheritance-tax/australia/AustraliaInheritanceTaxService.d.ts +4 -0
- package/dist/types/inheritance-tax/australia/AustraliaInheritanceTaxServiceImpl.d.ts +8 -0
- package/dist/types/inheritance-tax/australia/domain/types.d.ts +13 -0
- package/dist/types/inheritance-tax/canada/CanadaInheritanceTaxService.d.ts +4 -0
- package/dist/types/inheritance-tax/canada/CanadaInheritanceTaxServiceImpl.d.ts +9 -0
- package/dist/types/inheritance-tax/canada/domain/types.d.ts +20 -0
- package/dist/types/inheritance-tax/domain/types.d.ts +17 -0
- package/dist/types/inheritance-tax/france/FranceInheritanceTaxService.d.ts +4 -0
- package/dist/types/inheritance-tax/france/FranceInheritanceTaxServiceImpl.d.ts +9 -0
- package/dist/types/inheritance-tax/france/domain/types.d.ts +29 -0
- package/dist/types/inheritance-tax/germany/GermanyInheritanceTaxService.d.ts +4 -0
- package/dist/types/inheritance-tax/germany/GermanyInheritanceTaxServiceImpl.d.ts +9 -0
- package/dist/types/inheritance-tax/germany/domain/types.d.ts +28 -0
- package/dist/types/inheritance-tax/index.d.ts +21 -0
- package/dist/types/inheritance-tax/japan/JapanInheritanceTaxService.d.ts +4 -0
- package/dist/types/inheritance-tax/japan/JapanInheritanceTaxServiceImpl.d.ts +9 -0
- package/dist/types/inheritance-tax/japan/domain/types.d.ts +21 -0
- package/dist/types/inheritance-tax/netherlands/NetherlandsInheritanceTaxService.d.ts +4 -0
- package/dist/types/inheritance-tax/netherlands/NetherlandsInheritanceTaxServiceImpl.d.ts +9 -0
- package/dist/types/inheritance-tax/netherlands/domain/types.d.ts +28 -0
- package/dist/types/inheritance-tax/south-africa/SouthAfricaInheritanceTaxService.d.ts +4 -0
- package/dist/types/inheritance-tax/south-africa/SouthAfricaInheritanceTaxServiceImpl.d.ts +9 -0
- package/dist/types/inheritance-tax/south-africa/domain/types.d.ts +20 -0
- package/dist/types/inheritance-tax/spain/SpainInheritanceTaxService.d.ts +4 -0
- package/dist/types/inheritance-tax/spain/SpainInheritanceTaxServiceImpl.d.ts +9 -0
- package/dist/types/inheritance-tax/spain/domain/types.d.ts +19 -0
- package/dist/types/inheritance-tax/uk/UKInheritanceTaxService.d.ts +4 -0
- package/dist/types/inheritance-tax/uk/UKInheritanceTaxServiceImpl.d.ts +8 -0
- package/dist/types/inheritance-tax/uk/domain/types.d.ts +17 -0
- package/dist/types/inheritance-tax/usa/USAInheritanceTaxService.d.ts +4 -0
- package/dist/types/inheritance-tax/usa/USAInheritanceTaxServiceImpl.d.ts +9 -0
- package/dist/types/inheritance-tax/usa/domain/types.d.ts +19 -0
- package/dist/types/mortgage/brazil/BrazilMortgageService.d.ts +4 -0
- package/dist/types/mortgage/brazil/BrazilMortgageServiceImpl.d.ts +7 -0
- package/dist/types/mortgage/brazil/domain/types.d.ts +39 -0
- package/dist/types/mortgage/index.d.ts +15 -1
- package/dist/types/mortgage/india/IndiaMortgageService.d.ts +4 -0
- package/dist/types/mortgage/india/IndiaMortgageServiceImpl.d.ts +7 -0
- package/dist/types/mortgage/india/domain/types.d.ts +39 -0
- package/dist/types/mortgage/israel/IsraelMortgageService.d.ts +4 -0
- package/dist/types/mortgage/israel/IsraelMortgageServiceImpl.d.ts +8 -0
- package/dist/types/mortgage/israel/domain/types.d.ts +43 -0
- package/dist/types/mortgage/japan/JapanMortgageService.d.ts +4 -0
- package/dist/types/mortgage/japan/JapanMortgageServiceImpl.d.ts +7 -0
- package/dist/types/mortgage/japan/domain/types.d.ts +39 -0
- package/dist/types/mortgage/netherlands/NetherlandsMortgageService.d.ts +4 -0
- package/dist/types/mortgage/netherlands/NetherlandsMortgageServiceImpl.d.ts +7 -0
- package/dist/types/mortgage/netherlands/domain/types.d.ts +41 -0
- package/dist/types/mortgage/spain/SpainMortgageService.d.ts +4 -0
- package/dist/types/mortgage/spain/SpainMortgageServiceImpl.d.ts +8 -0
- package/dist/types/mortgage/spain/domain/types.d.ts +44 -0
- package/dist/types/mortgage/switzerland/SwitzerlandMortgageService.d.ts +4 -0
- package/dist/types/mortgage/switzerland/SwitzerlandMortgageServiceImpl.d.ts +7 -0
- package/dist/types/mortgage/switzerland/domain/types.d.ts +37 -0
- package/dist/types/shared/domain/types.d.ts +2 -1
- package/package.json +1 -1
- package/src/capital-gains/brazil/BrazilCapitalGainsService.ts +5 -0
- package/src/capital-gains/brazil/BrazilCapitalGainsServiceImpl.ts +69 -0
- package/src/capital-gains/brazil/domain/types.ts +15 -0
- package/src/capital-gains/canada/CanadaCapitalGainsServiceImpl.ts +34 -21
- package/src/capital-gains/index.ts +50 -0
- package/src/capital-gains/india/IndiaCapitalGainsService.ts +5 -0
- package/src/capital-gains/india/IndiaCapitalGainsServiceImpl.ts +64 -0
- package/src/capital-gains/india/domain/types.ts +12 -0
- package/src/capital-gains/israel/IsraelCapitalGainsService.ts +5 -0
- package/src/capital-gains/israel/IsraelCapitalGainsServiceImpl.ts +69 -0
- package/src/capital-gains/israel/domain/types.ts +15 -0
- package/src/capital-gains/japan/JapanCapitalGainsService.ts +5 -0
- package/src/capital-gains/japan/JapanCapitalGainsServiceImpl.ts +47 -0
- package/src/capital-gains/japan/domain/types.ts +9 -0
- package/src/capital-gains/spain/SpainCapitalGainsService.ts +5 -0
- package/src/capital-gains/spain/SpainCapitalGainsServiceImpl.ts +69 -0
- package/src/capital-gains/spain/domain/types.ts +15 -0
- package/src/corporate/brazil/BrazilCorporateTaxService.ts +5 -0
- package/src/corporate/brazil/BrazilCorporateTaxServiceImpl.ts +40 -0
- package/src/corporate/brazil/domain/types.ts +16 -0
- package/src/corporate/index.ts +81 -1
- package/src/corporate/india/IndiaCorporateTaxService.ts +5 -0
- package/src/corporate/india/IndiaCorporateTaxServiceImpl.ts +35 -0
- package/src/corporate/india/domain/types.ts +15 -0
- package/src/corporate/israel/IsraelCorporateTaxService.ts +5 -0
- package/src/corporate/israel/IsraelCorporateTaxServiceImpl.ts +35 -0
- package/src/corporate/israel/domain/types.ts +15 -0
- package/src/corporate/japan/JapanCorporateTaxService.ts +5 -0
- package/src/corporate/japan/JapanCorporateTaxServiceImpl.ts +35 -0
- package/src/corporate/japan/domain/types.ts +15 -0
- package/src/corporate/netherlands/NetherlandsCorporateTaxService.ts +5 -0
- package/src/corporate/netherlands/NetherlandsCorporateTaxServiceImpl.ts +48 -0
- package/src/corporate/netherlands/domain/types.ts +21 -0
- package/src/corporate/spain/SpainCorporateTaxService.ts +5 -0
- package/src/corporate/spain/SpainCorporateTaxServiceImpl.ts +35 -0
- package/src/corporate/spain/domain/types.ts +15 -0
- package/src/corporate/switzerland/SwitzerlandCorporateTaxService.ts +5 -0
- package/src/corporate/switzerland/SwitzerlandCorporateTaxServiceImpl.ts +35 -0
- package/src/corporate/switzerland/domain/types.ts +15 -0
- package/src/income-tax/brazil/BrazilIncomeTaxService.ts +5 -0
- package/src/income-tax/brazil/BrazilIncomeTaxServiceImpl.ts +91 -0
- package/src/income-tax/brazil/domain/types.ts +21 -0
- package/src/income-tax/index.ts +70 -0
- package/src/income-tax/india/IndiaIncomeTaxService.ts +5 -0
- package/src/income-tax/india/IndiaIncomeTaxServiceImpl.ts +87 -0
- package/src/income-tax/india/domain/types.ts +16 -0
- package/src/income-tax/israel/IsraelIncomeTaxService.ts +5 -0
- package/src/income-tax/israel/IsraelIncomeTaxServiceImpl.ts +75 -0
- package/src/income-tax/israel/domain/types.ts +16 -0
- package/src/income-tax/japan/JapanIncomeTaxService.ts +5 -0
- package/src/income-tax/japan/JapanIncomeTaxServiceImpl.ts +87 -0
- package/src/income-tax/japan/domain/types.ts +16 -0
- package/src/income-tax/netherlands/NetherlandsIncomeTaxService.ts +5 -0
- package/src/income-tax/netherlands/NetherlandsIncomeTaxServiceImpl.ts +75 -0
- package/src/income-tax/netherlands/domain/types.ts +16 -0
- package/src/income-tax/spain/SpainIncomeTaxService.ts +5 -0
- package/src/income-tax/spain/SpainIncomeTaxServiceImpl.ts +75 -0
- package/src/income-tax/spain/domain/types.ts +16 -0
- package/src/income-tax/switzerland/SwitzerlandIncomeTaxService.ts +5 -0
- package/src/income-tax/switzerland/SwitzerlandIncomeTaxServiceImpl.ts +75 -0
- package/src/income-tax/switzerland/domain/types.ts +16 -0
- package/src/index.ts +1 -0
- package/src/inheritance-tax/australia/AustraliaInheritanceTaxService.ts +5 -0
- package/src/inheritance-tax/australia/AustraliaInheritanceTaxServiceImpl.ts +21 -0
- package/src/inheritance-tax/australia/domain/types.ts +16 -0
- package/src/inheritance-tax/canada/CanadaInheritanceTaxService.ts +5 -0
- package/src/inheritance-tax/canada/CanadaInheritanceTaxServiceImpl.ts +65 -0
- package/src/inheritance-tax/canada/domain/types.ts +24 -0
- package/src/inheritance-tax/domain/types.ts +19 -0
- package/src/inheritance-tax/france/FranceInheritanceTaxService.ts +5 -0
- package/src/inheritance-tax/france/FranceInheritanceTaxServiceImpl.ts +66 -0
- package/src/inheritance-tax/france/domain/types.ts +35 -0
- package/src/inheritance-tax/germany/GermanyInheritanceTaxService.ts +5 -0
- package/src/inheritance-tax/germany/GermanyInheritanceTaxServiceImpl.ts +66 -0
- package/src/inheritance-tax/germany/domain/types.ts +34 -0
- package/src/inheritance-tax/index.ts +122 -0
- package/src/inheritance-tax/japan/JapanInheritanceTaxService.ts +5 -0
- package/src/inheritance-tax/japan/JapanInheritanceTaxServiceImpl.ts +67 -0
- package/src/inheritance-tax/japan/domain/types.ts +25 -0
- package/src/inheritance-tax/netherlands/NetherlandsInheritanceTaxService.ts +5 -0
- package/src/inheritance-tax/netherlands/NetherlandsInheritanceTaxServiceImpl.ts +66 -0
- package/src/inheritance-tax/netherlands/domain/types.ts +34 -0
- package/src/inheritance-tax/south-africa/SouthAfricaInheritanceTaxService.ts +5 -0
- package/src/inheritance-tax/south-africa/SouthAfricaInheritanceTaxServiceImpl.ts +66 -0
- package/src/inheritance-tax/south-africa/domain/types.ts +24 -0
- package/src/inheritance-tax/spain/SpainInheritanceTaxService.ts +5 -0
- package/src/inheritance-tax/spain/SpainInheritanceTaxServiceImpl.ts +65 -0
- package/src/inheritance-tax/spain/domain/types.ts +23 -0
- package/src/inheritance-tax/uk/UKInheritanceTaxService.ts +5 -0
- package/src/inheritance-tax/uk/UKInheritanceTaxServiceImpl.ts +46 -0
- package/src/inheritance-tax/uk/domain/types.ts +20 -0
- package/src/inheritance-tax/usa/USAInheritanceTaxService.ts +5 -0
- package/src/inheritance-tax/usa/USAInheritanceTaxServiceImpl.ts +65 -0
- package/src/inheritance-tax/usa/domain/types.ts +23 -0
- package/src/mortgage/brazil/BrazilMortgageService.ts +5 -0
- package/src/mortgage/brazil/BrazilMortgageServiceImpl.ts +101 -0
- package/src/mortgage/brazil/domain/types.ts +46 -0
- package/src/mortgage/index.ts +85 -1
- package/src/mortgage/india/IndiaMortgageService.ts +5 -0
- package/src/mortgage/india/IndiaMortgageServiceImpl.ts +101 -0
- package/src/mortgage/india/domain/types.ts +46 -0
- package/src/mortgage/israel/IsraelMortgageService.ts +5 -0
- package/src/mortgage/israel/IsraelMortgageServiceImpl.ts +132 -0
- package/src/mortgage/israel/domain/types.ts +41 -0
- package/src/mortgage/japan/JapanMortgageService.ts +5 -0
- package/src/mortgage/japan/JapanMortgageServiceImpl.ts +101 -0
- package/src/mortgage/japan/domain/types.ts +46 -0
- package/src/mortgage/netherlands/NetherlandsMortgageService.ts +5 -0
- package/src/mortgage/netherlands/NetherlandsMortgageServiceImpl.ts +109 -0
- package/src/mortgage/netherlands/domain/types.ts +37 -0
- package/src/mortgage/spain/SpainMortgageService.ts +5 -0
- package/src/mortgage/spain/SpainMortgageServiceImpl.ts +130 -0
- package/src/mortgage/spain/domain/types.ts +52 -0
- package/src/mortgage/switzerland/SwitzerlandMortgageService.ts +5 -0
- package/src/mortgage/switzerland/SwitzerlandMortgageServiceImpl.ts +106 -0
- package/src/mortgage/switzerland/domain/types.ts +36 -0
- package/src/shared/domain/types.ts +1 -0
- package/test/australia-inheritance-tax.test.ts +35 -0
- package/test/brazil-capital-gains.test.ts +65 -0
- package/test/brazil-corporate-tax.test.ts +63 -0
- package/test/brazil-income-tax.test.ts +85 -0
- package/test/brazil-mortgage.test.ts +70 -0
- package/test/canada-inheritance-tax.test.ts +62 -0
- package/test/france-inheritance-tax.test.ts +101 -0
- package/test/germany-inheritance-tax.test.ts +100 -0
- package/test/india-capital-gains.test.ts +71 -0
- package/test/india-corporate-tax.test.ts +54 -0
- package/test/india-income-tax.test.ts +78 -0
- package/test/india-mortgage.test.ts +70 -0
- package/test/israel-capital-gains.test.ts +45 -0
- package/test/israel-corporate-tax.test.ts +49 -0
- package/test/israel-income-tax.test.ts +76 -0
- package/test/israel-mortgage.test.ts +80 -0
- package/test/japan-capital-gains.test.ts +55 -0
- package/test/japan-corporate-tax.test.ts +54 -0
- package/test/japan-income-tax.test.ts +76 -0
- package/test/japan-inheritance-tax.test.ts +74 -0
- package/test/japan-mortgage.test.ts +69 -0
- package/test/netherlands-corporate-tax.test.ts +54 -0
- package/test/netherlands-income-tax.test.ts +54 -0
- package/test/netherlands-inheritance-tax.test.ts +79 -0
- package/test/netherlands-mortgage.test.ts +79 -0
- package/test/south-africa-inheritance-tax.test.ts +81 -0
- package/test/spain-capital-gains.test.ts +66 -0
- package/test/spain-corporate-tax.test.ts +54 -0
- package/test/spain-income-tax.test.ts +84 -0
- package/test/spain-inheritance-tax.test.ts +78 -0
- package/test/spain-mortgage.test.ts +70 -0
- package/test/switzerland-corporate-tax.test.ts +39 -0
- package/test/switzerland-income-tax.test.ts +66 -0
- package/test/switzerland-mortgage.test.ts +70 -0
- package/test/uk-inheritance-tax.test.ts +72 -0
- package/test/usa-inheritance-tax.test.ts +90 -0
- package/dist/domain/types.js +0 -10
- package/dist/types/domain/types.d.ts +0 -41
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { BrazilCorporateTaxService } from "./BrazilCorporateTaxService";
|
|
2
|
+
import { Input, Result, Rules } from "./domain/types";
|
|
3
|
+
export declare class BrazilCorporateTaxServiceImpl implements BrazilCorporateTaxService {
|
|
4
|
+
private _input;
|
|
5
|
+
private _rules;
|
|
6
|
+
constructor(input: Input, rules: Rules);
|
|
7
|
+
calculate(): Result;
|
|
8
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { Breakdown } from "../../domain/types";
|
|
2
|
+
export interface Rules {
|
|
3
|
+
irpj: {
|
|
4
|
+
baseRate: number;
|
|
5
|
+
surchargeRate: number;
|
|
6
|
+
surchargeThreshold: number;
|
|
7
|
+
};
|
|
8
|
+
csll: {
|
|
9
|
+
rate: number;
|
|
10
|
+
};
|
|
11
|
+
}
|
|
12
|
+
export interface Input {
|
|
13
|
+
taxableIncome: number;
|
|
14
|
+
}
|
|
15
|
+
export interface Result {
|
|
16
|
+
corporateTax: number;
|
|
17
|
+
effectiveTaxRate: number;
|
|
18
|
+
breakdowns: Breakdown[];
|
|
19
|
+
}
|
|
@@ -12,4 +12,18 @@ import { FranceCorporateTaxServiceImpl as FranceCorporateTaxService } from './fr
|
|
|
12
12
|
import { Input as FranceCorporateTaxInput, Rules as FranceCorporateTaxRules, Result as FranceCorporateTaxResult } from './france/domain/types';
|
|
13
13
|
import { CanadaCorporateTaxServiceImpl as CanadaCorporateTaxService } from './canada/CanadaCorporateTaxServiceImpl';
|
|
14
14
|
import { Input as CanadaCorporateTaxInput, Rules as CanadaCorporateTaxRules, Result as CanadaCorporateTaxResult } from './canada/domain/types';
|
|
15
|
-
|
|
15
|
+
import { BrazilCorporateTaxServiceImpl as BrazilCorporateTaxService } from './brazil/BrazilCorporateTaxServiceImpl';
|
|
16
|
+
import { Input as BrazilCorporateTaxInput, Rules as BrazilCorporateTaxRules, Result as BrazilCorporateTaxResult } from './brazil/domain/types';
|
|
17
|
+
import { SpainCorporateTaxServiceImpl as SpainCorporateTaxService } from './spain/SpainCorporateTaxServiceImpl';
|
|
18
|
+
import { Input as SpainCorporateTaxInput, Rules as SpainCorporateTaxRules, Result as SpainCorporateTaxResult } from './spain/domain/types';
|
|
19
|
+
import { IndiaCorporateTaxServiceImpl as IndiaCorporateTaxService } from './india/IndiaCorporateTaxServiceImpl';
|
|
20
|
+
import { Input as IndiaCorporateTaxInput, Rules as IndiaCorporateTaxRules, Result as IndiaCorporateTaxResult } from './india/domain/types';
|
|
21
|
+
import { JapanCorporateTaxServiceImpl as JapanCorporateTaxService } from './japan/JapanCorporateTaxServiceImpl';
|
|
22
|
+
import { Input as JapanCorporateTaxInput, Rules as JapanCorporateTaxRules, Result as JapanCorporateTaxResult } from './japan/domain/types';
|
|
23
|
+
import { IsraelCorporateTaxServiceImpl as IsraelCorporateTaxService } from './israel/IsraelCorporateTaxServiceImpl';
|
|
24
|
+
import { Input as IsraelCorporateTaxInput, Rules as IsraelCorporateTaxRules, Result as IsraelCorporateTaxResult } from './israel/domain/types';
|
|
25
|
+
import { SwitzerlandCorporateTaxServiceImpl as SwitzerlandCorporateTaxService } from './switzerland/SwitzerlandCorporateTaxServiceImpl';
|
|
26
|
+
import { Input as SwitzerlandCorporateTaxInput, Rules as SwitzerlandCorporateTaxRules, Result as SwitzerlandCorporateTaxResult } from './switzerland/domain/types';
|
|
27
|
+
import { NetherlandsCorporateTaxServiceImpl as NetherlandsCorporateTaxService } from './netherlands/NetherlandsCorporateTaxServiceImpl';
|
|
28
|
+
import { Input as NetherlandsCorporateTaxInput, Rules as NetherlandsCorporateTaxRules, Result as NetherlandsCorporateTaxResult } from './netherlands/domain/types';
|
|
29
|
+
export { USACorporateTaxService, USACorporateTaxInput, USACorporateTaxRules, USACorporateTaxResult, GermanyCorporateTaxService, GermanyCorporateTaxInput, GermanyCorporateTaxRules, GermanyCorporateTaxResult, UKCorporateTaxService, UKCorporateTaxInput, UKCorporateTaxRules, UKCorporateTaxResult, AustraliaCorporateTaxService, AustraliaCorporateTaxInput, AustraliaCorporateTaxRules, AustraliaCorporateTaxResult, SouthAfricaCorporateTaxService, SouthAfricaCorporateTaxInput, SouthAfricaCorporateTaxRules, SouthAfricaCorporateTaxResult, FranceCorporateTaxService, FranceCorporateTaxInput, FranceCorporateTaxRules, FranceCorporateTaxResult, CanadaCorporateTaxService, CanadaCorporateTaxInput, CanadaCorporateTaxRules, CanadaCorporateTaxResult, BrazilCorporateTaxService, BrazilCorporateTaxInput, BrazilCorporateTaxRules, BrazilCorporateTaxResult, SpainCorporateTaxService, SpainCorporateTaxInput, SpainCorporateTaxRules, SpainCorporateTaxResult, IndiaCorporateTaxService, IndiaCorporateTaxInput, IndiaCorporateTaxRules, IndiaCorporateTaxResult, JapanCorporateTaxService, JapanCorporateTaxInput, JapanCorporateTaxRules, JapanCorporateTaxResult, IsraelCorporateTaxService, IsraelCorporateTaxInput, IsraelCorporateTaxRules, IsraelCorporateTaxResult, SwitzerlandCorporateTaxService, SwitzerlandCorporateTaxInput, SwitzerlandCorporateTaxRules, SwitzerlandCorporateTaxResult, NetherlandsCorporateTaxService, NetherlandsCorporateTaxInput, NetherlandsCorporateTaxRules, NetherlandsCorporateTaxResult, };
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { IndiaCorporateTaxService } from "./IndiaCorporateTaxService";
|
|
2
|
+
import { Input, Result, Rules } from "./domain/types";
|
|
3
|
+
export declare class IndiaCorporateTaxServiceImpl implements IndiaCorporateTaxService {
|
|
4
|
+
private _input;
|
|
5
|
+
private _rules;
|
|
6
|
+
constructor(input: Input, rules: Rules);
|
|
7
|
+
calculate(): Result;
|
|
8
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Breakdown } from "../../domain/types";
|
|
2
|
+
export interface Rules {
|
|
3
|
+
regime: {
|
|
4
|
+
type: 'flat';
|
|
5
|
+
rate: number;
|
|
6
|
+
};
|
|
7
|
+
}
|
|
8
|
+
export interface Input {
|
|
9
|
+
taxableIncome: number;
|
|
10
|
+
}
|
|
11
|
+
export interface Result {
|
|
12
|
+
corporateTax: number;
|
|
13
|
+
effectiveTaxRate: number;
|
|
14
|
+
breakdowns: Breakdown[];
|
|
15
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { IsraelCorporateTaxService } from "./IsraelCorporateTaxService";
|
|
2
|
+
import { Input, Result, Rules } from "./domain/types";
|
|
3
|
+
export declare class IsraelCorporateTaxServiceImpl implements IsraelCorporateTaxService {
|
|
4
|
+
private _input;
|
|
5
|
+
private _rules;
|
|
6
|
+
constructor(input: Input, rules: Rules);
|
|
7
|
+
calculate(): Result;
|
|
8
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Breakdown } from "../../domain/types";
|
|
2
|
+
export interface Rules {
|
|
3
|
+
regime: {
|
|
4
|
+
type: 'flat';
|
|
5
|
+
rate: number;
|
|
6
|
+
};
|
|
7
|
+
}
|
|
8
|
+
export interface Input {
|
|
9
|
+
taxableIncome: number;
|
|
10
|
+
}
|
|
11
|
+
export interface Result {
|
|
12
|
+
corporateTax: number;
|
|
13
|
+
effectiveTaxRate: number;
|
|
14
|
+
breakdowns: Breakdown[];
|
|
15
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { JapanCorporateTaxService } from "./JapanCorporateTaxService";
|
|
2
|
+
import { Input, Result, Rules } from "./domain/types";
|
|
3
|
+
export declare class JapanCorporateTaxServiceImpl implements JapanCorporateTaxService {
|
|
4
|
+
private _input;
|
|
5
|
+
private _rules;
|
|
6
|
+
constructor(input: Input, rules: Rules);
|
|
7
|
+
calculate(): Result;
|
|
8
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Breakdown } from "../../domain/types";
|
|
2
|
+
export interface Rules {
|
|
3
|
+
regime: {
|
|
4
|
+
type: 'flat';
|
|
5
|
+
rate: number;
|
|
6
|
+
};
|
|
7
|
+
}
|
|
8
|
+
export interface Input {
|
|
9
|
+
taxableIncome: number;
|
|
10
|
+
}
|
|
11
|
+
export interface Result {
|
|
12
|
+
corporateTax: number;
|
|
13
|
+
effectiveTaxRate: number;
|
|
14
|
+
breakdowns: Breakdown[];
|
|
15
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { NetherlandsCorporateTaxService } from "./NetherlandsCorporateTaxService";
|
|
2
|
+
import { Input, Result, Rules } from "./domain/types";
|
|
3
|
+
export declare class NetherlandsCorporateTaxServiceImpl implements NetherlandsCorporateTaxService {
|
|
4
|
+
private _input;
|
|
5
|
+
private _rules;
|
|
6
|
+
constructor(input: Input, rules: Rules);
|
|
7
|
+
calculate(): Result;
|
|
8
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { Breakdown } from "../../domain/types";
|
|
2
|
+
export interface TaxTier {
|
|
3
|
+
from: number;
|
|
4
|
+
to: number | null;
|
|
5
|
+
rate: number;
|
|
6
|
+
}
|
|
7
|
+
export interface Rules {
|
|
8
|
+
tiers: TaxTier[];
|
|
9
|
+
}
|
|
10
|
+
export interface Input {
|
|
11
|
+
taxableIncome: number;
|
|
12
|
+
}
|
|
13
|
+
export interface Result {
|
|
14
|
+
corporateTax: number;
|
|
15
|
+
effectiveTaxRate: number;
|
|
16
|
+
breakdowns: Breakdown[];
|
|
17
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { SpainCorporateTaxService } from "./SpainCorporateTaxService";
|
|
2
|
+
import { Input, Result, Rules } from "./domain/types";
|
|
3
|
+
export declare class SpainCorporateTaxServiceImpl implements SpainCorporateTaxService {
|
|
4
|
+
private _input;
|
|
5
|
+
private _rules;
|
|
6
|
+
constructor(input: Input, rules: Rules);
|
|
7
|
+
calculate(): Result;
|
|
8
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Breakdown } from "../../domain/types";
|
|
2
|
+
export interface Rules {
|
|
3
|
+
regime: {
|
|
4
|
+
type: 'flat';
|
|
5
|
+
rate: number;
|
|
6
|
+
};
|
|
7
|
+
}
|
|
8
|
+
export interface Input {
|
|
9
|
+
taxableIncome: number;
|
|
10
|
+
}
|
|
11
|
+
export interface Result {
|
|
12
|
+
corporateTax: number;
|
|
13
|
+
effectiveTaxRate: number;
|
|
14
|
+
breakdowns: Breakdown[];
|
|
15
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { SwitzerlandCorporateTaxService } from "./SwitzerlandCorporateTaxService";
|
|
2
|
+
import { Input, Result, Rules } from "./domain/types";
|
|
3
|
+
export declare class SwitzerlandCorporateTaxServiceImpl implements SwitzerlandCorporateTaxService {
|
|
4
|
+
private _input;
|
|
5
|
+
private _rules;
|
|
6
|
+
constructor(input: Input, rules: Rules);
|
|
7
|
+
calculate(): Result;
|
|
8
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Breakdown } from "../../domain/types";
|
|
2
|
+
export interface Rules {
|
|
3
|
+
regime: {
|
|
4
|
+
type: 'flat';
|
|
5
|
+
rate: number;
|
|
6
|
+
};
|
|
7
|
+
}
|
|
8
|
+
export interface Input {
|
|
9
|
+
taxableIncome: number;
|
|
10
|
+
}
|
|
11
|
+
export interface Result {
|
|
12
|
+
corporateTax: number;
|
|
13
|
+
effectiveTaxRate: number;
|
|
14
|
+
breakdowns: Breakdown[];
|
|
15
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { BrazilIncomeTaxService } from "./BrazilIncomeTaxService";
|
|
2
|
+
import { ComputedIncomeTaxValues, IncomeTaxRules } from "./domain/types";
|
|
3
|
+
export declare class BrazilIncomeTaxServiceImpl implements BrazilIncomeTaxService {
|
|
4
|
+
private _income;
|
|
5
|
+
private _rules;
|
|
6
|
+
constructor(income: number, rules: IncomeTaxRules);
|
|
7
|
+
calculateNetIncome(): ComputedIncomeTaxValues;
|
|
8
|
+
private computeTaxBrackets;
|
|
9
|
+
private computeINSS;
|
|
10
|
+
private round;
|
|
11
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { BracketAllocation, TaxBracket } from "../../domain/types";
|
|
2
|
+
export interface IncomeTaxRules {
|
|
3
|
+
taxBrackets: TaxBracket[];
|
|
4
|
+
inss: INSSRules;
|
|
5
|
+
}
|
|
6
|
+
export interface INSSRules {
|
|
7
|
+
rate: number;
|
|
8
|
+
cap: number;
|
|
9
|
+
}
|
|
10
|
+
export interface ComputedIncomeTaxValues {
|
|
11
|
+
grossIncome: number;
|
|
12
|
+
incomeTax: number;
|
|
13
|
+
inss: number;
|
|
14
|
+
totalDeductions: number;
|
|
15
|
+
netIncome: number;
|
|
16
|
+
effectiveTaxRate: number;
|
|
17
|
+
taxBracketBreakdown: BracketAllocation[];
|
|
18
|
+
}
|
|
@@ -12,4 +12,18 @@ import { USAIncomeTaxServiceImpl as USAIncomeTaxService } from './usa/USAIncomeT
|
|
|
12
12
|
import { ComputedIncomeTaxValues as USAComputedIncomeTaxValues, IncomeTaxRules as USAIncomeTaxRules } from './usa/domain/types';
|
|
13
13
|
import { GermanyIncomeTaxServiceImpl as GermanyIncomeTaxService } from './germany/GermanyIncomeTaxServiceImpl';
|
|
14
14
|
import { ComputedIncomeTaxValues as GermanyComputedIncomeTaxValues, IncomeTaxRules as GermanyIncomeTaxRules } from './germany/domain/types';
|
|
15
|
-
|
|
15
|
+
import { BrazilIncomeTaxServiceImpl as BrazilIncomeTaxService } from './brazil/BrazilIncomeTaxServiceImpl';
|
|
16
|
+
import { ComputedIncomeTaxValues as BrazilComputedIncomeTaxValues, IncomeTaxRules as BrazilIncomeTaxRules } from './brazil/domain/types';
|
|
17
|
+
import { SpainIncomeTaxServiceImpl as SpainIncomeTaxService } from './spain/SpainIncomeTaxServiceImpl';
|
|
18
|
+
import { ComputedIncomeTaxValues as SpainComputedIncomeTaxValues, IncomeTaxRules as SpainIncomeTaxRules } from './spain/domain/types';
|
|
19
|
+
import { IndiaIncomeTaxServiceImpl as IndiaIncomeTaxService } from './india/IndiaIncomeTaxServiceImpl';
|
|
20
|
+
import { ComputedIncomeTaxValues as IndiaComputedIncomeTaxValues, IncomeTaxRules as IndiaIncomeTaxRules } from './india/domain/types';
|
|
21
|
+
import { JapanIncomeTaxServiceImpl as JapanIncomeTaxService } from './japan/JapanIncomeTaxServiceImpl';
|
|
22
|
+
import { ComputedIncomeTaxValues as JapanComputedIncomeTaxValues, IncomeTaxRules as JapanIncomeTaxRules } from './japan/domain/types';
|
|
23
|
+
import { IsraelIncomeTaxServiceImpl as IsraelIncomeTaxService } from './israel/IsraelIncomeTaxServiceImpl';
|
|
24
|
+
import { ComputedIncomeTaxValues as IsraelComputedIncomeTaxValues, IncomeTaxRules as IsraelIncomeTaxRules } from './israel/domain/types';
|
|
25
|
+
import { SwitzerlandIncomeTaxServiceImpl as SwitzerlandIncomeTaxService } from './switzerland/SwitzerlandIncomeTaxServiceImpl';
|
|
26
|
+
import { ComputedIncomeTaxValues as SwitzerlandComputedIncomeTaxValues, IncomeTaxRules as SwitzerlandIncomeTaxRules } from './switzerland/domain/types';
|
|
27
|
+
import { NetherlandsIncomeTaxServiceImpl as NetherlandsIncomeTaxService } from './netherlands/NetherlandsIncomeTaxServiceImpl';
|
|
28
|
+
import { ComputedIncomeTaxValues as NetherlandsComputedIncomeTaxValues, IncomeTaxRules as NetherlandsIncomeTaxRules } from './netherlands/domain/types';
|
|
29
|
+
export { CanadaIncomeTaxService, CanadaComputedIncomeTaxValues, CanadaIncomeTaxRules, FranceIncomeTaxService, FranceComputedIncomeTaxValues, FranceIncomeTaxRules, SouthAfricaIncomeTaxService, SouthAfricaComputedIncomeTaxValues, SouthAfricaIncomeTaxRules, AustraliaIncomeTaxService, AustraliaComputedIncomeTaxValues, AustraliaIncomeTaxRules, UKIncomeTaxService, UKComputedIncomeTaxValues, UKIncomeTaxRules, USAIncomeTaxService, USAComputedIncomeTaxValues, USAIncomeTaxRules, GermanyIncomeTaxService, GermanyComputedIncomeTaxValues, GermanyIncomeTaxRules, BrazilIncomeTaxService, BrazilComputedIncomeTaxValues, BrazilIncomeTaxRules, SpainIncomeTaxService, SpainComputedIncomeTaxValues, SpainIncomeTaxRules, IndiaIncomeTaxService, IndiaComputedIncomeTaxValues, IndiaIncomeTaxRules, JapanIncomeTaxService, JapanComputedIncomeTaxValues, JapanIncomeTaxRules, IsraelIncomeTaxService, IsraelComputedIncomeTaxValues, IsraelIncomeTaxRules, SwitzerlandIncomeTaxService, SwitzerlandComputedIncomeTaxValues, SwitzerlandIncomeTaxRules, NetherlandsIncomeTaxService, NetherlandsComputedIncomeTaxValues, NetherlandsIncomeTaxRules, };
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { IndiaIncomeTaxService } from "./IndiaIncomeTaxService";
|
|
2
|
+
import { ComputedIncomeTaxValues, IncomeTaxRules } from "./domain/types";
|
|
3
|
+
export declare class IndiaIncomeTaxServiceImpl implements IndiaIncomeTaxService {
|
|
4
|
+
private _income;
|
|
5
|
+
private _rules;
|
|
6
|
+
constructor(income: number, rules: IncomeTaxRules);
|
|
7
|
+
calculateNetIncome(): ComputedIncomeTaxValues;
|
|
8
|
+
private computeTaxBrackets;
|
|
9
|
+
private round;
|
|
10
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { BracketAllocation, TaxBracket } from "../../domain/types";
|
|
2
|
+
export interface IncomeTaxRules {
|
|
3
|
+
taxBrackets: TaxBracket[];
|
|
4
|
+
cess: {
|
|
5
|
+
rate: number;
|
|
6
|
+
};
|
|
7
|
+
}
|
|
8
|
+
export interface ComputedIncomeTaxValues {
|
|
9
|
+
grossIncome: number;
|
|
10
|
+
incomeTax: number;
|
|
11
|
+
cess: number;
|
|
12
|
+
totalDeductions: number;
|
|
13
|
+
netIncome: number;
|
|
14
|
+
effectiveTaxRate: number;
|
|
15
|
+
taxBracketBreakdown: BracketAllocation[];
|
|
16
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { IsraelIncomeTaxService } from "./IsraelIncomeTaxService";
|
|
2
|
+
import { ComputedIncomeTaxValues, IncomeTaxRules } from "./domain/types";
|
|
3
|
+
export declare class IsraelIncomeTaxServiceImpl implements IsraelIncomeTaxService {
|
|
4
|
+
private _income;
|
|
5
|
+
private _rules;
|
|
6
|
+
constructor(income: number, rules: IncomeTaxRules);
|
|
7
|
+
calculateNetIncome(): ComputedIncomeTaxValues;
|
|
8
|
+
private computeTaxBrackets;
|
|
9
|
+
private round;
|
|
10
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { BracketAllocation, TaxBracket } from "../../domain/types";
|
|
2
|
+
export interface IncomeTaxRules {
|
|
3
|
+
taxBrackets: TaxBracket[];
|
|
4
|
+
socialContributions: {
|
|
5
|
+
rate: number;
|
|
6
|
+
};
|
|
7
|
+
}
|
|
8
|
+
export interface ComputedIncomeTaxValues {
|
|
9
|
+
grossIncome: number;
|
|
10
|
+
incomeTax: number;
|
|
11
|
+
socialContributions: number;
|
|
12
|
+
totalDeductions: number;
|
|
13
|
+
netIncome: number;
|
|
14
|
+
effectiveTaxRate: number;
|
|
15
|
+
taxBracketBreakdown: BracketAllocation[];
|
|
16
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { JapanIncomeTaxService } from "./JapanIncomeTaxService";
|
|
2
|
+
import { ComputedIncomeTaxValues, IncomeTaxRules } from "./domain/types";
|
|
3
|
+
export declare class JapanIncomeTaxServiceImpl implements JapanIncomeTaxService {
|
|
4
|
+
private _income;
|
|
5
|
+
private _rules;
|
|
6
|
+
constructor(income: number, rules: IncomeTaxRules);
|
|
7
|
+
calculateNetIncome(): ComputedIncomeTaxValues;
|
|
8
|
+
private computeTaxBrackets;
|
|
9
|
+
private round;
|
|
10
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { BracketAllocation, TaxBracket } from "../../domain/types";
|
|
2
|
+
export interface IncomeTaxRules {
|
|
3
|
+
taxBrackets: TaxBracket[];
|
|
4
|
+
inhabitantTax: {
|
|
5
|
+
rate: number;
|
|
6
|
+
};
|
|
7
|
+
}
|
|
8
|
+
export interface ComputedIncomeTaxValues {
|
|
9
|
+
grossIncome: number;
|
|
10
|
+
nationalIncomeTax: number;
|
|
11
|
+
inhabitantTax: number;
|
|
12
|
+
totalDeductions: number;
|
|
13
|
+
netIncome: number;
|
|
14
|
+
effectiveTaxRate: number;
|
|
15
|
+
taxBracketBreakdown: BracketAllocation[];
|
|
16
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { NetherlandsIncomeTaxService } from "./NetherlandsIncomeTaxService";
|
|
2
|
+
import { ComputedIncomeTaxValues, IncomeTaxRules } from "./domain/types";
|
|
3
|
+
export declare class NetherlandsIncomeTaxServiceImpl implements NetherlandsIncomeTaxService {
|
|
4
|
+
private _income;
|
|
5
|
+
private _rules;
|
|
6
|
+
constructor(income: number, rules: IncomeTaxRules);
|
|
7
|
+
calculateNetIncome(): ComputedIncomeTaxValues;
|
|
8
|
+
private computeTaxBrackets;
|
|
9
|
+
private round;
|
|
10
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { BracketAllocation, TaxBracket } from "../../domain/types";
|
|
2
|
+
export interface IncomeTaxRules {
|
|
3
|
+
taxBrackets: TaxBracket[];
|
|
4
|
+
socialContributions: {
|
|
5
|
+
rate: number;
|
|
6
|
+
};
|
|
7
|
+
}
|
|
8
|
+
export interface ComputedIncomeTaxValues {
|
|
9
|
+
grossIncome: number;
|
|
10
|
+
incomeTax: number;
|
|
11
|
+
socialContributions: number;
|
|
12
|
+
totalDeductions: number;
|
|
13
|
+
netIncome: number;
|
|
14
|
+
effectiveTaxRate: number;
|
|
15
|
+
taxBracketBreakdown: BracketAllocation[];
|
|
16
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { SpainIncomeTaxService } from "./SpainIncomeTaxService";
|
|
2
|
+
import { ComputedIncomeTaxValues, IncomeTaxRules } from "./domain/types";
|
|
3
|
+
export declare class SpainIncomeTaxServiceImpl implements SpainIncomeTaxService {
|
|
4
|
+
private _income;
|
|
5
|
+
private _rules;
|
|
6
|
+
constructor(income: number, rules: IncomeTaxRules);
|
|
7
|
+
calculateNetIncome(): ComputedIncomeTaxValues;
|
|
8
|
+
private computeTaxBrackets;
|
|
9
|
+
private round;
|
|
10
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { BracketAllocation, TaxBracket } from "../../domain/types";
|
|
2
|
+
export interface IncomeTaxRules {
|
|
3
|
+
taxBrackets: TaxBracket[];
|
|
4
|
+
socialContributions: {
|
|
5
|
+
rate: number;
|
|
6
|
+
};
|
|
7
|
+
}
|
|
8
|
+
export interface ComputedIncomeTaxValues {
|
|
9
|
+
grossIncome: number;
|
|
10
|
+
incomeTax: number;
|
|
11
|
+
socialContributions: number;
|
|
12
|
+
totalDeductions: number;
|
|
13
|
+
netIncome: number;
|
|
14
|
+
effectiveTaxRate: number;
|
|
15
|
+
taxBracketBreakdown: BracketAllocation[];
|
|
16
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { SwitzerlandIncomeTaxService } from "./SwitzerlandIncomeTaxService";
|
|
2
|
+
import { ComputedIncomeTaxValues, IncomeTaxRules } from "./domain/types";
|
|
3
|
+
export declare class SwitzerlandIncomeTaxServiceImpl implements SwitzerlandIncomeTaxService {
|
|
4
|
+
private _income;
|
|
5
|
+
private _rules;
|
|
6
|
+
constructor(income: number, rules: IncomeTaxRules);
|
|
7
|
+
calculateNetIncome(): ComputedIncomeTaxValues;
|
|
8
|
+
private computeTaxBrackets;
|
|
9
|
+
private round;
|
|
10
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { BracketAllocation, TaxBracket } from "../../domain/types";
|
|
2
|
+
export interface IncomeTaxRules {
|
|
3
|
+
taxBrackets: TaxBracket[];
|
|
4
|
+
socialContributions: {
|
|
5
|
+
rate: number;
|
|
6
|
+
};
|
|
7
|
+
}
|
|
8
|
+
export interface ComputedIncomeTaxValues {
|
|
9
|
+
grossIncome: number;
|
|
10
|
+
incomeTax: number;
|
|
11
|
+
socialContributions: number;
|
|
12
|
+
totalDeductions: number;
|
|
13
|
+
netIncome: number;
|
|
14
|
+
effectiveTaxRate: number;
|
|
15
|
+
taxBracketBreakdown: BracketAllocation[];
|
|
16
|
+
}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { AustraliaInheritanceTaxService } from "./AustraliaInheritanceTaxService";
|
|
2
|
+
import { Input, Result, Rules } from "./domain/types";
|
|
3
|
+
export declare class AustraliaInheritanceTaxServiceImpl implements AustraliaInheritanceTaxService {
|
|
4
|
+
private _input;
|
|
5
|
+
private _rules;
|
|
6
|
+
constructor(input: Input, rules: Rules);
|
|
7
|
+
calculate(): Result;
|
|
8
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { Breakdown } from "../../domain/types";
|
|
2
|
+
export interface Rules {
|
|
3
|
+
applicable: false;
|
|
4
|
+
}
|
|
5
|
+
export interface Input {
|
|
6
|
+
estateValue: number;
|
|
7
|
+
}
|
|
8
|
+
export interface Result {
|
|
9
|
+
taxableEstate: number;
|
|
10
|
+
inheritanceTax: number;
|
|
11
|
+
effectiveRate: number;
|
|
12
|
+
breakdowns: Breakdown[];
|
|
13
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { CanadaInheritanceTaxService } from "./CanadaInheritanceTaxService";
|
|
2
|
+
import { Input, Result, Rules } from "./domain/types";
|
|
3
|
+
export declare class CanadaInheritanceTaxServiceImpl implements CanadaInheritanceTaxService {
|
|
4
|
+
private _input;
|
|
5
|
+
private _rules;
|
|
6
|
+
constructor(input: Input, rules: Rules);
|
|
7
|
+
calculate(): Result;
|
|
8
|
+
private applyBrackets;
|
|
9
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Breakdown } from "../../domain/types";
|
|
2
|
+
export interface TaxBracket {
|
|
3
|
+
from: number;
|
|
4
|
+
to: number | null;
|
|
5
|
+
rate: number;
|
|
6
|
+
}
|
|
7
|
+
export interface Rules {
|
|
8
|
+
inclusionRate: number;
|
|
9
|
+
taxBrackets: TaxBracket[];
|
|
10
|
+
}
|
|
11
|
+
export interface Input {
|
|
12
|
+
estateValue: number;
|
|
13
|
+
adjustedCostBase: number;
|
|
14
|
+
}
|
|
15
|
+
export interface Result {
|
|
16
|
+
taxableEstate: number;
|
|
17
|
+
inheritanceTax: number;
|
|
18
|
+
effectiveRate: number;
|
|
19
|
+
breakdowns: Breakdown[];
|
|
20
|
+
}
|