.gitignore added
[dotfiles/.git] / .config / coc / extensions / node_modules / coc-prettier / node_modules / @eslint / eslintrc / node_modules / type-fest / source / merge.d.ts
diff --git a/.config/coc/extensions/node_modules/coc-prettier/node_modules/@eslint/eslintrc/node_modules/type-fest/source/merge.d.ts b/.config/coc/extensions/node_modules/coc-prettier/node_modules/@eslint/eslintrc/node_modules/type-fest/source/merge.d.ts
new file mode 100644 (file)
index 0000000..4b3920b
--- /dev/null
@@ -0,0 +1,22 @@
+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;