import type { PluginInput } from '@opencode-ai/plugin'; import type { PluginConfig } from '../../config'; interface GoalState { text: string; source?: 'manual' | 'interview'; sourcePath?: string; inheritedFrom?: string; createdAt: number; } interface SystemTransformOutput { system: string[]; } export declare function createSessionGoalHook(ctx: PluginInput, config: PluginConfig, options?: { getAgentName?: (sessionID: string) => string | undefined; }): { registerCommand: (config: Record) => void; handleCommandExecuteBefore: (input: { command: string; sessionID: string; arguments: string; }, output: { parts: Array<{ type: string; text?: string; }>; }) => Promise; handleEvent: (input: { event: { type: string; properties?: Record; }; }) => void; handleSystemTransform: (input: { sessionID?: string; }, output: SystemTransformOutput) => void; getGoal: (sessionID: string) => GoalState | undefined; }; export {};