import type { CanBeUndefined } from '../CanBeUndefined.js'; import type { IsOptional } from '../IsOptional.js'; export type SmartFlattenValue = IsOptional, Exclude, undefined>>, SmartFlattenImpl>; export type SmartFlattenImpl = T extends (...args: any) => any ? T : T extends abstract new (...args: any) => any ? T : T extends Encountered ? T : [{ [k in keyof T]: SmartFlattenValue; }][0]; export type SmartFlatten = SmartFlattenImpl; //# sourceMappingURL=SmartFlatten.d.ts.map