/** * Safe custom element decorator for Lit elements * * Drop-in replacement for Lit's @customElement decorator that prevents * duplicate registration errors in micro frontend setups. * * Usage (same as @customElement): * ```typescript * import { safeCustomElement, property } from './utils/safe-custom-element'; * * @safeCustomElement('ctt-my-component') * export class CttMyComponent extends LitElement { * @property() myProp: string; * // ... component code * } * ``` */ export { property, state, query, queryAll, queryAsync } from 'lit/decorators'; /** * Decorator that safely registers a Lit element * @param tagName - The custom element tag name * @returns Decorator function */ export declare function safeCustomElement(tagName: string): (target: T) => T; export { safeDefineElement, isElementDefined } from './safe-element-registry';