UNPKG

@vtex/styleguide

Version:

> VTEX Styleguide React components ([Docs](https://vtex.github.io/styleguide))

37 lines (36 loc) 1.7 kB
import { ReactNode, PropsWithChildren, ForwardRefExoticComponent, RefAttributes, DetailedHTMLProps, HTMLAttributes } from 'react'; import { Density } from './hooks/useTableMeasures'; import useTableMotion from './hooks/useTableMotion'; export declare type Items = object[]; export declare type ReturnedData = { data: unknown | object; rowHeight: number; density: Density; motion: ReturnType<typeof useTableMotion>; }; export declare type Column = { id?: string; title?: string | Element | Function; width?: number | string; sortable?: boolean; cellRenderer?: (data: ReturnedData) => React.ReactNode; extended?: boolean; condensed?: string[]; }; export declare type E2ETestable<T = string> = { testId?: T; }; export interface HasMotion { motion?: ReturnType<typeof useTableMotion>; } /** Shorthand for RefForwardingComponent */ export declare type RFC<T, P = {}> = React.RefForwardingComponent<T, P>; /** Defines a exported foward ref with composites */ export declare type ComposableWithRef<Ref = HTMLElement, Props = PropsWithChildren<{}>, Composites = {}> = ForwardRefExoticComponent<Props & RefAttributes<Ref>> & Partial<Composites>; /** Type with children that receives render-props */ export declare type RenderProps<P = {}, T = Record<string, unknown>> = P & { children?: (data: T) => ReactNode; }; export declare type NativeTableSection = DetailedHTMLProps<HTMLAttributes<HTMLTableSectionElement>, HTMLTableSectionElement>; export declare type NativeTr = DetailedHTMLProps<HTMLAttributes<HTMLTableRowElement>, HTMLTableRowElement>; export declare type NativeTable = DetailedHTMLProps<HTMLAttributes<HTMLTableElement>, HTMLTableElement>;