import { Context, Session } from "koishi"; import type { GenerateTextResult } from "xsai"; import { Scenario } from "../services/scenario/Scenario"; import { MessageContext, Middleware } from "./base"; export interface ErrorReportContext { originalError: Error; scenario?: Scenario; llmResponse?: GenerateTextResult; koishiContext?: Context; koishiSession?: Session; additionalInfo?: Record; errorId?: string; } export interface ErrorHandlingOptions { debug?: boolean; uploadDump?: boolean; pasteServiceUrl?: string; includeFullSessionContent?: boolean; } export declare class ErrorHandlingMiddleware extends Middleware { name: string; constructor(ctx: Context, config: ErrorHandlingOptions); execute(ctx: MessageContext, next: () => Promise): Promise; private uploadToPaste; private formatErrorDump; }