import type { InstallerAdapter, AdapterConfig } from './types.js'; import type { InstallerEventEmitter } from '../events.js'; /** * Options controlling headless adapter behavior. * Corresponds to CLI flags passed in non-interactive mode. */ export interface HeadlessOptions { apiKey?: string; clientId?: string; noBranch?: boolean; noCommit?: boolean; createPr?: boolean; noGitCheck?: boolean; } /** * Non-interactive adapter for CI/CD and agent consumption. * * Subscribes to the same installer events as CLIAdapter but never prompts. * All decisions are auto-resolved with sensible defaults (overridable via flags). * Progress is streamed as NDJSON to stdout. */ export declare class HeadlessAdapter implements InstallerAdapter { readonly emitter: InstallerEventEmitter; private sendEvent; private debug; private options; private isStarted; private scaffolded; private handlers; constructor(config: AdapterConfig & { options: HeadlessOptions; }); start(): Promise; stop(): Promise; private subscribe; private debugLog; private handleAuthSuccess; private handleAuthFailure; private handleScaffoldChecking; private handleScaffoldStart; private handleScaffoldProgress; private handleScaffoldComplete; private handleScaffoldFailed; private handleDetectionComplete; private handleDetectionNone; private handleGitDirty; private handleCredentialsFound; private handleCredentialsRequest; private handleEnvScanPrompt; private handleEnvCredentialsFound; private handleDeviceStarted; private handleStagingFetching; private handleStagingSuccess; private handleConfigComplete; private handleAgentStart; private handleAgentProgress; private handleValidationStart; private handleValidationIssues; private handleValidationComplete; private handleBranchPrompt; private handleBranchCreated; private handlePostInstallChanges; private handleCommitPrompt; private handleCommitSuccess; private handleCommitFailed; private handlePrPrompt; private handlePrSuccess; private handlePrFailed; private handlePushFailed; private handleManualInstructions; private handleComplete; private handleError; }