import { ChatAnthropic } from '@langchain/anthropic'; import { BedrockEmbeddings, ChatBedrockConverse } from '@langchain/aws'; import { ChatCerebras } from '@langchain/cerebras'; import { ChatGoogleGenerativeAI, GoogleGenerativeAIEmbeddings } from '@langchain/google-genai'; import { BaseCheckpointSaver } from '@langchain/langgraph'; import { ChatOllama, OllamaEmbeddings } from '@langchain/ollama'; import { ChatOpenAI, OpenAIEmbeddings } from '@langchain/openai'; import { Provider } from '@loopback/core'; import { AnyObject } from '@loopback/repository'; import { IGraphTool } from './graphs/types'; import { ChatGroq } from '@langchain/groq'; import { ChatOpenRouter } from '@langchain/openrouter'; export declare enum SupportedDBs { PostgreSQL = "PostgreSQL", SQLite = "SQLite" } export type AIIntegrationConfig = { useCustomSequence?: boolean; mountCore?: boolean; mountFileUtils?: boolean; mountChatControllers?: boolean; maxTokenCount?: number; writerDS?: string; readerDS?: string; tokenCounterConfig?: { chatLimit?: number; tokenLimit?: number; bufferTokens?: number; period: number; }; }; export type FileMessageBuilder = (file: Express.Multer.File) => AnyObject; export type LLMProviderType = ChatOllama | ChatCerebras | ChatOpenAI | ChatAnthropic | ChatBedrockConverse | ChatGoogleGenerativeAI | ChatGroq | ChatOpenRouter; export type LLMProvider = LLMProviderType & { getFile?: FileMessageBuilder; }; export type EmbeddingProvider = OpenAIEmbeddings | OllamaEmbeddings | BedrockEmbeddings | GoogleGenerativeAIEmbeddings; export type CheckpointerProvider = Provider; export type ToolStore = { list: IGraphTool[]; map: Record; }; export declare enum ChannelType { Chat = "chat" } export interface ICache { set(key: string, value: T): Promise; get(key: string): Promise; } export type TokenMetadata = { [key: string]: { inputTokens: number; outputTokens: number; }; };