/* tslint:disable */
/* eslint-disable */
/**
 * Fabro Run API
 * HTTP API for managing Fabro workflow run executions.
 *
 * The version of the OpenAPI document: 0.1.0
 * 
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */


// May contain unused imports in some cases
// @ts-ignore
import type { CompletionMessage } from './completion-message';
// May contain unused imports in some cases
// @ts-ignore
import type { CompletionToolChoice } from './completion-tool-choice';
// May contain unused imports in some cases
// @ts-ignore
import type { CompletionToolDefinition } from './completion-tool-definition';

export interface CreateCompletionRequest {
    /**
     * The conversation messages.
     */
    'messages': Array<CompletionMessage>;
    /**
     * Model ID or alias. Server picks default if omitted.
     */
    'model'?: string;
    /**
     * System prompt (convenience; prepended as a system message).
     */
    'system'?: string;
    /**
     * Stream response via SSE.
     */
    'stream'?: boolean;
    /**
     * Tool definitions available to the model.
     */
    'tools'?: Array<CompletionToolDefinition>;
    'tool_choice'?: CompletionToolChoice;
    'schema'?: any;
    'temperature'?: number;
    'max_tokens'?: number;
    'top_p'?: number;
    /**
     * Stop sequences.
     */
    'stop_sequences'?: Array<string>;
    /**
     * Reasoning effort level.
     */
    'reasoning_effort'?: string;
    /**
     * Provider to route to.
     */
    'provider'?: string;
    'provider_options'?: any;
}

