import { Toggle as TogglePrimitive } from '@base-ui/react/toggle';
import { ToggleGroup as ToggleGroupPrimitive } from '@base-ui/react/toggle-group';
import { type VariantProps } from 'class-variance-authority';
declare const toggleVariants: (props?: ({
    variant?: "outline" | "default" | null | undefined;
    size?: "default" | "sm" | "lg" | null | undefined;
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
export interface ToggleProps extends Omit<TogglePrimitive.Props, 'onPressedChange'>, VariantProps<typeof toggleVariants> {
    label?: string;
    /** Controlled pressed state. When provided, component is controlled. */
    pressed?: boolean;
    /** Initial pressed state for uncontrolled mode */
    defaultPressed?: boolean;
    /** Callback when pressed state changes */
    onPressedChange?: (pressed: boolean) => void;
    /** Required aria-label for icon-only toggles (when no text children) */
    'aria-label'?: string;
}
declare function Toggle({ label, className, variant, size, pressed: controlledPressed, defaultPressed, onPressedChange, ...props }: ToggleProps): import("react/jsx-runtime").JSX.Element;
declare namespace Toggle {
    var displayName: string;
}
export interface ToggleGroupProps extends Omit<ToggleGroupPrimitive.Props, 'onValueChange'>, VariantProps<typeof toggleVariants> {
    label?: string;
    /** Spacing between items (0 for connected group) */
    spacing?: number;
    /** Orientation of the group */
    orientation?: 'horizontal' | 'vertical';
    /** Controlled value. When provided, component is controlled. */
    value?: readonly string[];
    /** Initial selected value(s) for uncontrolled mode */
    defaultValue?: readonly string[];
    /** Callback when value changes */
    onValueChange?: (value: readonly string[]) => void;
}
declare function ToggleGroup({ label, className, children, variant, size, spacing, orientation, value: controlledValue, defaultValue, onValueChange, ...props }: ToggleGroupProps): import("react/jsx-runtime").JSX.Element;
declare namespace ToggleGroup {
    var displayName: string;
}
export interface ToggleGroupItemProps extends TogglePrimitive.Props, VariantProps<typeof toggleVariants> {
}
declare function ToggleGroupItem({ className, children, variant, size, ...props }: ToggleGroupItemProps): import("react/jsx-runtime").JSX.Element;
declare namespace ToggleGroupItem {
    var displayName: string;
}
export { Toggle, ToggleGroup, ToggleGroupItem, toggleVariants };
