import type { IDictionary } from "jodit/esm/types/index";
import type { IAIMessage } from "./messages";
import type { IToolPermission } from "./tools";
/**
 * Conversation metadata for listing
 */
export interface IConversationMeta {
    /** Unique conversation identifier */
    readonly id: string;
    /** Conversation title */
    readonly title: string;
    /** Creation timestamp */
    readonly created: number;
    /** Last update timestamp */
    readonly updated: number;
    /** Number of messages in conversation */
    readonly messageCount: number;
}
/**
 * Conversation-specific settings
 */
export interface IConversationOptions {
    /** Selected AI model */
    readonly model?: string;
    /** Temperature setting for AI generation (0-1 or custom range) */
    readonly temperature?: number;
}
/**
 * Complete conversation data
 */
export interface IConversation {
    /** Unique conversation identifier */
    readonly id: string;
    /** Conversation title */
    readonly title?: string;
    /** Creation timestamp */
    readonly created: number;
    /** Last update timestamp */
    readonly updated: number;
    /** Array of messages */
    readonly messages: Readonly<IAIMessage[]>;
    /** Granted permissions for this conversation */
    readonly permissions: IToolPermission[];
    /** Conversation-specific settings (model, temperature, etc.) */
    readonly options?: IConversationOptions;
    /** Optional metadata */
    readonly metadata?: IDictionary;
}
