import { type Server } from 'node:http'; import type { createInterviewService } from './service'; import type { InterviewAnswer, InterviewFileItem, InterviewListItem, InterviewState } from './types'; /** * Server deps delegating every service operation to a single * `createInterviewService` instance — the shared shape used by the * per-session server, the dashboard fallback server, and the v2 interview * bridge. */ export declare function createInterviewServerDeps(service: ReturnType, outputFolder: string, port: number): { getState: (interviewId: string) => Promise; listInterviewFiles: () => Promise; listInterviews: () => InterviewListItem[]; submitAnswers: (interviewId: string, answers: InterviewAnswer[]) => Promise; submitBlockComment: (interviewId: string, section: string, comment: string) => Promise; submitChat: (interviewId: string, message: string) => Promise; handleNudgeAction: (interviewId: string, action: 'more-questions' | 'confirm-complete') => Promise; outputFolder: string; port: number; }; export declare function createInterviewServer(deps: { getState: (interviewId: string) => Promise; listInterviewFiles: () => Promise; listInterviews: () => InterviewListItem[]; submitAnswers: (interviewId: string, answers: InterviewAnswer[]) => Promise; submitBlockComment: (interviewId: string, section: string, comment: string) => Promise; submitChat: (interviewId: string, message: string) => Promise; handleNudgeAction: (interviewId: string, action: 'more-questions' | 'confirm-complete') => Promise; outputFolder: string; port: number; /** Already-listening server to adopt instead of binding `port`. */ server?: Server; }): { ensureStarted: () => Promise; close: () => void; };