/** * memory-journal-mcp - Sandbox Factory * * Mode selection factory for choosing between VM and Worker sandboxes. * Allows runtime configuration of the sandbox mode. */ import type { SandboxOptions, PoolOptions, SandboxResult } from './types.js'; /** Available sandbox modes */ export type SandboxMode = 'worker'; /** Common sandbox interface */ export interface ISandbox { execute(code: string, bindings: Record, schemas?: Record>, timeoutMs?: number, contextObj?: Record, readonlyMode?: boolean, maxResultSize?: number): Promise; } /** Common pool interface */ export interface ISandboxPool { execute(code: string, bindings: Record, schemas?: Record>, timeoutMs?: number, contextObj?: Record, readonlyMode?: boolean, maxResultSize?: number): Promise; getActiveCount(): number; dispose(): void; readonly poolId: string; } /** Information about a sandbox mode */ export interface SandboxModeInfo { mode: SandboxMode; description: string; securityLevel: 'basic' | 'trusted_admin'; isolation: string; } /** * Set the default sandbox mode for new sandbox instances. */ export declare function setDefaultSandboxMode(mode: SandboxMode): void; /** * Get the current default sandbox mode. */ export declare function getDefaultSandboxMode(): SandboxMode; /** * Get all available sandbox modes. */ export declare function getAvailableSandboxModes(): SandboxMode[]; /** * Create a sandbox instance for the specified mode. */ export declare function createSandbox(mode?: SandboxMode, options?: SandboxOptions): ISandbox; /** * Create a sandbox pool for the specified mode. */ export declare function createSandboxPool(mode?: SandboxMode, sandboxOptions?: SandboxOptions, poolOptions?: PoolOptions): ISandboxPool; /** * Get information about a sandbox mode. */ export declare function getSandboxModeInfo(mode?: SandboxMode): SandboxModeInfo; //# sourceMappingURL=sandbox-factory.d.ts.map