import type { GetNewableOptions, NewableOptions } from './NewableOptions.js'; /** * - Parameters default to `any` (so that bivariance hack is not required) * - See `Bivariant` to make the result bivariant * - Use `AbstractNewable` if true newable super-type is needed */ export type Newable = {}> = new (...args: GetNewableOptions['parameters']) => GetNewableOptions['return']; /** * - Parameters default to `any` (so that bivariance hack is not required) * - See `Bivariant` to make the result bivariant * - Use `Newable` to get a non-abstract newable (which is a sub-type) */ export type AbstractNewable = {}> = abstract new (...args: GetNewableOptions['parameters']) => GetNewableOptions['return']; //# sourceMappingURL=Newable.d.ts.map