- object<T>(...members): Shape<InputObject<T>, OutputObject<T>>
Parameters
Rest
...members: [...(never extends T
? {
[K in string | number | symbol]: AnyShape extends T[K<K>]
? T[K<K>] & AnyShape
: (UnionKeys<Input<T[K<K>]>> & {
[L in string | number | symbol]: K<K> extends L<L>
? never
: UnionKeys<Input<(...)>>
}[number]) extends O
? [O] extends [never]
? Shape<Input<T[K<(...)>]> & {}, Input<T[K<(...)>]> & {}>
: Shape<{
[_ in string | number | symbol]?: undefined
}, {
[_ in string | number | symbol]?: undefined
}>
: never
}
: T)[]]