import type { I18nClient } from '@payloadcms/translations'; import type { SanitizedCollectionConfig } from '../../collections/config/types.js'; import type { ArrayFieldClient, BlocksFieldClient, CheckboxFieldClient, ClientField, CodeFieldClient, DateFieldClient, EmailFieldClient, Field, GroupFieldClient, JSONFieldClient, NumberFieldClient, PointFieldClient, RadioFieldClient, RelationshipFieldClient, SelectFieldClient, TextareaFieldClient, TextFieldClient, UploadFieldClient } from '../../fields/config/types.js'; import type { Payload } from '../../types/index.js'; import type { ViewTypes } from '../types.js'; export type RowData = Record; export type DefaultCellComponentProps = { readonly cellData: TCellData extends undefined ? TField extends RelationshipFieldClient ? number | Record | string : TField extends NumberFieldClient ? TField['hasMany'] extends true ? number[] : number : TField extends TextFieldClient ? TField['hasMany'] extends true ? string[] : string : TField extends CodeFieldClient | EmailFieldClient | JSONFieldClient | RadioFieldClient | TextareaFieldClient ? string : TField extends BlocksFieldClient ? { [key: string]: any; blockType: string; }[] : TField extends CheckboxFieldClient ? boolean : TField extends DateFieldClient ? Date | number | string : TField extends GroupFieldClient ? Record : TField extends UploadFieldClient ? File | string : TField extends ArrayFieldClient ? Record[] : TField extends SelectFieldClient ? TField['hasMany'] extends true ? string[] : string : TField extends PointFieldClient ? { x: number; y: number; } : any : TCellData; className?: string; collectionSlug: SanitizedCollectionConfig['slug']; columnIndex?: number; customCellProps?: Record; field: TField; link?: boolean; linkURL?: string; onClick?: (args: { cellData: unknown; collectionSlug: SanitizedCollectionConfig['slug']; rowData: RowData; }) => void; rowData: RowData; viewType?: ViewTypes; }; export type DefaultServerCellComponentProps = { collectionConfig: SanitizedCollectionConfig; field: Field; i18n: I18nClient; payload: Payload; } & Omit, 'field'>; //# sourceMappingURL=Cell.d.ts.map