/** * Generate a static, importable barrel of a lexicon's post-synth checks. * * The runtime loader (`discoverPostSynthChecks`) readdir-globs the directory and * `require()`s each file via tsx — fs- and tsx-coupled, so it can't run in a * bundle or on an edge runtime (Cloudflare Workers). This generator produces a * committed `lint/post-synth/index.ts` with explicit static imports + an exported * `postSynthChecks` array, which bundlers can follow with no fs/tsx/require. See #409. * * Detection reuses the runtime's own `isPostSynthCheck`, so the barrel contains * exactly the checks discovery would — including files whose export name differs * from the filename (docker/helm/temporal) and excluding helper modules * (cf-refs, arm-refs, …) that export no check. */ export interface BarrelEntry { /** Module specifier relative to the barrel, e.g. "./gha021" or "./apt-no-recommends". */ module: string; /** Exported binding holding the check, e.g. "gha021" or "dkrd010". */ exportName: string; /** The check's id (e.g. "GHA021"), used for stable ordering. */ id: string; } /** * Scan a post-synth directory and return one entry per exported check. * Runs at codegen time on Node (tsx-powered require), never in the shipped path. */ export declare function scanPostSynthChecks(dir: string, importMetaUrl: string): BarrelEntry[]; /** Render the barrel file content from scanned entries (pure — easy to unit test). */ export declare function generatePostSynthBarrel(entries: BarrelEntry[]): string; /** Scan a directory and render its barrel in one step. */ export declare function renderPostSynthBarrelForDir(dir: string, importMetaUrl: string): string; //# sourceMappingURL=generate-post-synth-barrel.d.ts.map