/**
 * declaration 산출물에서 금지할 내부 alias 패턴 목록이다.
 * consumer 환경은 이 패키지의 tsconfig paths를 모르므로, 내부 alias가 남으면 타입 해석이 깨진다.
 */
export declare const FORBIDDEN_DECLARATION_ALIAS_PATTERNS: RegExp[];
/**
 * declaration 산출물에서 내부 alias가 남아 있는 파일 정보를 표현한다.
 */
export type DeclarationAliasOffender = {
    filePath: string;
    matchedPatterns: string[];
};
/**
 * declaration 루트 디렉터리 아래에 생성된 `.d.ts` 파일 개수를 반환한다.
 *
 * @param declarationRootDir 검사할 declaration 루트 디렉터리
 * @returns 발견된 `.d.ts` 파일 개수
 */
export declare function countDeclarationFiles(declarationRootDir: string): number;
/**
 * declaration 디렉터리 전체를 검사해 내부 alias 누수 파일 목록을 반환한다.
 *
 * @param declarationRootDir 검사할 declaration 루트 디렉터리
 * @returns 내부 alias 누수 파일 목록
 */
export declare function findForbiddenDeclarationAliases(declarationRootDir: string): DeclarationAliasOffender[];
/**
 * declaration alias 누수 에러 메시지를 사람이 읽기 쉬운 문자열로 직렬화한다.
 *
 * @param offenders 내부 alias 누수 파일 목록
 * @returns throw 가능한 에러 메시지 문자열
 */
export declare function formatForbiddenDeclarationAliasError(offenders: DeclarationAliasOffender[]): string;
/**
 * declaration 디렉터리에 내부 alias 누수가 없는지 검증하고, 발견 시 예외를 던진다.
 *
 * @param declarationRootDir 검사할 declaration 루트 디렉터리
 */
export declare function assertDeclarationAliasSafety(declarationRootDir: string): void;
//# sourceMappingURL=declaration-alias-check.d.ts.map