import { InjectionToken, ExecutionContext } from '@nestjs/common'; interface RbacResourceRef { type: string; id: string; } /** Injectable resource resolver used by the HTTP-only `RbacGuard` pipeline in 0.2.x. */ interface RbacResourceResolver { resolve(context: ExecutionContext): Promise | RbacResourceRef | undefined; } type RbacResourceResolverToken = InjectionToken; interface RbacResourceResolverTokenRef { resolverToken: RbacResourceResolverToken; } type RbacSubjectType = 'user' | 'api_key' | 'service_account' | (string & {}); interface RbacSubject { type: RbacSubjectType; id: string; tenantId?: string | null; displayName?: string; attributes?: Record; } export type { RbacResourceRef as R, RbacSubject as a, RbacResourceResolver as b, RbacResourceResolverToken as c, RbacResourceResolverTokenRef as d, RbacSubjectType as e };