import { type ChildProcessWithoutNullStreams, type SpawnOptionsWithoutStdio } from 'node:child_process'; import type { AgentCapabilities, AgentConfig, AgentConfigSchema, AuthSetupGuidance, AuthState, DetectInstallationResult, InstalledPlugin, ModelCapabilities, PluginInstallOptions, ProgrammaticRun, RunOptions, Session } from '@a5c-ai/comm-adapter'; import { BaseProgrammaticAdapter } from './programmatic-adapter-base.js'; import { ClaudeAdapter } from './claude-adapter.js'; type SpawnProcess = (command: string, args: string[], options: SpawnOptionsWithoutStdio) => ChildProcessWithoutNullStreams; export declare function extractClaudeRemoteControlUrl(line: string): { sessionId: string; url: string; } | null; export declare function extractClaudeRemoteControlInitialSessionId(line: string): string | null; export declare function extractClaudeRemoteControlBridgeJson(line: string): string | null; export declare class ClaudeRemoteControlAdapter extends BaseProgrammaticAdapter { readonly agent: string; readonly displayName = "Claude Remote Control"; readonly minVersion = "2.1.0"; constructor(agent?: string); readonly hostEnvSignals: readonly ["CLAUDE_REMOTE_CONTROL_SESSION_NAME_PREFIX", "CLAUDE_CODE_SESSION_ID"]; private readonly claudeCli; private readonly parseDelegate; private spawnProcess; readonly capabilities: AgentCapabilities; readonly models: ModelCapabilities[]; readonly defaultModelId: string; readonly configSchema: AgentConfigSchema; setProcessSpawner(spawner: SpawnProcess): void; setSpawner(spawner: Parameters[0]): void; execute(options: RunOptions): ProgrammaticRun; detectInstallation(): Promise; detectAuth(): Promise; getAuthGuidance(): AuthSetupGuidance; sessionDir(_cwd?: string): string; parseSessionFile(filePath: string): Promise; listSessionFiles(_cwd?: string): Promise; readConfig(cwd?: string): Promise; writeConfig(config: Partial, cwd?: string): Promise; listPlugins(): Promise; installPlugin(pluginId: string, options?: PluginInstallOptions): Promise; uninstallPlugin(pluginId: string, options?: { global?: boolean; }): Promise; private mapPermissionMode; } export {};