{"version":3,"file":"types.mjs","sources":["../../../../../src/components/va-tree-view/types.ts"],"sourcesContent":["import { ComputedRef, InjectionKey, WritableComputedRef } from 'vue'\nexport type TreeViewEmitsFunc = (event: string, newValues: unknown) => void\n\nexport interface TreeNode {\n  id: number | string\n  level?: number\n  checked?: boolean | null\n  disabled?: boolean\n  expanded?: boolean\n  hasChildren?: boolean\n  matchesFilter?: boolean\n  indeterminate?: boolean\n  [key: string]: any\n}\n\nexport type TreeViewPropKey = string | ((node: TreeNode) => string | number)\n\nexport type TreeViewFilterMethod = (node: TreeNode, filter: string, textBy: TreeViewPropKey) => boolean\n\nexport interface TreeView {\n  selectable: boolean\n  iconBy: TreeViewPropKey\n  expandNodeBy: 'leaf' | 'node'\n  colorComputed: ComputedRef<string>\n  selectedNodeComputed: WritableComputedRef<string | number | Record<string, unknown>>\n  getText: (node: TreeNode) => string\n  getValue: (node: TreeNode) => string\n  toggleNode: (node: TreeNode) => void\n  getTrackBy: (node: TreeNode) => string\n  getNodeProperty: (node: TreeNode, key: TreeViewPropKey) => any\n  toggleCheckbox: (node: TreeNode, state: boolean | null) => void\n  handleKeyboardNavigation: (event: KeyboardEvent, node: TreeNode) => void\n}\n\nexport const TreeViewKey = Symbol('TreeView') as InjectionKey<TreeView>\n"],"names":[],"mappings":"AAkCa,MAAA,cAAc,OAAO,UAAU;"}