import { ExecutionContext, Provider, DynamicModule, ForwardReference, Type } from '@nestjs/common'; import { AuthUser, BatchApproval } from '../types'; import { ResourceFromContextFn } from './permission.interface'; export interface AuthZModuleOptions { model?: string; policy?: string | Promise; enablePossession?: boolean; userFromContext: (context: ExecutionContext) => AuthUser; resourceFromContext?: ResourceFromContextFn; batchApproval?: BatchApproval; enforcerProvider?: Provider; imports?: Array | DynamicModule | Promise | ForwardReference>; }