import { CSSProperties, JSX } from 'react'; export type ToReactSlots, Slot extends string = ''> = { [K in keyof Omit]?: T[K]; } & { [K in Exclude]?: string extends T[K] ? ReactSlot : T[K]; } & SlotChildren & ReactComponentBasics; export type ReactSlot = string | JSX.Element | (JSX.Element | string)[]; export type SlotChildren = { children?: ReactSlot; }; type ReactComponentBasics = { readonly id?: string; readonly className?: string; readonly style?: CSSProperties; }; export {};