add
add() function
Adds two values.
Signature:declare function add<A extends number | Promise<number>, B extends number | Promise<number>>(a: A, b: B): ReturnAddType<number | Promise<number>, A, B>;
declare function add<A extends string | Promise<string>, B extends string | Promise<string>>(a: A, b: B): ReturnAddType<string | Promise<string>, A, B>;
declare function add<A extends number | Promise<number>, B extends number | Promise<number>>(a: A): (b: B) => ReturnAddType<number | Promise<number>, A, B>;
declare function add<A extends string | Promise<string>, B extends string | Promise<string>>(a: A): (b: B) => ReturnAddType<string | Promise<string>, A, B>;
Example
add(1, 2); // 3
await add(1, Promise.resolve(2)); // 3
await add(Promise.resolve(1), 2); // 3
await add(Promise.resolve(1), Promise.resolve(2)); // 3
add('a', 'b'); // 'ab'
await add('a', Promise.resolve('b')); // 'ab'
await add(Promise.resolve('a'), 'b'); // 'ab'
await add(Promise.resolve('a'), Promise.resolve('b')); // 'ab'