import { RegistryEntry } from './registry.js'; /** * Scan a single .d.ts file and extract Angular directive/component/pipe * metadata from the static ɵdir / ɵcmp / ɵpipe type declarations. * * This mirrors what ngtsc's DtsMetadataReader does: it reads the type * parameters of ɵɵDirectiveDeclaration / ɵɵComponentDeclaration / * ɵɵPipeDeclaration to discover selectors, inputs, and outputs for * pre-compiled Angular packages. */ export declare function scanDtsFile(code: string, fileName: string): RegistryEntry[]; /** * Resolve a package's directory in node_modules, scan all its .d.ts files, * and return RegistryEntry[] for every Angular declaration found. * * @param packageName e.g. "@angular/router" * @param basePath project root (where node_modules lives) */ export declare function scanPackageDts(packageName: string, basePath: string, visited?: Set): RegistryEntry[]; /** * Parse a source file with OXC and return the set of bare-specifier package * names it imports (e.g. "@angular/router", "rxjs"). Relative imports are * skipped. */ export declare function collectImportedPackages(code: string, fileName: string): Set; /** * Parse a source file with OXC and return the relative-path specifiers it * re-exports via `export * from './x'`, `export * as Ns from './x'`, or * `export { … } from './x'`. Bare-specifier re-exports are skipped. * * Used by the analog Vite plugin to walk library entry barrels at startup * (e.g. `helm/select/src/index.ts` → `./lib/hlm-select`) so the underlying * directive classes land in the registry before any consumer is compiled. */ export declare function collectRelativeReExports(code: string, fileName: string): string[]; /** * Parse a source file with OXC and return every module specifier it imports or * re-exports from (relative AND bare), including `import`, `export * from`, and * `export { … } from`. Used to walk the transitive import graph at startup so * the registry contains components/directives/pipes/modules from files not * directly listed in tsconfig `files`/`include` (transitively-imported app * sources) or behind wildcard `paths` (workspace libraries). */ export declare function collectAllImports(code: string, fileName: string): string[];