import { million, thousand } from "@/helpers/utils";
import { Bracket, Law } from "@/data-source/types";
import { TWENTY_TWO } from "@/data-source/laws/2022";

const FIRST_BRACKET: Bracket = {
    ...TWENTY_TWO.brackets[0],
    stages: [
        { ...TWENTY_TWO.brackets[0].stages[0], min: thousand(21) },
        ...TWENTY_TWO.brackets[0].stages.slice(1),
    ],
};

const FIFTH_BRACKET: Bracket = {
    ...TWENTY_TWO.brackets[4],
    max: million(1.2),
};

const SIXTH_BRACKET: Bracket = {
    min: million(1.2),
    max: Infinity,
    stages: [
        {
            min: 0,
            max: million(1.2),
            percentage: 0.25,
        },
        {
            min: million(1.2),
            max: Infinity,
            percentage: 0.275,
        },
    ],
};
export const TWENTY_THREE: Law = {
    brackets: [
        FIRST_BRACKET,
        TWENTY_TWO.brackets[1],
        TWENTY_TWO.brackets[2],
        TWENTY_TWO.brackets[3],
        FIFTH_BRACKET,
        SIXTH_BRACKET,
    ],
    exemptionThreshold: thousand(15),
    MaxGrossSalary: 10900,
    MinGrossSalary: 1700,
};
