import type { Topic, Subscription } from "../models/index.js"; /** Called by createTopic for namespaced topics. @internal */ export declare function registerTopic(topic: Topic): void; /** Called by Topic.destroy(). @internal */ export declare function unregisterTopic(topic: Topic): void; /** Look up a live registered topic by exact namespace and name. */ export declare function getTopic(namespace: string, name: string): Topic | undefined; /** * List live registered topics, optionally filtered by a `*`-wildcard pattern * over `${namespace}.${name}` (e.g. `'todos#1.*'`, `'*.actions.*'`). */ export declare function listTopics(pattern?: string): Topic[]; /** * Register a handler for every topic that registers from now on. * Returns a Subscription; auto-unsubscribes on component unmount when * called inside a component setup. */ export declare function onTopicCreated(handler: (topic: Topic) => void): Subscription; /** * Subscribe to every registered topic matching a `*`-wildcard pattern — * both topics that already exist and topics created later. One Subscription * tears everything down. */ export declare function subscribeTopics(pattern: string, handler: (data: unknown, meta: { namespace: string; name: string; }) => void): Subscription; //# sourceMappingURL=registry.d.ts.map