multimind-sdk
Version:
This SDK gives JavaScript/TypeScript developers full access to advanced AI features like agent orchestration, RAG, and fine-tuning — without needing to manage backend code.
125 lines • 5.04 kB
TypeScript
export interface ContextTransferConfig {
maxContextLength?: number;
defaultSummaryLength?: number;
includeMetadata?: boolean;
preserveFormatting?: boolean;
smartTruncation?: boolean;
contextCompression?: boolean;
}
export interface TransferOptions {
lastN?: number;
includeSummary?: boolean;
summaryType?: 'concise' | 'detailed' | 'structured';
smartExtraction?: boolean;
outputFormat?: 'txt' | 'json' | 'markdown';
includeMetadata?: boolean;
includeCodeContext?: boolean;
includeReasoning?: boolean;
includeSafety?: boolean;
includeCreativity?: boolean;
includeExamples?: boolean;
includeStepByStep?: boolean;
includeMultimodal?: boolean;
includeWebSearch?: boolean;
}
export interface ModelCapabilities {
name: string;
supportedFormats: string[];
maxContextLength: number;
supportsCode: boolean;
supportsImages: boolean;
supportsTools: boolean;
}
export interface TransferResult {
success: boolean;
formattedPrompt?: string;
metadata?: {
sourceModel: string;
targetModel: string;
summaryType: string;
smartExtraction: boolean;
messagesProcessed: number;
messagesExtracted: number;
promptLength: number;
createdAt: string;
outputFormat: string;
modelCapabilities?: {
source: ModelCapabilities;
target: ModelCapabilities;
};
transferIndex?: number;
};
error?: string;
errorType?: string;
}
export interface ConversationMessage {
role: 'user' | 'assistant' | 'system';
content: string;
}
export interface ValidationResult {
success: boolean;
valid: boolean;
analysis?: {
totalMessages: number;
userMessages: number;
assistantMessages: number;
systemMessages: number;
unknownMessages: number;
averageMessageLength: number;
hasSystemContext: boolean;
};
recommendations?: string[];
error?: string;
errorType?: string;
}
export declare class ContextTransferManager {
private supportedModels;
private config;
constructor(config?: ContextTransferConfig);
extractContext(messages: ConversationMessage[], lastN?: number, smartExtraction?: boolean): Promise<ConversationMessage[]>;
private smartExtractContext;
private isImportantContext;
summarizeContext(messages: ConversationMessage[], summaryType?: string): Promise<string>;
private createConciseSummary;
private createDetailedSummary;
private createStructuredSummary;
loadConversationFromFile(filePath: string, formatType?: string): Promise<ConversationMessage[]>;
private detectFileFormat;
private loadJsonConversation;
private loadTextConversation;
private loadMarkdownConversation;
saveFormattedPrompt(content: string, outputFile: string, formatType?: string): Promise<void>;
private saveTextPrompt;
private saveJsonPrompt;
private saveMarkdownPrompt;
transferContext(fromModel: string, toModel: string, inputFile: string, outputFile: string, lastN?: number, includeSummary?: boolean, summaryType?: string, smartExtraction?: boolean, outputFormat?: string, options?: Record<string, any>): Promise<string>;
formatForTargetModel(targetModel: string, summary: string, sourceModel: string, options?: Record<string, any>): Promise<string>;
private getAdapter;
private formatGeneric;
getSupportedModels(): string[];
getModelInfo(modelName: string): Promise<ModelCapabilities>;
listAllModels(): Promise<Record<string, ModelCapabilities>>;
}
export declare class ContextTransferAPI {
private manager;
private supportedFormats;
private supportedModels;
constructor();
transferContextAPI(sourceModel: string, targetModel: string, conversationData: string | ConversationMessage[] | Record<string, any>, options?: TransferOptions): Promise<TransferResult>;
private processConversationData;
getSupportedModels(): Promise<Record<string, any>>;
getModelCapabilities(modelName: string): Promise<Record<string, any>>;
validateConversationFormat(data: string | ConversationMessage[] | Record<string, any>): Promise<ValidationResult>;
private generateRecommendations;
batchTransfer(transfers: Array<{
sourceModel: string;
targetModel: string;
conversationData: string | ConversationMessage[] | Record<string, any>;
options?: TransferOptions;
}>): Promise<Record<string, any>>;
createChromeExtensionConfig(): Record<string, any>;
}
export declare function quickTransfer(sourceModel: string, targetModel: string, conversationData: string | ConversationMessage[] | Record<string, any>, options?: Record<string, any>): Promise<string>;
export declare function getAllModels(): Promise<Record<string, any>>;
export declare function validateConversation(data: string | ConversationMessage[] | Record<string, any>): Promise<ValidationResult>;
//# sourceMappingURL=contextTransfer.d.ts.map