export { hasChatThreadDeepLink } from "./chat-thread-url.js"; export declare const SIDEBAR_OPEN_KEY = "agent-native-sidebar-open"; export declare const SIDEBAR_STATE_CHANGE_EVENT = "agent-panel:state-change"; export declare const SIDEBAR_URL_CHANGE_EVENT = "agent-panel:url-change"; export declare const AGENT_SIDEBAR_MIN_WIDTH = 320; export declare const AGENT_SIDEBAR_DEFAULT_MAX_WIDTH = 704; export declare const AGENT_SIDEBAR_WIDE_WIDTH_RATIO = 0.75; /** Panel widths land on the 8px layout grid. */ export declare const AGENT_SIDEBAR_WIDTH_STEP = 8; export type AgentSidebarStateSource = "app" | "frame"; export type AgentSidebarStateMode = "app" | "code"; export interface AgentSidebarStateChangeDetail { open: boolean; source: AgentSidebarStateSource; mode: AgentSidebarStateMode; } export declare function snapAgentSidebarWidth(width: number): number; export declare function getAgentSidebarWideWidth(viewportWidth?: number): number; export declare function getAgentSidebarMaxWidth(viewportWidth?: number): number; export declare function clampAgentSidebarWidth(width: number, viewportWidth?: number): number; export declare function getAgentSidebarOpenPreferenceKey(storageKey?: string | null): string; /** * The state the panel last announced, or `null` before any panel has. A * control that mounts after the panel opened reads this instead of waiting * for the next change. */ export declare function getAgentSidebarState(): AgentSidebarStateChangeDetail | null; export declare function dispatchAgentSidebarStateChange(detail: AgentSidebarStateChangeDetail): void; export declare function setAgentSidebarOpenPreference(open: boolean, storageKey?: string | null): boolean; export declare function requestAgentSidebarOpen(): void; export declare function getAgentSidebarUrlOpenOverride(): boolean | null; export declare function consumeAgentSidebarUrlOpenOverride(storageKey?: string | null): boolean | null; export declare function subscribeAgentSidebarUrlChanges(listener: () => void): () => void; export declare function getInitialAgentSidebarOpen(defaultOpen: boolean, storageKey?: string | null, { ignoreUrlOverride }?: { ignoreUrlOverride?: boolean; }): boolean;