import { TemplateResult } from 'lit';
import { UiElement } from '../../UiElement.js';
import { BeginPressConfig, EndPressConfig } from '../../../controllers/ActionController.js';
import UiRipple from '../../ripple/internals/ripple.js';
import '../../ripple/ui-ripple.js';
/**
 * @fires trigger - When a button is triggered.
 * @slot - Default slot for the label
 * @slot icon - A slot to render an icon.
 */
export default class SegmentedButton extends UiElement {
    accessor ripple: UiRipple;
    /**
     * Whether the button is selected.
     * @attribute
     */
    accessor selected: boolean;
    protected accessor leadingIcons: HTMLElement[];
    get disabled(): boolean;
    /**
     * When set, the button is a disabled state.
     * @attribute
     */
    set disabled(value: boolean);
    constructor();
    connectedCallback(): void;
    beginPress(options: BeginPressConfig): void;
    endPress(options: EndPressConfig): void;
    handlePointerEnter(e: PointerEvent): void;
    handlePointerLeave(e: PointerEvent): void;
    protected handleIconSlotChange(): void;
    protected render(): TemplateResult;
    protected leadingContent(): TemplateResult;
    protected renderLeadingIcon(): TemplateResult;
    protected renderChecked(): TemplateResult;
    protected renderRipple: () => TemplateResult;
}
//# sourceMappingURL=SegmentedButton.d.ts.map