машинопись: интерфейс generi c с набором функций generi c: типы параметров XXX и 'args' несовместимы - PullRequest
0 голосов
/ 29 апреля 2020

Я пытаюсь создать интерфейс, который перечисляет набор функций, которые должны реализовывать классы. Тем не менее, я сталкиваюсь со странной проблемой типизации Types of parameters XXX and 'args' are incompatible при реализации классов. Ниже приведен код (работает машинопись 3.8.3), здесь есть ссылка на игровую площадку

interface ICoreFunctions {
    getAll<T>(...args: T[]): any;
  }

  interface IFirst<F> {
    value:F
  }

  interface ISecond<S> {
    data:S
  }

  class ClsTest<TTest1 extends string> implements ICoreFunctions {

    public getAll(valBool:IFirst<boolean>, valString:ISecond<string>, num:number): TTest1   <-----Type 'T' is not assignable to type 'IFirst<boolean>'
    {
      const t:TTest1 = ""
      console.log(valBool, valString,num)
      return t
    }


  }

  class Cls2 implements ICoreFunctions {
      public getAll():void {    <--- no error here
          console.log("test2")
      }
  }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...