Не получается просто так сделать, и из коробки он тоже не дает таких инструментов.
Тем не менее интересный вариант промежуточный получился:
import { shield } from 'graphql-shield' import { IRuleFieldMap, ShieldRule } from 'graphql-shield/dist/types' import { NexusGenObjects } from 'server/nexus/generated/nexus' type RuleTree = Record<keyof NexusGenObjects, ShieldRule | IRuleFieldMap> const ruleTree: RuleTree = { Query: { // users: rules.users, }, Mutation: {}, } export const permissions = shield(ruleTree)
В таком виде он требует описать правила для всех корневых объектов схемы. Это может пригодиться в режиме "Паранойя". Только надо доработать до дженерика, чтобы можно было и дочерние типы хотя бы для Query и Mutation затребовать.