import { LitElement } from 'lit';
import { ShadowPartsController } from '../../controllers/shadow-parts-controller';
declare global {
    interface HTMLElementTagNameMap {
        'wy-button': WyButton;
        'wy-buttons': WyButtons;
    }
}
/**
 * Button component. Handles both slotted icon and text children. Can be configured with various appearances.
 *
 * @slot - Default slot for icons and text.
 * @csspart wy-button
 * @csspart wy-active - When `active` state.
 * @csspart wy-disabled - When `disabled` state.
 * @csspart wy-button-inline - When `kind` is `inline`.
 * @csspart wy-button-icon - When `kind` is `icon`.
 * @csspart wy-button-icon-inline - When `kind` is `icon-inline`.
 * @csspart wy-button-link - When `kind` is `link`.
 * @csspart wy-button-primary - when `color` is `primary`.
 * @csspart wy-button-primary-text - When `color` is `primary-text`.
 * @csspart wy-button-inherit-color - When `color` is `inherit`.
 * @csspart wy-button-no-color - When `color` is `none`.
 * @csspart wy-button-variant - When `color` is `variant`.
 * @csspart wy-button-type-submit - When `type` is `submit`.
 * @csspart wy-button-type-reset" - When `type` is `reset`.
 * @csspart wy-button-state-layer - When the button has a state layer.
 * @csspart wy-button-sm - When the button is small.
 * @csspart wy-tab - When `kind` is `tab`.
 * @csspart wy-tab-sm - When `kind` is `tab` and button is small,
 */
export declare class WyButton extends LitElement {
    static styles: import('lit').CSSResult[];
    protected exportParts: ShadowPartsController;
    /**
     * Optional type role for use in forms.
     */
    type?: "submit" | "reset";
    /**
     * Button kind which sets the appearance.
     */
    kind?: "filled" | "inline" | "icon" | "icon-inline" | "link" | "tab";
    /**
     * Sets active state of the button.
     */
    active?: boolean;
    /**
     * Color token name.
     */
    color?: "primary" | "variant" | "primary-text" | "inherit" | "none";
    /**
     * Smaller size button.
     */
    small?: boolean;
    /**
     * Sets disabled state of the button.
     */
    disabled?: boolean;
    /**
     * Optional href attribute to render the button using `<a>`.
     */
    href?: string;
    /**
     * Optional target window when using the `href` attribute.
     */
    target?: string;
    /**
     * Optional download attribute when using the `href` attribute.
     */
    download?: string;
    render(): import('../../../node_modules/lit-html/node/lit-html.js').TemplateResult<1>;
}
/**
 * Button group. Provides layout and styling.
 *
 * @slot - Default slot for buttons.
 * @csspart wy-buttons - Regular button group
 * @csspart wy-buttons-reverse - When button order is reversed.
 * @csspart wy-tabs - Tab style button group.
 * @csspart wy-buttons-floating - Floating positioning of the group.
 * @csspart wy-buttons-sticky - Sticky positioning of the group.
 */
export declare class WyButtons extends LitElement {
    static styles: import('lit').CSSResult[];
    protected exportParts: ShadowPartsController;
    /**
     * Display the buttons as tabs.
     */
    tabs: boolean;
    /**
     * Button group positioning.
     */
    position: "normal" | "floating" | "sticky";
    /**
     * Reverse the order of the buttons.
     */
    reverse: boolean;
    protected render(): import('../../../node_modules/lit-html/node/lit-html.js').TemplateResult<1>;
}
//# sourceMappingURL=wy-button.d.ts.map