import { startTunnel, type Tunnel } from '../../../live/tunnel.ts'; import { type RegisteredTool } from '../../server.ts'; import { type AttachState } from './attach.ts'; export interface LiveShare { tunnel: Tunnel; /** The public URL handed to whoever is watching. */ url: string; } export interface LiveShareRef { current?: LiveShare; } type TunnelStarter = typeof startTunnel; /** Tear down whatever share is running. Safe when none is. Exported so the * session tools can call it from `dispose_browser` / `reset_session`. */ export declare function stopLiveShare(ref: LiveShareRef): Promise; export declare function liveViewTools(attachRef: { current?: AttachState; }, shareRef: LiveShareRef, openTunnel?: TunnelStarter): RegisteredTool[]; export {};