import { type CommandMountContext, type CommandSpec } from '@opensip-cli/core'; import { type RunActionHooks } from '../bootstrap/run-plane.js'; export declare function runCommandSpecAction(spec: CommandSpec, optsWithArgs: Record, positionals: readonly unknown[], ctx: TCtx, hooks?: RunActionHooks): Promise; /** * The SINGLE output-dispatch seam. The launch `CommandOutcome` wrap is LANDED: * the host emit seams this delegates to (`emitCommandResult`, `ctx.emitEnvelope`) * now build a `CommandOutcome` and serialize it through the one `renderOutcome` * seam. The handler contract and the mounter above stayed byte-identical — all * the outer-shape change landed in those seams (north-star §5.5), so the handler * keeps returning its pure-domain `CommandResult` / `SignalEnvelope`. * * Routes the handler's return value by the command's declared * {@link CommandSpec.output} mode: * - `command-result` — the existing `emitCommandResult` seam (json * short-circuit / `ctx.render`), shared verbatim with * {@link mountResultCommand}. * - `signal-envelope` — the run-envelope machine-output path: `--json` emits * through `ctx.emitEnvelope` (the shared ADR-0011 * formatter), otherwise `ctx.render`. * - `raw-stream` — host renders nothing: the handler already wrote its * transport/file output, or a host run hook captured an * internal evidence completion for parent orchestration. * - `live-view` — the interactive Ink path: `ctx.renderLive(key, args)` * against the tool's registered renderer. * * @throws {Error} When a command declares `signal-envelope` / `live-view` output * but the mount context provides no `emitEnvelope` / `renderLive` emitter — a * mis-declared host spec fails loudly here rather than silently no-op'ing. */ export declare function dispatchOutput(result: unknown, spec: CommandSpec, opts: Record, positionals: readonly unknown[], ctx: TCtx): Promise; //# sourceMappingURL=run-command-spec-action.d.ts.map