@unified-llm/core
Version:
Unified LLM interface (in-memory).
941 lines (940 loc) • 32.3 kB
TypeScript
export declare const threads: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
name: "threads";
schema: undefined;
columns: {
id: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "id";
tableName: "threads";
dataType: "string";
columnType: "SQLiteText";
data: string;
driverParam: string;
notNull: true;
hasDefault: false;
isPrimaryKey: true;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {
length: number | undefined;
}>;
title: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "title";
tableName: "threads";
dataType: "string";
columnType: "SQLiteText";
data: string;
driverParam: string;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {
length: number | undefined;
}>;
description: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "description";
tableName: "threads";
dataType: "string";
columnType: "SQLiteText";
data: string;
driverParam: string;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {
length: number | undefined;
}>;
createdAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "created_at";
tableName: "threads";
dataType: "date";
columnType: "SQLiteTimestamp";
data: Date;
driverParam: number;
notNull: true;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {}>;
updatedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "updated_at";
tableName: "threads";
dataType: "date";
columnType: "SQLiteTimestamp";
data: Date;
driverParam: number;
notNull: true;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {}>;
createdBy: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "created_by";
tableName: "threads";
dataType: "string";
columnType: "SQLiteText";
data: string;
driverParam: string;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {
length: number | undefined;
}>;
isActive: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "is_active";
tableName: "threads";
dataType: "boolean";
columnType: "SQLiteBoolean";
data: boolean;
driverParam: number;
notNull: false;
hasDefault: true;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {}>;
tags: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "tags";
tableName: "threads";
dataType: "json";
columnType: "SQLiteTextJson";
data: unknown;
driverParam: string;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {}>;
metadata: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "metadata";
tableName: "threads";
dataType: "json";
columnType: "SQLiteTextJson";
data: unknown;
driverParam: string;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {}>;
};
dialect: "sqlite";
}>;
export declare const threadParticipants: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
name: "thread_participants";
schema: undefined;
columns: {
id: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "id";
tableName: "thread_participants";
dataType: "string";
columnType: "SQLiteText";
data: string;
driverParam: string;
notNull: true;
hasDefault: false;
isPrimaryKey: true;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {
length: number | undefined;
}>;
threadId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "thread_id";
tableName: "thread_participants";
dataType: "string";
columnType: "SQLiteText";
data: string;
driverParam: string;
notNull: true;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {
length: number | undefined;
}>;
clientId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "client_id";
tableName: "thread_participants";
dataType: "string";
columnType: "SQLiteText";
data: string;
driverParam: string;
notNull: true;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {
length: number | undefined;
}>;
joinedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "joined_at";
tableName: "thread_participants";
dataType: "date";
columnType: "SQLiteTimestamp";
data: Date;
driverParam: number;
notNull: true;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {}>;
leftAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "left_at";
tableName: "thread_participants";
dataType: "date";
columnType: "SQLiteTimestamp";
data: Date;
driverParam: number;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {}>;
role: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "role";
tableName: "thread_participants";
dataType: "string";
columnType: "SQLiteText";
data: string;
driverParam: string;
notNull: false;
hasDefault: true;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {
length: number | undefined;
}>;
nickname: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "nickname";
tableName: "thread_participants";
dataType: "string";
columnType: "SQLiteText";
data: string;
driverParam: string;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {
length: number | undefined;
}>;
metadata: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "metadata";
tableName: "thread_participants";
dataType: "json";
columnType: "SQLiteTextJson";
data: unknown;
driverParam: string;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {}>;
};
dialect: "sqlite";
}>;
export declare const llmClients: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
name: "llm_clients";
schema: undefined;
columns: {
id: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "id";
tableName: "llm_clients";
dataType: "string";
columnType: "SQLiteText";
data: string;
driverParam: string;
notNull: true;
hasDefault: false;
isPrimaryKey: true;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {
length: number | undefined;
}>;
name: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "name";
tableName: "llm_clients";
dataType: "string";
columnType: "SQLiteText";
data: string;
driverParam: string;
notNull: true;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {
length: number | undefined;
}>;
description: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "description";
tableName: "llm_clients";
dataType: "string";
columnType: "SQLiteText";
data: string;
driverParam: string;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {
length: number | undefined;
}>;
provider: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "provider";
tableName: "llm_clients";
dataType: "string";
columnType: "SQLiteText";
data: string;
driverParam: string;
notNull: true;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {
length: number | undefined;
}>;
model: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "model";
tableName: "llm_clients";
dataType: "string";
columnType: "SQLiteText";
data: string;
driverParam: string;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {
length: number | undefined;
}>;
systemPrompt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "system_prompt";
tableName: "llm_clients";
dataType: "string";
columnType: "SQLiteText";
data: string;
driverParam: string;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {
length: number | undefined;
}>;
instructions: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "instructions";
tableName: "llm_clients";
dataType: "string";
columnType: "SQLiteText";
data: string;
driverParam: string;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {
length: number | undefined;
}>;
apiKey: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "api_key";
tableName: "llm_clients";
dataType: "string";
columnType: "SQLiteText";
data: string;
driverParam: string;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {
length: number | undefined;
}>;
generationConfig: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "generation_config";
tableName: "llm_clients";
dataType: "json";
columnType: "SQLiteTextJson";
data: unknown;
driverParam: string;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {}>;
tools: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "tools";
tableName: "llm_clients";
dataType: "json";
columnType: "SQLiteTextJson";
data: unknown;
driverParam: string;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {}>;
argumentMap: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "argument_map";
tableName: "llm_clients";
dataType: "json";
columnType: "SQLiteTextJson";
data: unknown;
driverParam: string;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {}>;
tags: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "tags";
tableName: "llm_clients";
dataType: "json";
columnType: "SQLiteTextJson";
data: unknown;
driverParam: string;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {}>;
isActive: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "is_active";
tableName: "llm_clients";
dataType: "boolean";
columnType: "SQLiteBoolean";
data: boolean;
driverParam: number;
notNull: false;
hasDefault: true;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {}>;
createdAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "created_at";
tableName: "llm_clients";
dataType: "date";
columnType: "SQLiteTimestamp";
data: Date;
driverParam: number;
notNull: true;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {}>;
updatedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "updated_at";
tableName: "llm_clients";
dataType: "date";
columnType: "SQLiteTimestamp";
data: Date;
driverParam: number;
notNull: true;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {}>;
metadata: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "metadata";
tableName: "llm_clients";
dataType: "json";
columnType: "SQLiteTextJson";
data: unknown;
driverParam: string;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {}>;
};
dialect: "sqlite";
}>;
export declare const messages: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
name: "messages";
schema: undefined;
columns: {
id: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "id";
tableName: "messages";
dataType: "string";
columnType: "SQLiteText";
data: string;
driverParam: string;
notNull: true;
hasDefault: false;
isPrimaryKey: true;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {
length: number | undefined;
}>;
threadId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "thread_id";
tableName: "messages";
dataType: "string";
columnType: "SQLiteText";
data: string;
driverParam: string;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {
length: number | undefined;
}>;
clientId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "client_id";
tableName: "messages";
dataType: "string";
columnType: "SQLiteText";
data: string;
driverParam: string;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {
length: number | undefined;
}>;
role: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "role";
tableName: "messages";
dataType: "string";
columnType: "SQLiteText";
data: string;
driverParam: string;
notNull: true;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {
length: number | undefined;
}>;
content: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "content";
tableName: "messages";
dataType: "json";
columnType: "SQLiteTextJson";
data: unknown;
driverParam: string;
notNull: true;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {}>;
toolCalls: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "tool_calls";
tableName: "messages";
dataType: "json";
columnType: "SQLiteTextJson";
data: unknown;
driverParam: string;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {}>;
toolResults: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "tool_results";
tableName: "messages";
dataType: "json";
columnType: "SQLiteTextJson";
data: unknown;
driverParam: string;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {}>;
timestamp: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "timestamp";
tableName: "messages";
dataType: "date";
columnType: "SQLiteTimestamp";
data: Date;
driverParam: number;
notNull: true;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {}>;
sequence: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "sequence";
tableName: "messages";
dataType: "number";
columnType: "SQLiteInteger";
data: number;
driverParam: number;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {}>;
parentMessageId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "parent_message_id";
tableName: "messages";
dataType: "string";
columnType: "SQLiteText";
data: string;
driverParam: string;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: [string, ...string[]];
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {
length: number | undefined;
}>;
isEdited: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "is_edited";
tableName: "messages";
dataType: "boolean";
columnType: "SQLiteBoolean";
data: boolean;
driverParam: number;
notNull: false;
hasDefault: true;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {}>;
editedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "edited_at";
tableName: "messages";
dataType: "date";
columnType: "SQLiteTimestamp";
data: Date;
driverParam: number;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {}>;
tokens: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "tokens";
tableName: "messages";
dataType: "number";
columnType: "SQLiteInteger";
data: number;
driverParam: number;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {}>;
cost: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "cost";
tableName: "messages";
dataType: "number";
columnType: "SQLiteReal";
data: number;
driverParam: number;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {}>;
metadata: import("drizzle-orm/sqlite-core").SQLiteColumn<{
name: "metadata";
tableName: "messages";
dataType: "json";
columnType: "SQLiteTextJson";
data: unknown;
driverParam: string;
notNull: false;
hasDefault: false;
isPrimaryKey: false;
isAutoincrement: false;
hasRuntimeDefault: false;
enumValues: undefined;
baseColumn: never;
identity: undefined;
generated: undefined;
}, {}, {}>;
};
dialect: "sqlite";
}>;
export declare const threadsRelations: import("drizzle-orm").Relations<"threads", {
messages: import("drizzle-orm").Many<"messages">;
participants: import("drizzle-orm").Many<"thread_participants">;
}>;
export declare const threadParticipantsRelations: import("drizzle-orm").Relations<"thread_participants", {
thread: import("drizzle-orm").One<"threads", true>;
client: import("drizzle-orm").One<"llm_clients", true>;
}>;
export declare const llmClientsRelations: import("drizzle-orm").Relations<"llm_clients", {
messages: import("drizzle-orm").Many<"messages">;
threadParticipants: import("drizzle-orm").Many<"thread_participants">;
}>;
export declare const messagesRelations: import("drizzle-orm").Relations<"messages", {
thread: import("drizzle-orm").One<"threads", false>;
client: import("drizzle-orm").One<"llm_clients", false>;
parentMessage: import("drizzle-orm").One<"messages", false>;
replies: import("drizzle-orm").Many<"messages">;
}>;
export type Thread = typeof threads.$inferSelect;
export type NewThread = typeof threads.$inferInsert;
export type ThreadParticipant = typeof threadParticipants.$inferSelect;
export type NewThreadParticipant = typeof threadParticipants.$inferInsert;
export type StoredLLMClient = typeof llmClients.$inferSelect;
export type NewStoredLLMClient = typeof llmClients.$inferInsert;
export type Message = typeof messages.$inferSelect;
export type NewMessage = typeof messages.$inferInsert;
export interface LLMClientConfig {
id?: string;
name: string;
description?: string;
provider: 'openai' | 'anthropic' | 'google' | 'deepseek' | 'azure';
model?: string;
systemPrompt?: string;
instructions?: string;
apiKey?: string;
generationConfig?: {
temperature?: number;
max_tokens?: number;
top_p?: number;
frequency_penalty?: number;
presence_penalty?: number;
stop_sequences?: string[];
response_format?: any;
};
tools?: string[];
argumentMap?: Record<string, any>;
tags?: string[];
isActive?: boolean;
createdAt?: Date;
updatedAt?: Date;
metadata?: Record<string, any>;
}