mirror of
https://github.com/gosticks/DefinitelyTyped.git
synced 2026-07-26 20:10:03 +00:00
Merge pull request #8063 from rhysd/deep-extend
Add type definitions for deep-extend module
This commit is contained in:
36
deep-extend/deep-extend-tests.ts
Normal file
36
deep-extend/deep-extend-tests.ts
Normal file
@@ -0,0 +1,36 @@
|
||||
/// <reference path="deep-extend.d.ts" />
|
||||
|
||||
import deepExtend = require('deep-extend');
|
||||
var obj1 = {
|
||||
a: 1,
|
||||
b: 2,
|
||||
d: {
|
||||
a: 1,
|
||||
b: [true],
|
||||
c: { test1: 123, test2: 321 }
|
||||
},
|
||||
f: 5,
|
||||
g: 123,
|
||||
i: 321,
|
||||
j: [1, 2]
|
||||
};
|
||||
var obj2 = {
|
||||
b: 3,
|
||||
c: 5,
|
||||
d: {
|
||||
b: { first: 'one', second: 'two' },
|
||||
c: { test2: 222 }
|
||||
},
|
||||
e: { one: 1, two: 2 },
|
||||
f: [42],
|
||||
g: function(){},
|
||||
h: /abc/g,
|
||||
i: null as {aaa: boolean},
|
||||
j: [3, 4]
|
||||
};
|
||||
|
||||
deepExtend(obj1, obj2);
|
||||
deepExtend(obj1, obj2, {ccc: 3});
|
||||
deepExtend(obj1, obj2, {ccc: 3}, {ddd: 4});
|
||||
|
||||
|
||||
15
deep-extend/deep-extend.d.ts
vendored
Normal file
15
deep-extend/deep-extend.d.ts
vendored
Normal file
@@ -0,0 +1,15 @@
|
||||
// Type definitions for open 0.4.1
|
||||
// Project: https://github.com/unclechu/node-deep-extend
|
||||
// Definitions by: rhysd <https://github.com/rhysd>
|
||||
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
|
||||
|
||||
declare module 'deep-extend' {
|
||||
/*
|
||||
* Recursive object extending.
|
||||
*/
|
||||
function deepExtend<T, U>(target: T, source: U): T & U;
|
||||
function deepExtend<T, U, V>(target: T, source1: U, source2: V): T & U & V;
|
||||
function deepExtend<T, U, V, W>(target: T, source1: U, source2: V, source3: W): T & U & V & W;
|
||||
function deepExtend(target: any, ...sources: any[]): any;
|
||||
export = deepExtend;
|
||||
}
|
||||
Reference in New Issue
Block a user