import*as ARIAProperties from"../generated/ARIAProperties.js";export class ARIAMetadata{constructor(t){this._attributes=new Map,this._roleNames=[],t&&this._initialize(t)}_initialize(t){const e=t.attributes,r=["true","false"];for(const s of e)"boolean"===s.type&&(s.enum=r),this._attributes.set(s.name,new Attribute(s));this._roleNames=t.roles.map((t=>t.name))}valuesForProperty(t){const e=this._attributes.get(t);return e?e.getEnum():"role"===t?this._roleNames:[]}}let instance;export function ariaMetadata(){return instance||(instance=new ARIAMetadata(ARIAProperties.config||null)),instance}export class Attribute{constructor(t){this._enum=[],t.enum&&(this._enum=t.enum)}getEnum(){return this._enum}}