mainstack-library
Version:
component library for the mainstack frontend task
127 lines (108 loc) • 3.07 kB
TypeScript
import React, { ButtonHTMLAttributes, ReactNode } from 'react';
declare const variants: {
primary: string;
secondary: string;
ghost: string;
};
declare const sizes: {
sm: string;
md: string;
lg: string;
};
type VariantType = keyof typeof variants;
type SizeType = keyof typeof sizes;
interface ButtonProps extends ButtonHTMLAttributes<HTMLButtonElement> {
children: ReactNode;
isLoading?: boolean;
variant?: VariantType;
size?: SizeType;
}
declare const Button: ({ variant, size, className, children, isLoading, ...props }: ButtonProps) => React.JSX.Element;
interface OptionType {
label: string;
value: string;
}
interface RadioDropdownProps {
options: OptionType[];
onChange?: (selectedOptions: OptionType[]) => void;
defaultSelectedOptions?: OptionType[];
className?: string;
}
declare const RadioDropdown: React.FC<RadioDropdownProps>;
interface AnalyticsIconProps {
color?: string;
className?: string;
}
declare const AnalyticsIcon: React.FC<AnalyticsIconProps>;
interface AppsIconProps {
color?: string;
className?: string;
}
declare const AppsIcon: React.FC<AppsIconProps>;
interface ChatIconProps {
color?: string;
className?: string;
}
declare const ChatIcon: React.FC<ChatIconProps>;
interface CRMIconProps {
color?: string;
className?: string;
}
declare const CRMIcon: React.FC<CRMIconProps>;
interface HomeIconProps {
color?: string;
className?: string;
}
declare const HomeIcon: React.FC<HomeIconProps>;
interface LogoProps {
color?: string;
className?: string;
}
declare const Logo: React.FC<LogoProps>;
interface MenuIconProps {
color?: string;
className?: string;
}
declare const MenuIcon: React.FC<MenuIconProps>;
interface NotificationIconProps {
color?: string;
className?: string;
}
declare const NotificationIcon: React.FC<NotificationIconProps>;
interface RevenueIconProps {
color?: string;
className?: string;
}
declare const RevenueIcon: React.FC<RevenueIconProps>;
interface CaretDownIconProps {
color?: string;
className?: string;
}
declare const CaretDownIcon: React.FC<CaretDownIconProps>;
interface DownloadIconProps {
color?: string;
className?: string;
}
declare const DownloadIcon: React.FC<DownloadIconProps>;
interface ArrowUpIconProps {
color?: string;
className?: string;
}
declare const ArrowUpIcon: React.FC<ArrowUpIconProps>;
interface ArrowDownIconProps {
color?: string;
className?: string;
}
declare const ArrowDownIcon: React.FC<ArrowDownIconProps>;
interface CloseIconProps {
color?: string;
className?: string;
}
declare const CloseIcon: React.FC<CloseIconProps>;
interface InfoIconProps {
color?: string;
className?: string;
}
declare const InfoIcon: React.FC<InfoIconProps>;
export { AnalyticsIcon, AppsIcon, ArrowDownIcon, ArrowUpIcon, Button, CRMIcon, CaretDownIcon, ChatIcon, CloseIcon, DownloadIcon, HomeIcon, InfoIcon, Logo, MenuIcon, NotificationIcon, RadioDropdown, RevenueIcon };
export type { ButtonProps };