40 lines
1.1 KiB
TypeScript
40 lines
1.1 KiB
TypeScript
import * as Joi from 'joi';
|
|
|
|
export const validationSchema = Joi.object({
|
|
APP_PORT: Joi.number().required(),
|
|
|
|
// DB Config
|
|
DB_HOST: Joi.string().required(),
|
|
DB_PORT: Joi.number().required(),
|
|
DB_USER: Joi.string().required(),
|
|
DB_PASSWORD: Joi.string().required(),
|
|
DB_NAME: Joi.string().required(),
|
|
|
|
// SMS Config
|
|
SMS_API_URL: Joi.string().required(),
|
|
SMS_API_KEY: Joi.string().required(),
|
|
SMS_PATTERN_OTP: Joi.string().required(),
|
|
|
|
NODE_ENV: Joi.string().required(),
|
|
|
|
// JWT Config
|
|
JWT_ACCESS_SECRET: Joi.string().required(),
|
|
JWT_REFRESH_SECRET: Joi.string().required(),
|
|
JWT_ACCESS_EXPIRES: Joi.string().required(),
|
|
JWT_REFRESH_EXPIRES: Joi.string().required(),
|
|
|
|
// CACHE Config
|
|
CACHE_TTL : Joi.number().required(),
|
|
|
|
// Redis Config
|
|
REDIS_URL : Joi.string().required(),
|
|
REDIS_HOST: Joi.string().required(),
|
|
REDIS_PORT: Joi.number().required(),
|
|
|
|
BUCKET_NAME: Joi.string().required(),
|
|
BUCKET_REGION: Joi.string().required(),
|
|
BUCKET_URL: Joi.string().required(),
|
|
BUCKET_ACCESS_KEY: Joi.string().required(),
|
|
BUCKET_SECRET_KEY: Joi.string().required(),
|
|
BUCKET_UPLOAD_URL: Joi.string().required()
|
|
}); |