在下面的例子中,我想要
Bar
挽留
a
从…起
Foo
推翻
b
成为一名
string
而不是
number
,然后移除
c
然而
C
到处都是,只是按
never
.我怎样才能删除所有的Never intead?
type Override<A, B> = Omit<A, keyof B> & B
type Foo = {
a: string
b: number
c: boolean
}
type Bar = Override<Foo, {
b: string
c: never
}>
function f(bar: Bar) {
console.log(bar.c)
}