@elsikora/nestjs-crud-automator
Version:
A library for automating the creation of CRUD operations in NestJS.
21 lines (20 loc) • 1.26 kB
TypeScript
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>>>;
}