goobs-frontend
Version:
A comprehensive React-based libary for building modern web applications
53 lines • 2.09 kB
TypeScript
import { default as React } from 'react';
export interface AvatarStyles {
/** Theme variant: 'light' (default), 'dark', or 'sacred'. */
theme?: 'light' | 'dark' | 'sacred';
/** Named size preset applied via data-size in the CSS module. */
size?: 'small' | 'medium' | 'large' | 'xl';
/** Explicit width (overrides the size preset). */
width?: string;
/** Explicit height (overrides the size preset). */
height?: string;
/** Avatar background color. */
backgroundColor?: string;
/** Content text/icon color. */
color?: string;
/** Border radius (default circular). */
borderRadius?: string;
/** Content font size. */
fontSize?: string;
/** Content font weight. */
fontWeight?: string | number;
/** Full border shorthand; wins over borderColor/borderWidth. */
border?: string;
/** Border color; composes `<borderWidth> solid <borderColor>` when `border` is not set. */
borderColor?: string;
/** Border width used with borderColor (default 1px); ignored without borderColor. */
borderWidth?: string;
/** Avatar box shadow. */
boxShadow?: string;
/** Margin shorthand. */
margin?: string;
/** Top margin. */
marginTop?: string;
/** Bottom margin. */
marginBottom?: string;
/** Left margin. */
marginLeft?: string;
/** Right margin. */
marginRight?: string;
/** Renders the disabled treatment (data-disabled) — purely visual. */
disabled?: boolean;
}
export interface AvatarProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'style'> {
/** The content to be displayed within the avatar (icon, text, or image). */
children: React.ReactNode;
/** Comprehensive styling options including theme, size, colors, and layout properties. */
styles?: AvatarStyles;
}
/**
* A circular avatar component with theming support for displaying icons, images, or text.
*/
declare const Avatar: React.ForwardRefExoticComponent<AvatarProps & React.RefAttributes<HTMLDivElement>>;
export default Avatar;
//# sourceMappingURL=index.d.ts.map