import type { Database } from "bun:sqlite";
import type { CreateDispatchInput, Dispatch } from "../types/index.js";
export type { FormatOpts } from "./dispatch-formatter.js";
/**
 * Execute a single dispatch: resolve tasks, format, send to tmux, update status.
 */
export declare function executeDispatch(dispatch: Dispatch, opts?: {
    dryRun?: boolean;
    formatOpts?: import("./dispatch-formatter.ts").FormatOpts;
}, db?: Database): Promise<void>;
/**
 * Run all due dispatches (pending + scheduled_at <= now).
 * Returns the count of dispatches that were fired.
 */
export declare function runDueDispatches(opts?: {
    dryRun?: boolean;
}, db?: Database): Promise<number>;
/**
 * Fan-out: dispatch the same task set to multiple tmux windows.
 * Returns the list of created Dispatch objects.
 */
export declare function dispatchToMultiple(input: Omit<CreateDispatchInput, "target_window"> & {
    targets: string[];
    stagger_ms?: number;
}, opts?: {
    dryRun?: boolean;
}, db?: Database): Promise<Dispatch[]>;
//# sourceMappingURL=dispatch.d.ts.map