export type AgentMood = 'excited' | 'happy' | 'playful' | 'curious' | 'surprised' | 'hopeful' | 'empathetic' | 'sad' | 'angry' | 'anxious' | 'calm';
/**
 * Tie-break order, most specific first. Two moods scoring equally on a compound label
 * resolve to whichever appears earlier here.
 */
export declare const MOOD_PRIORITY: AgentMood[];
/**
 * `calm` is the most recessive mood, so an unmatched label reads as "no strong signal"
 * rather than asserting a feeling the agent never expressed.
 */
export declare const DEFAULT_MOOD: AgentMood;
/**
 * Match a raw delivery label to a mood.
 *
 * Matching is keyword-based and deliberately lossy: the label space is open-ended, so an
 * unrecognized label resolves to `fallback` rather than a wrong guess.
 *
 * @param label - The raw delivery label, as the provider wrote it.
 * @param fallback - Mood to return when nothing matches. Pass `null` to handle the miss
 *   yourself. Defaults to {@link DEFAULT_MOOD}.
 *
 * @example
 * ```ts
 * matchMood('soft, with genuine care'); // 'empathetic'
 * matchMood('like a pirate'); // 'calm'
 * ```
 */
export declare function matchMood(label: string, fallback?: AgentMood | null): AgentMood | null;
//# sourceMappingURL=mood.d.ts.map