import { LitElement } from 'lit';
import '../icon';
import { SPLIT_BTN_KINDS, SPLIT_BTN_SIZES, SPLIIT_BTN_ICON_POSITION } from './defs';
import './splitButtonOption';
/**
 * Split Button
 * @slot unnamed - Slot for split button options.
 * @slot icon - Slot for an icon (optional).
 * @fires on-click - Captures the event and emits the selected value and original event details.
 */
export declare class SplitButton extends LitElement {
    static styles: import("lit").CSSResultGroup;
    /** @ignore */
    static shadowRootOptions: {
        delegatesFocus: boolean;
        mode: ShadowRootMode;
        slotAssignment?: SlotAssignmentMode | undefined;
    };
    /** ARIA label for the buttons for accessibility. */
    description: string;
    /** Split button name. */
    name: string;
    /** Specifies the visual appearance/kind of the split button. */
    kind: SPLIT_BTN_KINDS;
    /** Specifies the size of the split button. */
    size: SPLIT_BTN_SIZES;
    /** Specifies the position of the icon relative to any split button text. Default `'left'`. This is optional and work with icon slot.*/
    iconPosition: SPLIIT_BTN_ICON_POSITION;
    /** Split button text (required) */
    label: string;
    /** Determines if the split button is disabled. */
    disabled: boolean;
    /** Determines if the split button indicates a destructive action. */
    destructive: boolean;
    /** Menu CSS min-width value. */
    menuMinWidth: string;
    /** Listbox/menu open state. */
    open: boolean;
    /**
     * Queries any slotted options.
     * @ignore
     */
    options: Array<any>;
    /**
     * Open menu upwards.
     * @ignore
     */
    _openUpwards: boolean;
    /**
     * Queries the .select DOM element.
     * @ignore
     */
    buttonEl: HTMLElement;
    /**
     * Assistive text for screen readers.
     * @ignore
     */
    assistiveText: string;
    render(): import("lit-html").TemplateResult<1>;
    updated(changedProps: any): void;
    private handleListBlur;
    private handleButtonKeydown;
    private handleListKeydown;
    private handleKeyboard;
    private toggleDropdown;
    private _handleClickOut;
    private _handleBlur;
    private _handlePrimaryClick;
    private _handleClick;
    private emitValue;
    connectedCallback(): void;
    disconnectedCallback(): void;
}
declare global {
    interface HTMLElementTagNameMap {
        'kd-split-btn': SplitButton;
    }
}
//# sourceMappingURL=splitButton.d.ts.map