import type { TState } from "../types.js";
export interface ISubscriptionRecord {
    subscriptionId: string;
    state: TState<any>;
    cleanupFn: () => void;
}
declare class SubscriptionRegistry {
    private subscriptionsByElement;
    private elementBySubscriptionId;
    registerSubscription(element: HTMLElement, subscriptionId: string, state: TState<any>, cleanupFn: () => void): void;
    cleanupElement(element: HTMLElement): void;
    getSubscriptionCount(element: HTMLElement): number;
    hasSubscriptions(element: HTMLElement): boolean;
    cleanupSubscription(subscriptionId: string): void;
}
export declare const subscriptionRegistry: SubscriptionRegistry;
export {};
