@digoai/piatti-common
Version:
Librería común para proyectos NestJS con módulos reutilizables y servicios para facilitar el desarrollo de aplicaciones
31 lines (30 loc) • 1.21 kB
TypeScript
import { DynamicModule } from '@nestjs/common';
import { NatsOptions, RedisOptions, Transport } from '@nestjs/microservices';
export type NatsTransportOptions = NatsOptions['options'];
export type RedisTransportOptions = RedisOptions['options'];
export interface BaseTransportConfig {
name?: string;
transport: Transport;
}
export interface NatsTransportConfig extends BaseTransportConfig {
transport: Transport.NATS;
options: NatsTransportOptions;
}
export interface RedisTransportConfig extends BaseTransportConfig {
transport: Transport.REDIS;
options: RedisTransportOptions;
}
export type TransportConfigOptions = NatsTransportConfig | RedisTransportConfig;
export interface TransportModuleOptions {
clients: TransportConfigOptions[];
isGlobal?: boolean;
}
export declare class TransportClientModule {
static register(options: TransportModuleOptions): DynamicModule;
static registerAsync(options: {
useFactory: (...args: any[]) => Promise<TransportModuleOptions> | TransportModuleOptions;
inject?: any[];
isGlobal?: boolean;
}): DynamicModule;
}
export declare const createDefaultTransportModule: (servers: string[]) => DynamicModule;