/** * Configurable commit-type → CHANGELOG section mapping. * * Resolution order (highest priority wins): * 1. CHANGELOG_TYPE_MAP env var (JSON string) * 2. .changelog-types.json file (project root) * 3. Built-in defaults below * * A value of `false` means "skip this type entirely" (no changelog entry). */ import type { readFileSync as ReadFileSyncFn } from 'node:fs'; /** * Dependencies for loadChangelogTypeMap — follows the project DI pattern. */ export interface ChangelogTypeDeps { readFileSync: typeof ReadFileSyncFn; getEnv: (key: string) => string | undefined; warn: (message: string) => void; } /** * Built-in commit-type → CHANGELOG section map. * Values are `### SectionName` strings or `false` to suppress. */ export declare const BUILTIN_TYPE_MAP: Record; /** * Load the commit-type → CHANGELOG section mapping. * * Priority: * 1. CHANGELOG_TYPE_MAP env var (JSON, merged on top of file + built-in) * 2. .changelog-types.json project file (merged on top of built-in) * 3. BUILTIN_TYPE_MAP (base) * * Malformed JSON or invalid structure → WARN + ignore that layer (fall back to lower priority). */ export declare function loadChangelogTypeMap(deps: ChangelogTypeDeps): Record;