@memberjunction/react-runtime
Version:
Platform-agnostic React component runtime for MemberJunction. Provides core compilation, registry, and execution capabilities for React components in any JavaScript environment.
34 lines • 1.34 kB
TypeScript
import { ComponentMetadata, RegistryConfig } from '../types';
export declare class ComponentRegistry {
private registry;
private config;
private cleanupTimer?;
private registryId;
constructor(config?: Partial<RegistryConfig>);
register(name: string, component: any, namespace?: string, version?: string, tags?: string[]): ComponentMetadata;
get(name: string, namespace?: string, version?: string): any;
has(name: string, namespace?: string, version?: string): boolean;
unregister(name: string, namespace?: string, version?: string): boolean;
getNamespace(namespace: string): ComponentMetadata[];
getAll(namespace?: string, version?: string): Record<string, any>;
getNamespaces(): string[];
getByTags(tags: string[]): ComponentMetadata[];
release(name: string, namespace?: string, version?: string): void;
clear(): void;
size(): number;
cleanup(force?: boolean): number;
getStats(): {
totalComponents: number;
namespaces: number;
totalRefCount: number;
oldestComponent?: Date;
newestComponent?: Date;
};
destroy(): void;
private generateRegistryKey;
private findLatestVersion;
private evictLRU;
private startCleanupTimer;
private stopCleanupTimer;
}
//# sourceMappingURL=component-registry.d.ts.map