DefinitelyTyped/types/extend/index.d.ts
2019-02-12 10:40:37 -08:00

21 lines
1.2 KiB
TypeScript

// Type definitions for extend 3.0
// Project: https://github.com/justmoon/node-extend
// Definitions by: Stefan Steinhart <https://github.com/reppners>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
declare function extend<T, U>(deep: boolean, target: T, source: U): T & U;
declare function extend<T, U, V>(deep: boolean, target: T, source1: U, source2: V): T & U & V;
declare function extend<T, U, V, W>(deep: boolean, target: T, source1: U, source2: V,
source3: W): T & U & V & W;
declare function extend<T, U, V, W, X>(deep: boolean, target: T, source1: U, source2: V,
source3: W, source4: X): T & U & V & W & X;
declare function extend<T, U>(target: T, source: U): T & U;
declare function extend<T, U, V>(target: T, source1: U, source2: V): T & U & V;
declare function extend<T, U, V, W>(target: T, source1: U, source2: V, source3: W): T & U & V & W;
declare function extend<T, U, V, W, X>(target: T, source1: U, source2: V,
source3: W, source4: X): T & U & V & W & X;
declare function extend(deep: boolean, target: any, ...sources: any[]): any;
declare function extend(target: any, ...sources: any[]): any;
declare namespace extend {}
export = extend;