import { type Platform } from "./launcher-platforms.js";
export declare const LAUNCHER_STATE_VERSION: 1;
export interface LauncherStateEntry {
    readonly path: string;
    readonly platform: Platform;
    readonly contentSha256: string;
    readonly createdAt: string;
}
export interface LauncherState {
    readonly version: 1;
    readonly entries: readonly LauncherStateEntry[];
}
export declare function hashContent(content: string): string;
export interface ParseOptions {
    readonly homedir?: string | undefined;
    readonly onWarn?: ((message: string) => void) | undefined;
}
export declare function parseState(raw: unknown, options?: ParseOptions): LauncherState;
export declare function loadState(stateDir: string, options?: ParseOptions): LauncherState;
export declare const MAX_STATE_FILE_BYTES: number;
export declare function saveState(stateDir: string, state: LauncherState): void;
export declare function upsertEntry(state: LauncherState, entry: LauncherStateEntry): LauncherState;
export declare function removeEntry(state: LauncherState, path: string): LauncherState;
export declare function findEntry(state: LauncherState, path: string): LauncherStateEntry | undefined;
//# sourceMappingURL=launcher-state.d.ts.map