DefinitelyTyped/types/clone-deep/clone-deep-tests.ts
Pete Gonzalez d380ec4475 Fix incorrect typings for clone-deep (#33990)
* Fix incorrect typings for clone-deep

* Update tsconfig.json to remove the insidious setting that caused the mistake to be overlooked ;-)
2019-03-18 18:35:55 -07:00

17 lines
697 B
TypeScript

import cloneDeep = require('clone-deep');
cloneDeep<object>(Object.create(null)); // $ExpectType object
cloneDeep<object>({}); // $ExpectType object
cloneDeep({}); // $ExpectType {}
cloneDeep(new Array()); // $ExpectType any[]
cloneDeep<any[]>([]); // $ExpectType any[]
cloneDeep<number>(42); // $ExpectType number
cloneDeep<string>('clone'); // $ExpectType string
cloneDeep<object>({}, true); // $ExpectType object
cloneDeep({}, true); // $ExpectType {}
cloneDeep<number>(42, true); // $ExpectType number
cloneDeep<object>({}, _ => ({})); // $ExpectType object
cloneDeep({}, _ => ({})); // $ExpectType {}
cloneDeep<object>({}, _ => 42); // $ExpectError
cloneDeep(42, _ => ({})); // $ExpectError