Sha256: 2cf38989b23031694f04308b6797877534a49818b2f5257f4a5d824e7ea82a5a

Contents?: true

Size: 564 Bytes

Versions: 33

Compression:

Stored size: 564 Bytes

Contents

import type {Except} from './except';
import type {Simplify} from './simplify';

type Merge_<FirstType, SecondType> = Except<FirstType, Extract<keyof FirstType, keyof SecondType>> & SecondType;

/**
Merge two types into a new type. Keys of the second type overrides keys of the first type.

@example
```
import type {Merge} from 'type-fest';

type Foo = {
	a: number;
	b: string;
};

type Bar = {
	b: number;
};

const ab: Merge<Foo, Bar> = {a: 1, b: 2};
```

@category Object
*/
export type Merge<FirstType, SecondType> = Simplify<Merge_<FirstType, SecondType>>;

Version data entries

33 entries across 33 versions & 1 rubygems

Version Path
immosquare-cleaner-0.1.40 node_modules/type-fest/source/merge.d.ts
immosquare-cleaner-0.1.39 node_modules/type-fest/source/merge.d.ts
immosquare-cleaner-0.1.38 node_modules/type-fest/source/merge.d.ts
immosquare-cleaner-0.1.32 node_modules/boxen/node_modules/type-fest/source/merge.d.ts
immosquare-cleaner-0.1.31 node_modules/boxen/node_modules/type-fest/source/merge.d.ts
immosquare-cleaner-0.1.30 node_modules/boxen/node_modules/type-fest/source/merge.d.ts
immosquare-cleaner-0.1.29 node_modules/boxen/node_modules/type-fest/source/merge.d.ts
immosquare-cleaner-0.1.28 node_modules/boxen/node_modules/type-fest/source/merge.d.ts
immosquare-cleaner-0.1.27 node_modules/boxen/node_modules/type-fest/source/merge.d.ts
immosquare-cleaner-0.1.26 node_modules/boxen/node_modules/type-fest/source/merge.d.ts
immosquare-cleaner-0.1.25 node_modules/boxen/node_modules/type-fest/source/merge.d.ts
immosquare-cleaner-0.1.24 node_modules/boxen/node_modules/type-fest/source/merge.d.ts
immosquare-cleaner-0.1.23 node_modules/boxen/node_modules/type-fest/source/merge.d.ts