import { cleanEnv, num, str } from 'envalid'; export const config = cleanEnv(process.env, { APP_NAME: str(), FILES_TTL: num({ default: 3600, desc: 'TTL for files cache in Seconds' }), AWS_S3_ACCESS_KEY_ID: str(), AWS_S3_SECRET_ACCESS_KEY: str(), AWS_S3_BUCKET: str(), AWS_S3_SIGNATURE_VERSION: str(), AWS_S3_REGION: str(), AWS_S3_PRE_SIGNED_URL_TTL: num({ default: 10000, devDefault: 90000 }), MAX_FILE_SIZE: num({ default: 53687091200, desc: 'max. file size in bytes; default is 50MB' }), MAX_FILES: num({ default: 10000, desc: 'Maximum allowed number of files.' }), MAX_FIELD_SIZE: num({ default: 1000000, desc: 'Maximum allowed non-file multipart form field size in bytes; enough for your queries.', }), IMAGE_PROCESSING_SERVICE: str(), IMAGE_HANDLER_SERVICE: str(), IMAGE_WIDTH: num({ default: 800, desc: 'width in px.' }), IMAGE_HEIGHT: num({ default: 800, desc: 'height in px.' }), PREVIEW_IMAGE_WIDTH: num({ default: 400, desc: 'width in px.' }), PREVIEW_IMAGE_HEIGHT: num({ default: 400, desc: 'height in px.' }), THUMBNAIL_IMAGE_WIDTH: num({ default: 150, desc: 'width in px.' }), THUMBNAIL_IMAGE_HEIGTH: num({ default: 150, desc: 'height in px.' }), });