35 lines · 890 B · TypeScript
RawDownload
/** * Pane type definitions for the multi-pane split layout feature. * Supports up to MAX_PANES horizontal panes, each with its own TabBar and tab state. */ import type { Tab } from './tabs'; export const MAX_PANES = 4; /** * Represents a single pane in the split layout. * Each pane has its own set of tabs and active tab. */export interface Pane {  /** Unique identifier (UUID) */  id: string;  /** Tabs in this pane */  tabs: Tab[];  /** Active tab within this pane */  activeTabId: string | null;  /** Multi-selected tabs within this pane */  selectedTabIds: string[];  /** Width as fraction of total (0-1, sum of all panes = 1) */  widthFraction: number;} /** * The overall pane layout state. */export interface PaneLayout {  /** Ordered left-to-right panes */  panes: Pane[];  /** Which pane receives keyboard/sidebar actions */  focusedPaneId: string;}