UNPKG

@elsikora/nestjs-crud-automator

Version:

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

21 lines (20 loc) 1.26 kB
import { IApiBaseEntity } from '../../../interface/api-base-entity.interface'; import { IApiAuthorizationDecision, IApiAuthorizationPrincipal, IApiAuthorizationRequestMetadata } from '../../../interface/class/api/authorization'; import { IApiControllerAuthorizationProperties, IApiControllerRouteAuthorizationProperties } from '../../../interface/decorator/api/controller/properties'; import { TApiAuthorizationRuleTransformPayload } from '../../../type/class/api/authorization/rule/transform-payload.type'; import { ApiAuthorizationRuntime } from './runtime.class'; import { EApiRouteType } from '../../../enum/decorator/api'; export declare class ApiAuthorizationSimulator { private readonly runtime; constructor(runtime: ApiAuthorizationRuntime); evaluate<E extends IApiBaseEntity>(options: { action: string; authorization: IApiControllerAuthorizationProperties<E>; entity: new () => E; principal: IApiAuthorizationPrincipal; requestMetadata?: IApiAuthorizationRequestMetadata<E>; resource?: E; routeAuthorization?: IApiControllerRouteAuthorizationProperties; routeType?: EApiRouteType; }): Promise<IApiAuthorizationDecision<E, TApiAuthorizationRuleTransformPayload<E>>>; }