import type { SippClientOptions } from '../../engine/browser-client.js'; import type { BackendObservability, ChatMessage, EmbedRuntimeOptions, EngineExecutionMode, GenerateRequestId, GenerateResponse, NativeRuntimeConfig, PromptOptions, RequestObservabilityMetrics, TransportObservability } from '../../engine/inference-types.js'; import type { SharedTokenRingDescriptor } from '../shared-token-ring.js'; import type { ClassifiedAsset, InternalBundleDescriptor, ModelDetectionResult, PairingPlan, RegistryManifest, StagedModelBundle, StageModelBundleOptions } from '../../models/types.js'; import type { ChatBoundaryInfo } from '../../engine/chat-boundary-sanitizer.js'; import type { EngineRuntime } from '../engine-runtime.js'; import { RustLifecycleBridge, WasmBridge } from '../../wasm/wasm-bridge.js'; import { type RuntimeBackendOverride, type WasmThreadingMode } from '../../engine/runtime-assets.js'; interface MainThreadEngineRuntimeOptions { readonly defaultBackendOverride?: RuntimeBackendOverride | null; } export declare class MainThreadEngineRuntime implements EngineRuntime { private readonly config; private module; private wasmBridge; private initPromise; private moduleGeneration; private engineInitialized; private cachedMediaMarker; private cachedChatTemplate; private cachedBosText; private cachedEosText; private readonly modelLoader; private readonly executionMode; private queuedPromptTokenBatchSinks; private queuedPromptTokenBatchSinkErrors; private readonly tracker; private readonly scheduler; private runtimeObservabilityEnabled; private backendProfilingEnabled; private readonly defaultBackendOverride; private transportObservability; private wasmBridgeOperationTail; constructor(config?: SippClientOptions, options?: MainThreadEngineRuntimeOptions); getExecutionMode(): EngineExecutionMode; getWasmThreadingMode(): WasmThreadingMode; getDefaultBackendOverride(): RuntimeBackendOverride | null; getTransportObservability(): TransportObservability; getSharedTokenRingDescriptor(): SharedTokenRingDescriptor | null; private normalizeTokenCount; private resolvePromptTokenCount; private resolvePromptMedia; private resolvePromptGrammar; private resolvePromptStop; private resolvePromptSampling; private countMarkerOccurrences; private buildGenerateRequest; private getLoadedModule; private getReadyEngineModule; private getLoadedWasmBridge; private getReadyEngineBridge; private withReadyWasmBridge; private releaseTokenState; private finalizeRequest; private consumeCompletedResponseIfPresent; private refreshTokenTransportObservability; private rejectAllTrackedRequests; private resetRuntimeLifecycleState; private createTransportObservability; private ensureTracked; private importModuleFactory; private ensureModule; /** * Initializes the underlying WebAssembly module. */ initModule(): Promise; stageModelBundle(descriptor: InternalBundleDescriptor, options?: StageModelBundleOptions): Promise; detectModelFromGgufFile(file: Blob & { name?: string; }, signal?: AbortSignal): Promise; browserCacheLayout(sourceBytes: number, sourceBytesKnown: boolean, directLoadMaxBytes: number, shardMaxBytes: number): Promise; planGgufSplitCount(sourceBytes: number, shardMaxBytes: number, callbacks: Parameters[2]): Promise; splitGgufStream(sourceBytes: number, outputPrefix: string, shardMaxBytes: number, callbacks: Parameters[3]): Promise; resolvePairing(classified: readonly ClassifiedAsset[]): Promise; createRustLifecycleBridge(manifest: RegistryManifest): Promise; /** * Initialize engine state with a model path mounted in the wasm filesystem. */ loadRuntimeModel(modelPathOrBundle: string | StagedModelBundle, config?: NativeRuntimeConfig): Promise; private hasExplicitProjectorPath; /** * Shutdown engine instance. */ close(): void; cancelQuery(requestId: GenerateRequestId): Promise; enqueueQuery(contextKey: string, promptText: string, options?: number | PromptOptions): Promise; enqueueChat(contextKey: string, messages: readonly ChatMessage[], options?: number | PromptOptions): Promise; enqueueEmbedding(contextKey: string, input: string, options?: EmbedRuntimeOptions): Promise; private enqueueNativeRequest; awaitQuery(requestId: GenerateRequestId, options?: { signal?: AbortSignal; }): Promise; getRuntimeObservability(): RequestObservabilityMetrics | null; readMediaMarker(): string | null; getChatTemplate(): string | null; getBosText(): string; getEosText(): string; probeChatTemplateBoundaryInfo(): Promise; getBackendObservability(): Promise; } export {};