aero/src/env.ts

22 lines
587 B
TypeScript

import { z } from "zod";
const envSchema = z.object({
AUTHORIZED_USERS: z.preprocess(
(val) =>
(typeof val === "string" && val.trim() !== "") ? val.split(",") : null,
z.array(z.string()).nullable().default(null),
),
SERVICE: z.string().default("https://bsky.social"),
DB_PATH: z.string().default("sqlite.db"),
GEMINI_MODEL: z.string().default("gemini-2.5-flash"),
DID: z.string(),
HANDLE: z.string(),
BSKY_PASSWORD: z.string(),
GEMINI_API_KEY: z.string(),
});
export type Env = z.infer<typeof envSchema>;
export const env = envSchema.parse(Bun.env);