/**
 * @license
 * Copyright 2022-2025 Matter.js Authors
 * SPDX-License-Identifier: Apache-2.0
 */
import { EventElement } from "../elements/index.js";
import { ValueModel } from "./ValueModel.js";
class EventModel extends ValueModel {
  tag = EventElement.Tag;
  priority;
  constructor(definition, ...children) {
    super(definition, ...children);
    this.priority = definition.priority;
  }
  toElement(omitResources = false, extra) {
    return super.toElement(omitResources, {
      priority: this.priority,
      ...extra
    });
  }
  get fabricSensitive() {
    return this.effectiveAccess.fabricSensitive;
  }
  get requiredFields() {
    return { ...super.requiredFields, id: this.id };
  }
  static Tag = EventElement.Tag;
  static requiresId = true;
}
EventModel.register();
export {
  EventModel
};
//# sourceMappingURL=EventModel.js.map
