export interface PursueResult {
    picked: {
        goalId: string;
        title: string;
    } | null;
    reason: string;
    kickoffMessage?: string;
}
/**
 * Pick the most-stale active goal and emit a kickoff message that the
 * brain (running as the system-cron actor) will pick up.
 *
 * Returns metadata about what was picked, OR null if nothing was ready.
 * The caller (cron job handler) is responsible for actually feeding the
 * kickoff message back into the agent turn pipeline.
 */
export declare function pursueNextGoal(tenantId: string): Promise<PursueResult>;
/**
 * Called by the cron handler when the brain turn finished. Resets the
 * failure counter on success, increments it on failure. After 3 fails
 * in a row, the goal stops being auto-picked (until the owner manually
 * unblocks it via the dashboard).
 */
export declare function recordPursuitOutcome(tenantId: string, goalId: string, outcome: 'success' | 'failure', detail?: string): Promise<void>;
//# sourceMappingURL=goal-pursuit.d.ts.map