UNPKG

@wonderwhy-er/desktop-commander

Version:

MCP server for terminal operations and file editing

29 lines (28 loc) • 1.4 kB
import type { ServerConfig } from './config-manager.js'; /** Where a corrupt config.json was found: at start, by a write, or by the file watcher */ export type RecoveryPhase = 'startup' | 'mutation' | 'watcher'; /** The config_parse_error_recovered event */ export interface RecoveryEvent { phase: RecoveryPhase; config_bytes: number | null; backup_created: boolean; recovered_by_other_process: boolean; } /** * The settings still readable in a corrupt config.json: the longest beginning * of it that is a JSON object once closed, so every complete top-level setting * before the first error. {} when there is none. */ export declare function salvageSettings(text: string): ServerConfig; /** * What a corrupt config.json is recovered as: the defaults, then the settings * last read (while running), then the settings salvaged from it. The welcome * page stays off, as for any existing install. */ export declare function buildRecoveredConfig(defaults: ServerConfig, lastRead: ServerConfig | null, text: string): ServerConfig; /** * Backs up a corrupt config.json as config.json.corrupt.<ms>.<pid>, unless the * newest backup already holds `bytes` (a recovery tried again after its write * failed). Returns the backup's name, or null when there is no config.json. */ export declare function backupCorruptConfig(configPath: string, bytes: Buffer): Promise<string | null>;