import extend = require("./index"); // OK // Pass single `object`. extend({}); extend([]); extend(() => {}); // Pass single `object`, then `any`. extend({}, 0); extend({}, ""); extend({}, false); extend({}, null); extend({}, undefined); extend({}, {}); extend({}, []); extend({}, () => {}); // Pass variadic args. extend({}, 0, "", false, null, undefined, {}, [], () => {}); // Pass `boolean`, then single `object`. extend(true, {}); extend(true, []); extend(true, () => {}); // Pass `boolean`, single `object`, then `any`. extend(true, {}, 0); extend(true, {}, ""); extend(true, {}, false); extend(true, {}, null); extend(true, {}, undefined); extend(true, {}, {}); extend(true, {}, []); extend(true, {}, () => {}); // Pass `boolean`, then variadic args. extend(true, {}, 0, "", false, null, undefined, {}, [], () => {}); // Not OK // Incorrect extendee `object`. // @ts-expect-error extend(); // @ts-expect-error extend(0); // @ts-expect-error extend(""); // @ts-expect-error extend(false); // @ts-expect-error extend(); // @ts-expect-error extend(true, 0); // @ts-expect-error extend(true, ""); // @ts-expect-error extend(true, false); // @ts-expect-error extend(true);