@openviking/react 0.1.0 → 0.1.2
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.
- package/README.md +57 -34
- package/dist/3~0.js +2117 -0
- package/dist/ark-message-list-view~0.js +310 -0
- package/dist/a~0.js +21 -0
- package/dist/c7~0.js +24 -0
- package/dist/client/client.d.ts +12 -0
- package/dist/client/errors.d.ts +30 -0
- package/dist/client/index.d.ts +4 -0
- package/dist/client/options.d.ts +101 -0
- package/dist/client/provider.d.ts +52 -0
- package/dist/client/types.d.ts +160 -0
- package/dist/client.js +239 -0
- package/dist/components/agent-connect/agent-connect-copy.d.ts +34 -0
- package/dist/components/agent-connect/agent-connect-design.d.ts +1781 -0
- package/dist/components/agent-connect/agent-connect-detail.d.ts +13 -0
- package/dist/components/agent-connect/agent-connect-installer.d.ts +3 -0
- package/dist/components/agent-connect/agent-connect-instructions-view.d.ts +14 -0
- package/dist/components/agent-connect/agent-connect-instructions.d.ts +145 -0
- package/dist/components/agent-connect/agent-connect-markdown.d.ts +3 -0
- package/dist/components/agent-connect/agent-connect.d.ts +4 -1
- package/dist/components/agent-connect/content-en.d.ts +137 -0
- package/dist/components/agent-connect/content-zh.d.ts +137 -0
- package/dist/components/agent-connect/index.d.ts +1 -0
- package/dist/components/agent-connect/style.css +503 -0
- package/dist/components/agent-connect/types.d.ts +29 -0
- package/dist/components/agent-connect.js +1 -0
- package/dist/components/file-preview/file-preview-adapters.d.ts +33 -0
- package/dist/components/file-preview/file-preview-body.d.ts +27 -0
- package/dist/components/file-preview/file-preview-breadcrumb-menu.d.ts +16 -0
- package/dist/components/file-preview/file-preview-breadcrumb.d.ts +21 -0
- package/dist/components/file-preview/file-preview-copy-path.d.ts +12 -0
- package/dist/components/file-preview/file-preview-editor.d.ts +22 -0
- package/dist/components/file-preview/file-preview-handle-adapters.d.ts +26 -0
- package/dist/components/file-preview/file-preview-header.d.ts +25 -0
- package/dist/components/file-preview/file-preview-labels.d.ts +16 -0
- package/dist/components/file-preview/file-preview-lazy-viewer.d.ts +3 -0
- package/dist/components/file-preview/file-preview-path.d.ts +30 -0
- package/dist/components/file-preview/file-preview-source.d.ts +24 -0
- package/dist/components/file-preview/file-preview-state.d.ts +28 -0
- package/dist/components/file-preview/file-preview-tab-row.d.ts +16 -0
- package/dist/components/file-preview/file-preview-viewer.d.ts +31 -0
- package/dist/components/file-preview/file-preview.d.ts +14 -1
- package/dist/components/file-preview/index.d.ts +1 -0
- package/dist/components/file-preview/style.css +4139 -0
- package/dist/components/file-preview/types.d.ts +516 -0
- package/dist/components/file-preview/use-file-preview-actions-context.d.ts +23 -0
- package/dist/components/file-preview/use-file-preview-actions.d.ts +19 -0
- package/dist/components/file-preview/use-file-preview-editing.d.ts +32 -0
- package/dist/components/file-preview/use-file-preview-ids.d.ts +24 -0
- package/dist/components/file-preview.js +1 -0
- package/dist/components/file-tree/file-tree-body.d.ts +18 -0
- package/dist/components/file-tree/file-tree-entry-row.d.ts +12 -0
- package/dist/components/file-tree/file-tree-icons.d.ts +15 -0
- package/dist/components/file-tree/file-tree-info-labels.d.ts +21 -0
- package/dist/components/file-tree/file-tree-info-tooltip.d.ts +43 -0
- package/dist/components/file-tree/file-tree-info.d.ts +29 -0
- package/dist/components/file-tree/file-tree-keyboard.d.ts +14 -0
- package/dist/components/file-tree/file-tree-row-context.d.ts +46 -0
- package/dist/components/file-tree/file-tree-row-shared.d.ts +11 -0
- package/dist/components/file-tree/file-tree-spinner.d.ts +10 -0
- package/dist/components/file-tree/file-tree-state-row.d.ts +7 -0
- package/dist/components/file-tree/file-tree-tooltip-surface.d.ts +22 -0
- package/dist/components/file-tree/file-tree-tooltip.d.ts +17 -0
- package/dist/components/file-tree/file-tree.d.ts +15 -1
- package/dist/components/file-tree/index.d.ts +1 -0
- package/dist/components/file-tree/style.css +410 -0
- package/dist/components/file-tree/types.d.ts +589 -0
- package/dist/components/file-tree/use-file-tree-actions.d.ts +17 -0
- package/dist/components/file-tree.js +1 -0
- package/dist/components/scope-switcher/index.d.ts +1 -0
- package/dist/components/scope-switcher/scope-keyboard.d.ts +2 -0
- package/dist/components/scope-switcher/scope-panel.d.ts +11 -0
- package/dist/components/scope-switcher/scope-selector.d.ts +2 -0
- package/dist/components/scope-switcher/scope-switcher.d.ts +6 -1
- package/dist/components/scope-switcher/style.css +452 -0
- package/dist/components/scope-switcher/types.d.ts +489 -0
- package/dist/components/scope-switcher.js +3 -0
- package/dist/components/style.css +14249 -18
- package/dist/components/tui/command-catalog.d.ts +58 -0
- package/dist/components/tui/command-completion.d.ts +19 -0
- package/dist/components/tui/command-definitions.d.ts +10 -0
- package/dist/components/tui/command-input.d.ts +16 -0
- package/dist/components/tui/index.d.ts +1 -0
- package/dist/components/tui/style.css +1552 -0
- package/dist/components/tui/tui-assist.d.ts +15 -0
- package/dist/components/tui/tui-code-block.d.ts +8 -0
- package/dist/components/tui/tui-command-help.d.ts +9 -0
- package/dist/components/tui/tui-command-text.d.ts +6 -0
- package/dist/components/tui/tui-composer.d.ts +24 -0
- package/dist/components/tui/tui-copy-button.d.ts +9 -0
- package/dist/components/tui/tui-input-mirror.d.ts +14 -0
- package/dist/components/tui/tui-labels-zh.d.ts +2 -0
- package/dist/components/tui/tui-labels.d.ts +5 -0
- package/dist/components/tui/tui-markdown-renderers.d.ts +10 -0
- package/dist/components/tui/tui-markdown.d.ts +6 -0
- package/dist/components/tui/tui-param-hint.d.ts +7 -0
- package/dist/components/tui/tui-record-time.d.ts +11 -0
- package/dist/components/tui/tui-record.d.ts +13 -0
- package/dist/components/tui/tui-resource-preview.d.ts +10 -0
- package/dist/components/tui/tui-resource-tree.d.ts +10 -0
- package/dist/components/tui/tui-result-header.d.ts +7 -0
- package/dist/components/tui/tui-result-text.d.ts +5 -0
- package/dist/components/tui/tui-search-list.d.ts +8 -0
- package/dist/components/tui/tui-skeleton.d.ts +6 -0
- package/dist/components/tui/tui-status-card.d.ts +7 -0
- package/dist/components/tui/tui-text.d.ts +10 -0
- package/dist/components/tui/tui-uri-text.d.ts +19 -0
- package/dist/components/tui/tui-write-result.d.ts +7 -0
- package/dist/components/tui/tui.d.ts +11 -1
- package/dist/components/tui/types.d.ts +527 -0
- package/dist/components/tui/use-tui-assist-position.d.ts +3 -0
- package/dist/components/tui/use-tui-completion.d.ts +14 -0
- package/dist/components/tui/use-tui-composer-keyboard.d.ts +25 -0
- package/dist/components/tui.js +1 -0
- package/dist/components/viking-bot/ark-adapter.d.ts +45 -0
- package/dist/components/viking-bot/ark-message-body.d.ts +16 -0
- package/dist/components/viking-bot/ark-message-list-view.d.ts +7 -0
- package/dist/components/viking-bot/ark-message-row.d.ts +19 -0
- package/dist/components/viking-bot/index.d.ts +10 -0
- package/dist/components/viking-bot/interaction/ask-human-fields.d.ts +10 -0
- package/dist/components/viking-bot/interaction/index.d.ts +4 -0
- package/dist/components/viking-bot/interaction/labels.d.ts +7 -0
- package/dist/components/viking-bot/interaction/lazy-interaction.d.ts +3 -0
- package/dist/components/viking-bot/interaction/schedule-input.d.ts +13 -0
- package/dist/components/viking-bot/interaction/style.css +189 -0
- package/dist/components/viking-bot/interaction/types.d.ts +188 -0
- package/dist/components/viking-bot/interaction/viking-bot-interaction.d.ts +9 -0
- package/dist/components/viking-bot/interaction.js +2 -0
- package/dist/components/viking-bot/labels.d.ts +2 -0
- package/dist/components/viking-bot/lazy-composer.d.ts +3 -0
- package/dist/components/viking-bot/message-groups.d.ts +12 -0
- package/dist/components/viking-bot/model.d.ts +252 -0
- package/dist/components/viking-bot/render-part.d.ts +12 -0
- package/dist/components/viking-bot/style.css +7133 -0
- package/dist/components/viking-bot/types.d.ts +140 -0
- package/dist/components/viking-bot/viking-bot-composer.d.ts +6 -0
- package/dist/components/viking-bot/viking-bot-message-list.d.ts +3 -0
- package/dist/components/viking-bot/viking-bot.d.ts +16 -1
- package/dist/components/viking-bot.js +4 -0
- package/dist/c~0.js +201 -0
- package/dist/file-preview-viewer~0.js +191 -0
- package/dist/f~0.js +356 -0
- package/dist/g~0.js +1207 -0
- package/dist/h~0.js +58 -0
- package/dist/icons/file-type-icon.d.ts +31 -0
- package/dist/icons/index.d.ts +33 -23
- package/dist/icons/nextjs-icon.d.ts +19 -0
- package/dist/icons.js +1 -25
- package/dist/index.d.ts +16 -2
- package/dist/index.js +8 -1
- package/dist/k~0.js +1440 -0
- package/dist/lk~0.js +233 -0
- package/dist/l~0.js +44 -0
- package/dist/modules/console/console.d.ts +4 -0
- package/dist/modules/console/index.d.ts +1 -0
- package/dist/modules/console/style.css +111 -0
- package/dist/modules/console/types.d.ts +101 -0
- package/dist/modules/console.js +1 -0
- package/dist/modules/file-browser/file-browser-toolbar-button.d.ts +10 -0
- package/dist/modules/file-browser/file-browser.d.ts +6 -0
- package/dist/modules/file-browser/index.d.ts +1 -0
- package/dist/modules/file-browser/style.css +158 -0
- package/dist/modules/file-browser/types.d.ts +101 -0
- package/dist/modules/file-browser.js +1 -0
- package/dist/modules/scope-cascade/controller.d.ts +6 -0
- package/dist/modules/scope-cascade/index.d.ts +3 -0
- package/dist/modules/scope-cascade/scope-cascade.d.ts +3 -0
- package/dist/modules/scope-cascade/style.css +456 -0
- package/dist/modules/scope-cascade/style.js +0 -0
- package/dist/modules/scope-cascade/types.d.ts +39 -0
- package/dist/modules/scope-cascade/use-scope-cascade.d.ts +5 -0
- package/dist/modules/scope-cascade.js +1 -0
- package/dist/modules/style.css +808 -0
- package/dist/modules/style.js +0 -0
- package/dist/n~0.js +727 -0
- package/dist/shared/components/tooltip/index.d.ts +1 -0
- package/dist/shared/components/tooltip/tooltip.d.ts +25 -0
- package/dist/shared/components/tooltip/types.d.ts +42 -0
- package/dist/shared/components/tooltip/use-tooltip-position.d.ts +38 -0
- package/dist/style.css +15138 -18
- package/dist/u~0.js +1601 -0
- package/dist/viking-bot-composer~0.js +164 -0
- package/dist/viking-bot-interaction~0.js +284 -0
- package/dist/w~0.js +19 -0
- package/package.json +46 -22
- package/dist/components/resource-import/resource-import.d.ts +0 -1
- package/dist/components/resource-import/style.css +0 -2
- package/dist/components/status-badge/status-badge.d.ts +0 -8
- package/dist/components/status-badge/style.css +0 -37
- package/dist/components/status-badge.js +0 -30
- /package/dist/components/{resource-import → viking-bot/interaction}/style.js +0 -0
- /package/dist/{components/status-badge → modules/console}/style.js +0 -0
- /package/dist/{components/resource-import.js → modules/file-browser/style.js} +0 -0
|
@@ -0,0 +1,589 @@
|
|
|
1
|
+
import type { ForwardRefExoticComponent, HTMLAttributes, PropsWithoutRef, ReactNode, RefAttributes } from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* 所有行的公共字段。行是按宿主展平后的顺序渲染的,因此 `id` 与 `depth` 每行都要有。
|
|
4
|
+
*
|
|
5
|
+
* Fields shared by every row. Rows render in the host-flattened order, so each
|
|
6
|
+
* one carries its own `id` and `depth`.
|
|
7
|
+
*/
|
|
8
|
+
export interface FileTreeRowBase {
|
|
9
|
+
/**
|
|
10
|
+
* 行唯一标识,用于选中与定位。
|
|
11
|
+
* Unique row identity, used for selection and lookup.
|
|
12
|
+
*/
|
|
13
|
+
id: string;
|
|
14
|
+
/**
|
|
15
|
+
* 缩进层级,根层为 `0`。
|
|
16
|
+
* Indentation level; the root level is `0`.
|
|
17
|
+
*/
|
|
18
|
+
depth: number;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* 子节点区域的行。这些行挂在某个父节点下方,用 `parentId` 表示归属。
|
|
22
|
+
*
|
|
23
|
+
* A row inside a children area. These rows sit under a parent node and use
|
|
24
|
+
* `parentId` to name it.
|
|
25
|
+
*/
|
|
26
|
+
export interface FileTreeChildRow extends FileTreeRowBase {
|
|
27
|
+
/**
|
|
28
|
+
* 所属父节点的 id。整体加载失败、没有具体父节点时省略。
|
|
29
|
+
* Id of the owning parent; omitted when the failure is not tied to a parent.
|
|
30
|
+
*/
|
|
31
|
+
parentId?: string;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* 树中一条可见的行。宿主把自己的树状态展开成有序行列表后传入,
|
|
35
|
+
* 因此展开、分页、加载、错误行都由调用方决定,组件不感知树结构。
|
|
36
|
+
*
|
|
37
|
+
* One visible row of the tree. The host flattens its own tree state into this
|
|
38
|
+
* ordered list, so expansion, pagination, loading and error rows all come from
|
|
39
|
+
* the caller and the component never inspects the tree structure.
|
|
40
|
+
*/
|
|
41
|
+
export type FileTreeRow = FileTreeEntryRow | FileTreeLoadingRow | FileTreeLoadMoreRow | FileTreeErrorRow | FileTreeEmptyRow;
|
|
42
|
+
/**
|
|
43
|
+
* 一个目录或文件行。只保留渲染必需的字段,宿主负责把自身数据映射到该形状。
|
|
44
|
+
*
|
|
45
|
+
* A directory or file row. Only what rendering needs is kept here; the host
|
|
46
|
+
* maps its own data onto this shape.
|
|
47
|
+
*/
|
|
48
|
+
export interface FileTreeEntryRow extends FileTreeRowBase {
|
|
49
|
+
/**
|
|
50
|
+
* 行类型标记,固定为 `entry`。
|
|
51
|
+
* Row kind discriminator, always `entry`.
|
|
52
|
+
*/
|
|
53
|
+
kind: 'entry';
|
|
54
|
+
/**
|
|
55
|
+
* 资源标识,通过回调原样回传。
|
|
56
|
+
* Resource identifier reported back through callbacks unchanged.
|
|
57
|
+
*/
|
|
58
|
+
uri: string;
|
|
59
|
+
/**
|
|
60
|
+
* 显示名称。
|
|
61
|
+
* Display name.
|
|
62
|
+
*/
|
|
63
|
+
name: string;
|
|
64
|
+
/**
|
|
65
|
+
* 节点类型:目录或文件。
|
|
66
|
+
* Node type: directory or file.
|
|
67
|
+
*/
|
|
68
|
+
type:
|
|
69
|
+
/**
|
|
70
|
+
* 目录。
|
|
71
|
+
* Directory.
|
|
72
|
+
*/
|
|
73
|
+
'directory'
|
|
74
|
+
/**
|
|
75
|
+
* 文件。
|
|
76
|
+
* File.
|
|
77
|
+
*/
|
|
78
|
+
| 'file';
|
|
79
|
+
/**
|
|
80
|
+
* 是否还有可加载的子节点。目录行未提供该字段时按「可以展开」处理,
|
|
81
|
+
* 因此宿主在展开前无法得知子节点时无需传值;明确没有子节点时传 `false`。
|
|
82
|
+
* Whether children can be loaded. A directory row without this field is
|
|
83
|
+
* treated as expandable, so a host that cannot know before expanding can
|
|
84
|
+
* omit it; pass `false` when the directory is known to be childless.
|
|
85
|
+
*/
|
|
86
|
+
hasChildren?: boolean;
|
|
87
|
+
/**
|
|
88
|
+
* 当前是否处于展开状态。
|
|
89
|
+
* Whether the node is currently expanded.
|
|
90
|
+
*/
|
|
91
|
+
expanded?: boolean;
|
|
92
|
+
/**
|
|
93
|
+
* 行可见但不可打开或选中,例如没有详情权限的节点。
|
|
94
|
+
* The row is visible but cannot be opened or selected, for example a node
|
|
95
|
+
* without detail permission.
|
|
96
|
+
*/
|
|
97
|
+
disabled?: boolean;
|
|
98
|
+
/**
|
|
99
|
+
* 名称下方的次要说明,例如摘要或行内描述。
|
|
100
|
+
* Secondary line under the name, for example an abstract or inline
|
|
101
|
+
* description.
|
|
102
|
+
*/
|
|
103
|
+
description?: string;
|
|
104
|
+
/**
|
|
105
|
+
* 简短标记,例如摘要层级或上下文层级。不需要时省略。
|
|
106
|
+
* Short badge, for example a summary level or context level; omit it when
|
|
107
|
+
* unused.
|
|
108
|
+
*/
|
|
109
|
+
levelLabel?: string;
|
|
110
|
+
/**
|
|
111
|
+
* 是否显示该节点上有进行中的写入。
|
|
112
|
+
* Shows an in-flight write on this node.
|
|
113
|
+
*/
|
|
114
|
+
busy?: boolean;
|
|
115
|
+
/**
|
|
116
|
+
* 过期时间,未知时为 `null`。宿主没有过期策略时省略。
|
|
117
|
+
* Expiry time, or `null` when unknown; omit it when the host has no expiry
|
|
118
|
+
* policy.
|
|
119
|
+
*/
|
|
120
|
+
expiresAt?: string | null;
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* 子节点加载中的行,插在父节点下方占位。
|
|
124
|
+
* A row shown under a parent while its children are loading.
|
|
125
|
+
*
|
|
126
|
+
* 宿主在子节点区域渲染加载占位时产出这类行;也可以不产出,
|
|
127
|
+
* 改用行内加载指示表达。
|
|
128
|
+
* The host emits this row when the children area shows a loading placeholder;
|
|
129
|
+
* it may also skip the row and use an inline indicator instead.
|
|
130
|
+
*/
|
|
131
|
+
export interface FileTreeLoadingRow extends FileTreeChildRow {
|
|
132
|
+
/**
|
|
133
|
+
* 行类型标记,固定为 `loading`。
|
|
134
|
+
* Row kind discriminator, always `loading`.
|
|
135
|
+
*/
|
|
136
|
+
kind: 'loading';
|
|
137
|
+
/**
|
|
138
|
+
* 正在加载子节点的父节点 id。
|
|
139
|
+
* Id of the parent whose children are loading.
|
|
140
|
+
*/
|
|
141
|
+
parentId: string;
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* 子节点尚未加载时的分页行,提供继续加载的入口。
|
|
145
|
+
* A pagination row for children the host has not loaded yet; the host uses it
|
|
146
|
+
* to offer a load-more entry.
|
|
147
|
+
*
|
|
148
|
+
* 宿主按页取子节点时产出这类行;一次性返回全部子节点时不产出。
|
|
149
|
+
* The host emits this row when children are paged; it is not emitted when all
|
|
150
|
+
* children arrive in one response.
|
|
151
|
+
*/
|
|
152
|
+
export interface FileTreeLoadMoreRow extends FileTreeChildRow {
|
|
153
|
+
/**
|
|
154
|
+
* 行类型标记,固定为 `load-more`。
|
|
155
|
+
* Row kind discriminator, always `load-more`.
|
|
156
|
+
*/
|
|
157
|
+
kind: 'load-more';
|
|
158
|
+
/**
|
|
159
|
+
* 需要继续加载子节点的父节点 id。
|
|
160
|
+
* Id of the parent whose children should be loaded next.
|
|
161
|
+
*/
|
|
162
|
+
parentId: string;
|
|
163
|
+
/**
|
|
164
|
+
* 下一页是否正在加载。
|
|
165
|
+
* Whether the next page is loading.
|
|
166
|
+
*/
|
|
167
|
+
loading?: boolean;
|
|
168
|
+
}
|
|
169
|
+
/**
|
|
170
|
+
* 子节点加载失败的行,提供重新加载的入口。
|
|
171
|
+
* A failed children load with a retry entry.
|
|
172
|
+
*/
|
|
173
|
+
export interface FileTreeErrorRow extends FileTreeChildRow {
|
|
174
|
+
/**
|
|
175
|
+
* 行类型标记,固定为 `error`。
|
|
176
|
+
* Row kind discriminator, always `error`.
|
|
177
|
+
*/
|
|
178
|
+
kind: 'error';
|
|
179
|
+
/**
|
|
180
|
+
* 失败原因,未提供时显示默认文案。
|
|
181
|
+
* Failure reason; the default copy is used when omitted.
|
|
182
|
+
*/
|
|
183
|
+
message?: string;
|
|
184
|
+
}
|
|
185
|
+
/**
|
|
186
|
+
* 已展开但当前没有子节点的目录。
|
|
187
|
+
* An expanded directory that currently has no children.
|
|
188
|
+
*/
|
|
189
|
+
export interface FileTreeEmptyRow extends FileTreeChildRow {
|
|
190
|
+
/**
|
|
191
|
+
* 行类型标记,固定为 `empty`。
|
|
192
|
+
* Row kind discriminator, always `empty`.
|
|
193
|
+
*/
|
|
194
|
+
kind: 'empty';
|
|
195
|
+
/**
|
|
196
|
+
* 该空目录的 id。
|
|
197
|
+
* Id of the empty directory.
|
|
198
|
+
*/
|
|
199
|
+
parentId: string;
|
|
200
|
+
}
|
|
201
|
+
/**
|
|
202
|
+
* 目录语义键。组件按行 `uri` 的路径结构判定,用它取说明与触发行为文案。
|
|
203
|
+
*
|
|
204
|
+
* 判定规则属于组件内部实现,宿主只需按需覆盖文案;键为空表示该路径没有内置说明。
|
|
205
|
+
*
|
|
206
|
+
* Semantic key of a directory. The component derives it from the structure of a
|
|
207
|
+
* row's `uri` and uses it to pick the description and trigger copy.
|
|
208
|
+
*
|
|
209
|
+
* The matching rules are internal; a host only overrides copy. An unmatched path
|
|
210
|
+
* has no built-in description.
|
|
211
|
+
*/
|
|
212
|
+
export type FileTreeInfoKey =
|
|
213
|
+
/**
|
|
214
|
+
* 用户根目录,`viking://user/{id}`。
|
|
215
|
+
* User root, `viking://user/{id}`.
|
|
216
|
+
*/
|
|
217
|
+
'userRoot'
|
|
218
|
+
/**
|
|
219
|
+
* 长期记忆,`/memories`。
|
|
220
|
+
* Long-term memory, `/memories`.
|
|
221
|
+
*/
|
|
222
|
+
| 'memories'
|
|
223
|
+
/**
|
|
224
|
+
* 按应用或工作区隔离的上下文,`/peers`。
|
|
225
|
+
* Context isolated per application or workspace, `/peers`.
|
|
226
|
+
*/
|
|
227
|
+
| 'peers'
|
|
228
|
+
/**
|
|
229
|
+
* 密钥等敏感配置,`/privacy`。
|
|
230
|
+
* Keys and other sensitive configuration, `/privacy`.
|
|
231
|
+
*/
|
|
232
|
+
| 'privacy'
|
|
233
|
+
/**
|
|
234
|
+
* 用户私有资料,`/resources`。
|
|
235
|
+
* Private user knowledge, `/resources`.
|
|
236
|
+
*/
|
|
237
|
+
| 'userResources'
|
|
238
|
+
/**
|
|
239
|
+
* 会话与任务记录,`/sessions`。
|
|
240
|
+
* Conversation and task records, `/sessions`.
|
|
241
|
+
*/
|
|
242
|
+
| 'sessions'
|
|
243
|
+
/**
|
|
244
|
+
* 个人技能,`/skills`。
|
|
245
|
+
* Personal skills, `/skills`.
|
|
246
|
+
*/
|
|
247
|
+
| 'skills'
|
|
248
|
+
/**
|
|
249
|
+
* 用户身份与背景,`/memories/profile.md`。
|
|
250
|
+
* User identity and background, `/memories/profile.md`.
|
|
251
|
+
*/
|
|
252
|
+
| 'profile'
|
|
253
|
+
/**
|
|
254
|
+
* 个性化偏好,`/memories/preferences`。
|
|
255
|
+
* Personalized preferences, `/memories/preferences`.
|
|
256
|
+
*/
|
|
257
|
+
| 'preferences'
|
|
258
|
+
/**
|
|
259
|
+
* 人物、项目、组织等实体,`/memories/entities`。
|
|
260
|
+
* People, projects and organizations, `/memories/entities`.
|
|
261
|
+
*/
|
|
262
|
+
| 'entities'
|
|
263
|
+
/**
|
|
264
|
+
* 按日期归档的关键事件,`/memories/events`。
|
|
265
|
+
* Key events archived by date, `/memories/events`.
|
|
266
|
+
*/
|
|
267
|
+
| 'events'
|
|
268
|
+
/**
|
|
269
|
+
* Agent 名称与人设,`/memories/identity.md`。
|
|
270
|
+
* Agent name and persona, `/memories/identity.md`.
|
|
271
|
+
*/
|
|
272
|
+
| 'identity'
|
|
273
|
+
/**
|
|
274
|
+
* Agent 行为准则,`/memories/soul.md`。
|
|
275
|
+
* Agent behaviour guidelines, `/memories/soul.md`.
|
|
276
|
+
*/
|
|
277
|
+
| 'soul'
|
|
278
|
+
/**
|
|
279
|
+
* 用于经验训练的交互案例,`/memories/cases`。
|
|
280
|
+
* Interaction cases used to train experience, `/memories/cases`.
|
|
281
|
+
*/
|
|
282
|
+
| 'cases'
|
|
283
|
+
/**
|
|
284
|
+
* 可复用的任务执行轨迹,`/memories/trajectories`。
|
|
285
|
+
* Reusable task trajectories, `/memories/trajectories`.
|
|
286
|
+
*/
|
|
287
|
+
| 'trajectories'
|
|
288
|
+
/**
|
|
289
|
+
* 自动提炼的执行经验,`/memories/experiences`。
|
|
290
|
+
* Distilled execution experience, `/memories/experiences`.
|
|
291
|
+
*/
|
|
292
|
+
| 'experiences'
|
|
293
|
+
/**
|
|
294
|
+
* 数据库内共享的资料,`viking://resources`。
|
|
295
|
+
* Knowledge shared across the database, `viking://resources`.
|
|
296
|
+
*/
|
|
297
|
+
| 'sharedResources'
|
|
298
|
+
/**
|
|
299
|
+
* Agent 能力根目录,`viking://agent`。
|
|
300
|
+
* Agent capability root, `viking://agent`.
|
|
301
|
+
*/
|
|
302
|
+
| 'agentRoot'
|
|
303
|
+
/**
|
|
304
|
+
* 记忆根目录,`viking://memory`。
|
|
305
|
+
* Memory root, `viking://memory`.
|
|
306
|
+
*/
|
|
307
|
+
| 'memoryRoot'
|
|
308
|
+
/**
|
|
309
|
+
* 外部知识根目录,`viking://resource`。
|
|
310
|
+
* External knowledge root, `viking://resource`.
|
|
311
|
+
*/
|
|
312
|
+
| 'resourceRoot'
|
|
313
|
+
/**
|
|
314
|
+
* 会话根目录,`viking://session`。
|
|
315
|
+
* Session root, `viking://session`.
|
|
316
|
+
*/
|
|
317
|
+
| 'sessionRoot'
|
|
318
|
+
/**
|
|
319
|
+
* 内置资产根目录,`viking://system`。
|
|
320
|
+
* Built-in asset root, `viking://system`.
|
|
321
|
+
*/
|
|
322
|
+
| 'systemRoot';
|
|
323
|
+
/**
|
|
324
|
+
* 目录说明文案。未提供的键沿用内置英文;传空字符串表示该键不显示。
|
|
325
|
+
*
|
|
326
|
+
* Directory copy. Keys left out keep the built-in English; an empty string
|
|
327
|
+
* hides that key.
|
|
328
|
+
*/
|
|
329
|
+
export interface FileTreeInfoLabels {
|
|
330
|
+
/**
|
|
331
|
+
* 说明,显示在浮层的「说明」一行,部分键也显示在行内。
|
|
332
|
+
* Description, shown in the tooltip and, for some keys, inline.
|
|
333
|
+
*/
|
|
334
|
+
description?: Partial<Record<FileTreeInfoKey, string>>;
|
|
335
|
+
/**
|
|
336
|
+
* 触发行为,说明该节点在什么条件下被写入或生成,只显示在浮层。
|
|
337
|
+
* Trigger copy: when this node is written or generated. Tooltip only.
|
|
338
|
+
*/
|
|
339
|
+
triggerBehavior?: Partial<Record<FileTreeInfoKey, string>>;
|
|
340
|
+
/**
|
|
341
|
+
* 浮层里各行的字段名。
|
|
342
|
+
* Field names used inside the tooltip.
|
|
343
|
+
*/
|
|
344
|
+
field?: {
|
|
345
|
+
/**
|
|
346
|
+
* 「说明」字段名。
|
|
347
|
+
* Label of the description row.
|
|
348
|
+
*/
|
|
349
|
+
description?: string;
|
|
350
|
+
/**
|
|
351
|
+
* 「触发行为」字段名。
|
|
352
|
+
* Label of the trigger row.
|
|
353
|
+
*/
|
|
354
|
+
triggerBehavior?: string;
|
|
355
|
+
/**
|
|
356
|
+
* 「路径」字段名。
|
|
357
|
+
* Label of the path row.
|
|
358
|
+
*/
|
|
359
|
+
path?: string;
|
|
360
|
+
};
|
|
361
|
+
}
|
|
362
|
+
/**
|
|
363
|
+
* 可替换文案,组件内置英文默认值。
|
|
364
|
+
* Replaceable copy; the component ships English defaults.
|
|
365
|
+
*/
|
|
366
|
+
export interface FileTreeLabels {
|
|
367
|
+
/**
|
|
368
|
+
* 空树提示。
|
|
369
|
+
* Empty tree message.
|
|
370
|
+
*/
|
|
371
|
+
empty?: string;
|
|
372
|
+
/**
|
|
373
|
+
* 加载失败提示。
|
|
374
|
+
* Load failure message.
|
|
375
|
+
*/
|
|
376
|
+
error?: string;
|
|
377
|
+
/**
|
|
378
|
+
* 重试按钮文案。
|
|
379
|
+
* Retry button label.
|
|
380
|
+
*/
|
|
381
|
+
retry?: string;
|
|
382
|
+
/**
|
|
383
|
+
* 加载更多按钮文案。
|
|
384
|
+
* Load-more button label.
|
|
385
|
+
*/
|
|
386
|
+
loadMore?: string;
|
|
387
|
+
/**
|
|
388
|
+
* 子节点加载中的提示。
|
|
389
|
+
* Message shown while children load.
|
|
390
|
+
*/
|
|
391
|
+
loading?: string;
|
|
392
|
+
/**
|
|
393
|
+
* 展开按钮的无障碍名称,`{name}` 会被替换为节点名。
|
|
394
|
+
* Accessible name of the expand control; `{name}` is replaced with the node
|
|
395
|
+
* name.
|
|
396
|
+
*/
|
|
397
|
+
expand?: string;
|
|
398
|
+
/**
|
|
399
|
+
* 折叠按钮的无障碍名称,`{name}` 会被替换为节点名。
|
|
400
|
+
* Accessible name of the collapse control; `{name}` is replaced with the
|
|
401
|
+
* node name.
|
|
402
|
+
*/
|
|
403
|
+
collapse?: string;
|
|
404
|
+
/**
|
|
405
|
+
* 目录说明与浮层字段名。省略时使用内置文案。
|
|
406
|
+
* Directory copy and tooltip field names; built-in copy is used when omitted.
|
|
407
|
+
*/
|
|
408
|
+
info?: FileTreeInfoLabels;
|
|
409
|
+
}
|
|
410
|
+
/**
|
|
411
|
+
* 树的插槽。目前只有工具栏,页面层可自行决定内容与交互。
|
|
412
|
+
* Slots of the tree. Only the toolbar for now; the page layer owns its content
|
|
413
|
+
* and interaction.
|
|
414
|
+
*/
|
|
415
|
+
export interface FileTreeSlots {
|
|
416
|
+
/**
|
|
417
|
+
* 树上方的工具栏,例如搜索、导入来源、刷新。
|
|
418
|
+
* Toolbar above the tree, for example search, import sources or refresh.
|
|
419
|
+
*/
|
|
420
|
+
toolbar?: ReactNode;
|
|
421
|
+
/**
|
|
422
|
+
* 替换目录加载子节点时展开箭头位置显示的转圈。省略时用内置的 CSS 圆环,
|
|
423
|
+
* 传入自己的节点可以换成图标或品牌化的加载态;节点按 12 × 12 显示。
|
|
424
|
+
* Replaces the spinner shown in the expand chevron slot while a directory
|
|
425
|
+
* loads its children. Omitted uses the built-in CSS ring; pass a node to swap
|
|
426
|
+
* in an icon or a branded loader. The node renders at 12 × 12.
|
|
427
|
+
*/
|
|
428
|
+
spinner?: ReactNode;
|
|
429
|
+
}
|
|
430
|
+
/**
|
|
431
|
+
* 行的 DOM 属性约定。组件为每条行元素设置该属性,取值等于行的 `id`,
|
|
432
|
+
* 页面层据此定位行,例如做一次性高亮、滚动定位或覆盖层。
|
|
433
|
+
*
|
|
434
|
+
* Row DOM attribute. The component sets it on every row element with the row
|
|
435
|
+
* `id` as its value, so the page layer can locate a row for a transient
|
|
436
|
+
* highlight, scroll targeting or an overlay.
|
|
437
|
+
*/
|
|
438
|
+
export declare const FILE_TREE_ROW_ATTRIBUTE = "data-file-tree-row-id";
|
|
439
|
+
/**
|
|
440
|
+
* 组件通过 ref 暴露的命令式能力,供页面层做一次性 UI 效果。
|
|
441
|
+
* Imperative capabilities exposed through the ref, for one-off page-level
|
|
442
|
+
* effects.
|
|
443
|
+
*/
|
|
444
|
+
export interface FileTreeHandle {
|
|
445
|
+
/**
|
|
446
|
+
* 取得某行的根元素,未渲染时返回 `null`。
|
|
447
|
+
* Returns the row root element, or `null` when the row is not rendered.
|
|
448
|
+
*/
|
|
449
|
+
getRowElement: (id: string) => HTMLElement | null;
|
|
450
|
+
/**
|
|
451
|
+
* 把某行滚动到可见区域,返回是否找到该行。
|
|
452
|
+
* Scrolls a row into view and reports whether it was found.
|
|
453
|
+
*/
|
|
454
|
+
scrollToRow: (id: string, options?: ScrollIntoViewOptions) => boolean;
|
|
455
|
+
}
|
|
456
|
+
/** 文件树操作的执行能力。File-tree operation capabilities. */
|
|
457
|
+
export interface FileTreeOperations {
|
|
458
|
+
/** 选中条目。Selects an entry. */
|
|
459
|
+
select?: (row: FileTreeEntryRow) => Promise<void>;
|
|
460
|
+
/** 展开或折叠目录。Expands or collapses a directory. */
|
|
461
|
+
toggleExpand?: (row: FileTreeEntryRow) => Promise<void>;
|
|
462
|
+
/** 加载下一页子节点。Loads the next page of children. */
|
|
463
|
+
loadMore?: (row: FileTreeLoadMoreRow) => Promise<void>;
|
|
464
|
+
/** 重新加载失败的子节点。Retries a failed children load. */
|
|
465
|
+
retry?: (row: FileTreeErrorRow) => Promise<void>;
|
|
466
|
+
/** 打开保留策略设置。Opens retention policy settings. */
|
|
467
|
+
openRetentionSettings?: (uri: string) => Promise<void>;
|
|
468
|
+
}
|
|
469
|
+
/**
|
|
470
|
+
* 目录树的公开接口。
|
|
471
|
+
* Public interface of the file tree.
|
|
472
|
+
*
|
|
473
|
+
* 组件渲染行并通知成功的操作;工具栏、搜索、导入、权限流程都由页面层实现,
|
|
474
|
+
* 通过 `toolbar` 插槽注入。
|
|
475
|
+
* The component renders rows and reports successful operations. Toolbars, search,
|
|
476
|
+
* import and permission flows belong to the page layer and are injected
|
|
477
|
+
* through the `toolbar` slot.
|
|
478
|
+
*/
|
|
479
|
+
export interface FileTreeProps extends Omit<HTMLAttributes<HTMLDivElement>, 'children' | 'onSelect'> {
|
|
480
|
+
/**
|
|
481
|
+
* 按渲染顺序排列的可见行。
|
|
482
|
+
* Visible rows in render order.
|
|
483
|
+
*/
|
|
484
|
+
rows: readonly FileTreeRow[];
|
|
485
|
+
/**
|
|
486
|
+
* 操作的执行能力;省略对应方法时禁用该操作。
|
|
487
|
+
* Operation capabilities; omitting a method disables its operation.
|
|
488
|
+
*/
|
|
489
|
+
operations?: FileTreeOperations;
|
|
490
|
+
/**
|
|
491
|
+
* 当前选中的行 id,由宿主持有。
|
|
492
|
+
* Selected row id, owned by the host.
|
|
493
|
+
*/
|
|
494
|
+
selectedId?: string | null;
|
|
495
|
+
/**
|
|
496
|
+
* 首次加载是否已完成。
|
|
497
|
+
* Whether the tree has finished its first load.
|
|
498
|
+
*/
|
|
499
|
+
isReady?: boolean;
|
|
500
|
+
/**
|
|
501
|
+
* 首次加载期间替代行列表显示的内容。
|
|
502
|
+
* Rendered instead of rows while the first load runs.
|
|
503
|
+
*/
|
|
504
|
+
loadingFallback?: ReactNode;
|
|
505
|
+
/**
|
|
506
|
+
* 整体加载失败时替代行列表显示的内容,通常包含标题与重试入口。
|
|
507
|
+
* Rendered instead of rows when the whole tree failed to load, usually with a
|
|
508
|
+
* title and a retry entry.
|
|
509
|
+
*/
|
|
510
|
+
errorFallback?: ReactNode;
|
|
511
|
+
/**
|
|
512
|
+
* 树中没有条目时显示的内容。
|
|
513
|
+
* Rendered instead of rows when the tree has no entries.
|
|
514
|
+
*/
|
|
515
|
+
emptyFallback?: ReactNode;
|
|
516
|
+
/**
|
|
517
|
+
* 为行元素追加属性。返回的 `className` 会与组件自身的类名合并,
|
|
518
|
+
* 其余属性覆盖到行元素上,用于一次性高亮、埋点或自定义 `data-*`。
|
|
519
|
+
* Extra attributes for a row element. The returned `className` is merged with
|
|
520
|
+
* the component's own classes and the remaining attributes are applied to
|
|
521
|
+
* the row element, for one-off highlights, analytics or custom `data-*`.
|
|
522
|
+
*/
|
|
523
|
+
getRowAttributes?: (row: FileTreeRow) => HTMLAttributes<HTMLDivElement>;
|
|
524
|
+
/**
|
|
525
|
+
* 渲染行尾的看板指示器。返回 `null` 时该行不显示指示器。内容与交互都由
|
|
526
|
+
* 宿主决定,包括点击行为与折叠时的数量角标。
|
|
527
|
+
* Renders the dashboard indicator at the end of a row. Returning `null` shows
|
|
528
|
+
* no indicator. Both the content and its interaction belong to the host,
|
|
529
|
+
* including the click behaviour and any collapsed-count badge.
|
|
530
|
+
*/
|
|
531
|
+
renderDashboard?: (row: FileTreeEntryRow) => ReactNode;
|
|
532
|
+
/**
|
|
533
|
+
* 渲染文件行的行首图标,例如按扩展名区分的类型图标。返回 `null` 或省略时用
|
|
534
|
+
* 内置的通用文件图标;目录行始终用内置的文件夹图标。
|
|
535
|
+
*
|
|
536
|
+
* Renders the leading icon of a file row, for example a type icon chosen by
|
|
537
|
+
* extension. Returning `null` or omitting it uses the built-in generic file
|
|
538
|
+
* icon; directory rows always use the built-in folder icon.
|
|
539
|
+
*/
|
|
540
|
+
renderRowIcon?: (row: FileTreeEntryRow) => ReactNode;
|
|
541
|
+
/**
|
|
542
|
+
* 渲染行的悬停浮层内容。返回 `null` 时不展示;延迟、定位与悬停抑制
|
|
543
|
+
* 由组件处理。
|
|
544
|
+
* Renders the hover content of a row. Returning `null` shows nothing; the
|
|
545
|
+
* component handles the delay, positioning and hover suppression.
|
|
546
|
+
*/
|
|
547
|
+
renderRowTooltip?: (row: FileTreeEntryRow) => ReactNode;
|
|
548
|
+
/**
|
|
549
|
+
* 条目成功选中后触发,参数为选中的条目;失败时不触发。
|
|
550
|
+
* Called after an entry is selected successfully; not called on failure.
|
|
551
|
+
*/
|
|
552
|
+
onSelect?: (row: FileTreeEntryRow) => void;
|
|
553
|
+
/**
|
|
554
|
+
* 目录成功展开或折叠后触发,参数为操作的条目;失败时不触发。
|
|
555
|
+
* Called after a directory expands or collapses successfully; not called on failure.
|
|
556
|
+
*/
|
|
557
|
+
onToggleExpand?: (row: FileTreeEntryRow) => void;
|
|
558
|
+
/**
|
|
559
|
+
* 下一页子节点加载成功后触发;失败时不触发。
|
|
560
|
+
* Called after the next page of children loads successfully; not called on failure.
|
|
561
|
+
*/
|
|
562
|
+
onLoadMore?: (row: FileTreeLoadMoreRow) => void;
|
|
563
|
+
/**
|
|
564
|
+
* 重新加载子节点成功后触发;重试失败时不触发。
|
|
565
|
+
* Called after retrying a children load succeeds; not called on failure.
|
|
566
|
+
*/
|
|
567
|
+
onRetry?: (row: FileTreeErrorRow) => void;
|
|
568
|
+
/**
|
|
569
|
+
* 保留策略设置成功打开后触发,参数为对应 URI;失败时不触发。
|
|
570
|
+
* Called after retention settings open successfully, with the URI; not called on failure.
|
|
571
|
+
*/
|
|
572
|
+
onOpenRetentionSettings?: (uri: string) => void;
|
|
573
|
+
/**
|
|
574
|
+
* 树的插槽。工具栏由页面层实现,可以是搜索、导入来源、刷新等任意组合。
|
|
575
|
+
* Slots of the tree. The toolbar is implemented by the page layer and can
|
|
576
|
+
* hold search, import sources, refresh or any other combination.
|
|
577
|
+
*/
|
|
578
|
+
slots?: FileTreeSlots;
|
|
579
|
+
/**
|
|
580
|
+
* 可替换文案,缺省为英文。
|
|
581
|
+
* Replaceable copy; English by default.
|
|
582
|
+
*/
|
|
583
|
+
labels?: FileTreeLabels;
|
|
584
|
+
}
|
|
585
|
+
/**
|
|
586
|
+
* 目录树组件,可通过 ref 查找行或滚动到指定行。
|
|
587
|
+
* A file-tree component whose ref supports row lookup and scrolling.
|
|
588
|
+
*/
|
|
589
|
+
export type FileTreeComponent = ForwardRefExoticComponent<PropsWithoutRef<FileTreeProps> & RefAttributes<FileTreeHandle>>;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { FileTreeEntryRow, FileTreeErrorRow, FileTreeLoadMoreRow, FileTreeProps } from './types.js';
|
|
2
|
+
type ActionProps = Pick<FileTreeProps, 'operations' | 'onSelect' | 'onToggleExpand' | 'onLoadMore' | 'onRetry' | 'onOpenRetentionSettings'>;
|
|
3
|
+
/**
|
|
4
|
+
* 把 `operations` 包成带成功通知的回调:同一操作未完成时忽略重复触发,
|
|
5
|
+
* 失败时不触发通知。
|
|
6
|
+
*
|
|
7
|
+
* Wraps `operations` with success notifications: a repeated request for the same
|
|
8
|
+
* pending operation is ignored, and a rejection fires no notification.
|
|
9
|
+
*/
|
|
10
|
+
export declare function useFileTreeActions(props: ActionProps): {
|
|
11
|
+
onSelect: ((row: FileTreeEntryRow) => undefined) | undefined;
|
|
12
|
+
onToggleExpand: ((row: FileTreeEntryRow) => undefined) | undefined;
|
|
13
|
+
onLoadMore: ((row: FileTreeLoadMoreRow) => undefined) | undefined;
|
|
14
|
+
onRetry: ((row: FileTreeErrorRow) => undefined) | undefined;
|
|
15
|
+
onOpenRetentionSettings: ((uri: string) => undefined) | undefined;
|
|
16
|
+
};
|
|
17
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { DEFAULT_INFO_LABELS, FILE_TREE_ROW_ATTRIBUTE, FileTree, FileTreeSpinner, resolveFileTreeInfoKey, resolveInfoCopy, showsInlineDescription, splitVikingUri } from "../n~0.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './scope-switcher.js';
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { ScopeSwitcherActions, ScopeSwitcherData, ScopeSwitcherLabels, ScopeSwitcherSlots, ScopeSwitcherState } from './types.js';
|
|
2
|
+
export declare function ScopePanel({ label, data, state, slots, actions, onSelect, labels, }: {
|
|
3
|
+
/** Accessible name of the list and search box. */
|
|
4
|
+
label: string;
|
|
5
|
+
data: ScopeSwitcherData;
|
|
6
|
+
state?: ScopeSwitcherState;
|
|
7
|
+
slots?: ScopeSwitcherSlots;
|
|
8
|
+
actions?: ScopeSwitcherActions;
|
|
9
|
+
onSelect: NonNullable<ScopeSwitcherActions['onSelect']>;
|
|
10
|
+
labels?: ScopeSwitcherLabels;
|
|
11
|
+
}): import("react").JSX.Element;
|
|
@@ -1 +1,6 @@
|
|
|
1
|
-
|
|
1
|
+
import type { ScopeSwitcherProps } from './types.js';
|
|
2
|
+
export { ScopeSelector } from './scope-selector.js';
|
|
3
|
+
export { SCOPE_SWITCHER_SEARCH_THRESHOLD } from './types.js';
|
|
4
|
+
export type { ScopeSelectorBaseProps, ScopeSelectorFixedProps, ScopeSelectorProps, ScopeSelectorSelectableProps, ScopeSwitcherActions, ScopeSwitcherData, ScopeSwitcherIdentity, ScopeSwitcherLabels, ScopeSwitcherOption, ScopeSwitcherPanelContent, ScopeSwitcherProps, ScopeSwitcherScrollMetrics, ScopeSwitcherSlots, ScopeSwitcherState, ScopeSwitcherTrigger, } from './types.js';
|
|
5
|
+
/** No shared state, data aggregation or subscription in the layout root. */
|
|
6
|
+
export declare function ScopeSwitcher({ children, className, ...props }: ScopeSwitcherProps): import("react").JSX.Element;
|