/**
 * @license
 * Copyright 2022-2026 Matter.js Authors
 * SPDX-License-Identifier: Apache-2.0
 */
import { Mei } from "../common/Mei.js";
import { ElementTag } from "../common/index.js";
import { BaseElement } from "./BaseElement.js";
import { ValueElement } from "./ValueElement.js";
/**
 * An event is triggered by endpoints.
 */
export interface EventElement extends ValueElement {
    id: Mei;
    tag: `${EventElement.Tag}`;
    priority?: `${EventElement.Priority}`;
}
export declare function EventElement(definition: EventElement.Properties, ...children: ValueElement[]): EventElement;
export declare namespace EventElement {
    type Tag = ElementTag.Event;
    const Tag = ElementTag.Event;
    type Properties = BaseElement.Properties<EventElement>;
    /**
     * Event priority as defined in Matter specification.
     */
    enum Priority {
        Debug = "debug",
        Info = "info",
        Critical = "critical"
    }
    /**
     * Event priority mapped to official ID.
     */
    enum PriorityId {
        debug = 0,
        info = 1,
        critical = 2
    }
}
export declare const Debug = EventElement.Priority.Debug;
export declare const Info = EventElement.Priority.Info;
export declare const Critical = EventElement.Priority.Critical;
//# sourceMappingURL=EventElement.d.ts.map