import { InvokePhase } from './invoker.types'; import { ProviderScope, Token } from '@frontmcp/sdk'; import { Scope } from '../scope/scope.instance'; type HistoryEntry = { at: number; stage?: string; phase?: InvokePhase; value: T | undefined; note?: string; }; export declare abstract class InvokerContext, // normalized-but-untrusted input TOutDraft = Partial> { readonly runId: string; data: Map; activeStage?: string; phase: InvokePhase; readonly startTime: number; providers: Map, unknown>>; protected _error?: TErr; protected _rawInput?: TRawIn; protected _inputDraft?: TInDraft; protected _input?: InputSchemaType; protected _outputDraft?: TOutDraft; protected _output?: OutputSchemaType; private readonly _rawInputHistory; private readonly _inputDraftHistory; private readonly _inputHistory; private readonly _outputDraftHistory; private readonly _outputHistory; get scope(): Scope; protected constructor(init?: { runId?: string; rawInput?: TRawIn; }); get rawInput(): TRawIn; set rawInput(v: TRawIn | undefined); get rawInputHistory(): ReadonlyArray>; get inputDraft(): TInDraft | undefined; set inputDraft(v: TInDraft | undefined); get inputDraftHistory(): ReadonlyArray>; get input(): InputSchemaType; set input(v: InputSchemaType | undefined); get inputHistory(): ReadonlyArray>; get validatedInput(): InputSchemaType | undefined; set validatedInput(v: InputSchemaType | undefined); get outputDraft(): TOutDraft | undefined; set outputDraft(v: TOutDraft | undefined); get outputDraftHistory(): ReadonlyArray>; get output(): OutputSchemaType | undefined; set output(v: OutputSchemaType | undefined); get outputHistory(): ReadonlyArray>; get validatedOutput(): OutputSchemaType | undefined; set validatedOutput(v: OutputSchemaType | undefined); get error(): unknown | undefined; set error(e: TErr | undefined); get(token: Token): T; bindProvider(token: Token, value: T, scope: ProviderScope): void; bindProviders(bindings: [Token, unknown, ProviderScope][]): void; /** Signal a control response (invoker will treat as success path and run post/finalize). */ respond(value: OutputSchemaType): never; /** Fail the run (invoker will run error/finalize). */ fail(err: unknown): never; /** Mark current stage & phase (invoker should call this before executing a stage). */ mark(stage: string, phase: InvokePhase): void; private _lastHistory; } export {};