const roman = {
    M: 1000,
    CM: 900,
    D: 500,
    CD: 400,
    C: 100,
    XC: 90,
    L: 50,
    XL: 40,
    X: 10,
    IX: 9,
    V: 5,
    IV: 4,
    I: 1
};

type RomanLiteral = keyof typeof roman;

// shamefully stolen from https://stackoverflow.com/questions/9083037/convert-a-number-into-a-roman-numeral-in-javascript
export function convertToRoman(number: number) {
    let result = '';

    for (const i in roman) {
        const q = Math.floor(number / roman[i as RomanLiteral]);

        number -= q * roman[i as RomanLiteral];

        result += i.repeat(q);
    }

    return result;
}