@spaced-out/ui-design-system
Version:
Sense UI components library
45 lines • 1.59 kB
TypeScript
import * as React from 'react';
import type { ClassNameComponent } from '../../utils/makeClassNameComponent';
import type { SortDirection } from '../../components/Table/hooks';
import type { GenericObject } from '../../components/Table/Table';
export interface GenericHeaderItem<T, U> {
label: React.ReactNode;
key: keyof T;
className?: string;
filterIcon?: React.ReactNode;
filtered?: boolean;
subtext?: string;
sortable?: boolean;
headerIconClassName?: string;
sticky?: boolean;
render?: React.ComponentType<{
data: T;
extras?: U;
className?: string;
selected?: boolean;
disabled?: boolean;
testId?: string;
}>;
}
export type GenericHeaderItems<T, U> = GenericHeaderItem<T, U>[];
export declare const BasicHeadCell: ClassNameComponent<'th'>;
export declare const BasicTableHead: ClassNameComponent<'thead'>;
export interface TableHeaderProps<T, U> {
className?: string;
tableHeaderClassName?: string;
sortable?: boolean;
columns: GenericHeaderItems<T, U>;
handleSortClick?: (sortKey: keyof T) => unknown;
sortKey?: keyof T;
sortDirection?: SortDirection;
checked?: 'true' | 'false' | 'mixed';
handleCheckboxClick?: (arg1: {
value: string;
checked: boolean;
}) => unknown;
disabled?: boolean;
stickyHeader?: boolean;
testId?: string;
}
export declare function DefaultTableHeader<T extends GenericObject, U extends GenericObject>(props: TableHeaderProps<T, U>): React.JSX.Element;
//# sourceMappingURL=DefaultTableHeader.d.ts.map