UNPKG

aura-glass

Version:

A comprehensive glassmorphism design system for React applications with 142+ production-ready components

112 lines 3.74 kB
import React from 'react'; export interface BadgeProps extends React.HTMLAttributes<HTMLSpanElement> { variant?: 'default' | 'primary' | 'secondary' | 'success' | 'warning' | 'error' | 'outline'; size?: 'xs' | 'sm' | 'md' | 'lg'; dot?: boolean; closable?: boolean; onClose?: () => void; } export interface AvatarProps extends React.HTMLAttributes<HTMLDivElement> { src?: string; alt?: string; size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl'; shape?: 'circle' | 'square' | 'rounded'; fallback?: string | React.ReactNode; showBorder?: boolean; status?: 'online' | 'offline' | 'busy' | 'away'; } export interface TagProps extends React.HTMLAttributes<HTMLSpanElement> { closable?: boolean; onClose?: () => void; color?: string; variant?: 'default' | 'outline' | 'solid'; } export interface ProgressProps extends React.HTMLAttributes<HTMLDivElement> { value: number; max?: number; min?: number; showValue?: boolean; size?: 'xs' | 'sm' | 'md' | 'lg'; variant?: 'default' | 'success' | 'warning' | 'error'; striped?: boolean; animated?: boolean; } export interface SpinnerProps extends React.HTMLAttributes<HTMLDivElement> { size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl'; color?: string; thickness?: number; speed?: number; } export interface SkeletonProps extends React.HTMLAttributes<HTMLDivElement> { variant?: 'text' | 'rectangular' | 'circular'; width?: number | string; height?: number | string; animation?: 'pulse' | 'wave' | false; } export interface EmptyStateProps extends React.HTMLAttributes<HTMLDivElement> { title?: string; description?: string; icon?: React.ReactNode; actions?: React.ReactNode; } export interface AlertProps extends React.HTMLAttributes<HTMLDivElement> { type?: 'success' | 'info' | 'warning' | 'error'; title?: string; closable?: boolean; onClose?: () => void; showIcon?: boolean; banner?: boolean; } export interface TooltipProps { title: React.ReactNode; children: React.ReactElement; placement?: 'top' | 'bottom' | 'left' | 'right' | 'topLeft' | 'topRight' | 'bottomLeft' | 'bottomRight' | 'leftTop' | 'leftBottom' | 'rightTop' | 'rightBottom'; trigger?: 'hover' | 'focus' | 'click'; visible?: boolean; onVisibleChange?: (visible: boolean) => void; } export interface PopoverProps extends Omit<TooltipProps, 'title'> { content: React.ReactNode; title?: React.ReactNode; } export interface TableColumn<T = any> { key: keyof T | string; title: string; width?: number | string; sortable?: boolean; filterable?: boolean; align?: 'left' | 'center' | 'right'; render?: (value: any, record: T, index: number) => React.ReactNode; sorter?: (a: T, b: T) => number; filters?: { text: string; value: any; }[]; onFilter?: (value: any, record: T) => boolean; } export interface TableProps<T = any> { columns: TableColumn<T>[]; data: T[]; loading?: boolean; pagination?: { current: number; pageSize: number; total: number; showSizeChanger?: boolean; showQuickJumper?: boolean; showTotal?: (total: number, range: [number, number]) => string; }; onChange?: (pagination: any, filters: any, sorter: any) => void; rowKey?: string | ((record: T, index: number) => string); size?: 'small' | 'middle' | 'large'; bordered?: boolean; scroll?: { x?: number | string; y?: number | string; }; expandable?: { expandedRowRender?: (record: T, index: number) => React.ReactNode; rowExpandable?: (record: T) => boolean; }; } //# sourceMappingURL=data-display.d.ts.map