veza/apps/web/src/vite-env.d.ts
senke 4096949e43 feat(web): externalize feature flags via VITE_FEATURE_* env vars (P3.2)
- Parse VITE_FEATURE_* from env with fallback to current defaults
- Add all flags to .env.example and ENV_CONFIG.md
- parseFeatureEnv accepts true/1/yes for enabled

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-11 22:11:38 +01:00

27 lines
906 B
TypeScript

/// <reference types="vite/client" />
interface ImportMetaEnv {
readonly VITE_API_URL: string;
readonly VITE_WS_URL: string;
readonly VITE_STREAM_URL: string;
readonly VITE_UPLOAD_URL: string;
readonly VITE_APP_NAME: string;
readonly VITE_DEBUG: string;
readonly VITE_USE_MSW: string;
readonly VITE_STORYBOOK?: string;
readonly VITE_FCM_VAPID_KEY: string;
/** Feature flags (optional) */
readonly VITE_FEATURE_TWO_FACTOR_AUTH?: string;
readonly VITE_FEATURE_PLAYLIST_COLLABORATION?: string;
readonly VITE_FEATURE_PLAYLIST_SEARCH?: string;
readonly VITE_FEATURE_PLAYLIST_SHARE?: string;
readonly VITE_FEATURE_PLAYLIST_RECOMMENDATIONS?: string;
readonly VITE_FEATURE_HLS_STREAMING?: string;
readonly VITE_FEATURE_ROLE_MANAGEMENT?: string;
readonly VITE_FEATURE_NOTIFICATIONS?: string;
// more env variables...
}
interface ImportMeta {
readonly env: ImportMetaEnv;
}