const DEFAULT_DETECTED_AT = new Date('2026-05-23T12:00:00.000Z');
const DEFAULT_STALE_THRESHOLD_MS = 24 * 60 * 60 * 1000;
const DEFAULT_STALE_AGE_MS = 26 * 60 * 60 * 1000;
const DEFAULT_LOCK_AGE_MS = 2 * 60 * 60 * 1000;
const DEFAULT_LOCK_PATH = '/main/.git/worktrees/example/index.lock';
export class WorktreeHealthFactory {
    static healthy() {
        return { status: 'healthy' };
    }
    static stale(overrides) {
        const reason = {
            kind: 'stale',
            ageMs: overrides?.ageMs ?? DEFAULT_STALE_AGE_MS,
            thresholdMs: overrides?.thresholdMs ?? DEFAULT_STALE_THRESHOLD_MS,
        };
        return {
            status: 'degraded',
            reason,
            detectedAt: overrides?.detectedAt ?? DEFAULT_DETECTED_AT,
        };
    }
    static orphanLock(overrides) {
        const reason = {
            kind: 'orphan-git-lock',
            lockPath: overrides?.lockPath ?? DEFAULT_LOCK_PATH,
            lockAgeMs: overrides?.lockAgeMs ?? DEFAULT_LOCK_AGE_MS,
        };
        return {
            status: 'degraded',
            reason,
            detectedAt: overrides?.detectedAt ?? DEFAULT_DETECTED_AT,
        };
    }
    static unresolvedConflict(overrides) {
        return {
            status: 'degraded',
            reason: { kind: 'unresolved-conflict' },
            detectedAt: overrides?.detectedAt ?? DEFAULT_DETECTED_AT,
        };
    }
}
//# sourceMappingURL=worktreeHealth.factory.js.map