base-nestjs-app
Version:
Nestjs wrapper for creation of standarized apps
35 lines (34 loc) • 1.14 kB
TypeScript
import { DynamicModule, InjectionToken, NestHybridApplicationOptions } from '@nestjs/common';
import { ContextLoggingModuleInstance } from 'nestjs-context-winston';
export interface MSOptions {
hybridOptions?: NestHybridApplicationOptions;
}
export type CompressionOptions = 'none' | 'min' | 'average' | 'max';
export interface BaseNestJsServerOptions {
port?: number;
bodyLimitMb?: number;
http2?: boolean;
compression?: CompressionOptions;
maxParamLengthKb?: number;
allowGetBody?: boolean;
}
export interface HealthCheckOptions {
enabled: boolean;
healthCheckRoute?: string;
}
export interface GlobalInjections {
filters?: InjectionToken[];
guards?: InjectionToken[];
interceptors?: InjectionToken[];
}
export interface BaseNestjsOptions {
server?: BaseNestJsServerOptions;
loggingModule: ContextLoggingModuleInstance;
cors?: boolean | string[];
preImports?: DynamicModule['imports'];
imports: DynamicModule['imports'];
providers?: DynamicModule['providers'];
microservices?: MSOptions[];
healthCheck?: HealthCheckOptions;
globals?: GlobalInjections;
}