import type { FactoryDefinition, FactoryEvent } from "@you-agent-factory/client"; import type { FactoryEventSink } from "./event-sink.js"; export type FactoryEmulatorCompatibilityIssueCode = "invalid_logical_move" | "invalid_route_reference" | "invalid_worker_reference" | "provider_global_resource" | "unresolved_resource_requirement" | "unsupported_classifier" | "unsupported_execution" | "unsupported_guard" | "unsupported_orchestrator" | "unsupported_relationship_behavior" | "unsupported_workstation_behavior"; export interface FactoryEmulatorCompatibilityIssue { readonly code: FactoryEmulatorCompatibilityIssueCode; readonly path: readonly (string | number)[]; readonly message: string; } export type FactoryEmulatorCompatibilityResult = { readonly supported: true; readonly diagnostics: readonly []; } | { readonly supported: false; readonly diagnostics: readonly FactoryEmulatorCompatibilityIssue[]; }; /** Inspect the executable subset without mutating or retaining the Factory. */ export declare function inspectFactoryEmulatorCompatibility(factory: FactoryDefinition): FactoryEmulatorCompatibilityResult; /** Write only after the complete compatibility preflight succeeds. */ export declare function writeFactoryEventsIfCompatible(factory: FactoryDefinition, events: readonly FactoryEvent[], sink: FactoryEventSink): Promise;