import type { SessionEvent, SessionLineageResponse } from "@opengeni/sdk"; import { type EmbeddedSessionLineageClientOverride } from "../session-context.js"; export type UseSessionLineageOptions = EmbeddedSessionLineageClientOverride & { events?: SessionEvent[] | undefined; /** Refresh interval (ms). Off by default. */ pollIntervalMs?: number | undefined; enabled?: boolean | undefined; /** Optional shared causal clock invoked when each network read starts. */ beginRead?: (() => number) | undefined; }; export type UseSessionLineageResult = { lineage: SessionLineageResponse | null; loading: boolean; error: Error | null; /** Causal generation captured when the accepted lineage read started. */ readGeneration: number; refresh: () => Promise; }; export declare function isLineageRefreshEvent(event: SessionEvent): boolean; /** Read the ancestors + descendant tree for one session. Data-only; no UI state. */ export declare function useSessionLineage(sessionId: string | null | undefined, options?: UseSessionLineageOptions): UseSessionLineageResult;