@robot-admin/naive-ui-components 0.18.0 → 0.19.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 (82) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/dist/C_Form.cjs +1 -1
  3. package/dist/C_Table.base.css +108 -108
  4. package/dist/C_Table.css +108 -108
  5. package/dist/constants3.d.cts +3 -3
  6. package/dist/constants3.d.ts +3 -3
  7. package/dist/constants4.d.cts +3 -3
  8. package/dist/constants4.d.ts +3 -3
  9. package/dist/constants5.d.cts +2 -2
  10. package/dist/constants5.d.ts +2 -2
  11. package/dist/data.d.cts +5 -5
  12. package/dist/data.d.ts +5 -5
  13. package/dist/formValidation.cjs +1 -1
  14. package/dist/formValidation.js +1 -1
  15. package/dist/helpers.cjs +1 -1
  16. package/dist/index.cjs +1 -1
  17. package/dist/index.vue.d.cts +4 -4
  18. package/dist/index.vue.d.ts +4 -4
  19. package/dist/index10.vue.d.cts +1 -1
  20. package/dist/index10.vue.d.ts +5 -5
  21. package/dist/index11.vue.d.cts +5 -5
  22. package/dist/index12.vue.d.ts +2 -2
  23. package/dist/index13.vue.d.cts +2 -2
  24. package/dist/index13.vue.d.ts +5 -5
  25. package/dist/index14.vue.d.cts +5 -5
  26. package/dist/index16.vue.d.ts +1 -1
  27. package/dist/index17.vue.d.cts +1 -1
  28. package/dist/index17.vue.d.ts +2 -2
  29. package/dist/index18.vue.d.cts +2 -2
  30. package/dist/index19.vue.d.cts +1 -1
  31. package/dist/index19.vue.d.ts +1 -1
  32. package/dist/index2.vue.d.cts +2 -2
  33. package/dist/index2.vue.d.ts +2 -2
  34. package/dist/index20.vue.d.cts +1 -1
  35. package/dist/index20.vue.d.ts +1 -1
  36. package/dist/index21.vue.d.cts +1 -1
  37. package/dist/index21.vue.d.ts +1 -1
  38. package/dist/index22.vue.d.cts +2 -2
  39. package/dist/index22.vue.d.ts +2 -2
  40. package/dist/index25.vue.d.cts +4 -4
  41. package/dist/index25.vue.d.ts +4 -4
  42. package/dist/index26.vue.d.cts +2 -2
  43. package/dist/index26.vue.d.ts +2 -2
  44. package/dist/index3.vue.d.cts +3 -3
  45. package/dist/index3.vue.d.ts +3 -3
  46. package/dist/index6.vue.d.ts +2 -2
  47. package/dist/index7.vue.d.cts +2 -2
  48. package/dist/index8.vue.d.ts +6 -6
  49. package/dist/index9.vue.d.cts +6 -6
  50. package/dist/index9.vue.d.ts +1 -1
  51. package/dist/mapUtils.d.cts +2 -2
  52. package/dist/mapUtils.d.ts +2 -2
  53. package/dist/presets.d.cts +4 -2
  54. package/dist/presets.d.ts +4 -2
  55. package/dist/style.css +108 -108
  56. package/dist/useCalendarEvents.d.cts +1 -1
  57. package/dist/useCalendarEvents.d.ts +1 -1
  58. package/dist/useCollapsePanel.d.cts +6 -6
  59. package/dist/useCollapsePanel.d.ts +6 -6
  60. package/dist/useCropperCore.d.cts +5 -5
  61. package/dist/useCropperCore.d.ts +5 -5
  62. package/dist/useDynamicFormState.d.cts +2 -7
  63. package/dist/useDynamicFormState.d.ts +2 -7
  64. package/dist/useEdgeInteraction.d.cts +2 -2
  65. package/dist/useEdgeInteraction.d.ts +2 -2
  66. package/dist/useQRCode.d.cts +3 -3
  67. package/dist/useQRCode.d.ts +3 -3
  68. package/dist/useSignatureHistory.d.cts +5 -5
  69. package/dist/useSignatureHistory.d.ts +5 -5
  70. package/dist/useSplitResize.d.cts +6 -6
  71. package/dist/useSplitResize.d.ts +6 -6
  72. package/dist/useTableQuery.cjs +2 -2
  73. package/dist/useTableQuery.d.cts +33 -72
  74. package/dist/useTableQuery.d.ts +33 -72
  75. package/dist/useTableQuery.js +1 -1
  76. package/dist/useWorkflowValidation.d.cts +81 -81
  77. package/dist/useWorkflowValidation.d.ts +81 -81
  78. package/dist/verification.d.cts +2 -2
  79. package/dist/verification.d.ts +2 -2
  80. package/docs/guides/usage.en.md +3 -1
  81. package/docs/guides/usage.md +3 -1
  82. package/package.json +2 -2
@@ -452,9 +452,9 @@ interface EditConfig<T extends object = DataRecord> {
452
452
  modalTitle?: string;
453
453
  modalWidth?: number;
454
454
  /** 保存前回调;抛出异常会保留编辑态,便于修正或重试 */
455
- onSave?: (rowData: T, rowIndex: number, columnKey?: string) => void | Promise<void>;
455
+ onSave?: (rowData: T, rowIndex: number, columnKey?: string) => unknown;
456
456
  /** 取消编辑回调 */
457
- onCancel?: (rowData: T, rowIndex: number) => void | Promise<void>;
457
+ onCancel?: (rowData: T, rowIndex: number) => unknown;
458
458
  /** 编辑或保存失败回调 */
459
459
  onError?: (error: unknown) => void;
460
460
  }
@@ -545,7 +545,7 @@ interface ErrorConfig {
545
545
  /** 错误描述文案 */
546
546
  message?: string;
547
547
  /** 重试回调 */
548
- onRetry?: () => void | Promise<void>;
548
+ onRetry?: () => unknown;
549
549
  }
550
550
  /** 批量操作配置 */
551
551
  interface BatchActionsConfig<T extends object = DataRecord> {
@@ -560,7 +560,7 @@ interface BatchActionsConfig<T extends object = DataRecord> {
560
560
  label: string;
561
561
  icon?: string;
562
562
  type?: string;
563
- onClick: (selectedKeys: DataTableRowKey[], selectedRows: T[]) => void | Promise<void>;
563
+ onClick: (selectedKeys: DataTableRowKey[], selectedRows: T[]) => unknown;
564
564
  }>;
565
565
  }
