Type alias ExecuteInvocation<C, T, Ability>

ExecuteInvocation<C, T, Ability>: Ability extends `${infer Base}/${infer Path}`
    ? ExecuteInvocation<C, T[Base], Path>
    : T[Ability] extends ((input) => infer Out)
        ? Out
        : never

Type Parameters

  • C extends Capability

  • T extends Record<string, any>

  • Ability extends string = C["can"]

Generated using TypeDoc