import type { ProjectStateRestoreCommand } from "../models/project-state-restore-command.model.js"; import type { AppendedProjectRevision, ProjectRevisionSource, } from "./project-revision.store.js"; export interface ExecuteProjectStateRestoreCommandInput { projectId: string; expectedRevision: number; source: ProjectRevisionSource; description?: string; actorId?: string; historyTargetChangeSetId?: string; command: ProjectStateRestoreCommand; } export interface ExecutedProjectStateRestoreCommand { revision: AppendedProjectRevision; inverse: ProjectStateRestoreCommand; } export interface ProjectStateRestoreCommandStore { execute( input: ExecuteProjectStateRestoreCommandInput ): ExecutedProjectStateRestoreCommand; }