UNPKG

json-api-nestjs

Version:
18 lines (17 loc) 1.04 kB
import { NestInterceptor, Type } from '@nestjs/common'; import { Module } from '@nestjs/core/injector/module'; import { Controller } from '@nestjs/common/interfaces'; import { EntityTarget, ObjectLiteral } from '../../../types'; import { JsonBaseController } from '../../mixin/controller/json-base.controller'; export type MapControllerInterceptor = Map<Controller, Map<(...arg: any) => any, NestInterceptor[]>>; export type MapController<E extends ObjectLiteral = ObjectLiteral> = Map<EntityTarget<E>, Type<any>>; export type MapEntity<E extends ObjectLiteral = ObjectLiteral> = Map<string, EntityTarget<E>>; export type OperationMethode<E extends ObjectLiteral> = keyof Omit<{ [k in keyof JsonBaseController<E>]: string; }, 'getAll' | 'getOne' | 'getRelationship'>; export type ParamsForExecute<E extends ObjectLiteral = ObjectLiteral, O extends OperationMethode<E> = OperationMethode<E>> = { methodName: O; controller: Type<JsonBaseController<E>>; params: Parameters<JsonBaseController<E>[O]>; module: Module; };