import { EngineContext, FileDownloadProgress, ModelConfig, EngineImageToTextArgs, EngineSpeechToTextArgs, EngineTextCompletionResult, EngineTextCompletionArgs, EngineEmbeddingArgs, EngineEmbeddingResult, TransformersJsModel } from '../../types/index.js'; import { Processor, PreTrainedModel, PreTrainedTokenizer } from '@huggingface/transformers'; interface TransformersJsModelComponents { model?: PreTrainedModel; processor?: Processor; tokenizer?: PreTrainedTokenizer; } interface TransformersJsInstance { textModel?: TransformersJsModelComponents; visionModel?: TransformersJsModelComponents; speechModel?: TransformersJsModelComponents; } export interface TransformersJsModelConfig extends ModelConfig { location: string; url: string; textModel?: TransformersJsModel; visionModel?: TransformersJsModel; speechModel?: TransformersJsModel; device?: { gpu?: boolean | 'auto' | (string & {}); }; } export declare const autoGpu = true; export declare function prepareModel({ config, log }: EngineContext, onProgress?: (progress: FileDownloadProgress) => void, signal?: AbortSignal): Promise<{ files: string[] | Buffer[]; } | undefined>; export declare function createInstance({ config, log }: EngineContext, signal?: AbortSignal): Promise; export declare function disposeInstance(instance: TransformersJsInstance): Promise; export declare function processTextCompletionTask({ request, config, log, onChunk }: EngineTextCompletionArgs, instance: TransformersJsInstance, signal?: AbortSignal): Promise; export declare function processEmbeddingTask({ request, config }: EngineEmbeddingArgs, instance: TransformersJsInstance, signal?: AbortSignal): Promise; export declare function processImageToTextTask({ request, config, log }: EngineImageToTextArgs, instance: TransformersJsInstance, signal?: AbortSignal): Promise<{ text: string; } | undefined>; export declare function processSpeechToTextTask({ request, onChunk }: EngineSpeechToTextArgs, instance: TransformersJsInstance, signal?: AbortSignal): Promise<{ text: string; }>; export {};