"сопоставить" массив при наборе машинописного текста - PullRequest
0 голосов
/ 21 июня 2020

У меня здесь интерфейс параметров команды (они помещаются в массив command.params)

export interface CommandParam {
  name: string
  resolve: (input: string) => unknown
  onMissing?: () => unknown
  onFail?: () => unknown
}

Этот метод обрабатывает введенные аргументы и возвращает значения, типы которых определяются типом возвращаемого значения CommandParam.resolve

  private async resolveParams (
    command: Command,
    args: Array<string>,
  ): Promise<{[k: string]: unknown}> {

Как мне заменить возвращаемый тип unknown массивом типов? Чтобы продемонстрировать то, что я хочу, обычный сценарий для выполнения sh это будет (Не настоящий рабочий сценарий из-за ReturnType, но это демонстрирует мою точку зрения)

command.params.map((p) => ReturnType<typeof p.resolve>)

Я почти уверен, что это возможно, потому что нечто подобное делается здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...