/**
 * @license
 * Copyright Tyler Technologies, Inc. 
 * License: Apache-2.0
 */
import { __decorate } from "tslib";
import { attachShadowTemplate, coerceBoolean, CustomElement, FoundationProperty } from '@tylertech/forge-core';
import { tylIconClose } from '@tylertech/tyler-icons/standard';
import { BaseComponent } from '../../core';
import { FocusIndicatorComponent } from '../../focus-indicator';
import { IconComponent, IconRegistry } from '../../icon';
import { IconButtonComponent } from '../../icon-button';
import { StateLayerComponent } from '../../state-layer';
import { ChipAdapter } from './chip-adapter';
import { CHIP_CONSTANTS } from './chip-constants';
import { ChipFoundation } from './chip-foundation';
const template = '<template><div class=\"forge-chip\" part=\"root\"><button type=\"button\" id=\"trigger\" class=\"trigger\" part=\"trigger\"><slot name=\"start\"><slot name=\"leading\"></slot></slot><slot></slot><slot name=\"end\"><slot name=\"trailing\"></slot></slot></button><forge-focus-indicator target=\"trigger\" part=\"focus-indicator\"></forge-focus-indicator><forge-state-layer target=\"trigger\" exportparts=\"surface:state-layer\"></forge-state-layer></div></template>';
const styles = ':host{display:-webkit-inline-box;display:inline-flex}:host([hidden]){display:none}.forge-chip{--_chip-background:var(--forge-chip-background, transparent);--_chip-color:var(--forge-chip-color, var(--forge-theme-primary, #3f51b5));--_chip-shape:var(--forge-chip-shape, var(--forge-shape-full, 9999px));--_chip-spacing:var(--forge-chip-spacing, var(--forge-spacing-xsmall, 8px));--_chip-height:var(--forge-chip-height, 32px);--_chip-padding-inline:var(--forge-chip-padding-inline, var(--forge-spacing-small, 12px));--_chip-padding-block:var(--forge-chip-padding-block, 0);--_chip-cursor:var(--forge-chip-cursor, pointer);--_chip-icon-font-size:var(--forge-chip-icon-font-size, 1.5rem);--_chip-disabled-opacity:var(--forge-chip-disabled-opacity, 0.38);--_chip-disabled-cursor:var(--forge-chip-disabled-cursor, not-allowed);--_chip-dense-height:var(--forge-chip-dense-height, 24px);--_chip-dense-padding-inline:var(--forge-chip-dense-padding-inline, var(--forge-spacing-xsmall, 8px));--_chip-dense-spacing:var(--forge-chip-dense-spacing, var(--forge-spacing-xxsmall, 4px));--_chip-dense-font-size:var(--forge-chip-dense-font-size, 0.75rem);--_chip-dense-font-weight:var(--forge-chip-dense-font-weight, normal);--_chip-dense-focus-indicator-offset:var(--forge-chip-dense-focus-indicator-offset, var(--forge-spacing-xxxsmall, 2px));--_chip-dense-icon-font-size:var(--forge-chip-dense-icon-font-size, 1.25rem);--_chip-remove-button-spacing:var(--forge-chip-remove-button-spacing, var(--forge-spacing-xsmall, 8px) var(--forge-spacing-xxsmall, 4px));--_chip-remove-button-height-dense:var(--forge-chip-remove-button-height-dense, 18px);--_chip-remove-button-icon-size-dense:var(--forge-chip-remove-button-icon-size-dense, 16px);--_chip-remove-button-spacing-dense:var(--forge-chip-remove-button-spacing-dense, 0 var(--forge-spacing-xxxsmall, 2px));--_chip-selected-background:var(--forge-chip-selected-background, var(--forge-theme-primary, #3f51b5));--_chip-selected-color:var(--forge-chip-selected-color, var(--forge-theme-on-primary, #ffffff));--_chip-invalid-color:var(--forge-chip-invalid-color, var(--forge-theme-error, #b00020));--_chip-invalid-selected-background:var(--forge-chip-invalid-selected-background, var(--forge-theme-error, #b00020));--_chip-invalid-selected-color:var(--forge-chip-invalid-selected-color, var(--forge-theme-on-error, #ffffff));--_chip-border-width:var(--forge-chip-border-width, var(--forge-border-thin, 1px));--_chip-border-style:var(--forge-chip-border-style, solid);--_chip-border-color:var(--forge-chip-border-color, var(--_chip-color));--_chip-field-background:var(--forge-chip-field-background, var(--forge-theme-surface-container-low, #ebebeb));--_chip-field-color:var(--forge-chip-field-color, var(--forge-theme-on-surface-container-low, #000000));--_chip-field-shape:var(--forge-chip-field-shape, var(--forge-shape-medium, 4px));--_chip-field-border-color:var(--forge-chip-field-border-color, transparent);--_chip-field-cursor:var(--forge-chip-field-cursor, default);--_chip-checkmark-size:var(--forge-chip-checkmark-size, 1.25em);--_chip-checkmark-color:var(--forge-chip-checkmark-color, var(--_chip-color));--_chip-checkmark-spacing:var(--forge-chip-checkmark-spacing, var(--forge-spacing-xsmall, 8px));--_chip-avatar-size:var(--forge-chip-avatar-size, 24px);--_chip-avatar-size-dense:var(--forge-chip-avatar-size-dense, 18px);--_chip-avatar-font-size:var(--forge-chip-avatar-font-size, 0.75rem);--_chip-avatar-font-size-dense:var(--forge-chip-avatar-font-size-dense, 0.5rem);--_chip-avatar-spacing:var(--forge-chip-avatar-spacing, calc(var(--forge-spacing-xsmall, 8px) * -1));--_chip-avatar-spacing-dense:var(--forge-chip-avatar-spacing-dense, calc(var(--forge-spacing-xxsmall, 4px) * -1));--_chip-transition-duration:var(--forge-chip-transition-duration, var(--forge-animation-duration-short3, 150ms));--_chip-transition-easing:var(--forge-chip-transition-easing, var(--forge-animation-easing-standard, cubic-bezier(0.2, 0, 0, 1)));--_chip-checkmark-transition-delay:var(--forge-chip-checkmark-transition-delay, 50ms)}.forge-chip{position:relative;display:-webkit-inline-box;display:inline-flex;-webkit-box-align:center;align-items:center;-webkit-box-sizing:border-box;box-sizing:border-box;height:var(--_chip-height);border-width:var(--_chip-border-width);border-style:var(--_chip-border-style);border-color:var(--_chip-border-color);border-radius:var(--_chip-shape);background:var(--_chip-background);color:var(--_chip-color);-webkit-transition-property:background-color,color;transition-property:background-color,color;-webkit-transition-duration:var(--_chip-transition-duration);transition-duration:var(--_chip-transition-duration);-webkit-transition-timing-function:var(--_chip-transition-easing);transition-timing-function:var(--_chip-transition-easing)}.trigger{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-button-font-family, var(--forge-typography-font-family, \"Roboto\", sans-serif));font-size:var(--forge-typography-button-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-button-font-size-scale, .875)));font-weight:var(--forge-typography-button-font-weight,500);line-height:var(--forge-typography-button-line-height, normal);letter-spacing:var(--forge-typography-button-letter-spacing, .0714285714em);text-transform:var(--forge-typography-button-text-transform,inherit);-webkit-text-decoration:var(--forge-typography-button-text-decoration,inherit);text-decoration:var(--forge-typography-button-text-decoration,inherit);display:-webkit-inline-box;display:inline-flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;gap:var(--_chip-spacing);-webkit-box-sizing:border-box;box-sizing:border-box;height:100%;padding-inline:var(--_chip-padding-inline);padding-block:var(--_chip-padding-block);cursor:var(--_chip-cursor);z-index:0;text-decoration:none;border:none;background:inherit;color:inherit;-webkit-tap-highlight-color:transparent;border-radius:var(--_chip-shape);outline:0}.remove{padding-inline:var(--_chip-remove-button-spacing);--forge-icon-button-focus-indicator-color:var(--_chip-color)}forge-focus-indicator{--forge-focus-indicator-color:var(--_chip-color);--forge-focus-indicator-shape:var(--_chip-shape)}forge-state-layer{--forge-state-layer-color:var(--_chip-color)}:host([dense]) .forge-chip{--_chip-height:var(--_chip-dense-height);--_chip-padding-inline:var(--_chip-dense-padding-inline);--_chip-spacing:var(--_chip-dense-spacing)}:host([dense]) .trigger{--forge-typography-font-size:var(--_chip-dense-font-size);--forge-typography-font-weight:var(--_chip-dense-font-weight)}:host([dense]) .remove{--_chip-remove-button-spacing:var(--_chip-remove-button-spacing-dense);--forge-icon-button-density-small-size:var(--_chip-remove-button-height-dense);--forge-icon-button-density-small-icon-size:var(--_chip-remove-button-icon-size-dense)}:host([dense]) forge-focus-indicator{--forge-focus-indicator-outward-offset:var(--_chip-dense-focus-indicator-offset)}:host([dense]) ::slotted(forge-avatar){--_chip-avatar-spacing:var(--_chip-avatar-spacing-dense);--forge-typography-font-size:var(--_chip-avatar-font-size-dense);--forge-avatar-size:var(--_chip-avatar-size-dense)}:host([dense]) ::slotted(:is([slot=start],[slot=leading],[slot=end],[slot=trailing])){--_chip-icon-font-size:var(--_chip-dense-icon-font-size)}:host(:is([type=filter],[type=choice],[type=input])[selected]) .forge-chip{--_chip-background:var(--_chip-selected-background);--_chip-color:var(--_chip-selected-color)}:host(:is([type=filter],[type=choice],[type=input])[selected]) forge-focus-indicator{--forge-focus-indicator-color:var(--_chip-background)}:host([invalid]) .forge-chip{--_chip-color:var(--_chip-invalid-color)}:host([invalid]:is([type=filter],[type=choice],[type=input])[selected]) .forge-chip{--_chip-background:var(--_chip-invalid-selected-background);--_chip-color:var(--_chip-invalid-selected-color)}:host([disabled]:not([href])) .forge-chip{opacity:var(--_chip-disabled-opacity)}:host([disabled]:not([href])) .trigger{cursor:var(--_chip-disabled-cursor)}::slotted(:not(forge-avatar):is([slot=start],[slot=leading],[slot=end],[slot=trailing])){font-size:var(--_chip-icon-font-size)}::slotted(forge-avatar:is([slot=start],[slot=leading])){-webkit-margin-start:var(--_chip-avatar-spacing);margin-inline-start:var(--_chip-avatar-spacing)}::slotted(forge-avatar:is([slot=end],[slot=trailing])){-webkit-margin-end:var(--_chip-avatar-spacing);margin-inline-end:var(--_chip-avatar-spacing)}::slotted(forge-avatar){--forge-typography-font-size:var(--_chip-avatar-font-size);--forge-avatar-size:var(--_chip-avatar-size)}:host([type=filter]) .checkmark{height:var(--_chip-checkmark-size)}:host([type=filter]) .checkmark svg{width:0;height:var(--_chip-checkmark-size);-webkit-transition-property:width;transition-property:width;-webkit-transition-duration:var(--_chip-transition-duration);transition-duration:var(--_chip-transition-duration);-webkit-transition-timing-function:var(--_chip-transition-easing);transition-timing-function:var(--_chip-transition-easing)}:host([type=filter]) .checkmark svg path{stroke:var(--_chip-checkmark-color);-webkit-transition-property:stroke-dashoffset;transition-property:stroke-dashoffset;-webkit-transition-duration:var(--_chip-transition-duration);transition-duration:var(--_chip-transition-duration);-webkit-transition-timing-function:var(--_chip-transition-easing);transition-timing-function:var(--_chip-transition-easing);stroke-width:2px;stroke-dashoffset:29.7833385;stroke-dasharray:29.7833385}:host([type=filter][selected]) .checkmark{-webkit-padding-start:var(--_chip-checkmark-spacing);padding-inline-start:var(--_chip-checkmark-spacing)}:host([type=filter][selected]) .checkmark svg{width:var(--_chip-checkmark-size)}:host([type=filter][selected]) .checkmark svg path{-webkit-transition-delay:var(--_chip-checkmark-transition-delay);transition-delay:var(--_chip-checkmark-transition-delay);stroke-dashoffset:0}:host([type=input]) .trigger{padding-inline:var(--_chip-padding-inline) 0}:host([type=field]) .forge-chip{--_chip-background:var(--_chip-field-background);--_chip-color:var(--_chip-field-color);--_chip-border-color:var(--_chip-field-border-color);--_chip-shape:var(--_chip-field-shape);--_chip-cursor:var(--_chip-field-cursor)}:host([theme=secondary]) .forge-chip{--_chip-color:var(--forge-chip-color, var(--forge-theme-text-high, rgba(0, 0, 0, 0.87)));--_chip-border-color:var(--forge-chip-border-color, var(--forge-theme-secondary, #ffc107))}:host([theme=secondary]:is([type=filter],[type=choice],[type=input])[selected]) .forge-chip{--_chip-background:var(--forge-chip-background, var(--forge-theme-secondary, #ffc107));--_chip-color:var(--forge-chip-color, var(--forge-theme-on-secondary, #000000))}:host([theme=secondary][type=field]) .forge-chip{--_chip-background:var(--forge-chip-background, var(--forge-theme-secondary-container-low, #fff8e1));--_chip-color:var(--forge-chip-color, var(--forge-theme-on-secondary-container-low, #8a6804))}:host([theme=tertiary]) .forge-chip{--_chip-color:var(--forge-chip-color, var(--forge-theme-tertiary, #3d5afe))}:host([theme=tertiary]:is([type=filter],[type=choice],[type=input])[selected]) .forge-chip{--_chip-background:var(--forge-chip-background, var(--forge-theme-tertiary, #3d5afe));--_chip-color:var(--forge-chip-color, var(--forge-theme-on-tertiary, #ffffff))}:host([theme=tertiary][type=field]) .forge-chip{--_chip-background:var(--forge-chip-background, var(--forge-theme-tertiary-container-low, #e8ebff));--_chip-color:var(--forge-chip-color, var(--forge-theme-on-tertiary-container-low, #213189))}:host([theme=success]) .forge-chip{--_chip-color:var(--forge-chip-color, var(--forge-theme-success, #2e7d32))}:host([theme=success]:is([type=filter],[type=choice],[type=input])[selected]) .forge-chip{--_chip-background:var(--forge-chip-background, var(--forge-theme-success, #2e7d32));--_chip-color:var(--forge-chip-color, var(--forge-theme-on-success, #ffffff))}:host([theme=success][type=field]) .forge-chip{--_chip-background:var(--forge-chip-background, var(--forge-theme-success-container-low, #e6efe6));--_chip-color:var(--forge-chip-color, var(--forge-theme-on-success-container-low, #19441b))}:host([theme=warning]) .forge-chip{--_chip-color:var(--forge-chip-color, var(--forge-theme-warning, #d14900))}:host([theme=warning]:is([type=filter],[type=choice],[type=input])[selected]) .forge-chip{--_chip-background:var(--forge-chip-background, var(--forge-theme-warning, #d14900));--_chip-color:var(--forge-chip-color, var(--forge-theme-on-warning, #ffffff))}:host([theme=warning][type=field]) .forge-chip{--_chip-background:var(--forge-chip-background, var(--forge-theme-warning-container-low, #f9e9e0));--_chip-color:var(--forge-chip-color, var(--forge-theme-on-warning-container-low, #712700))}:host([theme=error]) .forge-chip{--_chip-color:var(--forge-chip-color, var(--forge-theme-error, #b00020))}:host([theme=error]:is([type=filter],[type=choice],[type=input])[selected]) .forge-chip{--_chip-background:var(--forge-chip-background, var(--forge-theme-error, #b00020));--_chip-color:var(--forge-chip-color, var(--forge-theme-on-error, #ffffff))}:host([theme=error][type=field]) .forge-chip{--_chip-background:var(--forge-chip-background, var(--forge-theme-error-container-low, #f6e0e4));--_chip-color:var(--forge-chip-color, var(--forge-theme-on-error-container-low, #5f0011))}:host([theme=info]) .forge-chip{--_chip-color:var(--forge-chip-color, var(--forge-theme-info, #1565c0))}:host([theme=info]:is([type=filter],[type=choice],[type=input])[selected]) .forge-chip{--_chip-background:var(--forge-chip-background, var(--forge-theme-info, #1565c0));--_chip-color:var(--forge-chip-color, var(--forge-theme-on-info, #ffffff))}:host([theme=info][type=field]) .forge-chip{--_chip-background:var(--forge-chip-background, var(--forge-theme-info-container-low, #e3edf7));--_chip-color:var(--forge-chip-color, var(--forge-theme-on-info-container-low, #0b3768))}';
/**
 * @tag forge-chip
 *
 * @property {ChipType} type - The type of chip.
 * @property {unknown} value - The value of the chip.
 * @property {boolean} selected - Whether the chip is selected.
 * @property {boolean} invalid - Whether the chip is invalid.
 * @property {boolean} disabled - Whether the chip is disabled.
 * @property {boolean} dense - Whether the chip is dense.
 * @property {ChipTheme} theme - The theme of the chip.
 * @property {string} href - The href of the chip.
 * @property {string} target - The target of the chip.
 * @property {string} download - The download of the chip.
 * @property {string} rel - The rel of the chip.
 *
 * @attribute {ChipType} type - The type of chip.
 * @attribute {unknown} value - The value of the chip.
 * @attribute {boolean} selected - Whether the chip is selected.
 * @attribute {boolean} invalid - Whether the chip is invalid.
 * @attribute {boolean} disabled - Whether the chip is disabled.
 * @attribute {boolean} dense - Whether the chip is dense.
 * @attribute {ChipTheme} theme - The theme of the chip.
 * @attribute {string} href - The href of the chip.
 * @attribute {string} target - The target of the chip.
 * @attribute {string} download - The download of the chip.
 * @attribute {string} rel - The rel of the chip.
 *
 * @fires {IChipDeleteEventData} forge-chip-delete - Event fired when the chip is deleted.
 * @fires {IChipSelectEventData} forge-chip-select - Event fired when the chip is selected.
 *
 * @cssproperty --forge-chip-background - The background color of the chip.
 * @cssproperty --forge-chip-color - The background color of the chip.
 * @cssproperty --forge-chip-shape - The shape of the chip.
 * @cssproperty --forge-chip-spacing - The spacing between chips.
 * @cssproperty --forge-chip-height - The height of the chip.
 * @cssproperty --forge-chip-padding-inline - The inline padding of the chip.
 * @cssproperty --forge-chip-padding-block - The block padding of the chip.
 * @cssproperty --forge-chip-cursor - The cursor style of the chip.
 * @cssproperty --forge-chip-icon-font-size - The font size of the chip icon.
 * @cssproperty --forge-chip-disabled-opacity - The opacity of the disabled chip.
 * @cssproperty --forge-chip-disabled-cursor - The cursor style of the disabled chip.
 * @cssproperty --forge-chip-dense-height - The height of the dense chip.
 * @cssproperty --forge-chip-dense-padding-inline - The inline padding of the dense chip.
 * @cssproperty --forge-chip-dense-spacing - The spacing between dense chips.
 * @cssproperty --forge-chip-dense-font-size - The font size of the dense chip.
 * @cssproperty --forge-chip-dense-font-weight - The font weight of the dense chip.
 * @cssproperty --forge-chip-dense-focus-indicator-offset - The offset of the focus indicator for dense chips.
 * @cssproperty --forge-chip-dense-icon-font-size - The font size of the icon in dense chips.
 * @cssproperty --forge-chip-remove-button-spacing - The spacing of the remove button in chips.
 * @cssproperty --forge-chip-remove-button-height-dense - The height of the remove button in dense chips.
 * @cssproperty --forge-chip-remove-button-icon-size-dense - The icon size of the remove button in dense chips.
 * @cssproperty --forge-chip-remove-button-spacing-dense - The spacing of the remove button in dense chips.
 * @cssproperty --forge-chip-selected-background - The background color of the selected chip.
 * @cssproperty --forge-chip-selected-color - The text color of the selected chip.
 * @cssproperty --forge-chip-invalid-color - The text color of the invalid chip.
 * @cssproperty --forge-chip-invalid-selected-background - The background color of the invalid selected chip.
 * @cssproperty --forge-chip-invalid-selected-color - The text color of the invalid selected chip.
 * @cssproperty --forge-chip-border-width - The width of the chip border.
 * @cssproperty --forge-chip-border-style - The style of the chip border.
 * @cssproperty --forge-chip-border-color - The color of the chip border.
 * @cssproperty --forge-chip-field-background - The background color of the chip field.
 * @cssproperty --forge-chip-field-color - The text color of the chip field.
 * @cssproperty --forge-chip-field-shape - The shape of the chip field.
 * @cssproperty --forge-chip-field-border-color - The color of the chip field border.
 * @cssproperty --forge-chip-field-cursor - The cursor style of the chip field.
 * @cssproperty --forge-chip-checkmark-size - The size of the checkmark in chips.
 * @cssproperty --forge-chip-checkmark-color - The color of the checkmark in chips.
 * @cssproperty --forge-chip-checkmark-spacing - The spacing of the checkmark in chips.
 * @cssproperty --forge-chip-avatar-size - The size of the avatar in chips.
 * @cssproperty --forge-chip-avatar-size-dense - The size of the avatar in dense chips.
 * @cssproperty --forge-chip-avatar-font-size - The font size of the avatar in chips.
 * @cssproperty --forge-chip-avatar-font-size-dense - The font size of the avatar in dense chips.
 * @cssproperty --forge-chip-avatar-spacing - The spacing of the avatar in chips.
 * @cssproperty --forge-chip-avatar-spacing-dense - The spacing of the avatar in dense chips.
 * @cssproperty --forge-chip-transition-duration - The duration of the chip transition.
 * @cssproperty --forge-chip-transition-easing - The easing function of the chip transition.
 * @cssproperty --forge-chip-checkmark-transition-delay - The delay of the checkmark transition in chips.
 *
 * @csspart root - The component's root element.
 * @csspart trigger - The trigger element of the chip.
 * @csspart focus-indicator - The focus indicator of the chip.
 * @csspart state-layer - The state layer surface.
 *
 * @slot - The content of the chip.
 * @slot start - The start content of the chip.
 * @slot end - The end content of the chip.
 */
