@neuctra/ui
Version:
A modern, responsive, customizable React UI component library powered by Tailwind CSS and Vite.
71 lines (70 loc) • 2.59 kB
TypeScript
import { CSSProperties, ReactNode, ElementType, ComponentPropsWithoutRef, ForwardedRef, ReactElement } from 'react';
type CardOwnProps = {
children?: ReactNode;
className?: string;
background?: string;
backgroundImage?: string;
backgroundSize?: CSSProperties["backgroundSize"];
backgroundPosition?: CSSProperties["backgroundPosition"];
backgroundRepeat?: CSSProperties["backgroundRepeat"];
backgroundGradient?: string;
backgroundBlendMode?: CSSProperties["backgroundBlendMode"];
textColor?: string;
hoverStyles?: CSSProperties;
activeStyles?: CSSProperties;
borderRadius?: string | number;
border?: string;
borderTop?: string;
borderRight?: string;
borderBottom?: string;
borderLeft?: string;
boxShadow?: string;
hoverShadow?: string;
transition?: string;
padding?: string | number;
paddingX?: string | number;
paddingY?: string | number;
margin?: string | number;
marginX?: string | number;
marginY?: string | number;
width?: string | number;
minWidth?: string | number;
maxWidth?: string | number;
height?: string | number;
minHeight?: string | number;
maxHeight?: string | number;
display?: CSSProperties["display"];
flexDirection?: CSSProperties["flexDirection"];
justifyContent?: CSSProperties["justifyContent"];
alignItems?: CSSProperties["alignItems"];
alignContent?: CSSProperties["alignContent"];
flexWrap?: CSSProperties["flexWrap"];
flex?: CSSProperties["flex"];
gap?: string | number;
position?: CSSProperties["position"];
top?: string | number;
right?: string | number;
bottom?: string | number;
left?: string | number;
zIndex?: number;
overflow?: CSSProperties["overflow"];
overflowX?: CSSProperties["overflowX"];
overflowY?: CSSProperties["overflowY"];
cursor?: CSSProperties["cursor"];
pointerEvents?: CSSProperties["pointerEvents"];
userSelect?: CSSProperties["userSelect"];
transform?: CSSProperties["transform"];
transformOrigin?: CSSProperties["transformOrigin"];
backdropFilter?: CSSProperties["backdropFilter"];
filter?: CSSProperties["filter"];
opacity?: number;
visibility?: CSSProperties["visibility"];
as?: ElementType;
};
type CardProps<T extends ElementType = "div"> = CardOwnProps & Omit<ComponentPropsWithoutRef<T>, keyof CardOwnProps>;
declare const Card: (<T extends ElementType = "div">(props: CardProps<T> & {
ref?: ForwardedRef<HTMLDivElement>;
}) => ReactElement) & {
displayName: string;
};
export { Card };