2023-10-31 16:30:15 +03:00

28 lines
793 B
TypeScript

import { z } from 'zod';
const envSchema = z.object({
API_CACHE_TTL: z.string().transform((val) => Number.parseInt(val, 10)),
API_PORT: z.number().optional().default(3001),
API_SECRET: z.string(),
API_TOKEN_TTL: z.string().transform((val) => Number.parseInt(val, 10)),
COOKIE_TOKEN_NAME: z.string().default('token'),
LDAP_ATTRIBUTE: z.string(),
LDAP_BASE: z.string(),
LDAP_BIND_CREDENTIALS: z.string(),
LDAP_BIND_DN: z.string(),
LDAP_DOMAIN: z.string(),
LDAP_URL: z.string().url(),
MONGO_HOST: z.string(),
MONGO_PORT: z
.string()
.transform((val) => Number.parseInt(val, 10))
.default('27017'),
REDIS_HOST: z.string(),
REDIS_PORT: z
.string()
.transform((val) => Number.parseInt(val, 10))
.default('6379'),
});
export default envSchema;