import { ModuleMetadata, Type } from '@nestjs/common/interfaces'; import * as server from 'http-proxy'; export interface Service { id: string; url: string; config?: server.ServerOptions; forwardToken?: boolean; } export interface ProxyModuleOptions { config?: server.ServerOptions; services?: Service[]; allowedCookies?: string[]; } export interface ProxyModuleOptionsFactory { createModuleConfig(): Promise | ProxyModuleOptions; } export interface ProxyModuleAsyncOptions extends Pick { useExisting?: Type; useClass?: Type; useFactory?: (...args: any[]) => Promise | ProxyModuleOptions; inject?: any[]; }