besper-frontend-site-dev-main
Version:
Professional B-esper Frontend Site - Site-wide integration toolkit for full website bot deployment
51 lines (45 loc) • 1.17 kB
text/typescript
// Component-related types and interfaces
export interface ComponentProps {
id?: string;
className?: string;
style?: Partial<CSSStyleDeclaration>;
theme?: ThemeConfiguration;
}
export interface WidgetState {
isVisible: boolean;
isLoading: boolean;
isMinimized: boolean;
activeTab?: string;
data?: any;
}
export interface NavigationItem {
id: string;
label: string;
icon?: string;
children?: NavigationItem[];
onClick?: () => void;
isActive?: boolean;
}
export interface ModalProps extends ComponentProps {
isOpen: boolean;
title: string;
onClose: () => void;
size?: 'sm' | 'md' | 'lg' | 'xl';
}
export interface ButtonProps extends ComponentProps {
variant?: 'primary' | 'secondary' | 'danger' | 'success';
size?: 'sm' | 'md' | 'lg';
disabled?: boolean;
loading?: boolean;
onClick?: () => void;
}
export interface FormFieldProps extends ComponentProps {
label: string;
type?: 'text' | 'email' | 'password' | 'textarea' | 'select' | 'color';
value?: string;
placeholder?: string;
required?: boolean;
disabled?: boolean;
options?: { value: string; label: string }[];
onChange?: (value: string) => void;
}