UNPKG

@elsikora/nestjs-crud-automator

Version:

A library for automating the creation of CRUD operations in NestJS.

23 lines (22 loc) 1.1 kB
import { EApiAuthorizationMode, EApiPolicyEffect } from '../../../../../enum/class/authorization'; import { IApiBaseEntity } from '../../../../api-base-entity.interface'; import { IApiAuthorizationDecisionTrace } from './trace.interface'; import { IApiAuthorizationPrincipal } from '../principal/interface'; import { IApiAuthorizationRule } from '../rule/interface'; import { IApiAuthorizationScope } from '../scope.interface'; import { TApiAuthorizationRuleResultTransform } from '../../../../../type/class/api/authorization/rule/result-transform.type'; export interface IApiAuthorizationDecision<E extends IApiBaseEntity, R> { action: string; appliedRules: Array<IApiAuthorizationRule<E, R>>; effect: EApiPolicyEffect; mode: EApiAuthorizationMode; permissions: ReadonlyArray<string>; policyId: string; policyIds: Array<string>; principal: IApiAuthorizationPrincipal; resource?: E; resourceType: string; scope?: IApiAuthorizationScope<E>; trace: IApiAuthorizationDecisionTrace; transforms: Array<TApiAuthorizationRuleResultTransform<E, R>>; }