Test1 и Test2:
type Test1 = {
a: true
b: 'add' | 'remove'
c: number
}
type Test2 = {
d?: number
e: string
}
как мне их скомбинировать в один тип так, чтобы весь Test1 был опциональным (то есть либо все свойства из него указаны, либо вообще никакие не указаны)?
type Test3 = Test2 & ({ [K in keyof Test1]?: never } | Required<Test1>)
type Test3 = (Test1 & Test2) | Test2 может так
все или ничего лучше делать через never как в предыдущем
Оно и не будет работать как надо.
Обсуждают сегодня