import * as Joi from "joi"; export const envValidationSchema = Joi.object({ DATABASE_URL: Joi.string().required(), JWT_SECRET: Joi.string().min(32).required(), JWT_REFRESH_SECRET: Joi.string().min(32).required(), ENCRYPTION_KEY: Joi.string().length(64).required(), PLAID_CLIENT_ID: Joi.string().required(), PLAID_SECRET: Joi.string().required(), PLAID_ENV: Joi.string().valid("sandbox", "development", "production").default("sandbox"), PLAID_PRODUCTS: Joi.string().default("transactions"), PLAID_COUNTRY_CODES: Joi.string().default("US"), PLAID_REDIRECT_URI: Joi.string().uri().optional().allow(""), SUPABASE_URL: Joi.string().optional().allow(""), SUPABASE_SERVICE_KEY: Joi.string().optional().allow(""), SUPABASE_ANON_KEY: Joi.string().optional().allow(""), STRIPE_SECRET_KEY: Joi.string().optional().allow(""), STRIPE_WEBHOOK_SECRET: Joi.string().optional().allow(""), STRIPE_PRICE_PRO: Joi.string().optional().allow(""), STRIPE_PRICE_ELITE: Joi.string().optional().allow(""), SMTP_HOST: Joi.string().optional().allow(""), SMTP_PORT: Joi.number().default(587), SMTP_USER: Joi.string().optional().allow(""), SMTP_PASS: Joi.string().optional().allow(""), SMTP_FROM: Joi.string().default("noreply@ledgerone.app"), APP_URL: Joi.string().uri().default("http://localhost:3052"), PORT: Joi.number().default(3051), NODE_ENV: Joi.string().valid("development", "production", "test").default("development"), CORS_ORIGIN: Joi.string().default("http://localhost:3052"), AUTO_SYNC_ENABLED: Joi.boolean().default(true), AUTO_SYNC_INTERVAL_MINUTES: Joi.number().default(15), SENTRY_DSN: Joi.string().optional().allow(""), GOOGLE_CLIENT_ID: Joi.string().optional().allow(""), GOOGLE_CLIENT_SECRET: Joi.string().optional().allow(""), GOOGLE_REDIRECT_URI: Joi.string().uri().optional().allow(""), });