Búsqueda de sitios web

javascript - declaración d.ts para métodos de clase sobrescritos


Estoy intentando escribir un archivo js que esté anotado por un archivo d.ts. En uno de los archivos js tengo una clase que extiende otra clase y sobrescribe y sobrecarga una función de sus padres como se muestra en el código a continuación:
test.js

// @ts-check

class Test {
  constructor() {}
  foo() {}
}

class TestChild extends Test {
  constructor() {
    super();
  }

  foo(param1, param2) {
    return param1 + param2;
  }
}

dist/test.d.ts

declare class Test {
    foo(): void;
}
declare class TestChild extends Test {
}

tsconfig.json

{
  "compilerOptions": {
    "allowJs": true,
    "declaration": true,
    "noEmit": false,
    "emitDeclarationOnly": true,
    "target": "es5",
    "outDir": "dist",
    "downlevelIteration": true
  },
  "include": [
    "./src/*.js"
  ]
}

Aparentemente, el archivo d.ts generado no tiene declaración para la función foo sobrescrita. ¿Qué puedo hacer para que TypeScript genere automáticamente la declaración para cualquier función que se herede y se sobrescriba?