# GridFieldPath

Fields, allowed values, and APIs that use GridFieldPath.

Canonical: https://grid.syidax.com/docs/types/GridFieldPath/

<a id="definition"></a>

## Type definition

A question mark (?) marks an optional field; readonly marks a value you should not change directly. A union (|) accepts one of the listed forms. Functions are callbacks that Grid invokes at the relevant point.

```typescript
export type GridFieldPath<TData> =
  string extends keyof TData
    ? string
    : {
        [K in StringKey<TData>]:
          | K
          | (NestedObject<TData[K]> extends never
            ? never
            : `${K}.${GridFieldPathLevel2<NestedObject<TData[K]>>}`);
      }[StringKey<TData>];
```

<a id="used-by"></a>

## APIs using this type

- [field](https://grid.syidax.com/docs/columns/field.md) — Required field path for reading a value from source rows. Use the data key, not a display heading.
- [tooltipField](https://grid.syidax.com/docs/columns/tooltipField.md) — Source data field used for tooltips.

<a id="parents"></a>

## Contracts containing this type

- [ColumnDef](https://grid.syidax.com/docs/types/ColumnDef.md)
- [GridRowRef](https://grid.syidax.com/docs/types/GridRowRef.md)
- [SyGridCellClickedEventDetail](https://grid.syidax.com/docs/types/SyGridCellClickedEventDetail.md)
- [SyGridCellDoubleClickedEventDetail](https://grid.syidax.com/docs/types/SyGridCellDoubleClickedEventDetail.md)
- [SyGridCellEditingRequestedEventDetail](https://grid.syidax.com/docs/types/SyGridCellEditingRequestedEventDetail.md)
- [SyGridCellTooltipTarget](https://grid.syidax.com/docs/types/SyGridCellTooltipTarget.md)
- [SyGridCellValueChangedEventDetail](https://grid.syidax.com/docs/types/SyGridCellValueChangedEventDetail.md)
- [ValueParserParams](https://grid.syidax.com/docs/types/ValueParserParams.md)
- [ValueSetterParams](https://grid.syidax.com/docs/types/ValueSetterParams.md)

<a id="related"></a>

## Related types

- [StringKey](https://grid.syidax.com/docs/types/StringKey.md)
- [NestedObject](https://grid.syidax.com/docs/types/NestedObject.md)
- [GridFieldPathLevel2](https://grid.syidax.com/docs/types/GridFieldPathLevel2.md)
