Тип функции
Функция это такое же значение, как число или объект, и у неё тоже может быть свой именованный тип. Записывается он похоже на стрелочную функцию, только вместо тела стоит тип результата:
Видеоуроки, интерактивный редактор и сохранение прогресса — бесплатно, сразу после входа.
ВойтиСоздать аккаунт — бесплатноФункция это такое же значение, как число или объект, и у неё тоже может быть свой именованный тип. Записывается он похоже на стрелочную функцию, только вместо тела стоит тип результата:
type Compare = (a: number, b: number) => number;В задании такого описания нет:
Здесь стоит обратить внимание на комментарий @ts-expect-error. Он говорит компилятору: «на следующей строке обязана быть ошибка». Если ошибки нет, компилятор ругается уже на сам комментарий («Unused '@ts-expect-error' directive»). Сейчас происходит именно это: с типом any вызов onClick(123) абсолютно легален, и директива оказывается лишней.
То есть задание проверяется с двух сторон: правильно описанный тип обязан принимать строку и обязан отвергать число.
Про типы функций: Function Type Expressions — справочник TypeScript.
Опиши Handler как тип функции-обработчика: она принимает один параметр event типа строка и ничего не возвращает. Строку с @ts-expect-error и вызов под ней менять не нужно, они должны остаться на месте.