import { ReactNode } from 'react'; export * from './types/productCardTypes'; export * from './types/carouselTypes'; export type RenderPropsChildren = ((props: RenderProps) => ReactNode) | ReactNode; export interface ComponentOverrideProps { htmlRender?: (props?: T) => HTMLElement; reactNode?: RenderPropsChildren; } /** * Includes a `children` property of type: * - ReactNode or, * - (renderProps) => ReactNode * * Abstract type to be extended */ export type IncludeRenderProps = { /** * React Component that takes in Render Props to override the default render */ children?: RenderPropsChildren; }; /** * Includes the `componentOverrides` property of type: * - ComponentOverrideProps * - Other sub-components J overrides of types `IncludeComponentOverrides` * * Abstract type to be extended */ export type IncludeComponentOverrides = { /** * ReactNode/RenderProps function overrides for current and sub-components down the tree */ componentOverrides?: T; };