A generic type variable constrained by the , by default of the value captured from the supplied indicates the type of a new child class instance.
inequality.class.ts
abstract class Inequality<
Value extends number // <--- Declare generic type variable Value.
> extends Number {
constructor(
value: Value // <--- Capture generic type variable Value.
) {
super(value);
this.#greater = new Greater(value);
this.#less = new Less(value);
}
}