TS2371
A parameter initializer is only allowed in a function or constructor implementation.
Broken Code ❌
function add(a: number, b: number, c: number = 0): number;
function add(a: number | string, b: number | string, c: number | string = 0): number {
return parseInt(`${a}`, 10) + parseInt(`${b}`, 10);
}Fixed Code ✔️
Remove parameter initializer from function overload:
function add(a: number, b: number, c: number): number;
function add(a: number | string, b: number | string, c: number | string = 0): number {
return parseInt(`${a}`, 10) + parseInt(`${b}`, 10);
}