/** * Synthetic example payloads for `nourish_demo`. * * The stated purpose of the demo tool is that agents see the contract *before* * any real call. That only holds if the examples match what the tools actually * return — an example advertising a field the server never emits makes an agent * write a parser for data that never arrives, and (worse) makes it produce a * plausible-but-wrong answer instead of failing loudly. * * These shapes are not hand-maintained guesses: `scripts/demo-contract-test.mjs` * runs the REAL `searchFoods` / `estimateMeal` / `buildDailySummary` pipelines * offline (fixture mode + a throwaway local store) and fails the build when the * key sets diverge in either direction — a key the demo invents, or a contract * key the demo omits. * * If you change a tool's output shape, that gate fails and points here. * Update this file — do not weaken the gate. */ export declare function buildDemoPayload(): { ok: boolean; is_demo: boolean; sample: { nourish_search_food: { provider: string; foods: { id: string; source: string; source_id: string; source_url: string; name: string; locale: string; serving: { quantity: number; unit: string; grams: number; }; available_portions: { label: string; quantity: number; unit: string; grams: number; }[]; nutrients_per_100g: { calories_kcal: number; protein_g: number; carbohydrates_g: number; fat_g: number; fiber_g: number; sodium_mg: number; }; nutrients_per_serving: { calories_kcal: number; protein_g: number; carbohydrates_g: number; fat_g: number; fiber_g: number; sodium_mg: number; }; license: { name: string; attribution: string; share_alike: boolean; url: string; }; data_quality: { completeness: string; confidence: number; warnings: string[]; }; carbon: { kg_co2e_per_kg: number; source: string; license: string; confidence: string; }; }[]; warnings: string[]; }; nourish_estimate_meal: { text: string; locale: string; meal_type: string; items: ({ name: string; quantity: number; grams: number; nutrients: { calories_kcal: number; protein_g: number; carbohydrates_g: number; fat_g: number; fiber_g?: never; }; } | { name: string; quantity: number; grams: number; nutrients: { calories_kcal: number; protein_g: number; carbohydrates_g: number; fat_g: number; fiber_g: number; }; })[]; total_nutrients: { calories_kcal: number; protein_g: number; carbohydrates_g: number; fat_g: number; fiber_g: number; }; confidence: number; unresolved: string[]; warnings: string[]; requested_text: string; personal_memory: { expanded: boolean; matches: unknown[]; }; }; nourish_daily_summary: { date: string; entry_count: number; total_nutrients: { calories_kcal: number; protein_g: number; carbohydrates_g: number; fat_g: number; fiber_g: number; sodium_mg: number; }; by_meal: { breakfast: { calories_kcal: number; protein_g: number; carbohydrates_g: number; fat_g: number; fiber_g: number; sodium_mg: number; }; lunch: { calories_kcal: number; protein_g: number; carbohydrates_g: number; fat_g: number; fiber_g: number; sodium_mg: number; }; dinner: { calories_kcal: number; protein_g: number; carbohydrates_g: number; fat_g: number; fiber_g: number; sodium_mg: number; }; snack: { calories_kcal: number; protein_g: number; carbohydrates_g: number; fat_g: number; fiber_g: number; sodium_mg: number; }; other: {}; }; hydration: { date: string; total_ml: number; entries: { id: string; timestamp: string; date: string; amount_ml: number; source: string; }[]; goal_ml: number; progress_percent: number; }; goal_progress: { calories_kcal: { actual: number; goal: number; percent: number; }; protein_g: { actual: number; goal: number; percent: number; }; fiber_g: { actual: number; goal: number; percent: number; }; hydration_ml: { actual: number; goal: number; percent: number; }; }; confidence: number; source_coverage: string[]; privacy_mode: string; }; }; inputs: { nourish_search_food: { query: string; provider: string; limit: number; }; nourish_estimate_meal: { text: string; meal_type: string; locale: string; }; nourish_daily_summary: { date: string; }; }; notes: string[]; };