import type { PermissionMode } from "@hmbown/kytchen-protocol"; export interface SandboxProfile { /** Profile name (e.g. "restricted", "standard", "permissive"). */ name: string; /** Tools that are always allowed in this profile. */ allowList: string[]; /** Tools that are always denied in this profile. */ denyList: string[]; /** Default mode for tools not in allow/deny lists. */ defaultMode: PermissionMode; /** Max execution time per tool call (ms). */ timeoutMs: number; /** If true, tool outputs are truncated at `maxOutputLength`. */ truncateOutput: boolean; maxOutputLength: number; } export declare const RESTRICTED_PROFILE: SandboxProfile; export declare const STANDARD_PROFILE: SandboxProfile; export declare const PERMISSIVE_PROFILE: SandboxProfile; export declare const BUILTIN_PROFILES: Record; export declare class SandboxEnforcer { private profile; constructor(profile?: SandboxProfile); setProfile(profile: SandboxProfile): void; getProfile(): SandboxProfile; /** Check if a tool is allowed by the current sandbox profile. */ getEffectiveMode(toolName: string): PermissionMode; /** Get the timeout for the current profile. */ getTimeout(): number; /** Truncate output if required by the profile. */ normalizeOutput(output: string): string; } //# sourceMappingURL=sandbox.d.ts.map