import { LimeWebComponent } from '../../core'; import { ContextRegistry } from '../registry'; interface LifecycleHost { connectedCallback?: (...args: unknown[]) => void | Promise; disconnectedCallback?: (...args: unknown[]) => void | Promise; } /** * Setup invoked once per decorated property on `connectedCallback`. * Returns the teardown to run on `disconnectedCallback`. * * @internal */ export type ContextLifecycleSetup = (args: { component: LimeWebComponent; host: HTMLElement; registry: ContextRegistry; }) => () => void; /** * Wrap a component's `connectedCallback`/`disconnectedCallback` to run * `setup` on connect and the returned teardown on disconnect. Multiple * applications chain through closure-captured originals, so each * decorated property contributes its own wrap. * * @param target - The component prototype the decorator was applied to. * @param setup - Setup invoked on connect; returns the teardown to run * on disconnect. * @internal */ export declare function wrapContextLifecycle(target: LifecycleHost, setup: ContextLifecycleSetup): void; export {};