import type { AgentModelRequirements } from '../../book-2.0/agent-source/AgentModelRequirements';
import { BaseCommitmentDefinition } from '../_base/BaseCommitmentDefinition';
/**
 * SCENARIO commitment definition
 *
 * The SCENARIO commitment defines a specific situation or context in which the AI
 * assistant should operate. It helps to set the scene for the AI's responses.
 * Later scenarios are more important than earlier scenarios.
 *
 * Example usage in agent source:
 *
 * ```book
 * SCENARIO You are in a customer service call center during peak hours
 * SCENARIO The customer is frustrated and has been on hold for 20 minutes
 * SCENARIO This is the customer's third call about the same issue
 * ```
 *
 * @private [🪔] Maybe export the commitments through some package
 */
export declare class ScenarioCommitmentDefinition extends BaseCommitmentDefinition<'SCENARIO' | 'SCENARIOS'> {
    constructor(type?: 'SCENARIO' | 'SCENARIOS');
    /**
     * Short one-line description of SCENARIO.
     */
    get description(): string;
    /**
     * Icon for this commitment.
     */
    get icon(): string;
    /**
     * Markdown documentation for SCENARIO commitment.
     */
    get documentation(): string;
    applyToAgentModelRequirements(requirements: AgentModelRequirements, content: string): AgentModelRequirements;
}
