@sascha384/tic 4.7.0 → 4.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. package/.claude-plugin/plugin.json +1 -1
  2. package/README.md +10 -1
  3. package/dist/app.js +4 -1
  4. package/dist/app.js.map +1 -1
  5. package/dist/branch-links.d.ts +7 -0
  6. package/dist/branch-links.js +13 -0
  7. package/dist/branch-links.js.map +1 -0
  8. package/dist/cli/commands/branch.d.ts +33 -0
  9. package/dist/cli/commands/branch.js +61 -0
  10. package/dist/cli/commands/branch.js.map +1 -0
  11. package/dist/cli/commands/mcp.js +64 -0
  12. package/dist/cli/commands/mcp.js.map +1 -1
  13. package/dist/cli/index.js +106 -0
  14. package/dist/cli/index.js.map +1 -1
  15. package/dist/components/BranchList.d.ts +1 -0
  16. package/dist/components/BranchList.js +360 -0
  17. package/dist/components/BranchList.js.map +1 -0
  18. package/dist/components/CommandBar.d.ts +8 -0
  19. package/dist/components/CommandBar.js +142 -0
  20. package/dist/components/CommandBar.js.map +1 -0
  21. package/dist/components/ErrorBoundary.d.ts +1 -1
  22. package/dist/components/HelpScreen.js +29 -0
  23. package/dist/components/HelpScreen.js.map +1 -1
  24. package/dist/components/OverlayPanel.d.ts +1 -1
  25. package/dist/components/PullRequestList.js +73 -12
  26. package/dist/components/PullRequestList.js.map +1 -1
  27. package/dist/components/TableLayout.d.ts +26 -10
  28. package/dist/components/TableLayout.js +67 -146
  29. package/dist/components/TableLayout.js.map +1 -1
  30. package/dist/components/WorkItemList.js +110 -92
  31. package/dist/components/WorkItemList.js.map +1 -1
  32. package/dist/git-async.d.ts +10 -0
  33. package/dist/git-async.js +39 -0
  34. package/dist/git-async.js.map +1 -0
  35. package/dist/git.d.ts +24 -0
  36. package/dist/git.js +60 -0
  37. package/dist/git.js.map +1 -1
  38. package/dist/stores/backendDataStore.d.ts +5 -0
  39. package/dist/stores/backendDataStore.js +58 -0
  40. package/dist/stores/backendDataStore.js.map +1 -1
  41. package/dist/stores/navigationStore.d.ts +5 -1
  42. package/dist/stores/navigationStore.js +10 -0
  43. package/dist/stores/navigationStore.js.map +1 -1
  44. package/dist/test-helpers.d.ts +7 -0
  45. package/dist/test-helpers.js +208 -0
  46. package/dist/test-helpers.js.map +1 -0
  47. package/package.json +1 -1
