ParamsOf
type alias in meocord/interface Since 4.1.0
type ParamsOf<P extends string> = {
[
S in PatternSpecs<P> as S['optional'] extends true ? never : S['name']
]: S['value']
} & {
[
S in PatternSpecs<P> as S['optional'] extends true ? S['name'] : never
]?: S['value']
}The params a message pattern gives its handler, read from the pattern itself.
Use it to type a handler's params, or anything that receives them, from the pattern alone:
ParamsOf<'ban {target:member} {days:int?}'> is { target: GuildMember } & { days?: number }. A handler's
declared params are checked against it anyway; for what guards see, use ParamRefsOf.
See also
- MessageHandler
- MessageParamTypes