import { ModelId } from '../core/types'; import { ValidationIssue } from '../core/validation'; import { MessageKey, Translator } from '../i18n'; /** * ruleId 네임스페이스(CHK--n의 NS) → 비개발자용 분류 카테고리 i18n 키. ruleId 원본('CHK-NAME-3')은 * 코드라 일반 사용자가 못 알아보므로 패널은 이 라벨만 노출하고 원 ruleId는 title 툴팁으로만 보존한다. * 미등록 네임스페이스는 null(호출부가 NS 토큰 원문으로 폴백 — 신규 규칙 추가 시 무라벨이 아니라 식별 가능). */ export declare function issueCategoryKey(ruleId: string): MessageKey | null; /** ruleId → 분류 라벨(로컬라이즈). 미등록 NS는 NS 토큰 원문, 형식 불명은 ruleId 원문 폴백. */ export declare function issueCategoryLabel(t: Translator, ruleId: string): string; /** * 이슈 → 로컬라이즈된 메시지. 뷰(패널·인라인 배지)의 단일 진입점. CHK-TYPE-4의 빈 type/dataType은 * 표시 폴백('(미지정)')으로 치환한다(core는 빈 문자열만 전달 — 폴백 어휘는 표시 계층 소유). */ export declare function localizeIssue(t: Translator, issue: ValidationIssue): string; /** * 이슈가 가리키는 소속 엔티티의 modelId — 패널이 엔티티명 칩을 붙일 대상. targetKind가 entity면 * targetRef가 곧 엔티티이고, attribute/column/index면 contextRef가 소속 엔티티다(엔진이 그 용도로 * 채운다). association/model은 단일 소속 엔티티가 없어 undefined(칩 없음 — 메시지가 자체 맥락 보유). */ export declare function issueEntityRef(issue: ValidationIssue): ModelId | undefined;