File size: 863 Bytes
5a0b87c | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 | export type AgentProvider = "google" | "anthropic" | "openai" | "xai" | "deepseek" | "mistral" | "ollama";
export type AgentMode = "byok" | "env";
export interface AgentModel {
id: string; // e.g., "gemini-3-pro"
name: string;
provider: AgentProvider;
contextWindow: number;
supportsVision: boolean;
supportsTools: boolean;
costInputPerM: number;
costOutputPerM: number;
}
export interface ChatMessage {
id: string;
role: "user" | "assistant" | "system" | "tool";
content: string;
timestamp: string;
toolCalls?: unknown[];
tokenUsage?: {
input: number;
output: number;
};
}
export interface AgentSession {
id: string;
title: string;
modelId: string;
mode: AgentMode;
messages: ChatMessage[];
totalCost: number;
createdAt: string;
updatedAt: string;
}
|