import type { JSX } from '../../stencil-public-runtime';
import type { AccessKeyPropType, AlternativeButtonLinkRolePropType, AriaDescriptionPropType, ButtonCallbacksPropType, ButtonTypePropType, ButtonVariantPropType, CustomClassPropType, IconsPropType, InlinePropType, LabelWithExpertSlotPropType, PopoverAlignPropType, ShortKeyPropType, StencilUnknown, SyncValueBySelectorPropType, TooltipAlignPropType } from '../../schema';
import type { PopoverButtonProps, PopoverButtonStates } from '../../schema/components/popover-button';
export declare class KolPopoverButton implements PopoverButtonProps {
    private refButton?;
    private refPopover?;
    private cleanupAutoPositioning?;
    state: PopoverButtonStates;
    private justClosed;
    private popoverOpen;
    hidePopover(): Promise<void>;
    showPopover(): Promise<void>;
    focus(): Promise<void | undefined>;
    kolFocus(): Promise<void | undefined>;
    private handleBeforeToggle;
    private alignPopover;
    private handleToggle;
    private handleButtonClick;
    componentDidRender(): void;
    disconnectedCallback(): void;
    render(): JSX.Element;
    _accessKey?: AccessKeyPropType;
    _ariaControls?: string;
    _ariaDescription?: AriaDescriptionPropType;
    _ariaSelected?: boolean;
    _customClass?: CustomClassPropType;
    _disabled?: boolean;
    _hideLabel?: boolean;
    _icons?: IconsPropType;
    _id?: string;
    _inline?: InlinePropType;
    _label: LabelWithExpertSlotPropType;
    _name?: string;
    _on?: ButtonCallbacksPropType<StencilUnknown>;
    _popoverAlign?: PopoverAlignPropType;
    _role?: AlternativeButtonLinkRolePropType;
    _shortKey?: ShortKeyPropType;
    _syncValueBySelector?: SyncValueBySelectorPropType;
    _tabIndex?: number;
    _tooltipAlign?: TooltipAlignPropType;
    _type?: ButtonTypePropType;
    _value?: StencilUnknown;
    _variant?: ButtonVariantPropType;
    validateInline(value?: InlinePropType): void;
    validatePopoverAlign(value?: PopoverAlignPropType): void;
    componentWillLoad(): void;
}
