import { __decorate } from "tslib";
import { attr } from '@ni/fast-element';
import { DesignSystem } from '@ni/fast-foundation';
import { AnchorBase } from '../anchor-base';
import { ButtonAppearance, ButtonAppearanceVariant } from '../patterns/button/types';
import { styles } from './styles';
import { template } from './template';
/**
 * A nimble-styled anchor button
 */
export class AnchorButton extends AnchorBase {
    constructor() {
        super(...arguments);
        /**
         * @public
         * @remarks
         * HTML Attribute: appearance
         */
        this.appearance = ButtonAppearance.outline;
        /**
         * @public
         * @remarks
         * HTML Attribute: content-hidden
         */
        this.contentHidden = false;
        /**
         * @public
         * @remarks
         * HTML Attribute: disabled
         */
        this.disabled = false;
    }
}
__decorate([
    attr
], AnchorButton.prototype, "appearance", void 0);
__decorate([
    attr({ attribute: 'appearance-variant' })
], AnchorButton.prototype, "appearanceVariant", void 0);
__decorate([
    attr({ attribute: 'content-hidden', mode: 'boolean' })
], AnchorButton.prototype, "contentHidden", void 0);
__decorate([
    attr({ mode: 'boolean' })
], AnchorButton.prototype, "disabled", void 0);
const nimbleAnchorButton = AnchorButton.compose({
    baseName: 'anchor-button',
    template,
    styles,
    shadowOptions: {
        delegatesFocus: true
    }
});
DesignSystem.getOrCreate().withPrefix('nimble').register(nimbleAnchorButton());
export const anchorButtonTag = 'nimble-anchor-button';
//# sourceMappingURL=index.js.map