import { getFocusElement } from '@lookwe/lit-mixins/delegate-focus';
import { getFormValue } from '@lookwe/lit-mixins/form-associated';
import { LuiElement } from '../../../internal/lui-element.js';
declare global {
    interface HTMLElementEventMap {
    }
}
declare const BaseClass: import("@lookwe/utils/types").MixinReturn<import("@lookwe/utils/types").MixinReturn<(abstract new (...args: Array<any>) => import("@lookwe/lit-mixins/form-associated").FormAssociated) & (abstract new (...args: Array<any>) => import("@lookwe/lit-mixins/element-internals").WithElementInternals) & typeof LuiElement & import("@lookwe/lit-mixins/form-associated").FormAssociatedConstructor & import("@lookwe/lit-mixins/delegate-focus").WithDelegatesFocusConstructor, import("@lookwe/lit-mixins/delegate-focus").WithDelegatesFocus>, import("@lookwe/lit-mixins/popover-target").WithPopoverTarget>;
export declare class Button extends BaseClass {
    #private;
    /**
     * The URL that the link button points to.
     */
    accessor href: string;
    /**
     * Tells the browser to download the linked file as this filename. Only used when `href` is set.
     */
    accessor download: boolean;
    /**
     * Where to display the linked `href` URL for a link button. Common options include `_blank` to open in a new tab.
     */
    accessor target: '_blank' | '_parent' | '_self' | '_top' | '';
    /**
     * Whether to render the icon at the inline end of the label rather than the inline start.
     */
    accessor trailingIcon: boolean;
    /**
     * The default behavior of the button. May be "button", "reset", or "submit"
     * (default=button).
     */
    accessor type: 'button' | 'reset' | 'submit';
    /**
     * The value added to a form with the button's name when the button submits a form.
     */
    accessor value: string;
    /**
     * Button size.
     */
    accessor size: 'small' | 'medium' | 'large';
    constructor();
    render(): import("lit-html").TemplateResult<1>;
    [getFormValue](): null;
    formResetCallback(): void;
    formStateRestoreCallback(_state: string): void;
    [getFocusElement](): HTMLElement | null;
}
export {};
