import { CallContext } from './call-context.ts'; import { type InternalConfig, InternalWasi, PluginOutput } from './interfaces.ts'; export declare const EXTISM_ENV = "extism:host/env"; type InstantiatedModule = [WebAssembly.Module, WebAssembly.Instance]; export declare class ForegroundPlugin { #private; constructor(opts: InternalConfig, context: CallContext, instancePair: InstantiatedModule, wasi: InternalWasi[], suspendsOnInvoke: boolean); reset(): Promise; isActive(): boolean; functionExists(funcName: string): Promise; callBlock(funcName: string, input: number | null): Promise<[number | null, number | null]>; call(funcName: string, input?: string | Uint8Array, hostContext?: T): Promise; getExports(): Promise; getImports(): Promise; getInstance(): Promise; close(): Promise; } export declare function createForegroundPlugin(opts: InternalConfig, names: string[], modules: WebAssembly.Module[], context?: CallContext): Promise; export {};