import type { Snippet } from 'svelte'; export interface TreePanelNode { id: string; label: string; /** Emoji or short glyph shown instead of the default folder / branch icon. */ icon?: string | null; /** Extra column value (sort order, count, …). */ meta?: string | number | null; children?: TreePanelNode[]; } interface TreePanelProps { items?: TreePanelNode[]; collapsedIds?: string[]; emptyMessage?: string; hierarchyLabel?: string; metaLabel?: string; actionsLabel?: string; showMeta?: boolean; addChildLabel?: string; editLabel?: string; deleteLabel?: string; expandLabel?: string; collapseLabel?: string; onAddChild?: (node: TreePanelNode) => void; onEdit?: (node: TreePanelNode) => void; onDelete?: (node: TreePanelNode) => void; /** Extra content after the label (badges, counts). */ meta?: Snippet<[TreePanelNode, number]>; /** Replaces the default add / edit / delete buttons. */ trailing?: Snippet<[TreePanelNode, number]>; leading?: Snippet<[TreePanelNode, number]>; empty?: Snippet; class?: string; } declare const TreePanel: import("svelte").Component; type TreePanel = ReturnType; export default TreePanel;