/** * Result of a plugin task execution. * * Contains the outcome status of a task and any additional result data. */ export interface PluginTaskResult { /** * Optional result data from the task execution. */ data?: T; } /** * Request message sent from server to plugin. * * Contains a unique identifier, task name, and parameters for execution. */ export interface PluginTaskRequest { /** * Unique identifier for request/response correlation. */ id: string; /** * The name of the task to execute. */ task: string; /** * The parameters for task execution. */ params: any; } /** * Response message sent from plugin back to server. * * Contains the original request ID and the execution result. */ export interface PluginTaskResponse { /** * Unique identifier matching the original request. */ id: string; /** * Whether the task completed successfully. */ success: boolean; /** * Optional error message if the task failed. */ error?: string; /** * The result of the task execution. */ data?: T; } /** * Parameters for the executeCode task. */ export interface ExecuteCodeTaskParams { /** * The JavaScript code to be executed. */ code: string; } /** * Result data for the executeCode task. */ export interface ExecuteCodeTaskResultData { /** * The result of the executed code, if any. */ result: T; /** * Captured console output during code execution. */ log: string; }