import coerceRecordTypes from '../modules/config/coerce-record-types'; import { registerAs } from '@nestjs/config'; import { z } from 'zod'; export const loggerSchema = z.object({ seqServerHost: z.string(), seqServerPort: z.number().finite().positive(), seqApiKey: z.string(), }); export type LoggerConfig = z.infer; export const loggerConfig = registerAs('logger', () => { const env = coerceRecordTypes(process.env); const config: LoggerConfig = loggerSchema.strict().parse({ seqServerHost: env['SEQ_SERVER_HOST'], seqServerPort: env['SEQ_SERVER_PORT'], seqApiKey: env['SEQ_API_KEY'], }); return config; });