import { config } from 'dotenv' config() export interface MetabaseConfig { url: string username?: string password?: string apiKey?: string sessionToken?: string } export function loadConfig(): MetabaseConfig { const url = process.env.METABASE_URL if (!url) throw new Error('METABASE_URL is required. Set it in .env or environment.') const apiKey = process.env.METABASE_API_KEY const sessionToken = process.env.METABASE_SESSION_TOKEN const username = process.env.METABASE_USERNAME const password = process.env.METABASE_PASSWORD if (!apiKey && !sessionToken && (!username || !password)) { throw new Error('Set METABASE_API_KEY, METABASE_SESSION_TOKEN, or METABASE_USERNAME+METABASE_PASSWORD.') } return { url, username, password, apiKey, sessionToken } }