Readonly properties can be set when an object is created and then protected from reassignment.

Readonly Properties

readonly.ts
interface CartLine {
    readonly sku: string;
    quantity: number;
}

const quantity: number = ;
const line: CartLine = {
    sku: "PEN-1",
    quantity: quantity
};

line.quantity = line.quantity + 1;

console.log(`${line.sku}: ${line.quantity}`);
interface CartLine {
    readonly sku: string;
    quantity: number;
}

const quantity: number = ;
const line: CartLine = {
    sku: "PEN-1",
    quantity: quantity
};

line.quantity = line.quantity + 1;

console.log(`${line.sku}: ${line.quantity}`);
interface CartLine {
    readonly sku: string;
    quantity: number;
}

const quantity: number = ;
const line: CartLine = {
    sku: "PEN-1",
    quantity: quantity
};

line.quantity = line.quantity + 1;

console.log(`${line.sku}: ${line.quantity}`);
readonly property `readonly` marks a property that code should not reassign after initialization.