566
566
  interface ResolvedConfig {
@@ -694,7 +694,7 @@ interface CustomAction<T extends object = DataRecord> {
694
694
  /** 按钮类型样式 */
695
695
  type?: ButtonType$1 | ((row: T, index: number) => ButtonType$1);
696
696
  /** 点击事件处理器 */
697
- onClick: (row: T, index: number) => void | Promise<void>;
697
+ onClick: (row: T, index: number) => unknown;
698
698
  /** 条件显示函数(可选) */
699
699
  show?: (row: T, index: number) => boolean;
700
700
  /** 是否禁用(可选) */
@@ -861,12 +861,6 @@ interface SelectionConfig<T extends object = DataRecord, C = DataRecord> extends
861
861
  enableParentChildLink?: boolean;
862
862
  parentChildLinkMode?: ParentChildLinkMode;
863
863
  }
864
- interface TableBaseProps<T extends object = DataRecord> {
865
- columns: TableColumn<T>[];
866
- data: MaybeRefLike<T[]>;
867
- rowKey?: TableRowKey<T>;
868
- loading?: MaybeRefLike<boolean>;
869
- }
870
864
  interface TableDisplayProps {
871
865
  maxHeight?: number | string;
872
866
  minHeight?: number | string;
@@ -876,36 +870,13 @@ interface TableDisplayProps {
876
870
  singleLine?: boolean;
877
871
  size?: 'small' | 'medium' | 'large';
878
872
  }
879
- /** @deprecated 旧类型兼容;组件功能请使用 config.edit。 */
880
- interface TableEditProps<T extends object = DataRecord> {
881
- editable?: boolean;
882
- editMode?: EditMode;
883
- onSave?: (rowData: T, rowIndex: number, columnKey?: string) => void | Promise<void>;
884
- onCancel?: (rowData: T, rowIndex: number) => void;
885
- showRowActions?: boolean;
886
- modalTitle?: string;
887
- modalWidth?: number;
888
- columnWidth?: number;
889
- }
890
- /** @deprecated 旧类型兼容;组件功能请使用 config.expand。 */
891
- interface TableExpandProps<T extends object = DataRecord, C = DataRecord> {
892
- expandable?: boolean;
893
- onLoadExpandData?: (row: T) => Promise<C[]> | C[];
894
- renderExpandContent?: (row: T, expandData: C[], loading: boolean, childSelection?: ChildSelectionState) => VNodeChild;
895
- rowExpandable?: (row: T) => boolean;
896
- defaultExpandedKeys?: DataTableRowKey[];
897
- }
898
- /** @deprecated 旧类型兼容;组件功能请使用 config.selection。 */
899
- interface TableSelectionProps<T extends object = DataRecord, C = DataRecord> extends BaseConfig<T> {
900
- enableSelection?: boolean;
901
- defaultCheckedKeys?: DataTableRowKey[];
902
- maxSelection?: number;
903
- enableChildSelection?: boolean;
904
- childRowCheckable?: (childRow: C, parentRow: T) => boolean;
905
- enableParentChildLink?: boolean;
906
- parentChildLinkMode?: ParentChildLinkMode;
907
- }
908
- interface TableProps<T extends object = DataRecord, C = DataRecord> extends Partial<TableBaseProps<T>>, TableDisplayProps, TableEditProps<T>, TableExpandProps<T, C>, TableSelectionProps<T, C> {
873
+ /** 组件声明的实际属性;与 UI 壳共用,避免旧配置重新混入主契约。 */
874
+ interface TableRuntimeProps<T extends object = DataRecord, C = unknown> {
875
+ /** CRUD 模式自动提供列和数据,可省略。 */
876
+ columns?: TableColumn<T>[];
877
+ data?: MaybeRefLike<T[]>;
878
+ loading?: MaybeRefLike<boolean>;
879
+ rowKey?: TableRowKey<T>;
909
880
  /** 功能配置的统一入口。 */
910
881
  config?: TableConfig<T, C>;
911
882
  /** CRUD 模式自动提供 columns / data / loading,可省略对应属性。 */
@@ -914,13 +885,15 @@ interface TableProps<T extends object = DataRecord, C = DataRecord> extends Part
914
885
  pagination?: PaginationProps | false;
915
886
  remote?: boolean;
916
887
  virtualScrollX?: boolean;
917
- /** @deprecated 使用 config.actions。 */
918
- actions?: SimpleTableActions<T>;
919
888
  /** 根容器 class,原生 class/style 仍转发到内部表格。 */
920
889
  wrapperClass?: vue.HTMLAttributes['class'];
921
890
  /** 填满确定高度的容器,保留工具栏和分页空间。 */
922
891
  flexHeight?: boolean;
923
892
  }
893
+ /** 事件监听与组件共用同一份事件参数,避免将有效监听器误当作旧功能配置。 */
894
+ type TableListeners<T extends object, C> = { [E in keyof TableEmits<T, C> as `on${Capitalize<E>}`]?: (...args: TableEmits<T, C>[E]) => unknown };
895
+ /** 业务功能统一使用 config;有效的原生显示属性继续由 $attrs 透传。 */
896
+ type TableProps<T extends object = DataRecord, C = unknown> = TableRuntimeProps<T, C> & Omit<TableDisplayProps, 'maxHeight' | 'scrollX'> & TableListeners<T, C>;
924
897
  interface TableExpandEvents<T extends object = DataRecord> {
925
898
  'expand-change': [expandedKeys: DataTableRowKey[], row?: T, expanded?: boolean];
926
899
  }
@@ -1091,7 +1064,7 @@ interface RowAction<T extends object = DataRecord> {
1091
1064
  type?: ButtonType$1;
1092
1065
  disabled?: boolean | ((row: T, index: number) => boolean);
1093
1066
  show?: boolean | ((row: T, index: number) => boolean);
1094
- onClick?: (row: T, index: number) => void | Promise<void>;
1067
+ onClick?: (row: T, index: number) => unknown;
1095
1068
  tooltip?: string;
1096
1069
  }
1097
1070
  /**
@@ -1110,21 +1083,9 @@ type ColumnWithKey = TableColumn & {
1110
1083
  //#endregion
1111
1084
  //#region src/components/C_Table/index.vue.d.ts
1112
1085
  declare const __VLS_export$1: <T extends object = DataRecord, C = unknown>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal$1<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
1113
- props: vue.PublicProps & __VLS_PrettifyLocal$1<{
1114
- /** 根容器 class;普通 class/style 仍按既有契约转发到 NDataTable。 */wrapperClass?: vue.HTMLAttributes["class"]; /** 填满已确定高度的根容器,并为工具栏和分页预留空间。 */
1115
- flexHeight?: boolean; /** 原生横向虚拟滚动;未声明业务列宽时仍提供可计算的数值兜底。 */
1116
- virtualScrollX?: boolean; /** 列配置(crud 模式下可省略) */
1117
- columns?: TableColumn<T>[]; /** 数据源(crud 模式下可省略) */
1118
- data?: MaybeRefLike<T[]>; /** 加载状态 */
1119
- loading?: MaybeRefLike<boolean>; /** 行唯一键 */
1120
- rowKey?: TableRowKey<T>; /** 统一功能配置(edit / selection / expand / pagination / dynamicRows / toolbar / display) */
1121
- config?: TableConfig<T, C>; /** Native pagination compatibility path; takes ownership over config.pagination. */
1122
- pagination?: PaginationProps | false; /** Native remote mode, used with the native pagination compatibility path. */
1123
- remote?: boolean; /** CRUD 绑定 — 传入 useTableCrud() 的返回值,自动接管 data/columns/loading/actions/pagination/events */
1124
- crud?: CrudBinding<T>;
1125
- } & {
1126
- onCancel?: ((rowData: T, rowIndex: number) => any) | undefined;
1086
+ props: vue.PublicProps & __VLS_PrettifyLocal$1<TableRuntimeProps<T, C> & {
1127
1087
  onSave?: ((rowData: T, rowIndex: number, columnKey?: string | undefined) => any) | undefined;
1088
+ onCancel?: ((rowData: T, rowIndex: number) => any) | undefined;
1128
1089
  "onPagination-change"?: ((page: number, pageSize: number) => any) | undefined;
1129
1090
  "onRow-delete"?: ((deletedRow: T, index: number) => any) | undefined;
1130
1091
  "onBatch-action-error"?: ((error: unknown, actionKey: string) => any) | undefined;
@@ -1157,7 +1118,7 @@ declare const __VLS_export$1: <T extends object = DataRecord, C = unknown>(__VLS
1157
1118
  } & {
1158
1119
  loading?: (props: {}) => any;
1159
1120
  };
1160
- emit: ((evt: "cancel", rowData: T, rowIndex: number) => void) & ((evt: "save", rowData: T, rowIndex: number, columnKey?: string | undefined) => void) & ((evt: "pagination-change", page: number, pageSize: number) => void) & ((evt: "row-delete", deletedRow: T, index: number) => void) & ((evt: "batch-action-error", error: unknown, actionKey: string) => void) & ((evt: "row-key-error", issues: TableRowKeyIssue<T>[]) => void) & ((evt: "row-add", newRow: T) => void) & ((evt: "row-copy", originalRow: T, newRow: T) => void) & ((evt: "row-move", row: T, fromIndex: number, toIndex: number) => void) & ((evt: "row-selection-change", selectedKey: DataTableRowKey | null, selectedRow: T | null) => void) & ((evt: "view-detail", data: T) => void) & ((evt: "column-change", columns: TableColumn<T>[]) => void) & ((evt: "expand-change", expandedKeys: DataTableRowKey[], row?: T | undefined, expanded?: boolean | undefined) => void) & ((evt: "selection-change", checkedKeys: DataTableRowKey[], checkedRows: T[], childSelections?: Map<DataTableRowKey, DataTableRowKey[]> | undefined) => void) & ((evt: "child-selection-change", parentKey: DataTableRowKey, childKeys: DataTableRowKey[], childRows: C[]) => void) & ((evt: "parent-child-link-change", parentKey: DataTableRowKey, shouldSelect: boolean) => void) & ((evt: "update:data", data: T[]) => void) & ((evt: "edit-error", error: unknown) => void);
1121
+ emit: ((evt: "save", rowData: T, rowIndex: number, columnKey?: string | undefined) => void) & ((evt: "cancel", rowData: T, rowIndex: number) => void) & ((evt: "pagination-change", page: number, pageSize: number) => void) & ((evt: "row-delete", deletedRow: T, index: number) => void) & ((evt: "batch-action-error", error: unknown, actionKey: string) => void) & ((evt: "row-key-error", issues: TableRowKeyIssue<T>[]) => void) & ((evt: "row-add", newRow: T) => void) & ((evt: "row-copy", originalRow: T, newRow: T) => void) & ((evt: "row-move", row: T, fromIndex: number, toIndex: number) => void) & ((evt: "row-selection-change", selectedKey: DataTableRowKey | null, selectedRow: T | null) => void) & ((evt: "view-detail", data: T) => void) & ((evt: "column-change", columns: TableColumn<T>[]) => void) & ((evt: "expand-change", expandedKeys: DataTableRowKey[], row?: T | undefined, expanded?: boolean | undefined) => void) & ((evt: "selection-change", checkedKeys: DataTableRowKey[], checkedRows: T[], childSelections?: Map<DataTableRowKey, DataTableRowKey[]> | undefined) => void) & ((evt: "child-selection-change", parentKey: DataTableRowKey, childKeys: DataTableRowKey[], childRows: C[]) => void) & ((evt: "parent-child-link-change", parentKey: DataTableRowKey, shouldSelect: boolean) => void) & ((evt: "update:data", data: T[]) => void) & ((evt: "edit-error", error: unknown) => void);
1161
1122
  }>) => vue.VNode & {
1162
1123
  __ctx?: NonNullable<Awaited<typeof __VLS_setup>>;
1163
1124
  };
@@ -1252,8 +1213,8 @@ interface RowValidationError {
1252
1213
  interface RowEditOptions {
1253
1214
  data: () => DataRecord[];
1254
1215
  rowKey: (row: DataRecord) => DataTableRowKey;
1255
- onSave?: (rowData: DataRecord, rowIndex: number, originalKey?: DataTableRowKey) => void | Promise<void>;
1256
- onCancel?: (rowData: DataRecord, rowIndex: number) => void | Promise<void>;
1216
+ onSave?: (rowData: DataRecord, rowIndex: number, originalKey?: DataTableRowKey) => unknown;
1217
+ onCancel?: (rowData: DataRecord, rowIndex: number) => unknown;
1257
1218
  /** 列配置(用于提取校验规则) */
1258
1219
  columns?: () => TableColumn[];
1259
1220
  }
@@ -1297,8 +1258,8 @@ interface TableManagerConfig {
1297
1258
  showRowActions: boolean;
1298
1259
  modalTitle: string;
1299
1260
  modalWidth: number;
1300
- onEditSave?: (rowData: DataRecord, rowIndex: number, columnKey?: string) => void | Promise<void>;
1301
- onEditCancel?: (rowData: DataRecord, rowIndex: number) => void | Promise<void>;
1261
+ onEditSave?: (rowData: DataRecord, rowIndex: number, columnKey?: string) => unknown;
1262
+ onEditCancel?: (rowData: DataRecord, rowIndex: number) => unknown;
1302
1263
  onEditError?: (error: unknown) => void;
1303
1264
  expandable: boolean;
1304
1265
  defaultExpandedKeys?: DataTableRowKey[];
@@ -1520,7 +1481,7 @@ declare function usePagination<T extends object = DataRecord>(options: UsePagina
1520
1481
  interface CellEditOptions {
1521
1482
  data: () => DataRecord[];
1522
1483
  rowKey: (row: DataRecord) => DataTableRowKey;
1523
- onSave?: (rowData: DataRecord, rowIndex: number, columnKey: string, originalKey?: DataTableRowKey) => void | Promise<void>;
1484
+ onSave?: (rowData: DataRecord, rowIndex: number, columnKey: string, originalKey?: DataTableRowKey) => unknown;
1524
1485
  /** 列配置(用于提取校验规则) */
1525
1486
  columns?: () => TableColumn[];
1526
1487
  }
@@ -1562,8 +1523,8 @@ declare function useCellEdit(options: CellEditOptions): {
1562
1523
  interface ModalEditOptions<T extends object = DataRecord> {
1563
1524
  data: () => T[];
1564
1525
  rowKey: (row: T) => DataTableRowKey;
1565
- onSave?: (editingData: T, rowIndex: number, originalKey?: DataTableRowKey) => void | Promise<void>;
1566
- onCancel?: (originalData: T, rowIndex: number) => void | Promise<void>;
1526
+ onSave?: (editingData: T, rowIndex: number, originalKey?: DataTableRowKey) => unknown;
1527
+ onCancel?: (originalData: T, rowIndex: number) => unknown;
1567
1528
  }
1568
1529
  /** Modal edit state with lossless snapshots and retry-safe async saves. */
1569
1530
  declare function useModalEdit<T extends object = DataRecord>(options: ModalEditOptions<T>): {
@@ -1789,16 +1750,16 @@ interface TreeSlots<T extends object = TreeOption$1> {
1789
1750
  //#region src/components/C_Tree/index.vue.d.ts
1790
1751
  declare const __VLS_export: <T extends object = TreeNodeData>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
1791
1752
  props: vue.PublicProps & __VLS_PrettifyLocal<TreeProps$1<T> & {
1792
- onAdd?: ((parentNode?: T | undefined) => any) | undefined;
1793
1753
  onRefresh?: (() => any) | undefined;
1794
- "onUpdate:expandedKeys"?: ((keys: TreeKey[], options: (T | null)[], meta: TreeUpdateMeta<T, "filter" | "select" | "expand" | "collapse" | "unselect" | "check" | "uncheck">) => any) | undefined;
1754
+ onAdd?: ((parentNode?: T | undefined) => any) | undefined;
1755
+ "onLoad-error"?: ((error: unknown, node: T) => any) | undefined;
1756
+ "onUpdate:expandedKeys"?: ((keys: TreeKey[], options: (T | null)[], meta: TreeUpdateMeta<T, "filter" | "select" | "collapse" | "expand" | "unselect" | "check" | "uncheck">) => any) | undefined;
1795
1757
  "onUpdate:searchPattern"?: ((pattern: string) => any) | undefined;
1796
- "onUpdate:selectedKeys"?: ((keys: TreeKey[], options: (T | null)[], meta: TreeUpdateMeta<T, "filter" | "select" | "expand" | "collapse" | "unselect" | "check" | "uncheck">) => any) | undefined;
1797
- "onUpdate:checkedKeys"?: ((keys: TreeKey[], options: (T | null)[], meta: TreeUpdateMeta<T, "filter" | "select" | "expand" | "collapse" | "unselect" | "check" | "uncheck">) => any) | undefined;
1758
+ "onUpdate:selectedKeys"?: ((keys: TreeKey[], options: (T | null)[], meta: TreeUpdateMeta<T, "filter" | "select" | "collapse" | "expand" | "unselect" | "check" | "uncheck">) => any) | undefined;
1759
+ "onUpdate:checkedKeys"?: ((keys: TreeKey[], options: (T | null)[], meta: TreeUpdateMeta<T, "filter" | "select" | "collapse" | "expand" | "unselect" | "check" | "uncheck">) => any) | undefined;
1798
1760
  "onNode-select"?: ((node: T | null, selectedKeys: TreeKey[]) => any) | undefined;
1799
1761
  "onNode-action"?: ((action: string, node: T) => any) | undefined;
1800
1762
  "onNode-drop"?: ((info: DropInfo<T>) => any) | undefined;
1801
- "onLoad-error"?: ((error: unknown, node: T) => any) | undefined;
1802
1763
  }> & (typeof globalThis extends {
1803
1764
  __VLS_PROPS_FALLBACK: infer P;
1804
1765
  } ? P : {});
@@ -1809,7 +1770,7 @@ declare const __VLS_export: <T extends object = TreeNodeData>(__VLS_props: NonNu
1809
1770
  }>) => void;
1810
1771
  attrs: any;
1811
1772
  slots: TreeSlots<T>;
1812
- emit: ((evt: "add", parentNode?: T | undefined) => void) & ((evt: "refresh") => void) & ((evt: "update:expandedKeys", keys: TreeKey[], options: (T | null)[], meta: TreeUpdateMeta<T, "filter" | "select" | "expand" | "collapse" | "unselect" | "check" | "uncheck">) => void) & ((evt: "update:searchPattern", pattern: string) => void) & ((evt: "update:selectedKeys", keys: TreeKey[], options: (T | null)[], meta: TreeUpdateMeta<T, "filter" | "select" | "expand" | "collapse" | "unselect" | "check" | "uncheck">) => void) & ((evt: "update:checkedKeys", keys: TreeKey[], options: (T | null)[], meta: TreeUpdateMeta<T, "filter" | "select" | "expand" | "collapse" | "unselect" | "check" | "uncheck">) => void) & ((evt: "node-select", node: T | null, selectedKeys: TreeKey[]) => void) & ((evt: "node-action", action: string, node: T) => void) & ((evt: "node-drop", info: DropInfo<T>) => void) & ((evt: "load-error", error: unknown, node: T) => void);
1773
+ emit: ((evt: "refresh") => void) & ((evt: "add", parentNode?: T | undefined) => void) & ((evt: "load-error", error: unknown, node: T) => void) & ((evt: "update:expandedKeys", keys: TreeKey[], options: (T | null)[], meta: TreeUpdateMeta<T, "filter" | "select" | "collapse" | "expand" | "unselect" | "check" | "uncheck">) => void) & ((evt: "update:searchPattern", pattern: string) => void) & ((evt: "update:selectedKeys", keys: TreeKey[], options: (T | null)[], meta: TreeUpdateMeta<T, "filter" | "select" | "collapse" | "expand" | "unselect" | "check" | "uncheck">) => void) & ((evt: "update:checkedKeys", keys: TreeKey[], options: (T | null)[], meta: TreeUpdateMeta<T, "filter" | "select" | "collapse" | "expand" | "unselect" | "check" | "uncheck">) => void) & ((evt: "node-select", node: T | null, selectedKeys: TreeKey[]) => void) & ((evt: "node-action", action: string, node: T) => void) & ((evt: "node-drop", info: DropInfo<T>) => void);
1813
1774
  }>) => vue.VNode & {
1814
1775
  __ctx?: NonNullable<Awaited<typeof __VLS_setup>>;
1815
1776
  };
@@ -452,9 +452,9 @@ interface EditConfig<T extends object = DataRecord> {
452
452
  modalTitle?: string;
453
453
  modalWidth?: number;
454
454
  /** 保存前回调;抛出异常会保留编辑态,便于修正或重试 */
455
- onSave?: (rowData: T, rowIndex: number, columnKey?: string) => void | Promise<void>;
455
+ onSave?: (rowData: T, rowIndex: number, columnKey?: string) => unknown;
456
456
  /** 取消编辑回调 */
457
- onCancel?: (rowData: T, rowIndex: number) => void | Promise<void>;
457
+ onCancel?: (rowData: T, rowIndex: number) => unknown;
458
458
  /** 编辑或保存失败回调 */
459
459
  onError?: (error: unknown) => void;
460
460
  }
@@ -545,7 +545,7 @@ interface ErrorConfig {
545
545
  /** 错误描述文案 */
546
546
  message?: string;
547
547
  /** 重试回调 */
548
- onRetry?: () => void | Promise<void>;
548
+ onRetry?: () => unknown;
549
549
  }
550
550
  /** 批量操作配置 */
551
551
  interface BatchActionsConfig<T extends object = DataRecord> {
@@ -560,7 +560,7 @@ interface BatchActionsConfig<T extends object = DataRecord> {
560
560
  label: string;
561
561
  icon?: string;
562
562
  type?: string;
563
- onClick: (selectedKeys: DataTableRowKey[], selectedRows: T[]) => void | Promise<void>;
563
+ onClick: (selectedKeys: DataTableRowKey[], selectedRows: T[]) => unknown;
564
564
  }>;
565
565
  }
566
566
  interface ResolvedConfig {
@@ -694,7 +694,7 @@ interface CustomAction<T extends object = DataRecord> {
694
694
  /** 按钮类型样式 */
695
695
  type?: ButtonType$1 | ((row: T, index: number) => ButtonType$1);
696
696
  /** 点击事件处理器 */
697
- onClick: (row: T, index: number) => void | Promise<void>;
697
+ onClick: (row: T, index: number) => unknown;
698
698
  /** 条件显示函数(可选) */
699
699
  show?: (row: T, index: number) => boolean;
700
700
  /** 是否禁用(可选) */
@@ -861,12 +861,6 @@ interface SelectionConfig<T extends object = DataRecord, C = DataRecord> extends
861
861
  enableParentChildLink?: boolean;
862
862
  parentChildLinkMode?: ParentChildLinkMode;
863
863
  }
864
- interface TableBaseProps<T extends object = DataRecord> {
865
- columns: TableColumn<T>[];
866
- data: MaybeRefLike<T[]>;
867
- rowKey?: TableRowKey<T>;
868
- loading?: MaybeRefLike<boolean>;
869
- }
870
864
  interface TableDisplayProps {
871
865
  maxHeight?: number | string;
872
866
  minHeight?: number | string;
@@ -876,36 +870,13 @@ interface TableDisplayProps {
876
870
  singleLine?: boolean;
877
871
  size?: 'small' | 'medium' | 'large';
878
872
  }
879
- /** @deprecated 旧类型兼容;组件功能请使用 config.edit。 */
880
- interface TableEditProps<T extends object = DataRecord> {
881
- editable?: boolean;
882
- editMode?: EditMode;
883
- onSave?: (rowData: T, rowIndex: number, columnKey?: string) => void | Promise<void>;
884
- onCancel?: (rowData: T, rowIndex: number) => void;
885
- showRowActions?: boolean;
886
- modalTitle?: string;
887
- modalWidth?: number;
888
- columnWidth?: number;
889
- }
890
- /** @deprecated 旧类型兼容;组件功能请使用 config.expand。 */
891
- interface TableExpandProps<T extends object = DataRecord, C = DataRecord> {
892
- expandable?: boolean;
893
- onLoadExpandData?: (row: T) => Promise<C[]> | C[];
894
- renderExpandContent?: (row: T, expandData: C[], loading: boolean, childSelection?: ChildSelectionState) => VNodeChild;
895
- rowExpandable?: (row: T) => boolean;
896
- defaultExpandedKeys?: DataTableRowKey[];
897
- }
898
- /** @deprecated 旧类型兼容;组件功能请使用 config.selection。 */
899
- interface TableSelectionProps<T extends object = DataRecord, C = DataRecord> extends BaseConfig<T> {
900
- enableSelection?: boolean;
901
- defaultCheckedKeys?: DataTableRowKey[];
902
- maxSelection?: number;
903
- enableChildSelection?: boolean;
904
- childRowCheckable?: (childRow: C, parentRow: T) => boolean;
905
- enableParentChildLink?: boolean;
906
- parentChildLinkMode?: ParentChildLinkMode;
907
- }
908
- interface TableProps<T extends object = DataRecord, C = DataRecord> extends Partial<TableBaseProps<T>>, TableDisplayProps, TableEditProps<T>, TableExpandProps<T, C>, TableSelectionProps<T, C> {
873
+ /** 组件声明的实际属性;与 UI 壳共用,避免旧配置重新混入主契约。 */
874
+ interface TableRuntimeProps<T extends object = DataRecord, C = unknown> {
875
+ /** CRUD 模式自动提供列和数据,可省略。 */
876
+ columns?: TableColumn<T>[];
877
+ data?: MaybeRefLike<T[]>;
878
+ loading?: MaybeRefLike<boolean>;
879
+ rowKey?: TableRowKey<T>;
909
880
  /** 功能配置的统一入口。 */
910
881
  config?: TableConfig<T, C>;
911
882
  /** CRUD 模式自动提供 columns / data / loading,可省略对应属性。 */
@@ -914,13 +885,15 @@ interface TableProps<T extends object = DataRecord, C = DataRecord> extends Part
914
885
  pagination?: PaginationProps | false;
915
886
  remote?: boolean;
916
887
  virtualScrollX?: boolean;
917
- /** @deprecated 使用 config.actions。 */
918
- actions?: SimpleTableActions<T>;
919
888
  /** 根容器 class,原生 class/style 仍转发到内部表格。 */
920
889
  wrapperClass?: vue.HTMLAttributes['class'];
921
890
  /** 填满确定高度的容器,保留工具栏和分页空间。 */
922
891
  flexHeight?: boolean;
923
892
  }
893
+ /** 事件监听与组件共用同一份事件参数,避免将有效监听器误当作旧功能配置。 */
894
+ type TableListeners<T extends object, C> = { [E in keyof TableEmits<T, C> as `on${Capitalize<E>}`]?: (...args: TableEmits<T, C>[E]) => unknown };
895
+ /** 业务功能统一使用 config;有效的原生显示属性继续由 $attrs 透传。 */
896
+ type TableProps<T extends object = DataRecord, C = unknown> = TableRuntimeProps<T, C> & Omit<TableDisplayProps, 'maxHeight' | 'scrollX'> & TableListeners<T, C>;
924
897
  interface TableExpandEvents<T extends object = DataRecord> {
925
898
  'expand-change': [expandedKeys: DataTableRowKey[], row?: T, expanded?: boolean];
926
899
  }
@@ -1091,7 +1064,7 @@ interface RowAction<T extends object = DataRecord> {
1091
1064
  type?: ButtonType$1;
1092
1065
  disabled?: boolean | ((row: T, index: number) => boolean);
1093
1066
  show?: boolean | ((row: T, index: number) => boolean);
1094
- onClick?: (row: T, index: number) => void | Promise<void>;
1067
+ onClick?: (row: T, index: number) => unknown;
1095
1068
  tooltip?: string;
1096
1069
  }
1097
1070
  /**
@@ -1110,21 +1083,9 @@ type ColumnWithKey = TableColumn & {
1110
1083
  //#endregion
1111
1084
  //#region src/components/C_Table/index.vue.d.ts
1112
1085
  declare const __VLS_export$1: <T extends object = DataRecord, C = unknown>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal$1<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
1113
- props: vue.PublicProps & __VLS_PrettifyLocal$1<{
1114
- /** 根容器 class;普通 class/style 仍按既有契约转发到 NDataTable。 */wrapperClass?: vue.HTMLAttributes["class"]; /** 填满已确定高度的根容器,并为工具栏和分页预留空间。 */
1115
- flexHeight?: boolean; /** 原生横向虚拟滚动;未声明业务列宽时仍提供可计算的数值兜底。 */
1116
- virtualScrollX?: boolean; /** 列配置(crud 模式下可省略) */
1117
- columns?: TableColumn<T>[]; /** 数据源(crud 模式下可省略) */
1118
- data?: MaybeRefLike<T[]>; /** 加载状态 */
1119
- loading?: MaybeRefLike<boolean>; /** 行唯一键 */
1120
- rowKey?: TableRowKey<T>; /** 统一功能配置(edit / selection / expand / pagination / dynamicRows / toolbar / display) */
1121
- config?: TableConfig<T, C>; /** Native pagination compatibility path; takes ownership over config.pagination. */
1122
- pagination?: PaginationProps | false; /** Native remote mode, used with the native pagination compatibility path. */
1123
- remote?: boolean; /** CRUD 绑定 — 传入 useTableCrud() 的返回值,自动接管 data/columns/loading/actions/pagination/events */
1124
- crud?: CrudBinding<T>;
1125
- } & {
1126
- onCancel?: ((rowData: T, rowIndex: number) => any) | undefined;
1086
+ props: vue.PublicProps & __VLS_PrettifyLocal$1<TableRuntimeProps<T, C> & {
1127
1087
  onSave?: ((rowData: T, rowIndex: number, columnKey?: string | undefined) => any) | undefined;
1088
+ onCancel?: ((rowData: T, rowIndex: number) => any) | undefined;
1128
1089
  "onPagination-change"?: ((page: number, pageSize: number) => any) | undefined;
1129
1090
  "onRow-delete"?: ((deletedRow: T, index: number) => any) | undefined;
1130
1091
  "onBatch-action-error"?: ((error: unknown, actionKey: string) => any) | undefined;
@@ -1157,7 +1118,7 @@ declare const __VLS_export$1: <T extends object = DataRecord, C = unknown>(__VLS
1157
1118
  } & {
1158
1119
  loading?: (props: {}) => any;
1159
1120
  };
1160
- emit: ((evt: "cancel", rowData: T, rowIndex: number) => void) & ((evt: "save", rowData: T, rowIndex: number, columnKey?: string | undefined) => void) & ((evt: "pagination-change", page: number, pageSize: number) => void) & ((evt: "row-delete", deletedRow: T, index: number) => void) & ((evt: "batch-action-error", error: unknown, actionKey: string) => void) & ((evt: "row-key-error", issues: TableRowKeyIssue<T>[]) => void) & ((evt: "row-add", newRow: T) => void) & ((evt: "row-copy", originalRow: T, newRow: T) => void) & ((evt: "row-move", row: T, fromIndex: number, toIndex: number) => void) & ((evt: "row-selection-change", selectedKey: DataTableRowKey | null, selectedRow: T | null) => void) & ((evt: "view-detail", data: T) => void) & ((evt: "column-change", columns: TableColumn<T>[]) => void) & ((evt: "expand-change", expandedKeys: DataTableRowKey[], row?: T | undefined, expanded?: boolean | undefined) => void) & ((evt: "selection-change", checkedKeys: DataTableRowKey[], checkedRows: T[], childSelections?: Map<DataTableRowKey, DataTableRowKey[]> | undefined) => void) & ((evt: "child-selection-change", parentKey: DataTableRowKey, childKeys: DataTableRowKey[], childRows: C[]) => void) & ((evt: "parent-child-link-change", parentKey: DataTableRowKey, shouldSelect: boolean) => void) & ((evt: "update:data", data: T[]) => void) & ((evt: "edit-error", error: unknown) => void);
1121
+ emit: ((evt: "save", rowData: T, rowIndex: number, columnKey?: string | undefined) => void) & ((evt: "cancel", rowData: T, rowIndex: number) => void) & ((evt: "pagination-change", page: number, pageSize: number) => void) & ((evt: "row-delete", deletedRow: T, index: number) => void) & ((evt: "batch-action-error", error: unknown, actionKey: string) => void) & ((evt: "row-key-error", issues: TableRowKeyIssue<T>[]) => void) & ((evt: "row-add", newRow: T) => void) & ((evt: "row-copy", originalRow: T, newRow: T) => void) & ((evt: "row-move", row: T, fromIndex: number, toIndex: number) => void) & ((evt: "row-selection-change", selectedKey: DataTableRowKey | null, selectedRow: T | null) => void) & ((evt: "view-detail", data: T) => void) & ((evt: "column-change", columns: TableColumn<T>[]) => void) & ((evt: "expand-change", expandedKeys: DataTableRowKey[], row?: T | undefined, expanded?: boolean | undefined) => void) & ((evt: "selection-change", checkedKeys: DataTableRowKey[], checkedRows: T[], childSelections?: Map<DataTableRowKey, DataTableRowKey[]> | undefined) => void) & ((evt: "child-selection-change", parentKey: DataTableRowKey, childKeys: DataTableRowKey[], childRows: C[]) => void) & ((evt: "parent-child-link-change", parentKey: DataTableRowKey, shouldSelect: boolean) => void) & ((evt: "update:data", data: T[]) => void) & ((evt: "edit-error", error: unknown) => void);
1161
1122
  }>) => vue.VNode & {
1162
1123
  __ctx?: NonNullable<Awaited<typeof __VLS_setup>>;
1163
1124
  };
@@ -1252,8 +1213,8 @@ interface RowValidationError {
1252
1213
  interface RowEditOptions {
1253
1214
  data: () => DataRecord[];
1254
1215
  rowKey: (row: DataRecord) => DataTableRowKey;
1255
- onSave?: (rowData: DataRecord, rowIndex: number, originalKey?: DataTableRowKey) => void | Promise<void>;
1256
- onCancel?: (rowData: DataRecord, rowIndex: number) => void | Promise<void>;
1216
+ onSave?: (rowData: DataRecord, rowIndex: number, originalKey?: DataTableRowKey) => unknown;
1217
+ onCancel?: (rowData: DataRecord, rowIndex: number) => unknown;
1257
1218
  /** 列配置(用于提取校验规则) */
1258
1219
  columns?: () => TableColumn[];
1259
1220
  }
@@ -1297,8 +1258,8 @@ interface TableManagerConfig {
1297
1258
  showRowActions: boolean;
1298
1259
  modalTitle: string;
1299
1260
  modalWidth: number;
1300
- onEditSave?: (rowData: DataRecord, rowIndex: number, columnKey?: string) => void | Promise<void>;
1301
- onEditCancel?: (rowData: DataRecord, rowIndex: number) => void | Promise<void>;
1261
+ onEditSave?: (rowData: DataRecord, rowIndex: number, columnKey?: string) => unknown;
1262
+ onEditCancel?: (rowData: DataRecord, rowIndex: number) => unknown;
1302
1263
  onEditError?: (error: unknown) => void;
1303
1264
  expandable: boolean;
1304
1265
  defaultExpandedKeys?: DataTableRowKey[];
@@ -1520,7 +1481,7 @@ declare function usePagination<T extends object = DataRecord>(options: UsePagina
1520
1481
  interface CellEditOptions {
1521
1482
  data: () => DataRecord[];
1522
1483
  rowKey: (row: DataRecord) => DataTableRowKey;
1523
- onSave?: (rowData: DataRecord, rowIndex: number, columnKey: string, originalKey?: DataTableRowKey) => void | Promise<void>;
1484
+ onSave?: (rowData: DataRecord, rowIndex: number, columnKey: string, originalKey?: DataTableRowKey) => unknown;
1524
1485
  /** 列配置(用于提取校验规则) */
1525
1486
  columns?: () => TableColumn[];
1526
1487
  }
@@ -1562,8 +1523,8 @@ declare function useCellEdit(options: CellEditOptions): {
1562
1523
  interface ModalEditOptions<T extends object = DataRecord> {
1563
1524
  data: () => T[];
1564
1525
  rowKey: (row: T) => DataTableRowKey;
1565
- onSave?: (editingData: T, rowIndex: number, originalKey?: DataTableRowKey) => void | Promise<void>;
1566
- onCancel?: (originalData: T, rowIndex: number) => void | Promise<void>;
1526
+ onSave?: (editingData: T, rowIndex: number, originalKey?: DataTableRowKey) => unknown;
1527
+ onCancel?: (originalData: T, rowIndex: number) => unknown;
1567
1528
  }
1568
1529
  /** Modal edit state with lossless snapshots and retry-safe async saves. */
1569
1530
  declare function useModalEdit<T extends object = DataRecord>(options: ModalEditOptions<T>): {
@@ -1789,16 +1750,16 @@ interface TreeSlots<T extends object = TreeOption$1> {
1789
1750
  //#region src/components/C_Tree/index.vue.d.ts
1790
1751
  declare const __VLS_export: <T extends object = TreeNodeData>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
1791
1752
  props: vue.PublicProps & __VLS_PrettifyLocal<TreeProps$1<T> & {
1792
- onAdd?: ((parentNode?: T | undefined) => any) | undefined;
1793
1753
  onRefresh?: (() => any) | undefined;
1794
- "onUpdate:expandedKeys"?: ((keys: TreeKey[], options: (T | null)[], meta: TreeUpdateMeta<T, "filter" | "select" | "expand" | "collapse" | "unselect" | "check" | "uncheck">) => any) | undefined;
1754
+ onAdd?: ((parentNode?: T | undefined) => any) | undefined;
1755
+ "onLoad-error"?: ((error: unknown, node: T) => any) | undefined;
1756
+ "onUpdate:expandedKeys"?: ((keys: TreeKey[], options: (T | null)[], meta: TreeUpdateMeta<T, "filter" | "select" | "collapse" | "expand" | "unselect" | "check" | "uncheck">) => any) | undefined;
1795
1757
  "onUpdate:searchPattern"?: ((pattern: string) => any) | undefined;
1796
- "onUpdate:selectedKeys"?: ((keys: TreeKey[], options: (T | null)[], meta: TreeUpdateMeta<T, "filter" | "select" | "expand" | "collapse" | "unselect" | "check" | "uncheck">) => any) | undefined;
1797
- "onUpdate:checkedKeys"?: ((keys: TreeKey[], options: (T | null)[], meta: TreeUpdateMeta<T, "filter" | "select" | "expand" | "collapse" | "unselect" | "check" | "uncheck">) => any) | undefined;
1758
+ "onUpdate:selectedKeys"?: ((keys: TreeKey[], options: (T | null)[], meta: TreeUpdateMeta<T, "filter" | "select" | "collapse" | "expand" | "unselect" | "check" | "uncheck">) => any) | undefined;
1759
+ "onUpdate:checkedKeys"?: ((keys: TreeKey[], options: (T | null)[], meta: TreeUpdateMeta<T, "filter" | "select" | "collapse" | "expand" | "unselect" | "check" | "uncheck">) => any) | undefined;
1798
1760
  "onNode-select"?: ((node: T | null, selectedKeys: TreeKey[]) => any) | undefined;
1799
1761
  "onNode-action"?: ((action: string, node: T) => any) | undefined;
1800
1762
  "onNode-drop"?: ((info: DropInfo<T>) => any) | undefined;
1801
- "onLoad-error"?: ((error: unknown, node: T) => any) | undefined;
1802
1763
  }> & (typeof globalThis extends {
1803
1764
  __VLS_PROPS_FALLBACK: infer P;
1804
1765
  } ? P : {});
@@ -1809,7 +1770,7 @@ declare const __VLS_export: <T extends object = TreeNodeData>(__VLS_props: NonNu
1809
1770
  }>) => void;
1810
1771
  attrs: any;
1811
1772
  slots: TreeSlots<T>;
1812
- emit: ((evt: "add", parentNode?: T | undefined) => void) & ((evt: "refresh") => void) & ((evt: "update:expandedKeys", keys: TreeKey[], options: (T | null)[], meta: TreeUpdateMeta<T, "filter" | "select" | "expand" | "collapse" | "unselect" | "check" | "uncheck">) => void) & ((evt: "update:searchPattern", pattern: string) => void) & ((evt: "update:selectedKeys", keys: TreeKey[], options: (T | null)[], meta: TreeUpdateMeta<T, "filter" | "select" | "expand" | "collapse" | "unselect" | "check" | "uncheck">) => void) & ((evt: "update:checkedKeys", keys: TreeKey[], options: (T | null)[], meta: TreeUpdateMeta<T, "filter" | "select" | "expand" | "collapse" | "unselect" | "check" | "uncheck">) => void) & ((evt: "node-select", node: T | null, selectedKeys: TreeKey[]) => void) & ((evt: "node-action", action: string, node: T) => void) & ((evt: "node-drop", info: DropInfo<T>) => void) & ((evt: "load-error", error: unknown, node: T) => void);
1773
+ emit: ((evt: "refresh") => void) & ((evt: "add", parentNode?: T | undefined) => void) & ((evt: "load-error", error: unknown, node: T) => void) & ((evt: "update:expandedKeys", keys: TreeKey[], options: (T | null)[], meta: TreeUpdateMeta<T, "filter" | "select" | "collapse" | "expand" | "unselect" | "check" | "uncheck">) => void) & ((evt: "update:searchPattern", pattern: string) => void) & ((evt: "update:selectedKeys", keys: TreeKey[], options: (T | null)[], meta: TreeUpdateMeta<T, "filter" | "select" | "collapse" | "expand" | "unselect" | "check" | "uncheck">) => void) & ((evt: "update:checkedKeys", keys: TreeKey[], options: (T | null)[], meta: TreeUpdateMeta<T, "filter" | "select" | "collapse" | "expand" | "unselect" | "check" | "uncheck">) => void) & ((evt: "node-select", node: T | null, selectedKeys: TreeKey[]) => void) & ((evt: "node-action", action: string, node: T) => void) & ((evt: "node-drop", info: DropInfo<T>) => void);
1813
1774
  }>) => vue.VNode & {
1814
1775
  __ctx?: NonNullable<Awaited<typeof __VLS_setup>>;
1815
1776
  };