import type { PluginInput } from "@opencode-ai/plugin"; export interface ToolExecuteInput { tool: string; sessionID: string; callID: string; } export interface ToolExecuteOutput { title: string; output: string; metadata: unknown; } export interface EventInput { event: { type: string; properties?: unknown; }; } export interface DirectoryInjectorConfig { /** The filename to search for (e.g., "AGENTS.md", "README.md") */ filename: string; /** Label for injected content (e.g., "Directory Context", "Project README") */ outputLabel: string; /** Storage functions for session persistence */ storage: { load: (sessionID: string) => Set; save: (sessionID: string, paths: Set) => void; clear: (sessionID: string) => void; }; } export declare function createDirectoryInjectorHook(ctx: PluginInput, config: DirectoryInjectorConfig): { "tool.execute.after": (input: ToolExecuteInput, output: ToolExecuteOutput) => Promise; event: ({ event }: EventInput) => Promise; };