/** * Feature Flag Constants * */ /** * Feature flags for authentication providers and other features */ export declare const FEATURES: { /** * Enable Google OAuth authentication */ readonly AUTH_GOOGLE: true; /** * Enable Discord OAuth authentication (dev only) */ readonly AUTH_DISCORD: boolean; /** * Enable Facebook OAuth authentication */ readonly AUTH_FACEBOOK: false; /** * Enable GitHub OAuth authentication */ readonly AUTH_GITHUB: true; }; /** * Default backend configuration for feature flags. * Optimized for server-side usage with reasonable defaults. */ export declare const DEFAULT_BACKEND_CONFIG: { readonly provider: "database"; readonly isCacheEnabled: true; readonly cacheTtl: 300; readonly refreshInterval: 60; readonly shouldFallbackToDefaults: true; readonly isLoggingEnabled: boolean; }; /** * Default frontend configuration for feature flags. * Optimized for client-side usage with reasonable defaults. */ export declare const DEFAULT_FRONTEND_CONFIG: { readonly provider: "memory"; readonly isCacheEnabled: true; readonly cacheTtl: 300; readonly refreshInterval: 0; readonly shouldFallbackToDefaults: true; readonly isLoggingEnabled: false; }; /** * Default file check interval for file watcher debouncing (in milliseconds) * Prevents rapid reloads when files are saved multiple times quickly * @default 100 */ export declare const FILE_CHECK_INTERVAL_DEFAULT = 100; /** * Default cache TTL for feature flags (in seconds) * @default 300 (5 minutes) */ export declare const FEATURE_FLAG_CACHE_TTL_DEFAULT = 300; /** * Default cleanup interval for memory cache (in milliseconds) * @default 60000 (1 minute) */ export declare const CACHE_CLEANUP_INTERVAL_DEFAULT = 60000; /** * Default maximum cache size for memory strategy * @default 1000 */ export declare const CACHE_MAX_SIZE_DEFAULT = 1000; /** * Percentage of cache entries to evict when cache is full * @default 0.1 (10%) */ export declare const CACHE_EVICTION_PERCENTAGE = 0.1; /** * Feature flag provider types */ export declare const FEATURE_FLAG_PROVIDERS: { readonly MEMORY: "memory"; readonly FILE: "file"; readonly REDIS: "redis"; readonly API: "api"; readonly DATABASE: "database"; }; /** * Feature flag file formats */ export declare const FEATURE_FLAG_FILE_FORMATS: { readonly JSON: "json"; readonly YAML: "yaml"; }; /** * Default file paths for feature flag configuration */ export declare const FEATURE_FLAG_FILE_PATHS: { readonly DEFAULT: "src/config/feature-provider.json"; readonly JSON_EXAMPLE: "src/config/feature-provider.json.example"; readonly YAML_EXAMPLE: "src/config/feature-provider.yaml.example"; }; /** * Feature flag evaluation reasons */ export declare const FEATURE_FLAG_EVALUATION_REASONS: { readonly DEFAULT: "default"; readonly OVERRIDE: "override"; readonly RULE_MATCH: "rule_match"; readonly FLAG_DISABLED: "flag_disabled"; readonly ERROR: "error"; }; //# sourceMappingURL=features.d.ts.map