/** * REPL plugin — first non-platform first-party plugin. * * Owns a long-lived `ReplBridgeClient` that fronts the Rust supervisor * (cli/src/plugins/repl/bridge.rs). Tools are registered via PluginContext * during `init`; dispose tears down the supervisor process. */ import type { PluginContext, PluginManifest, SourcePlugin } from "@claude-in-mobile/plugin-api"; import { ReplBridgeClient } from "./client.js"; import type { ExpectArgs, ExpectOutcome, KeyArgs, KillArgs, SendArgs, SessionInfo, SessionSnapshot, SnapshotArgs, SpawnArgs } from "./types.js"; import { REDACTION_PATTERNS } from "./redaction.js"; export declare const REPL_PLUGIN_MANIFEST: PluginManifest; export interface ReplPluginOptions { /** Inject a bridge for testing. */ bridge?: ReplBridgeClient; /** Disable secret redaction (default: enabled). */ disableRedaction?: boolean; } export declare class ReplPlugin implements SourcePlugin { readonly manifest: PluginManifest; private bridge; private readonly redact; constructor(opts?: ReplPluginOptions); init(ctx: PluginContext): void; dispose(): Promise; spawn(args: SpawnArgs): Promise<{ id: string; }>; send(args: SendArgs): Promise<{ ok: true; }>; key(args: KeyArgs): Promise<{ ok: true; }>; /** Buffer added to a session's expect timeout for the bridge round-trip. */ private static readonly EXPECT_TIMEOUT_BUFFER_MS; expect(args: ExpectArgs): Promise; snapshot(args: SnapshotArgs): Promise; list(): Promise; kill(args: KillArgs): Promise<{ ok: true; }>; private toolDefinitions; } export declare function createReplPlugin(opts?: ReplPluginOptions): SourcePlugin; export { REDACTION_PATTERNS }; //# sourceMappingURL=index.d.ts.map