import { EventEmitter } from '../../stencil-public-runtime';
import { Orientation } from '../types';
/**
 * A customizable buttongroup component that groups multiple Modus buttons together.
 *
 * The component supports a `<slot>` for injecting content within the buttongroup.
 */
export declare class ModusWcButtonGroup {
    private buttonElements;
    private inheritedAttributes;
    private selectedButtons;
    /** Reference to the host element */
    el: HTMLElement;
    /** Style variant to apply to all buttons within the button group */
    variant: 'borderless' | 'filled' | 'outlined';
    /** Color to apply to all buttons within the button group */
    color?: 'primary' | 'secondary' | 'tertiary' | 'warning' | 'danger' | 'neutral';
    /** Disables all buttons within the button group */
    disabled?: boolean;
    /** Orientation of the button group: horizontal or vertical */
    orientation?: Orientation;
    /** Selection type for button group */
    selectionType?: 'default' | 'single' | 'multiple';
    /** Event emitted when any button in the group is clicked */
    buttonGroupClick: EventEmitter<{
        button: HTMLElement;
        isSelected: boolean;
    }>;
    /** Event emitted when button selection changes */
    buttonSelectionChange: EventEmitter<{
        selectedButtons: HTMLElement[];
    }>;
    componentWillLoad(): void;
    componentDidLoad(): void;
    handlePropChange(): void;
    handleSelectionTypeChange(): void;
    handleButtonClick(event: CustomEvent): void;
    handleSlotChange(): void;
    private initializeSelectedButtons;
    private syncButtonStates;
    private setButtonAttribute;
    private toggleSingleSelect;
    private toggleMultiSelect;
    private resetAllSelections;
    private getClasses;
    render(): any;
}
