UNPKG

@elsikora/nestjs-crud-automator

Version:

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

16 lines (15 loc) 1.46 kB
import { EApiControllerGetListQueryPaginationMode } from '../../../../../enum/decorator/api'; 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, M extends EApiControllerGetListQueryPaginationMode = EApiControllerGetListQueryPaginationMode.PAGE>(entity: new () => E, action: TAction, options?: IApiAuthorizationPolicyBuildOptions<E, M>): Promise<IApiAuthorizationPolicy<E, TApiAuthorizationPolicyHookResult<TAction, E, M>> | undefined>; clear(): void; configureCache(options?: IApiAuthorizationPolicyCacheOptions): void; hasSubscriberForEntity(entity: new () => IApiBaseEntity): boolean; invalidateCache(entity?: new () => IApiBaseEntity): void; registerSubscriber<E extends IApiBaseEntity, M extends EApiControllerGetListQueryPaginationMode = EApiControllerGetListQueryPaginationMode.PAGE>(registration: IApiAuthorizationPolicySubscriberRegistration<E, M>): void; }