@@ -0,0 +1,142 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { useState, useEffect, useMemo, useCallback } from 'react';
3
+ import { backendDataStore, useBackendDataStore, } from '../stores/backendDataStore.js';
4
+ import { navigationStore, useNavigationStore, } from '../stores/navigationStore.js';
5
+ import { recentCommandsStore, useRecentCommandsStore, } from '../stores/recentCommandsStore.js';
6
+ import { OverlayPanel } from './OverlayPanel.js';
7
+ export function CommandBar({ commands, onCommand, onCancel }) {
8
+ const [query, setQuery] = useState('');
9
+ const [allSearchItems, setAllSearchItems] = useState([]);
10
+ const recentIds = useRecentCommandsStore((s) => s.recentIds);
11
+ const pullRequests = useBackendDataStore((s) => s.pullRequests);
12
+ const branches = useBackendDataStore((s) => s.branches);
13
+ const navigate = useNavigationStore((s) => s.navigate);
14
+ const screen = useNavigationStore((s) => s.screen);
15
+ // Load all work items on mount (may differ from filtered list)
16
+ useEffect(() => {
17
+ const backend = backendDataStore.getState().backend;
18
+ if (!backend)
19
+ return;
20
+ let cancelled = false;
21
+ void backend
22
+ .listWorkItems()
23
+ .then((items) => {
24
+ if (!cancelled)
25
+ setAllSearchItems(items);
26
+ })
27
+ .catch(() => { });
28
+ return () => {
29
+ cancelled = true;
30
+ };
31
+ }, []);
32
+ const items = useMemo(() => {
33
+ const q = query.toLowerCase();
34
+ // Build command items (recent + categorized)
35
+ const commandMap = new Map(commands.map((c) => [c.id, c]));
36
+ const recentItems = [];
37
+ for (const id of recentIds) {
38
+ const cmd = commandMap.get(id);
39
+ if (cmd) {
40
+ recentItems.push({
41
+ id: `recent-${cmd.id}`,
42
+ label: cmd.label,
43
+ value: cmd.id,
44
+ category: 'Recent',
45
+ kind: 'command',
46
+ });
47
+ }
48
+ }
49
+ const commandItems = commands.map((cmd) => ({
50
+ id: cmd.id,
51
+ label: cmd.label,
52
+ value: cmd.id,
53
+ category: cmd.category,
54
+ kind: 'command',
55
+ }));
56
+ let all = [...recentItems, ...commandItems];
57
+ if (q) {
58
+ all = all.filter((item) => item.label.toLowerCase().includes(q));
59
+ // Add matching issues (up to 5)
60
+ const matchingIssues = allSearchItems
61
+ .filter((item) => item.title.toLowerCase().includes(q) ||
62
+ item.id.toLowerCase().includes(q))
63
+ .slice(0, 5)
64
+ .map((item) => ({
65
+ id: `issue-${item.id}`,
66
+ label: `#${item.id} ${item.title}`,
67
+ value: item.id,
68
+ hint: item.type,
69
+ category: 'Issues',
70
+ kind: 'issue',
71
+ }));
72
+ // Add matching PRs (up to 5)
73
+ const matchingPrs = pullRequests
74
+ .filter((pr) => pr.title.toLowerCase().includes(q) || String(pr.number).includes(q))
75
+ .slice(0, 5)
76
+ .map((pr) => ({
77
+ id: `pr-${pr.id}`,
78
+ label: `PR #${pr.number} ${pr.title}`,
79
+ value: pr.id,
80
+ hint: pr.status,
81
+ category: 'Pull Requests',
82
+ kind: 'pr',
83
+ }));
84
+ // Add matching branches (up to 5)
85
+ const matchingBranches = branches
86
+ .filter((r) => r.branch.name.toLowerCase().includes(q) ||
87
+ r.linkedItem?.title.toLowerCase().includes(q))
88
+ .slice(0, 5)
89
+ .map((r) => ({
90
+ id: `branch-${r.branch.name}`,
91
+ label: r.branch.name,
92
+ value: r.branch.name,
93
+ hint: r.linkedItem
94
+ ? `#${r.linkedItem.id} ${r.linkedItem.title}`
95
+ : undefined,
96
+ category: 'Branches',
97
+ kind: 'branch',
98
+ }));
99
+ all = [...all, ...matchingIssues, ...matchingPrs, ...matchingBranches];
100
+ }
101
+ return all;
102
+ }, [commands, recentIds, query, allSearchItems, pullRequests, branches]);
103
+ const handleSelect = useCallback((item) => {
104
+ setQuery('');
105
+ if (item.kind === 'issue') {
106
+ const workItem = allSearchItems.find((i) => i.id === item.value);
107
+ if (workItem) {
108
+ navigationStore.getState().selectWorkItem(workItem.id);
109
+ if (screen !== 'list')
110
+ navigate('list');
111
+ navigate('form');
112
+ }
113
+ onCancel();
114
+ return;
115
+ }
116
+ if (item.kind === 'pr') {
117
+ navigationStore.getState().selectPr(item.value);
118
+ if (screen !== 'pr-list')
119
+ navigate('pr-list');
120
+ onCancel();
121
+ return;
122
+ }
123
+ if (item.kind === 'branch') {
124
+ navigationStore.getState().selectBranch(item.value);
125
+ if (screen !== 'branch-list')
126
+ navigate('branch-list');
127
+ onCancel();
128
+ return;
129
+ }
130
+ // Command
131
+ const cmd = commands.find((c) => c.id === item.value);
132
+ if (cmd) {
133
+ recentCommandsStore.getState().addRecent(cmd.id);
134
+ onCommand(cmd);
135
+ }
136
+ }, [allSearchItems, commands, onCommand, onCancel, screen, navigate]);
137
+ return (_jsx(OverlayPanel, { title: "Commands", items: items, placeholder: "Type to search...", externalFilter: true, onQueryChange: setQuery, onSelect: handleSelect, onCancel: () => {
138
+ setQuery('');
139
+ onCancel();
140
+ } }));
141
+ }
142
+ //# sourceMappingURL=CommandBar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CommandBar.js","sourceRoot":"","sources":["../../src/components/CommandBar.tsx"],"names":[],"mappings":"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"}
@@ -9,6 +9,6 @@ export declare class ErrorBoundary extends Component<Props, State> {
9
9
  state: State;
10
10
  static getDerivedStateFromError(error: Error): State;
11
11
  handleRetry: () => void;
12
- render(): string | number | bigint | boolean | import("react/jsx-runtime").JSX.Element | Iterable<ReactNode> | Promise<string | number | bigint | boolean | import("react").ReactPortal | import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>> | Iterable<ReactNode> | null | undefined> | null | undefined;
12
+ render(): string | number | bigint | boolean | Iterable<ReactNode> | Promise<string | number | bigint | boolean | import("react").ReactPortal | import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>> | Iterable<ReactNode> | null | undefined> | import("react/jsx-runtime").JSX.Element | null | undefined;
13
13
  }
