import type { CommandStep, ProjectPlan } from './project-commands.js'; export type PublishStepStatus = 'pending' | 'running' | 'completed' | 'failed'; export interface PublishJournalStep { readonly id: string; readonly packageName: string; readonly version: string; readonly phase: CommandStep['phase']; readonly status: PublishStepStatus; readonly attempts: number; readonly error?: string; } export interface PublishJournal { readonly protocol: 1; readonly planId: string; readonly targetTag: string; readonly stagingTag: string; readonly state: 'active' | 'failed' | 'complete'; readonly steps: readonly PublishJournalStep[]; } export interface PublishJournalStore { read(): Promise; write(journal: PublishJournal): Promise; } export declare class FilePublishJournalStore implements PublishJournalStore { readonly path: string; constructor(path: string); read(): Promise; write(journal: PublishJournal): Promise; } export declare function createPublishJournal(plan: ProjectPlan): PublishJournal; export declare function updateJournalStep(journal: PublishJournal, id: string, update: Partial>, state?: PublishJournal['state']): PublishJournal; export declare function completeJournal(journal: PublishJournal): PublishJournal; //# sourceMappingURL=publish-journal.d.ts.map