import type { UseCase } from '../../../../shared/foundation/usecase.base.js';
import type { PidFileContent } from '../../../../shared/services/pidFileManager.js';
export interface StopDaemonInput {
    force: boolean;
}
export interface StopDaemonDependencies {
    readPidFile: () => PidFileContent | null;
    removePidFile: () => void;
    isProcessRunning: (pid: number) => boolean;
    killProcess: (pid: number, signal: string) => void;
}
export type StopDaemonResult = {
    status: 'stopped';
    pid: number;
} | {
    status: 'not-running';
} | {
    status: 'failed';
    reason: string;
};
export declare class StopDaemonUseCase implements UseCase<StopDaemonInput, StopDaemonResult> {
    private readonly deps;
    constructor(deps: StopDaemonDependencies);
    execute(input: StopDaemonInput): StopDaemonResult;
}
//# sourceMappingURL=stopDaemon.usecase.d.ts.map