/**
 * @module
 * This file contains the implementation of the IAgenticaCallBenchmarkScenario class.
 *
 * @author Wrtn Technologies
 */
import type { IAgenticaBenchmarkExpected } from "./IAgenticaBenchmarkExpected";
/**
 * Scenario of function calling.
 *
 * `IAgenticaCallBenchmarkScenario` is a data structure which
 * represents a function calling benchmark scenario. It contains two
 * properties; {@linkk text} and {@link operations}.
 *
 * The {@link text} means the conversation text from the user, and
 * the other {@link operations} are the expected operations that
 * should be selected by the `caller` agent through the {@link text}
 * conversation.
 *
 * @author Samchon
 */
export interface IAgenticaCallBenchmarkScenario {
    /**
     * Name of the scenario.
     *
     * It must be unique within the benchmark scenarios.
     */
    name: string;
    /**
     * The prompt text from user.
     */
    text: string;
    /**
     * Expected function calling sequence.
     *
     * Sequence of operations (API operation or class function) that
     * should be called by both `selector` and `caller` agents from
     * the user's {@link text} conversation for the LLM
     * (Large Language Model) function calling.
     */
    expected: IAgenticaBenchmarkExpected;
}
