/** @packageDocumentation
 * @module WebGL
 */
import { ThematicDisplay } from "@itwin/core-common";
import { WebGLDisposable } from "./Disposable";
import { UniformHandle } from "./UniformHandle";
import { TextureUnit } from "./RenderFlags";
import { Target } from "./Target";
/** Maintains state for uniforms related to thematic display.
 * @internal
 */
export declare class ThematicUniforms implements WebGLDisposable {
    private _sensors?;
    private _texture?;
    private readonly _range;
    private _colorMix;
    private readonly _axis;
    private readonly _sunDirection;
    private readonly _marginColor;
    private readonly _displayMode;
    private readonly _fragSettings;
    private _numSensors;
    private _gradientDimension;
    private _thematicDisplay?;
    syncKey: number;
    private get _distanceCutoff();
    get thematicDisplay(): ThematicDisplay | undefined;
    get wantIsoLines(): boolean;
    get wantSlopeMode(): boolean;
    get wantHillShadeMode(): boolean;
    get wantGlobalSensorTexture(): boolean;
    get bytesUsed(): number;
    private _scratchVector;
    private _updateAxis;
    private _updateSunDirection;
    update(target: Target): void;
    bindRange(uniform: UniformHandle): void;
    bindAxis(uniform: UniformHandle): void;
    bindSunDirection(uniform: UniformHandle): void;
    bindMarginColor(uniform: UniformHandle): void;
    bindDisplayMode(uniform: UniformHandle): void;
    bindFragSettings(uniform: UniformHandle): void;
    bindTexture(uniform: UniformHandle, unit: TextureUnit): void;
    bindNumSensors(uniform: UniformHandle): void;
    bindSensors(uniform: UniformHandle): void;
    get isDisposed(): boolean;
    dispose(): void;
}
//# sourceMappingURL=ThematicUniforms.d.ts.map