import type { AutomationSourceRecord } from '../sources.js'; import { type AutomationStorePathConfig } from './paths.js'; interface AutomationSourcesSnapshot extends Record { version: 1; sources: AutomationSourceRecord[]; } export interface AutomationSourceStoreConfig { readonly path?: string | undefined; readonly configManager?: AutomationStorePathConfig | undefined; } export declare class AutomationSourceStore { private readonly store; /** Whole-file writes run one at a time, in call order. See StoreWriteQueue. */ private readonly writes; constructor(config?: string | AutomationSourceStoreConfig); load(): Promise; /** * Replace the file with `sources` as they are at THIS call, after every write * already queued has finished. Ordering, not the snapshot point, is what was * missing: `AutomationService.upsertJob`, `upsertRun` and `upsertSource` all * rewrite this whole file, and `PersistentStore.persist` is atomic but * unordered. */ save(sources: readonly AutomationSourceRecord[]): Promise; } export {}; //# sourceMappingURL=sources.d.ts.map