import type { PluginInput } from '@opencode-ai/plugin'; import type { InterviewConfig } from '../config'; import type { InterviewAnswer, InterviewFileItem, InterviewListItem, InterviewRecord, InterviewState } from './types'; export declare function createInterviewService(ctx: PluginInput, config?: InterviewConfig, deps?: { openBrowser?: (url: string) => void; env?: NodeJS.ProcessEnv; }): { setBaseUrlResolver: (resolver: () => Promise) => void; setStatePushCallback: (callback: (interviewId: string, state: InterviewState) => void) => void; setOnInterviewCreated: (callback: (interview: InterviewRecord) => void) => void; getActiveInterviewId: (sessionID: string) => string | null; registerCommand: (config: Record) => void; handleCommandExecuteBefore: (input: { command: string; sessionID: string; arguments: string; }, output: { parts: Array<{ type: string; text?: string; }>; }) => Promise; handleEvent: (input: { event: { type: string; properties?: Record; }; }) => Promise; getInterviewState: (interviewId: string) => Promise; listInterviewFiles: () => Promise; listInterviews: () => InterviewListItem[]; submitAnswers: (interviewId: string, answers: InterviewAnswer[]) => Promise; handleNudgeAction: (interviewId: string, action: 'more-questions' | 'confirm-complete') => Promise; };