// This file was auto-generated by Fern from our API Definition.

import type * as Vapi from "../index.js";

export interface EvaluationPlanItem {
    /**
     * This is the ID of an existing structured output to use for evaluation.
     * Mutually exclusive with structuredOutput.
     */
    structuredOutputId?: string | undefined;
    /**
     * This is an inline structured output definition for evaluation.
     * Mutually exclusive with structuredOutputId.
     * Only primitive schema types (string, number, integer, boolean) are allowed.
     */
    structuredOutput?: Vapi.CreateStructuredOutputDto | undefined;
    /**
     * This is the comparison operator to use when evaluating the extracted value against the expected value.
     * Available operators depend on the structured output's schema type:
     * - boolean: '=', '!='
     * - string: '=', '!='
     * - number/integer: '=', '!=', '>', '<', '>=', '<='
     */
    comparator: Vapi.EvaluationPlanItemComparator;
    /**
     * This is the expected value to compare against the extracted structured output result.
     * Type should match the structured output's schema type.
     */
    value: Vapi.EvaluationPlanItemValue;
    /**
     * This is whether this evaluation must pass for the simulation to pass.
     * Defaults to true. If false, the result is informational only.
     */
    required?: boolean | undefined;
}
