import { ElementRef, OnInit } from '@angular/core';
import { QdButtonGhostDirective, QdButtonLinkDirective } from '../directives/button.directives';
import { QdButtonAdditionalInfo } from '../model/button-config';
import { QdButtonColor } from '../model/button.types';
import * as i0 from "@angular/core";
/**
 * The **QdButton** component, as the name suggests, provides a simple button.<br />
 * It is possible to bind it to either a `button` tag or to an `a` tag.
 */
export declare class QdButtonComponent implements OnInit {
    buttonLink: QdButtonLinkDirective;
    buttonGhost: QdButtonGhostDirective;
    private readonly _elementRef;
    /**
     * Disables the button
     */
    disabled: boolean;
    /**
     * Sets the color
     */
    color: QdButtonColor;
    /**
     * This allows you to specify an icon.
     */
    icon: string;
    /**
     * A static test ID for integration tests can be set. <br />
     * The value for the HTML attribute [data-test-id].
     */
    testId: string;
    additionalInfo: QdButtonAdditionalInfo;
    private onlyIconOnSmallViewport;
    get hasIcon(): boolean;
    get isDisabled(): boolean | null;
    get classes(): string;
    constructor(buttonLink: QdButtonLinkDirective, buttonGhost: QdButtonGhostDirective, isViewportAdaptiveEnabled: boolean, _elementRef: ElementRef);
    ngOnInit(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<QdButtonComponent, [{ optional: true; host: true; }, { optional: true; host: true; }, { optional: true; }, null]>;
    static ɵcmp: i0.ɵɵComponentDeclaration<QdButtonComponent, "button[qdButton], a[qdButton], button[qd-button]", never, { "disabled": { "alias": "disabled"; "required": false; }; "color": { "alias": "color"; "required": false; }; "icon": { "alias": "icon"; "required": false; }; "testId": { "alias": "data-test-id"; "required": false; }; "additionalInfo": { "alias": "additionalInfo"; "required": false; }; }, {}, never, ["*"], false, never>;
}
//# sourceMappingURL=button.component.d.ts.map