/**
 * stopDaemon() — Shared daemon-stop helper
 *
 * Contains the stop logic for terminating a running Shep daemon.
 * Used by:
 *   - stop.command.ts (shep stop)
 *   - restart.command.ts (shep restart)
 *   - upgrade.command.ts (shep upgrade — stops before install)
 *
 * Unix stop sequence (real graceful shutdown semantics):
 *   1. Send SIGTERM to the process tree
 *   2. Poll liveness every 200ms for up to 5000ms — the daemon may need
 *      time to flush state, close DB connections, etc.
 *   3. If still alive after 5s, escalate to SIGKILL
 *
 * Windows stop sequence (no graceful shutdown exists):
 *   1. Run `taskkill /T /F` synchronously (always forceful — Windows has
 *      no SIGTERM equivalent, and `tree-kill` always passes /F regardless
 *      of which signal the caller specified)
 *   2. Single liveness check; no polling loop, since the kill is already
 *      forceful and synchronous
 *
 * In all paths, daemon.json is deleted in a `finally` block (NFR-2).
 *
 * @param daemonService - IDaemonService instance (injected by caller for testability, NFR-4)
 */
import type { IDaemonService } from '../../../../../packages/core/src/application/ports/output/services/daemon-service.interface.js';
/**
 * Stop the Shep daemon.
 * Safe to call when no daemon is running — silently cleans up stale daemon.json (NFR-2).
 */
export declare function stopDaemon(daemonService: IDaemonService): Promise<void>;
//# sourceMappingURL=stop-daemon.d.ts.map