import type { EmbeddedRunAttemptParams, ResolvedRunEnvironment, RunSessionContext } from "./types.js";
/**
 * Acquire the session lock, create the SessionManager and SDK agent session,
 * wire up stream functions, extra params, and diagnostics (cache trace,
 * payload logger).
 *
 * The caller owns the returned session lifecycle: it must call
 * `session.dispose()` and `sessionLock.release()` when the run completes.
 */
export declare function createRunSession(params: EmbeddedRunAttemptParams, env: ResolvedRunEnvironment): Promise<RunSessionContext>;
