export type HookPoint = 'PreExecutionStart' | 'PostExecutionStart' | 'PreExecutionEnd' | 'PostExecutionEnd' | 'Stop';
export interface HookData {
    eventName: string;
    sessionId: string;
    workspace: string;
    timestamp: number;
    [key: string]: unknown;
}
export interface HookResult {
    blocked: boolean;
    reason?: string;
    output?: string;
}
export interface CommandResult {
    exitCode: number;
    stdout: string;
    stderr: string;
    timedOut?: boolean;
}
import { Hook } from './index.js';
export interface BuiltinHookHandler {
    execute(data: HookData, config: Hook): Promise<HookResult>;
}
export type TemplateVariable = 'issueNumber' | 'issueTitle' | 'issueFile' | 'planFile' | 'sessionId' | 'workspace' | 'provider' | 'success' | 'duration' | 'filesModified';
