/**
 * Trace-replay v2 — `olam create --from-manifest <path>` support.
 *
 * Reads + validates a fork manifest written by `scripts/olam-trace-replay.mjs`
 * (v1, ADR 041) and projects it into the inputs `olam create` needs:
 * a `task` to dispatch and a default `name` to derive when the operator
 * omits `--name`.
 *
 * Validation is strict-enough to catch malformed JSON, missing
 * `newPrompt`, and shape-drift from the v1 schema, but tolerant of
 * forward-compatible extensions (extra fields are ignored). Errors carry
 * the path so the operator's first reflex — re-read the manifest — is
 * already wired up.
 *
 * Pure module: no fs/network side effects beyond the single read.
 * Side effects (logging, spinner, world provisioning) live in create.ts
 * where they can be unit-tested against the action surface.
 */
/** Subset of fork-manifest fields the CLI consumes. Extra fields ignored. */
export interface ParsedForkManifest {
    readonly originalWorldId: string;
    readonly forkPoint: {
        readonly resolvedPhase: string | null;
        readonly resolvedSpanId: string | null;
        readonly resolvedAt: number;
    };
    readonly newPrompt: string;
    readonly manifestPath: string;
}
/**
 * Read + parse a fork manifest. Throws a descriptive Error on:
 *   - file missing / unreadable
 *   - malformed JSON
 *   - missing/blank originalWorldId
 *   - missing/blank newPrompt
 *
 * `forkPoint` fields default to `null`/`0` when absent — the v1 manifest
 * always emits them, but tolerating their absence keeps the projection
 * forward-compatible with manifests authored by hand for testing.
 */
export declare function parseForkManifest(path: string): ParsedForkManifest;
/**
 * Derive a default world name from the manifest's originalWorldId.
 * Pattern: `fork-<originalWorldId>` truncated at 40 chars to match the
 * existing slug bound used by `defaultNameFromPrompt` in create.ts.
 */
export declare function defaultNameFromManifest(manifest: ParsedForkManifest): string;
/**
 * Human-readable provenance line printed at `olam create --from-manifest`
 * time so the operator can confirm the fork they intended.
 */
export declare function provenanceLine(manifest: ParsedForkManifest): string;
//# sourceMappingURL=from-manifest.d.ts.map