/** Viewport-space geometry of the composer at the moment a session is created. */ export interface ComposerRect { top: number; left: number; width: number; height: number; } type HandoffConsumer = 'composer' | 'thread'; interface SessionHandoff { sessionId: string; rect: ComposerRect; createdAt: number; claimedAt: Partial>; } interface SessionTransitionState { handoff: SessionHandoff | null; startHandoff: (sessionId: string, rect: ComposerRect) => void; /** * Returns the captured composer rect while the handoff is still fresh and the * consumer has not already run past its re-claim window. */ claimHandoff: (sessionId: string, consumer: HandoffConsumer) => ComposerRect | null; clearHandoff: () => void; } export declare const useSessionTransitionStore: import("zustand").UseBoundStore>; /** Captures the composer geometry that a session handoff animates from. */ export declare function captureComposerRect(element: HTMLElement | null | undefined): ComposerRect | null; export {}; //# sourceMappingURL=sessionTransitionStore.d.ts.map