#Generic parameter made optional in case of undefined
4 messages · Page 1 of 1 (latest)
Preview:```ts
...
function work<T extends object | undefined>(obj: Foo<T>, inputs: T) {
obj.setInputs(inputs);
}
class Bar1 extends Foo<{ id: number }> {}
const bar1 = new Bar1();
work(bar1, { id: 5});
class Bar2 extends Foo<undefined> {}
const bar2 = new Bar2();
work(bar2); // how do I make this work?
...```
Oh, might have figured it out work "overloads"
Preview:ts ... function work<T extends object | void>( obj: Foo<T>, inputs: T ): void function work(obj: Foo<void>, inputs?: void): void function work<T extends object | void>( obj: Foo<T>, inputs: T ): void { obj.setInputs(inputs) } ...