let ChipComponent = class ChipComponent extends BaseComponent {
    static get observedAttributes() {
        return Object.values(CHIP_CONSTANTS.observedAttributes);
    }
    constructor() {
        super();
        IconRegistry.define(tylIconClose);
        attachShadowTemplate(this, template, styles);
        this._foundation = new ChipFoundation(new ChipAdapter(this));
    }
    connectedCallback() {
        this._foundation.initialize();
    }
    attributeChangedCallback(name, oldValue, newValue) {
        switch (name) {
            case CHIP_CONSTANTS.attributes.TYPE:
                this.type = newValue;
                break;
            case CHIP_CONSTANTS.attributes.VALUE:
                this.value = newValue;
                break;
            case CHIP_CONSTANTS.attributes.SELECTED:
                this.selected = coerceBoolean(newValue);
                break;
            case CHIP_CONSTANTS.attributes.INVALID:
                this.invalid = coerceBoolean(newValue);
                break;
            case CHIP_CONSTANTS.attributes.DISABLED:
                this.disabled = coerceBoolean(newValue);
                break;
            case CHIP_CONSTANTS.attributes.DENSE:
                this.dense = coerceBoolean(newValue);
                break;
            case CHIP_CONSTANTS.attributes.THEME:
                this.theme = newValue;
                break;
            case CHIP_CONSTANTS.attributes.HREF:
                this.href = newValue;
                break;
            case CHIP_CONSTANTS.attributes.TARGET:
                this.target = newValue;
                break;
            case CHIP_CONSTANTS.attributes.DOWNLOAD:
                this.download = newValue;
                break;
            case CHIP_CONSTANTS.attributes.REL:
                this.rel = newValue;
                break;
        }
    }
    focus(options) {
        this._foundation.focus(options);
    }
    focusRemoveButton() {
        this._foundation.focusRemoveButton();
    }
    click() {
        this._foundation.click();
    }
};
__decorate([
    FoundationProperty()
], ChipComponent.prototype, "type", void 0);
__decorate([
    FoundationProperty()
], ChipComponent.prototype, "value", void 0);
__decorate([
    FoundationProperty()
], ChipComponent.prototype, "selected", void 0);
__decorate([
    FoundationProperty()
], ChipComponent.prototype, "invalid", void 0);
__decorate([
    FoundationProperty()
], ChipComponent.prototype, "disabled", void 0);
__decorate([
    FoundationProperty()
], ChipComponent.prototype, "dense", void 0);
__decorate([
    FoundationProperty()
], ChipComponent.prototype, "theme", void 0);
__decorate([
    FoundationProperty()
], ChipComponent.prototype, "href", void 0);
__decorate([
    FoundationProperty()
], ChipComponent.prototype, "target", void 0);
__decorate([
    FoundationProperty()
], ChipComponent.prototype, "download", void 0);
__decorate([
    FoundationProperty()
], ChipComponent.prototype, "rel", void 0);
ChipComponent = __decorate([
    CustomElement({
        name: CHIP_CONSTANTS.elementName,
        dependencies: [
            FocusIndicatorComponent,
            StateLayerComponent,
            IconButtonComponent,
            IconComponent
        ]
    })
], ChipComponent);
export { ChipComponent };
