/**
 * 정방향 의존성 맵(소유파일→의존성 Set)에서 역방향 인덱스(의존성→소유파일 Set)를 구축한다.
 */
export declare function buildReverseDeps(forwardDeps: ReadonlyMap<string, ReadonlySet<string>>): Map<string, Set<string>>;
export declare function trackDeps(depsMap: Map<string, Set<string>>, containingFile: string, dependencies: string[]): void;
export declare function formatScssError(err: unknown, containingFile: string): string;
export interface SideEffectScssEntry {
    scssAbsPath: string;
    cssAbsPath: string;
    sourceFileName: string;
}
export interface SideEffectScssOptions {
    loadPaths: string[];
    scssErrors: string[];
    scssDependencies: Map<string, Set<string>>;
    registry?: Map<string, SideEffectScssEntry>;
    /** sourceFileName → Set<registryKey(=scssAbsPath)> 역방향 인덱스. O(1) 삭제용 */
    registryReverseIndex?: Map<string, Set<string>>;
    /** side-effect SCSS별 의존성 맵. compileScssFile 후 갱신. 증분 판별용 */
    sideEffectScssDeps?: Map<string, Set<string>>;
}
/**
 * Library용 transformStylesheet 콜백 팩토리.
 * AngularCompiler의 transformStylesheet 옵션에 주입된다.
 *
 * - 외부 .scss 파일: compileScssFile로 CSS 반환 + 의존성 기록
 * - 외부 비-SCSS 파일 (.css 등): null 반환 (readResource가 처리)
 * - 인라인 스타일: compileScssString으로 CSS 반환 + 의존성 기록
 * - 에러 시: scssErrors에 추가, SCSS error comment 반환
 */
export declare function createLibraryTransformStylesheet(loadPaths: string[], scssErrors: string[], scssDependencies: Map<string, Set<string>>): (data: string, containingFile: string, stylesheetFile?: string) => Promise<string | null>;
/**
 * 레지스트리의 side-effect SCSS 항목을 CSS로 컴파일한다.
 * changedScssFiles가 제공되면 영향받는 항목만 재컴파일한다 (증분 모드).
 * changedScssFiles가 미제공이면 전체 재컴파일한다 (초기 빌드).
 * 에러 발생 시 scssErrors에 추가하고 기존 CSS 파일을 보존한다.
 */
export declare function compileSideEffectScss(registry: ReadonlyMap<string, SideEffectScssEntry>, loadPaths: string[], scssErrors: string[], scssDependencies: Map<string, Set<string>>, changedScssFiles?: ReadonlySet<string>, sideEffectScssDeps?: Map<string, Set<string>>): void;
export declare function compileGlobalScss(pkgDir: string, loadPaths: string[]): string[];
export interface WriteEmitResultsOptions {
    /** 출력 대상 패키지 디렉토리 */
    pkgDir: string;
    /** emit 결과 필터 (src/ 하위만 등) */
    sourceFilter?: (fileName: string) => boolean;
    /** side-effect SCSS 옵션 */
    scss?: SideEffectScssOptions;
}
/**
 * emitAffectedFiles 결과를 output-path-rewriting 적용 후 파일로 쓴다.
 * scss 옵션이 제공되면 .js 파일 내 .scss side-effect import를 처리한다:
 * 1. import 경로를 .scss → .css로 변환
 * 2. 참조된 SCSS 파일을 CSS로 컴파일하여 dist에 출력
 */
export declare function writeEmitResults(emitResults: Iterable<{
    filename: string;
    contents: string;
    sourceFileName?: string;
}>, pkgDir: string, scss?: SideEffectScssOptions): void;
//# sourceMappingURL=ngtsc-build-core.d.ts.map