import type { HookDefinition, HookExecutionLog } from '../types/index.js';
/**
 * Return all hook definitions for a project.
 */
export declare function getHooks(projectId: string): Promise<HookDefinition[]>;
/**
 * Return a single hook by ID, or undefined if not found.
 */
export declare function getHookById(projectId: string, hookId: string): Promise<HookDefinition | undefined>;
/**
 * Persist a new hook definition.
 */
export declare function saveHook(projectId: string, hook: HookDefinition): Promise<void>;
/**
 * Apply partial updates to an existing hook. Throws if not found.
 */
export declare function updateHook(projectId: string, hookId: string, updates: Partial<HookDefinition>): Promise<HookDefinition>;
/**
 * Delete a hook by ID. Throws if not found.
 */
export declare function deleteHook(projectId: string, hookId: string): Promise<void>;
/**
 * Return enabled hooks matching the given trigger.
 */
export declare function getHooksByTrigger(projectId: string, trigger: string): Promise<HookDefinition[]>;
/**
 * Append an execution log entry. Trims entries beyond MAX_LOG_ENTRIES.
 */
export declare function appendHookLog(projectId: string, entry: HookExecutionLog): Promise<void>;
/**
 * Return recent execution log entries for a project.
 */
export declare function getHookLogs(projectId: string, limit?: number): Promise<HookExecutionLog[]>;
//# sourceMappingURL=hooks-store.d.ts.map