diff --git a/packages/table-core/src/columnHelper.ts b/packages/table-core/src/columnHelper.ts index 975a5e5b05..122723a233 100644 --- a/packages/table-core/src/columnHelper.ts +++ b/packages/table-core/src/columnHelper.ts @@ -50,22 +50,25 @@ import { DeepKeys, DeepValue } from './utils' // cell: info => info.getValue(), // }) +type AccessorValue< + TData, + TAccessor extends AccessorFn | DeepKeys, +> = + TAccessor extends AccessorFn + ? TReturn + : TAccessor extends DeepKeys + ? DeepValue + : never + export type ColumnHelper = { - accessor: < - TAccessor extends AccessorFn | DeepKeys, - TValue extends TAccessor extends AccessorFn - ? TReturn - : TAccessor extends DeepKeys - ? DeepValue - : never, - >( + accessor: | DeepKeys>( accessor: TAccessor, column: TAccessor extends AccessorFn - ? DisplayColumnDef - : IdentifiedColumnDef + ? DisplayColumnDef> + : IdentifiedColumnDef> ) => TAccessor extends AccessorFn - ? AccessorFnColumnDef - : AccessorKeyColumnDef + ? AccessorFnColumnDef> + : AccessorKeyColumnDef> display: (column: DisplayColumnDef) => DisplayColumnDef group: (column: GroupColumnDef) => GroupColumnDef }