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

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

/**
 * @example
 *     {
 *         callIds: ["callIds"]
 *     }
 */
export interface StructuredOutputRunDto {
    /**
     * This is the preview flag for the re-run. If true, the re-run will be executed and the response will be returned immediately and the call artifact will NOT be updated.
     * If false (default), the re-run will be executed and the response will be updated in the call artifact.
     */
    previewEnabled?: boolean;
    /**
     * This is the ID of the structured output that will be run. This must be provided unless a transient structured output is provided.
     * When the re-run is executed, only the value of this structured output will be replaced with the new value, or added if not present.
     */
    structuredOutputId?: string;
    /**
     * This is the transient structured output that will be run. This must be provided if a structured output ID is not provided.
     * When the re-run is executed, the structured output value will be added to the existing artifact.
     */
    structuredOutput?: Vapi.CreateStructuredOutputDto;
    /**
     * This is the array of callIds that will be updated with the new structured output value. If preview is true, this array must be provided and contain exactly 1 callId.
     * If preview is false, up to 100 callIds may be provided.
     */
    callIds: string[];
}
