UNPKG

@elsikora/nestjs-crud-automator

Version:

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

15 lines (14 loc) 1.16 kB
import { IApiBaseEntity } from '../../../../api-base-entity.interface'; import { IApiAuthorizationPolicyBuildOptions } from './build-options.interface'; import { IApiAuthorizationPolicyCacheOptions } from './cache-options.interface'; import { IApiAuthorizationPolicy } from './interface'; import { IApiAuthorizationPolicySubscriberRegistration } from './subscriber/registration.interface'; import { TApiAuthorizationPolicyHookResult } from '../../../../../type/class/api/authorization/policy/hook'; export interface IApiAuthorizationPolicyRegistry { buildAggregatedPolicy<E extends IApiBaseEntity, TAction extends string>(entity: new () => E, action: TAction, options?: IApiAuthorizationPolicyBuildOptions<E>): Promise<IApiAuthorizationPolicy<E, TApiAuthorizationPolicyHookResult<TAction, E>> | undefined>; clear(): void; configureCache(options?: IApiAuthorizationPolicyCacheOptions): void; hasSubscriberForEntity(entity: new () => IApiBaseEntity): boolean; invalidateCache(entity?: new () => IApiBaseEntity): void; registerSubscriber<E extends IApiBaseEntity>(registration: IApiAuthorizationPolicySubscriberRegistration<E>): void; }