/** * Bundle deployment store — `/bundles/.json`. * * One file per deployed template. The apply engine writes it after every * step, so a crash or a failed step leaves an accurate record and a re-run * resumes from it. Writes are atomic (temp file + rename). * * @module services/bundle/bundle-state.store */ import type { BundleDeployment } from '../../types/solution-bundle.types.js'; /** * Persists bundle deployments. */ export declare class BundleDeploymentStore { private readonly dir; /** * @param crewlyHome - Crewly home directory */ constructor(crewlyHome: string); /** * File of a template's deployment. * * @param templateId - Template id (kebab case) * @returns Absolute path * @throws Error for an id that is not a safe file name */ fileFor(templateId: string): string; /** * Read a deployment. * * @param templateId - Template id * @returns The deployment, or null when the template was never deployed (or the file is unreadable) */ read(templateId: string): Promise; /** * Write a deployment atomically. * * @param deployment - Deployment */ write(deployment: BundleDeployment): Promise; /** * Every stored deployment. * * @returns Deployments (unreadable files are skipped) */ list(): Promise; } //# sourceMappingURL=bundle-state.store.d.ts.map