export interface HooksConfig {
    ok: boolean;
    hooksToken: string | null;
    hooksEnabled: boolean;
}
/**
 * Get the current hooks config for this group.
 */
export declare function getHooksConfig(ipcDir?: string): Promise<HooksConfig>;
/**
 * Enable or disable hooks for this group.
 * Enabling auto-generates a token if none exists.
 */
export declare function setHooksEnabled(enabled: boolean, ipcDir?: string): Promise<HooksConfig>;
/**
 * Rotate the hooks bearer token, generating a new one.
 * Returns the new token.
 */
export declare function rotateHooksToken(ipcDir?: string): Promise<HooksConfig>;
/** Result of an async hook call (agent trigger or wake) */
export interface HookAsyncResult {
    ok: boolean;
    queued?: boolean;
    error?: string;
}
/** Result of a synchronous hook invoke */
export interface HookInvokeResult {
    ok: boolean;
    result?: string | null;
    error?: string;
}
/**
 * Trigger an async agent run via IPC.
 * Returns immediately after the task is queued.
 */
export declare function triggerAgent(prompt: string, ipcDir?: string): Promise<HookAsyncResult>;
/**
 * Trigger a wake run via IPC (reads HEARTBEAT.md from the group workspace).
 * Returns immediately after the task is queued.
 */
export declare function wake(ipcDir?: string): Promise<HookAsyncResult>;
/**
 * Invoke the agent synchronously via IPC and return the result.
 * Accepts either a free-form prompt or a tool name + args.
 * Waits up to 90 seconds for the agent to respond.
 */
export declare function invoke(input: string | {
    tool: string;
    args?: Record<string, unknown>;
}, ipcDir?: string): Promise<HookInvokeResult>;
//# sourceMappingURL=hooks.d.ts.map