import { TemplateResult } from "lit-element"; import { Ripple } from "../../ripple/ripple"; import { FormElementBehavior, IFormElementBehaviorProperties } from "../form-element/index"; /** * Properties of the button behavior. */ export interface IButtonBehaviorProperties extends IFormElementBehaviorProperties { type: "button" | "submit"; } /** * Provides button behavior. */ export declare abstract class ButtonBehavior extends FormElementBehavior implements IButtonBehaviorProperties { static styles: import("lit-element").CSSResult[]; /** * Type of the button. * @attr */ type: "button" | "submit"; /** * Ripple element. */ protected abstract get $ripple(): Ripple | null; /** * Hooks up the component. */ connectedCallback(): void; /** * Handles the key down event. * @param e */ protected onKeyDown(e: Event): void; /** * Handles click events on the button. * @param e */ protected onClick(e: Event): void; /** * Returns the form element */ protected renderFormElement(): TemplateResult; }