UNPKG

mongodb-dynamic-api

Version:

Auto generated CRUD API for MongoDB using NestJS

52 lines (51 loc) 2.63 kB
/// <reference types="mongoose/types/aggregate" /> /// <reference types="mongoose/types/callback" /> /// <reference types="mongoose/types/collection" /> /// <reference types="mongoose/types/connection" /> /// <reference types="mongoose/types/cursor" /> /// <reference types="mongoose/types/document" /> /// <reference types="mongoose/types/error" /> /// <reference types="mongoose/types/expressions" /> /// <reference types="mongoose/types/helpers" /> /// <reference types="mongoose/types/middlewares" /> /// <reference types="mongoose/types/indexes" /> /// <reference types="mongoose/types/models" /> /// <reference types="mongoose/types/mongooseoptions" /> /// <reference types="mongoose/types/pipelinestage" /> /// <reference types="mongoose/types/populate" /> /// <reference types="mongoose/types/query" /> /// <reference types="mongoose/types/schemaoptions" /> /// <reference types="mongoose/types/schematypes" /> /// <reference types="mongoose/types/session" /> /// <reference types="mongoose/types/types" /> /// <reference types="mongoose/types/utility" /> /// <reference types="mongoose/types/validation" /> /// <reference types="mongoose/types/virtuals" /> /// <reference types="mongoose/types/inferschematype" /> import { CanActivate, ExecutionContext, Type } from '@nestjs/common'; import { PipelineStage } from 'mongodb-pipeline-builder'; import { Model } from 'mongoose'; import { AbilityPredicate, RouteType } from '../interfaces'; import { BaseEntity } from '../models'; import { BaseService } from '../services'; declare abstract class BasePoliciesGuard<Entity extends BaseEntity> extends BaseService<Entity> implements CanActivate { protected readonly model: Model<Entity>; protected routeType: RouteType; protected entity: Type<Entity>; protected abilityPredicate: AbilityPredicate<Entity> | undefined; protected queryToPipeline?: (query: unknown) => PipelineStage[]; protected constructor(model: Model<Entity>); canActivate(context: ExecutionContext): Promise<boolean>; } declare abstract class BaseSocketPoliciesGuard<Entity extends BaseEntity> extends BaseService<Entity> implements CanActivate { protected readonly model: Model<Entity>; protected routeType: RouteType; protected abilityPredicate: AbilityPredicate<Entity> | undefined; protected entity: Type<Entity>; protected queryToPipeline?: (query: unknown) => PipelineStage[]; protected isPublic: boolean | undefined; private logger; protected constructor(model: Model<Entity>); canActivate(context: ExecutionContext): Promise<boolean>; } export { BasePoliciesGuard, BaseSocketPoliciesGuard };