import { type Hlc } from "../util/hlc.js"; export interface MachineLedgerRecord { machineId: string; alias: string; firstSeen: string; lastSeen: string; lastSync: string | null; accountIdentity: string | null; hlc: Hlc; seq: number; writerId: string; } export interface SyncObservedRecord { observerMachineId: string; vaultRid: string; sourceMachineId: string; throughHlc: Hlc; throughSeq: number; observedAt: string; publication: "online"; hlc: Hlc; seq: number; writerId: string; } export interface PublishedMachineSnapshot { commitOid: string; machines: MachineLedgerRecord[]; observations: SyncObservedRecord[]; } export interface RegisterCurrentMachineArgs { podRoot?: string; nowIso?: string; accountIdentity?: string; hostname?: string; machineId?: string; hlcPath?: string; } export declare function getMachineLedgerDir(podRoot?: string): string; export declare function sanitizeMachineAlias(value: string): string | null; export declare function fallbackMachineAlias(machineId: string): string; export declare function deriveInitialMachineAlias(machineId: string, hostnameOverride?: string): string; export declare function listMachineShards(podRoot?: string): string[]; export declare function readAllMachineRecords(podRoot?: string): MachineLedgerRecord[]; export declare function parseMachineShardText(content: string, writerId: string, sourceFile: string): { machines: MachineLedgerRecord[]; observations: SyncObservedRecord[]; }; export declare function foldMachines(records: readonly MachineLedgerRecord[]): Map; export declare function readCurrentMachine(podRoot?: string, machineId?: string): MachineLedgerRecord | null; export declare function readAllSyncObservedRecords(podRoot?: string): SyncObservedRecord[]; export declare function foldSyncObserved(records: readonly SyncObservedRecord[]): Map; export declare function appendSyncObserved(args: { podRoot?: string; vaultRid: string; sourceMachineId: string; throughHlc: Hlc; throughSeq: number; observedAt?: string; hlcPath?: string; }): SyncObservedRecord | null; export declare function appendSyncObservedForTest(args: Parameters[0], observerMachineId: string): SyncObservedRecord | null; export declare function registerCurrentMachine(args?: RegisterCurrentMachineArgs): MachineLedgerRecord; export declare function updateCurrentMachineAlias(alias: string, args?: Omit): MachineLedgerRecord; export declare function recordCurrentMachineSyncSuccess(args?: Omit): MachineLedgerRecord; //# sourceMappingURL=machine-ledger.d.ts.map