import type { CircuitStructureProjectCommand } from "../models/circuit-structure-project-command.model.js"; import type { AppendedProjectRevision, ProjectRevisionSource, } from "./project-revision.store.js"; export interface ExecuteCircuitStructureCommandInput { projectId: string; expectedRevision: number; source: ProjectRevisionSource; description?: string; actorId?: string; historyTargetChangeSetId?: string; command: CircuitStructureProjectCommand; } export interface ExecutedCircuitStructureCommand { revision: AppendedProjectRevision; inverse: CircuitStructureProjectCommand; } export interface CircuitStructureProjectCommandStore { execute( input: ExecuteCircuitStructureCommandInput ): ExecutedCircuitStructureCommand; }