UNPKG

@elsikora/nestjs-crud-automator

Version:

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

21 lines (20 loc) 1.4 kB
import { EApiControllerGetListQueryPaginationMode, EApiRouteType } from '../../../enum/decorator/api'; 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'; export declare class ApiAuthorizationSimulator { private readonly runtime; constructor(runtime: ApiAuthorizationRuntime); evaluate<E extends IApiBaseEntity, M extends EApiControllerGetListQueryPaginationMode = EApiControllerGetListQueryPaginationMode.PAGE>(options: { action: string; authorization: IApiControllerAuthorizationProperties<E>; entity: new () => E; principal: IApiAuthorizationPrincipal; requestMetadata?: IApiAuthorizationRequestMetadata<E, M>; resource?: E; routeAuthorization?: IApiControllerRouteAuthorizationProperties; routeType?: EApiRouteType; }): Promise<IApiAuthorizationDecision<E, TApiAuthorizationRuleTransformPayload<E>>>; }