UNPKG

@vaadin/hilla-react-crud

Version:

Hilla CRUD utils for React

26 lines (25 loc) 1.36 kB
import type { GridColumnProps } from '@vaadin/react-components/GridColumn.js'; import { type ComponentType, type JSX, type ReactElement } from 'react'; import type FilterUnion from './types/com/vaadin/hilla/crud/filter/FilterUnion.js'; type ExtractComponentTypeProps<T extends ComponentType<any>> = T extends ComponentType<infer U> ? U : never; export type HeaderRendererProps = ExtractComponentTypeProps<NonNullable<Required<GridColumnProps<unknown>>['headerRenderer']>>; export type HeaderFilterRendererProps = HeaderRendererProps & { setFilter(filter: FilterUnion): void; }; export type HeaderFilterProps = Readonly<{ sortable?: boolean; filterable?: boolean; filterPlaceholder?: string; filterDebounceTime?: number; filterMinLength?: number; headerFilterRenderer?: ComponentType<HeaderFilterRendererProps>; }>; export declare function StringHeaderFilter(): ReactElement; export declare function NumberHeaderFilter(): ReactElement; export declare function EnumHeaderFilter(): ReactElement; export declare function BooleanHeaderFilter(): ReactElement; export declare function DateHeaderFilter(): ReactElement; export declare function TimeHeaderFilter(): ReactElement; export declare function NoHeaderFilter(): ReactElement; export declare function HeaderFilterWrapper({ original }: HeaderRendererProps): JSX.Element | null; export {};