14
14
  export {};
@@ -11,6 +11,7 @@ const SCREEN_LABELS = {
11
11
  form: 'Form View',
12
12
  'iteration-picker': 'Iteration Picker',
13
13
  'pr-list': 'Pull Requests',
14
+ 'branch-list': 'Branches',
14
15
  settings: 'Settings',
15
16
  status: 'Status',
16
17
  };
@@ -54,6 +55,9 @@ export function getShortcuts(screen, capabilities, gitAvailable, hasSyncManager)
54
55
  actions.push({ key: 'g', description: 'Set parent' });
55
56
  }
56
57
  actions.push({ key: 'P', description: 'Pull requests' });
58
+ if (gitAvailable) {
59
+ actions.push({ key: 'B', description: 'Branch management' });
60
+ }
57
61
  if (capabilities.fields.assignee) {
58
62
  actions.push({ key: 'a', description: 'Set assignee' });
59
63
  }
@@ -185,6 +189,31 @@ export function getShortcuts(screen, capabilities, gitAvailable, hasSyncManager)
185
189
  },
186
190
  ];
187
191
  }
192
+ case 'branch-list': {
193
+ return [
194
+ {
195
+ label: 'Navigation',
196
+ shortcuts: [
197
+ { key: 'j/k', description: 'Navigate branches' },
198
+ { key: 'esc', description: 'Back to list' },
199
+ { key: '?', description: 'Help' },
200
+ ],
201
+ },
202
+ {
203
+ label: 'Actions',
204
+ shortcuts: [
205
+ { key: 'enter', description: 'Switch to branch' },
206
+ { key: 'n', description: 'New branch' },
207
+ { key: 'd', description: 'Delete branch' },
208
+ { key: 'm', description: 'Merge into current' },
209
+ { key: 'P', description: 'Push to remote' },
210
+ { key: 'w', description: 'Open worktree shell' },
211
+ { key: 'r', description: 'Refresh (re-fetch)' },
212
+ { key: '/', description: 'Search branches' },
213
+ ],
214
+ },
215
+ ];
216
+ }
188
217
  case 'status': {
189
218
  const groups = [
190
219
  {
@@ -1 +1 @@
1
- {"version":3,"file":"HelpScreen.js","sourceRoot":"","sources":["../../src/components/HelpScreen.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HelpScreen.js","sourceRoot":"","sources":["../../src/components/HelpScreen.tsx"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@ export interface OverlayItem {
6
6
  hint?: string;
7
7
  category?: string;
8
8
  selected?: boolean;
9
- kind?: 'command' | 'issue';
9
+ kind?: 'command' | 'issue' | 'pr' | 'branch';
10
10
  }
11
11
  export interface OverlayItemGroup {
12
12
  category: string;
@@ -1,26 +1,91 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { useState } from 'react';
1
+ import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
2
+ import { useState, useEffect, useMemo } from 'react';
3
3
  import { Box, Text, useInput } from 'ink';
4
4
  import { useThemeStore } from '../stores/themeStore.js';
5
- import { useNavigationStore } from '../stores/navigationStore.js';
5
+ import { navigationStore, useNavigationStore, } from '../stores/navigationStore.js';
6
6
  import { useBackendDataStore } from '../stores/backendDataStore.js';
7
+ import { uiStore } from '../stores/uiStore.js';
7
8
  import { ColorPill } from './ColorPill.js';
9
+ import { CommandBar } from './CommandBar.js';
10
+ import { TableLayout } from './TableLayout.js';
11
+ import { useTerminalWidth } from '../hooks/useTerminalWidth.js';
8
12
  const openInBrowser = async (url) => {
9
13
  const { default: open } = await import('open');
10
14
  await open(url);
11
15
  };
16
+ function buildPrColumns(accent, muted, mutedDim) {
17
+ return [
18
+ {
19
+ key: 'number',
20
+ header: '#',
21
+ width: 8,
22
+ required: true,
23
+ render: (pr, selected) => (_jsxs(Text, { color: selected ? accent : undefined, bold: selected, children: ["#", pr.number] })),
24
+ },
25
+ {
26
+ key: 'title',
27
+ header: 'Title',
28
+ width: -1,
29
+ required: true,
30
+ render: (pr, selected) => (_jsx(Text, { color: selected ? accent : undefined, bold: selected, wrap: "truncate", children: pr.title })),
31
+ },
32
+ {
33
+ key: 'status',
34
+ header: 'Status',
35
+ width: 12,
36
+ hidePriority: 3,
37
+ render: (pr) => _jsx(ColorPill, { field: "status", value: pr.status }),
38
+ },
39
+ {
40
+ key: 'branches',
41
+ header: 'Branches',
42
+ width: 30,
43
+ hidePriority: 2,
44
+ render: (pr, selected) => (_jsxs(Text, { color: selected ? undefined : muted, dimColor: !selected ? mutedDim : undefined, wrap: "truncate", children: [pr.sourceBranch, " \\u2192 ", pr.targetBranch] })),
45
+ },
46
+ {
47
+ key: 'author',
48
+ header: 'Author',
49
+ width: 16,
50
+ hidePriority: 1,
51
+ render: (pr, selected) => (_jsx(Text, { color: selected ? accent : undefined, wrap: "truncate", children: pr.author })),
52
+ },
53
+ {
54
+ key: 'links',
55
+ header: 'Links',
56
+ width: 6,
57
+ hidePriority: 0,
58
+ render: (pr) => (_jsx(Text, { children: pr.linkedItems.length > 0 ? String(pr.linkedItems.length) : '' })),
59
+ },
60
+ ];
61
+ }
12
62
  export function PullRequestList() {
13
63
  const { accent, muted, mutedDim } = useThemeStore((s) => s.colors);
14
64
  const navigate = useNavigationStore((s) => s.navigate);
15
65
  const navigateToHelp = useNavigationStore((s) => s.navigateToHelp);
66
+ const selectedPrId = useNavigationStore((s) => s.selectedPrId);
16
67
  const pullRequests = useBackendDataStore((s) => s.pullRequests);
68
+ const termWidth = useTerminalWidth();
17
69
  const [cursor, setCursor] = useState(0);
70
+ const { activeOverlay, openOverlay, closeOverlay } = uiStore.getState();
71
+ const prColumns = useMemo(() => buildPrColumns(accent, muted, mutedDim), [accent, muted, mutedDim]);
72
+ // Set initial cursor from navigation
73
+ useEffect(() => {
74
+ if (selectedPrId) {
75
+ const idx = pullRequests.findIndex((pr) => pr.id === selectedPrId);
76
+ if (idx >= 0)
77
+ setCursor(idx);
78
+ navigationStore.getState().selectPr(null);
79
+ }
80
+ }, [selectedPrId, pullRequests]);
18
81
  // Clamp cursor to valid range
19
82
  const clampedCursor = Math.max(0, Math.min(cursor, pullRequests.length - 1));
20
83
  if (clampedCursor !== cursor) {
21
84
  setCursor(clampedCursor);
22
85
  }
23
86
  useInput((input, key) => {
87
+ if (activeOverlay)
88
+ return;
24
89
  if (key.escape) {
25
90
  navigate('list');
26
91
  return;
@@ -29,6 +94,10 @@ export function PullRequestList() {
29
94
  navigateToHelp();
30
95
  return;
31
96
  }
97
+ if (input === '/') {
98
+ openOverlay({ type: 'command-bar' });
99
+ return;
100
+ }
32
101
  // Navigation
33
102
  if (input === 'j' || key.downArrow) {
34
103
  setCursor((c) => Math.min(c + 1, pullRequests.length - 1));
@@ -47,14 +116,6 @@ export function PullRequestList() {
47
116
  return;
48
117
  }
49
118
  });
50
- return (_jsxs(Box, { flexDirection: "column", padding: 1, children: [_jsxs(Box, { marginBottom: 1, children: [_jsx(Text, { bold: true, color: accent, children: "Pull Requests" }), _jsxs(Text, { color: muted, dimColor: mutedDim, children: [' ', "(", pullRequests.length, ")"] })] }), pullRequests.length === 0 ? (_jsx(Box, { children: _jsx(Text, { color: muted, dimColor: mutedDim, children: "No pull requests" }) })) : (_jsxs(Box, { flexDirection: "column", children: [_jsxs(Box, { children: [_jsx(Box, { width: 8, children: _jsx(Text, { bold: true, color: muted, dimColor: mutedDim, children: "#" }) }), _jsx(Box, { width: 40, children: _jsx(Text, { bold: true, color: muted, dimColor: mutedDim, children: "Title" }) }), _jsx(Box, { width: 12, children: _jsx(Text, { bold: true, color: muted, dimColor: mutedDim, children: "Status" }) }), _jsx(Box, { width: 30, children: _jsx(Text, { bold: true, color: muted, dimColor: mutedDim, children: "Branches" }) }), _jsx(Box, { width: 16, children: _jsx(Text, { bold: true, color: muted, dimColor: mutedDim, children: "Author" }) }), _jsx(Box, { width: 6, children: _jsx(Text, { bold: true, color: muted, dimColor: mutedDim, children: "Links" }) })] }), pullRequests.map((pr, index) => {
51
- const isSelected = index === clampedCursor;
52
- const title = pr.title.length > 37 ? pr.title.slice(0, 37) + '...' : pr.title;
53
- const branches = `${pr.sourceBranch} → ${pr.targetBranch}`;
54
- const branchesDisplay = branches.length > 27 ? branches.slice(0, 27) + '...' : branches;
55
- return (_jsxs(Box, { children: [_jsx(Box, { width: 8, children: _jsxs(Text, { inverse: isSelected, bold: isSelected, children: ["#", pr.number] }) }), _jsx(Box, { width: 40, children: _jsx(Text, { inverse: isSelected, bold: isSelected, children: title }) }), _jsx(Box, { width: 12, children: isSelected ? (_jsx(Text, { inverse: true, children: pr.status })) : (_jsx(ColorPill, { field: "status", value: pr.status })) }), _jsx(Box, { width: 30, children: _jsx(Text, { inverse: isSelected, color: muted, dimColor: mutedDim, children: branchesDisplay }) }), _jsx(Box, { width: 16, children: _jsx(Text, { inverse: isSelected, children: pr.author }) }), _jsx(Box, { width: 6, children: _jsx(Text, { inverse: isSelected, children: pr.linkedItems.length > 0
56
- ? String(pr.linkedItems.length)
57
- : '' }) })] }, pr.id));
58
- })] })), _jsx(Box, { marginTop: 1, children: _jsx(Text, { color: muted, dimColor: mutedDim, children: "j/k navigate \u00B7 Enter/o open in browser \u00B7 Esc back \u00B7 ? help" }) })] }));
119
+ return (_jsxs(Box, { flexDirection: "column", padding: 1, children: [_jsxs(Box, { marginBottom: 1, children: [_jsx(Text, { bold: true, color: accent, children: "Pull Requests" }), _jsxs(Text, { color: muted, dimColor: mutedDim, children: [' ', "(", pullRequests.length, ")"] })] }), pullRequests.length === 0 ? (_jsx(Box, { children: _jsx(Text, { color: muted, dimColor: mutedDim, children: "No pull requests" }) })) : (_jsx(TableLayout, { items: pullRequests, columns: prColumns, cursor: clampedCursor, terminalWidth: termWidth, getKey: (pr) => pr.id })), _jsx(Box, { marginTop: 1, children: _jsx(Text, { color: muted, dimColor: mutedDim, children: "j/k navigate \u00B7 Enter/o open in browser \u00B7 / search \u00B7 Esc back \u00B7 ? help" }) }), activeOverlay?.type === 'command-bar' && (_jsx(CommandBar, { commands: [], onCommand: () => closeOverlay(), onCancel: closeOverlay }))] }));
59
120
  }
60
121
  //# sourceMappingURL=PullRequestList.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PullRequestList.js","sourceRoot":"","sources":["../../src/components/PullRequestList.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PullRequestList.js","sourceRoot":"","sources":["../../src/components/PullRequestList.tsx"],"names":[],"mappings":"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"}
@@ -1,15 +1,31 @@
1
- import type { BackendCapabilities } from '../backends/types.js';
2
- import type { TreeItem } from './buildTree.js';
1
+ import type { ReactElement, ReactNode } from 'react';
3
2
  import type { SortEntry } from '../stores/listViewStore.js';
4
- interface TableLayoutProps {
5
- treeItems: TreeItem[];
3
+ export interface ColumnDef<T> {
4
+ key: string;
5
+ header: string;
6
+ /** Fixed width in chars. Use -1 for flex column (gets remaining space). */
7
+ width: number;
8
+ render: (item: T, selected: boolean) => ReactNode;
9
+ /** If true, column is never hidden responsively. Default false. */
10
+ required?: boolean;
11
+ /** Higher number = kept longer when space is tight. Default 0. */
12
+ hidePriority?: number;
13
+ /** Return true if any item has data for this column. If false, column is skipped entirely. */
14
+ hasData?: (items: T[]) => boolean;
15
+ /** Show sort indicator in header when sortStack includes this key. */
16
+ sortable?: boolean;
17
+ }
18
+ export interface TableLayoutProps<T> {
19
+ items: T[];
20
+ columns: ColumnDef<T>[];
6
21
  cursor: number;
7
- capabilities: BackendCapabilities;
8
- collapsedIds: Set<string>;
9
- markedIds: Set<string>;
10
22
  terminalWidth: number;
23
+ getKey: (item: T) => string;
24
+ /** Show '>' marker column. Default true. */
25
+ showMarker?: boolean;
26
+ /** Whether this item is marked for bulk operations. */
27
+ isMarked?: (item: T) => boolean;
28
+ /** Multi-column sort state for header indicators. */
11
29
  sortStack?: SortEntry[];
12
30
  }
13
- declare function TableLayoutInner({ treeItems, cursor, capabilities, collapsedIds, markedIds, terminalWidth, sortStack, }: TableLayoutProps): import("react/jsx-runtime").JSX.Element;
14
- export declare const TableLayout: import("react").MemoExoticComponent<typeof TableLayoutInner>;
15
- export {};
31
+ export declare const TableLayout: <T>(props: TableLayoutProps<T>) => ReactElement;