This commit is contained in:
@@ -22,6 +22,21 @@ export type Extend<T extends readonly object[]> = (
|
|||||||
: {}
|
: {}
|
||||||
)
|
)
|
||||||
|
|
||||||
|
export type Override<T extends readonly object[]> = (
|
||||||
|
T extends readonly [
|
||||||
|
infer Super,
|
||||||
|
infer Self,
|
||||||
|
...infer Rest extends readonly object[],
|
||||||
|
]
|
||||||
|
? Override<readonly [
|
||||||
|
Omit<Super, CommonKeys<Self, Super>> & Self,
|
||||||
|
...Rest,
|
||||||
|
]>
|
||||||
|
: T extends readonly [infer Self]
|
||||||
|
? Self
|
||||||
|
: {}
|
||||||
|
)
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Merges an inheritance tree defined by an array of types without allowing overrides.
|
* Merges an inheritance tree defined by an array of types without allowing overrides.
|
||||||
* @template T - An array of types representing the inheritance tree.
|
* @template T - An array of types representing the inheritance tree.
|
||||||
|
|||||||
Reference in New Issue
Block a user