Closed1
zod で process.env を型安全に扱いたい
zod で process.env
用の object schema を作成し、parse すればOK。
型に関しては、 ProcessEnv
を process.env
用 schema の型を extends させてあげれば型補完が効く。
import { z } from 'zod';
const envVariables = z.object({
APP_ENV: z.enum(['dev', 'staging', 'prod']),
});
envVariables.parse(process.env);
declare global {
namespace NodeJS {
interface ProcessEnv extends z.infer<typeof envVariables> {}
}
}
こちらの tweet 参照↓
このスクラップは2023/01/22にクローズされました