import { type Config } from '../../config/schema.js'; import type { SessionStore } from '../../session/store.js'; import type { TaskJudgment } from '@xopcai/gateway-contract'; import type { ModelManager } from '../models/index.js'; export interface TaskTurnCompletion { sessionKey: string; channel: string; chatId: string; assistantPlainText: string; aborted: boolean; streamError?: string; skipTaskReview?: boolean; outboundMetadata?: Record; } export interface TaskJudgeDecision { completedCriteria: number[]; needsUser: boolean; nextAction?: string; judgment: TaskJudgment; } export declare function parseTaskJudgeDecision(raw: string, criteriaCount: number): TaskJudgeDecision; export declare class TaskJudgeService { #private; private readonly options; constructor(options: { sessionStore: SessionStore; modelManager: ModelManager; getConfig: () => Config | undefined; }); reviewTurn(payload: TaskTurnCompletion): Promise; }