export interface BriefingConfig { version: 1; license?: { key: string; activatedAt: string; fingerprint: string; instanceId?: string; }; weather: { enabled: boolean; location: string; units: "metric" | "imperial"; provider: "wttr" | "open-meteo"; }; calendar: { enabled: boolean; lookaheadDays: number; calendars?: string[]; includeAllDay: boolean; }; news: { enabled: boolean; feeds: Array<{ name: string; url: string; maxItems: number; }>; }; reminders: { enabled: boolean; lists?: string[]; includeCompleted: boolean; }; format: { template: "default" | "compact" | "json"; locale: string; timezone: string; }; } /** * Returns the default config file path: * ~/.config/morning-briefing/config.json */ export declare function getConfigPath(): string; /** * Returns a BriefingConfig populated with sensible defaults. */ export declare function getDefaultConfig(): BriefingConfig; /** * Load config from disk, deep-merging with defaults so that any missing keys * are filled in. If the file does not exist, returns the default config. */ export declare function loadConfig(customPath?: string): Promise; /** * Persist a BriefingConfig to disk, creating parent directories when needed. */ export declare function saveConfig(config: BriefingConfig, customPath?: string): Promise; /** * Walk the user through an interactive setup, save the result, and return it. */ export declare function initConfig(): Promise; //# sourceMappingURL=config.d.ts.map