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

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

export interface StructuredOutputEvaluationResult {
    /**
     * This is the ID of the structured output that was evaluated.
     * Will be 'inline' for inline structured output definitions.
     */
    structuredOutputId: string;
    /** This is the name of the structured output. */
    name: string;
    /** This is the value extracted from the call by the structured output. */
    extractedValue: Vapi.StructuredOutputEvaluationResultExtractedValue | null;
    /** This is the expected value that was defined in the evaluation plan. */
    expectedValue: Vapi.StructuredOutputEvaluationResultExpectedValue;
    /** This is the comparison operator used for evaluation. */
    comparator: Vapi.StructuredOutputEvaluationResultComparator;
    /** This indicates whether the evaluation passed (extracted value matched expected value using comparator). */
    passed: boolean;
    /** This indicates whether this evaluation was required for the simulation to pass. */
    required: boolean;
    /** This contains any error that occurred during extraction. */
    error?: string | undefined;
    /** This indicates whether this evaluation was skipped (e.g., multimodal in chat mode). */
    isSkipped?: boolean | undefined;
    /** This contains the reason for skipping the evaluation. */
    skipReason?: string | undefined;
}
