UNPKG

@elsikora/nestjs-crud-automator

Version:

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

31 lines (30 loc) 1.56 kB
import { IApiBaseEntity } from '../../../../interface/api-base-entity.interface'; import { IApiAuthorizationDecision, IApiAuthorizationPrincipal, IApiAuthorizationRequestMetadata, IApiAuthorizationResourceDefinition, IApiPolicyDocumentRecord, IApiResolvedPolicyAttachments } from '../../../../interface/class/api/authorization'; import { TApiAuthorizationRuleTransformPayload } from '../../../../type/class/api/authorization/rule/transform-payload.type'; import { ApiAuthorizationIamQueryPlanner } from './query-planner.class'; export declare class ApiAuthorizationIamEngine { private readonly queryPlanner; constructor(queryPlanner: ApiAuthorizationIamQueryPlanner); evaluate<E extends IApiBaseEntity>(options: { action: string; attachments: IApiResolvedPolicyAttachments; documents: ReadonlyArray<IApiPolicyDocumentRecord>; policyNamespace: string; principal: IApiAuthorizationPrincipal; requestMetadata: IApiAuthorizationRequestMetadata<E>; resource?: E; resourceDefinition: IApiAuthorizationResourceDefinition<E>; }): Promise<IApiAuthorizationDecision<E, TApiAuthorizationRuleTransformPayload<E>>>; private buildDecision; private evaluateDocumentSet; private evaluateOperator; private isRecord; private isStatementMatched; private matchesWildcardPattern; private mergeScopes; private normalizeComparable; private resolveConditionValue; private resolveDocumentRecord; private resolvePathValue; private resolveResourceString; }