/* 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 { CompletionContentPart } from './completion-content-part';

/**
 * A message in the conversation.
 */
export interface CompletionMessage {
    /**
     * The role of the message author.
     */
    'role': CompletionMessageRoleEnum;
    /**
     * Content parts of the message.
     */
    'content': Array<CompletionContentPart>;
    /**
     * Optional name for the message author.
     */
    'name'?: string;
    /**
     * Tool call ID for tool result messages.
     */
    'tool_call_id'?: string;
}

export const CompletionMessageRoleEnum = {
    SYSTEM: 'system',
    USER: 'user',
    ASSISTANT: 'assistant',
    TOOL: 'tool',
    DEVELOPER: 'developer'
} as const;

export type CompletionMessageRoleEnum = typeof CompletionMessageRoleEnum[keyof typeof CompletionMessageRoleEnum];


