import { LineBasicMaterial, MeshPhongMaterial, Object3D, WebGLRenderTarget } from "three";
import { LineMaterial } from "three/examples/jsm/lines/LineMaterial.js";
import { IComponent, ResizeEvent } from "@inweb/viewer-core";
import { Viewer } from "../Viewer";
export declare class HighlighterComponent implements IComponent {
    protected viewer: Viewer;
    renderTarget: WebGLRenderTarget;
    facesMaterial: MeshPhongMaterial;
    edgesMaterial: LineMaterial;
    lineMaterial: LineBasicMaterial;
    lineGlowMaterial: LineMaterial;
    constructor(viewer: Viewer);
    dispose(): void;
    highlight(objects: Object3D | Object3D[]): void;
    unhighlight(objects: Object3D | Object3D[]): void;
    geometryEnd: () => void;
    syncOptions: () => void;
    syncHighlightColors(): void;
    viewerResize: (event: ResizeEvent) => void;
}
