import { IconType } from "../../constants/icons";
import { ColorType } from "../../constants/colors";
export type ButtonAlignType = 'left' | 'right';
export type ButtonType = 'button' | 'submit' | 'reset';
export declare class XButton {
    /**
     * Element icon name
     */
    icon?: IconType;
    /**
     * Element icon aligment
     */
    iconAlign?: ButtonAlignType;
    /**
     * Element color name
     */
    color?: ColorType;
    /**
     * Element button type
     */
    type?: ButtonType;
    /**
     * Element URL path for `<a>` type button
     */
    href?: string;
    /**
     * Element loading state
     */
    loading?: boolean;
    /**
     * Element disabled state
     */
    disabled?: boolean;
    /**
     * Element fullwidth block style
     */
    block?: boolean;
    /**
     * Element small size
     */
    small?: boolean;
    /**
     * Element focus state
     */
    isFocused: boolean;
    /**
     * Element reference
     */
    el: HTMLElement;
    /**
     * This called on input field is unfocused
     */
    onBlurElement(): void;
    /**
     * This called on input field is focused
     */
    onFocusElement(): void;
    /**
     * Listen for keyboard events for confirmation
     */
    handleKeyDown(ev: KeyboardEvent): void;
    /**
     * Render element
     */
    render(): any;
}
