import { __decorate } from "tslib";
import { attr } from '@ni/fast-element';
import { DesignSystem } from '@ni/fast-foundation';
import { LabelProviderBase } from '../base';
import { richTextToggleBoldLabel, richTextToggleItalicsLabel, richTextToggleBulletedListLabel, richTextToggleNumberedListLabel } from './label-tokens';
import { styles } from '../base/styles';
const supportedLabels = {
    toggleBold: richTextToggleBoldLabel,
    toggleItalics: richTextToggleItalicsLabel,
    toggleBulletedList: richTextToggleBulletedListLabel,
    toggleNumberedList: richTextToggleNumberedListLabel
};
/**
 * Label provider for the Nimble rich text component
 */
export class LabelProviderRichText extends LabelProviderBase {
    constructor() {
        super(...arguments);
        this.supportedLabels = supportedLabels;
    }
}
__decorate([
    attr({ attribute: 'toggle-bold' })
], LabelProviderRichText.prototype, "toggleBold", void 0);
__decorate([
    attr({ attribute: 'toggle-italics' })
], LabelProviderRichText.prototype, "toggleItalics", void 0);
__decorate([
    attr({ attribute: 'toggle-bulleted-list' })
], LabelProviderRichText.prototype, "toggleBulletedList", void 0);
__decorate([
    attr({ attribute: 'toggle-numbered-list' })
], LabelProviderRichText.prototype, "toggleNumberedList", void 0);
const nimbleLabelProviderRichText = LabelProviderRichText.compose({
    baseName: 'label-provider-rich-text',
    styles
});
DesignSystem.getOrCreate()
    .withPrefix('nimble')
    .register(nimbleLabelProviderRichText());
export const labelProviderRichTextTag = 'nimble-label-provider-rich-text';
//# sourceMappingURL=index.js.map