Есть ли способ передать внешний тип Key
во внутренний Key
и аргумент внутренней функции?
Мне нужно, чтобы все эти типы были одинаковыми.
function getAudienceHelper<Key>(defintions: { [Key]: string }) {
return function<Key>(
prioritisedAudiences: Key[],
...
) {
...
}
}
Так что, когда я вызываю getAudienceHelper
, я передаю строковое перечисление типа AudienceKey
, и оно перетекает прямо в другие функции в моем коде
type AudienceDefs = {
AUDIENCE_1: string,
AUDIENCE_2: string
}
const AUDIENCE_DEFS: AudienceDefs = {
AUDIENCE_1: 'audience_1'
AUDIENCE_2: 'audience_2'
}
type AudienceKey = $Keys<typeof Audience>;
getAudienceHelper<AudienceKey>(AUDIENCE_DEFS)
Я пытаясь определить типы и задаваясь вопросом, не перебрал ли я свои функции. Насколько строгим это должно быть? По сути, я хочу убедиться, что все, что я добавляю - AudienceKey, - это тот же тип, который я получаю от моего getAudienceHelper
. Из кода попытки потока getAudienceHelper
должен выполнить две другие функции внутри, чтобы вернуть значение того же типа.