You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
22 lines
415 B
22 lines
415 B
import {Except} from './except'; |
|
|
|
/** |
|
Merge two types into a new type. Keys of the second type overrides keys of the first type. |
|
|
|
@example |
|
``` |
|
import {Merge} from 'type-fest'; |
|
|
|
type Foo = { |
|
a: number; |
|
b: string; |
|
}; |
|
|
|
type Bar = { |
|
b: number; |
|
}; |
|
|
|
const ab: Merge<Foo, Bar> = {a: 1, b: 2}; |
|
``` |
|
*/ |
|
export type Merge<FirstType, SecondType> = Except<FirstType, Extract<keyof FirstType, keyof SecondType>> & SecondType;
|
|
|