Docs

RolesForContract

type RolesForContract<TContract extends ContractWithRoles> =
  TContract extends SmartContract
    ? Role | (string & {})
    : NonNullable<Exclude<TContract, SmartContract>["roles"]>["roles"][number];