@unicity/design-system
Version:
A comprehensive React component library built on Material-UI with advanced theming capabilities including neumorphism design support
107 lines • 2.43 kB
TypeScript
import React from 'react';
import { ToggleButtonProps as MuiToggleButtonProps } from '@mui/material';
export interface ToggleOption {
/**
* Unique identifier/value
*/
value: string | number;
/**
* Display label
*/
label?: React.ReactNode;
/**
* Icon component
*/
icon?: React.ReactNode;
/**
* Whether option is disabled
*/
disabled?: boolean;
/**
* Tooltip text
*/
tooltip?: string;
}
export interface ToggleButtonGroupProps {
/**
* Array of toggle options
*/
options: ToggleOption[];
/**
* Selected value(s)
*/
value?: string | number | (string | number)[];
/**
* Callback fired when value changes
*/
onChange?: (value: string | number | (string | number)[] | null) => void;
/**
* Whether multiple selections are allowed
*/
multiple?: boolean;
/**
* Visual variant
*/
variant?: 'default' | 'outlined' | 'contained';
/**
* Size of buttons
*/
size?: 'small' | 'medium' | 'large';
/**
* Color theme
*/
color?: 'primary' | 'secondary' | 'success' | 'warning' | 'error' | 'info';
/**
* Orientation
*/
orientation?: 'horizontal' | 'vertical';
/**
* Whether selections are exclusive (for multiple mode)
*/
exclusive?: boolean;
/**
* Whether group is disabled
*/
disabled?: boolean;
/**
* Whether group is required (must have at least one selection)
*/
required?: boolean;
/**
* Full width styling
*/
fullWidth?: boolean;
/**
* Custom styling
*/
sx?: any;
}
export interface ToggleButtonProps extends Omit<MuiToggleButtonProps, 'value'> {
/**
* Button value
*/
value: string | number;
/**
* Whether button is selected
*/
selected?: boolean;
/**
* Visual variant
*/
variant?: 'default' | 'outlined' | 'contained';
/**
* Size of button
*/
size?: 'small' | 'medium' | 'large';
/**
* Color theme
*/
color?: 'primary' | 'secondary' | 'success' | 'warning' | 'error' | 'info';
/**
* Button content
*/
children?: React.ReactNode;
}
export declare const ToggleButton: React.FC<ToggleButtonProps>;
export declare const ToggleButtonGroup: React.FC<ToggleButtonGroupProps>;
//# sourceMappingURL=ToggleButton.d.ts.map