import { Color, LineBasicMaterial, LineDashedMaterial, MeshBasicMaterial, ShaderMaterial, Side } from 'three';
import { LineMaterial } from 'three/examples/jsm/lines/LineMaterial';
import { LineType } from '../DatabaseServices/Entity/LineType';
export declare const ColorPalette: number[][];
export declare const LINE_WIDTH = 2;
export declare class ColorMaterial {
    private constructor();
    private static _LineMaterialMap;
    private static _BasicMaterialMap;
    static UseLogBuf: boolean;
    static GetLineMaterial(color: number, freeze?: boolean, lineType?: LineType): LineBasicMaterial;
    private static _WallLineMtlMap;
    static GetWallLineMtl(color: number): LineDashedMaterial;
    static GetBasicMaterial(color: number): MeshBasicMaterial;
    private static _BasicDoubleSideMaterialMap;
    static GetBasicMaterialDoubleSide(color: number, opacity?: number): MeshBasicMaterial;
    private static _ConceptualMaterial;
    static GetConceptualMaterial(color: number, side?: Side, enableTransparent?: boolean): ShaderMaterial;
    private static _ConceptualTransparentMaterial;
    static GetConceptualTransparentMaterial(color: number, side?: Side): ShaderMaterial;
    static UpdateConceptualMaterial(useLogBuf: boolean): void;
    private static _printConceptualMaterial;
    static GetPrintConceptualMaterial(): ShaderMaterial;
    private static _BasicTransparentMaterialMap;
    static GetBasicMaterialTransparent(color: number, opacity: number): MeshBasicMaterial;
    private static _BasicTransparentMaterialMap2;
    static GetBasicMaterialTransparent2(color: number, opacity: number): MeshBasicMaterial;
    static GetColor(color: number): Color;
    private static _ConceptualEdgeMaterial;
    private static _ConceptualEdgeBasicMaterial;
    static GetConceptualEdgeMaterial(linewidth?: number, edgeColor?: number): LineBasicMaterial | LineMaterial;
    static UpdateConceptualEdgeMaterial(): void;
    private static _Physical2EdgeMaterial;
    private static _Physical2EdgeBasicMaterial;
    static GetPhysical2EdgeMaterial(linewidth?: number): LineBasicMaterial | LineMaterial;
    static UpdatePhysical2EdgeMaterial(): void;
    static RubberBandMaterial: LineDashedMaterial;
    static SnapAxisMaterial: LineDashedMaterial;
    static PrintLineMatrial: LineMaterial;
    private static _PrintLineMatrialMap;
    static GetPrintLineMaterial(color: number, lineWidth?: number): LineMaterial;
    static GrayTransparentMeshMaterial: MeshBasicMaterial;
    static TransparentLineMaterial: MeshBasicMaterial;
}
//# sourceMappingURL=ColorPalette.d.ts.map