export type Provider = 'openai' | 'anthropic';
export type Mode = 'test' | 'live';
export type Role = 'system' | 'user' | 'assistant';
export type TextPart = {
    type: 'text';
    text: string;
};
export type PointerPart = {
    type: 'pointer';
    blob_id: string;
};
export type MessagePart = TextPart | PointerPart;
export type Message = {
    role: Role;
    content: string | MessagePart[];
};
export interface ChatRequest {
    provider: Provider;
    model: string;
    messages: Message[];
}
export interface SkimlyMeta {
    provider: Provider;
    mode: Mode;
    tokens_saved?: number;
    [k: string]: unknown;
}
export interface ChatResponse {
    id?: string;
    choices?: unknown;
    skimly?: SkimlyMeta;
    [k: string]: unknown;
}
export interface BlobCreateRequest {
    content: string;
    mime_type?: string;
}
export interface BlobCreateResponse {
    blob_id: string;
}
