/**
 * Daemon lifecycle core — OpenClaw-aligned service start/stop/restart with onNotLoaded fallback.
 */
import type { DaemonLifecycleOptions, GatewayService } from '../../../daemon/types.js';
export type ServiceRecoveryResult = {
    result: 'started' | 'stopped' | 'restarted';
    message?: string;
    warnings?: string[];
    loaded?: boolean;
};
type ServiceRecoveryContext = {
    json: boolean;
    fail: (message: string, hints?: string[], diagnostics?: string[], options?: DaemonLifecycleOptions) => void;
};
type RestartPostCheckContext = {
    options: DaemonLifecycleOptions;
    fail: (message: string, hints?: string[], diagnostics?: string[], options?: DaemonLifecycleOptions) => void;
};
export declare function runServiceStop(params: {
    service: GatewayService;
    opts?: DaemonLifecycleOptions;
    onNotLoaded?: (ctx: ServiceRecoveryContext) => Promise<ServiceRecoveryResult | null>;
}): Promise<void>;
export declare function runServiceRestart(params: {
    service: GatewayService;
    opts?: DaemonLifecycleOptions;
    renderStartHints: () => string[];
    checkTokenDrift?: boolean;
    onNotLoaded?: (ctx: ServiceRecoveryContext) => Promise<ServiceRecoveryResult | null>;
    postRestartCheck?: (ctx: RestartPostCheckContext) => Promise<void>;
}): Promise<void>;
export declare function executeDaemonUninstall(options?: DaemonLifecycleOptions): Promise<void>;
export {};
