Siftline
API reference@siftline/coreFunctions

routeDecision

function routeDecision<Q>(decision, rules): Decision<Q>;

NoInfer keeps Q coming from the Decision alone, so an unannotated Rule literal is checked against it instead of widening it. Inside a generic body TS cannot see that Rule<Q> narrows Rule, so the public signature is an overload and the implementation is erased. Rules typed against Action ids, Rule<Q, A>, fit as they are: action only narrows.

Type Parameters

Type Parameter
Q extends Questions

Parameters

ParameterType
decisionDecision<Q>
rulesNoInfer<Rule<Q, string>>[]

Returns

Decision<Q>

On this page