@punks/backend-entity-manager 0.0.26 → 0.0.28

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -3,6 +3,7 @@ export interface IAuthorizationResult {
3
3
  isAuthorized: boolean;
4
4
  }
5
5
  export interface IEntityAuthorizationMiddleware<TEntity, TAuthenticationContext extends IAuthenticationContext<TUserContext>, TUserContext> {
6
+ canSearch(context: TAuthenticationContext): Promise<IAuthorizationResult>;
6
7
  canRead(entity: Partial<TEntity>, context: TAuthenticationContext): Promise<IAuthorizationResult>;
7
8
  canCreate(entity: Partial<TEntity>, context: TAuthenticationContext): Promise<IAuthorizationResult>;
8
9
  canUpdate(entity: Partial<TEntity>, context: TAuthenticationContext): Promise<IAuthorizationResult>;
@@ -5,13 +5,17 @@ export declare enum EntityOperationType {
5
5
  Create = 0,
6
6
  Update = 1,
7
7
  Delete = 2,
8
- Read = 3
8
+ Read = 3,
9
+ Search = 4
9
10
  }
10
- export declare class EntityOperationUnauthorizedException<TEntity> extends EntityManagerException {
11
- private readonly entity;
11
+ export declare abstract class EntityManagerUnauthorizedException extends EntityManagerException {
12
+ constructor(message: string);
13
+ }
14
+ export declare class EntityOperationUnauthorizedException<TEntity> extends EntityManagerUnauthorizedException {
12
15
  private readonly operation;
13
- constructor(operationType: EntityOperationType, entity: Partial<TEntity>, entityName: string);
14
- get getEntity(): Partial<TEntity>;
16
+ private readonly entity?;
17
+ constructor(operationType: EntityOperationType, entityName: string, entity?: Partial<TEntity>);
18
+ get getEntity(): Partial<TEntity> | undefined;
15
19
  get getOperation(): EntityOperationType;
16
20
  }
17
21
  export declare class EntityNotFoundException<TEntityId> extends EntityManagerException {
@@ -3,6 +3,7 @@ import { NestEntityAuthorizationMiddleware } from "../../../../authentication";
3
3
  import { AppAuthContext, AppUserContext } from "../../authentication";
4
4
  import { FooEntity } from "./entity";
5
5
  export declare class FooAuthMiddleware extends NestEntityAuthorizationMiddleware<FooEntity, AppAuthContext, AppUserContext> {
6
+ canSearch(context: AppAuthContext): Promise<IAuthorizationResult>;
6
7
  canRead(entity: Partial<FooEntity>, context: AppAuthContext): Promise<IAuthorizationResult>;
7
8
  canCreate(entity: Partial<FooEntity>, context: AppAuthContext): Promise<IAuthorizationResult>;
8
9
  canUpdate(entity: Partial<FooEntity>, context: AppAuthContext): Promise<IAuthorizationResult>;
@@ -1,5 +1,6 @@
1
1
  import { IAuthenticationContext, IAuthorizationResult, IEntityAuthorizationMiddleware } from "../../../abstractions";
2
2
  export declare abstract class NestEntityAuthorizationMiddleware<TEntity, TAuthenticationContext extends IAuthenticationContext<TUserContext>, TUserContext> implements IEntityAuthorizationMiddleware<TEntity, TAuthenticationContext, TUserContext> {
3
+ abstract canSearch(context: TAuthenticationContext): Promise<IAuthorizationResult>;
3
4
  abstract canRead(entity: Partial<TEntity>, context: TAuthenticationContext): Promise<IAuthorizationResult>;
4
5
  abstract canCreate(entity: Partial<TEntity>, context: TAuthenticationContext): Promise<IAuthorizationResult>;
5
6
  abstract canUpdate(entity: Partial<TEntity>, context: TAuthenticationContext): Promise<IAuthorizationResult>;
@@ -9,4 +9,5 @@ export declare class EntitiesSearchQuery<TEntity, TEntityId, TEntitySearchParame
9
9
  execute(request: TEntitySearchParameters): Promise<IEntitiesSearchResults<TEntitySearchParameters, TEntity, TSorting, TCursor, TFacets>>;
10
10
  private getContext;
11
11
  private filterAllowedEntities;
12
+ private authorizeSearch;
12
13
  }