Typescript Joi验证集合?

Typescript Joi验证集合?,typescript,validation,casting,set,joi,Typescript,Validation,Casting,Set,Joi,在typescript中,我有一组允许的平台,表示为一组并集: type Platform = 'WEB' | 'APP' | 'MAIL' type AllowedPlatforms = Set<Platform> 现在,验证器应该检查它是否是一个数组,其中每个项都是三个值中的一个。根据文档,应该有一个cast函数,这样我可以在以后将其转换为一个集合,但我不知道如何使用它()。我尝试了Joi.array().cast('set'),但Typescript抱怨cast不存在 Cas

在typescript中,我有一组允许的平台,表示为一组并集:

type Platform = 'WEB' | 'APP' | 'MAIL'
type AllowedPlatforms = Set<Platform>

现在,验证器应该检查它是否是一个数组,其中每个项都是三个值中的一个。根据文档,应该有一个cast函数,这样我可以在以后将其转换为一个集合,但我不知道如何使用它()。我尝试了
Joi.array().cast('set')
,但Typescript抱怨cast不存在

Cast存在于@hapi/joi的16.1.8版本中,但是我使用的是不包含Cast的joi包。因此,它不起作用

const validPlatforms = [Joi.string().valid('WEB'), Joi.string().valid('APP'), Joi.string().valid('MAIL')]

const validatePlatform = Joi.array().items(validPlatforms)
e