Instantiable
Syntax
type Instantiable<T = unknown, Args extends ReadonlyArray<unknown> = []>
Represents an instantiable (“newable”) type.
Example
import { Instantiable } from 'potence';
const instantiables: Instantiable[] = [
Date,
Object,
CustomClass
];
const instances = instantiables.map(instantiable => new instantiable());
Remarks
Particularly useful for factory functions. See above for a possible usage example.
The second type Args allows consumers to specify the types of any parameters
the constructor may have as a
tuple.
Also see the related type Constructor,
which is the superset of this type, only that a Constructor may also refer to
an abstract constructor (for instance an abstract class) that cannot be
instantiated.
Every Instantiable is a Constructor, but not every Constructor is an
Instantiable.