/**
 * The policy gate, pure and unit-testable. `disabled` is the resolved
 * `--no-trace-sync` (commander maps it to `traceSync === false`).
 */
export declare function shouldAutoSyncTraces(disabled: boolean): boolean;
/**
 * Arm a fire-and-forget `agents traces sync` for when this process exits.
 * No-op unless {@link shouldAutoSyncTraces} passes. Best-effort by
 * construction: a missing binary or a stalled child never affects the run.
 * The spawn happens in the exit handler because the upload is async work Node
 * cannot run after `exit` — a watchdog here could never fire.
 */
export declare function armRunFinishTraceSync(opts?: {
    disabled?: boolean;
}): void;
/**
 * Fire a fire-and-forget `agents traces sync` NOW (not on exit). An important
 * owner-bound ping (`feed post --level important`, `agents notify`,
 * `send --to owner`) links the caller's `…/console/sessions/<id>` page, and that
 * page only exists once the session's shard has been uploaded — trace sync fires
 * on run exit (PHNX-3628), not when a mid-run ping is posted. This closes that
 * gap so the tapped link resolves instead of 404ing. No-op unless
 * {@link shouldAutoSyncTraces} passes (signed in + already opted into the store);
 * the incremental watermark keeps the push to essentially just this session.
 */
export declare function fireTraceSyncInBackground(opts?: {
    disabled?: boolean;
}): void;
