import type { RegistryEntry } from './registry.js'; /** * Generate HMR code using Angular's ɵɵreplaceMetadata for components, * and simple field-swap + invalidation for directives/pipes. * * The applyMetadata callback dynamically copies all ɵ-prefixed static * fields (ɵcmp, ɵfac, ɵdir, ɵpipe, etc.) from the newly compiled class * to the old class reference that Angular's runtime is tracking. * * For components, ɵɵreplaceMetadata then merges the old/new definitions * and recreates matching LViews in the component tree. * * For directives and pipes, ɵɵreplaceMetadata does not support them, so * we fall back to a full page reload via import.meta.hot.invalidate(). */ export declare function generateHmrCode(declarations: RegistryEntry[], localDepClassNames?: string[]): string;