UNPKG

@ark-ui/solid

Version:

A collection of unstyled, accessible UI components for Solid, utilizing state machines for seamless interaction.

73 lines (64 loc) 2.86 kB
import { JsonNodePreviewOptions, JsonNode, JsonNodeHastElement } from '@zag-js/json-tree-utils'; import { JSX, Accessor } from 'solid-js'; import { d as TreeViewRootProps, U as UseTreeViewProps, h as TreeViewRootProviderProps, k as TreeViewTreeProps } from '../../tree-view-tree-DTB5aCol.js'; import { PropTypes } from '@zag-js/solid'; import * as treeView from '@zag-js/tree-view'; import '../../types-Sr_80hg9.js'; import '../../render-strategy-B5MqQP3X.js'; import '@zag-js/collection'; import '../factory.js'; interface JsonTreeViewOptions extends Partial<JsonNodePreviewOptions> { /** * Whether to show quotes on the keys. */ quotesOnKeys?: boolean; } interface JsonTreeViewRootBaseProps extends JsonTreeViewOptions { /** * The data to display in the tree. */ data: unknown; /** * The default expand level. */ defaultExpandedDepth?: number; } interface JsonTreeViewRootProps extends Omit<TreeViewRootProps<JsonNode>, 'collection'>, JsonTreeViewRootBaseProps { } declare const JsonTreeViewRoot: (props: JsonTreeViewRootProps) => JSX.Element; interface UseJsonTreeViewProps extends Omit<UseTreeViewProps<JsonNode>, 'collection'>, JsonTreeViewOptions { data: unknown; defaultExpandedDepth?: number; } interface UseJsonTreeViewReturn extends Accessor<treeView.Api<PropTypes, JsonNode> & { options: JsonTreeViewOptions; }> { } declare const useJsonTreeView: (props: UseJsonTreeViewProps) => UseJsonTreeViewReturn; interface JsonTreeViewRootProviderProps extends Omit<TreeViewRootProviderProps<JsonNode>, 'value'> { value: UseJsonTreeViewReturn; } declare const JsonTreeViewRootProvider: (props: JsonTreeViewRootProviderProps) => JSX.Element; interface JsonTreeViewNodeBaseProps { /** * The icon to use for the arrow. */ arrow?: JSX.Element; /** * The indent guide to use for the tree. */ indentGuide?: boolean | JSX.Element; /** * The function to render the value of the node. */ renderValue?: (node: JsonNodeHastElement) => JSX.Element; } interface JsonTreeViewTreeBaseProps extends JsonTreeViewNodeBaseProps { } interface JsonTreeViewTreeProps extends TreeViewTreeProps, JsonTreeViewTreeBaseProps { } declare const JsonTreeViewTree: (props: JsonTreeViewTreeProps) => JSX.Element; declare namespace jsonTreeView { export { JsonTreeViewRoot as Root, type JsonTreeViewRootProps as RootProps, JsonTreeViewRootProvider as RootProvider, type JsonTreeViewRootProviderProps as RootProviderProps, JsonTreeViewTree as Tree, type JsonTreeViewTreeProps as TreeProps }; } export { jsonTreeView as JsonTreeView, JsonTreeViewRoot, type JsonTreeViewRootProps, JsonTreeViewRootProvider, type JsonTreeViewRootProviderProps, JsonTreeViewTree, type JsonTreeViewTreeProps, type UseJsonTreeViewProps, type UseJsonTreeViewReturn, useJsonTreeView };