export type DetailedType = (() => T) | (new (...arg: unknown[]) => T);