import '../../assert/js/assert.js';
import '../../globals.js';
/**
 * BeakerNode draws a pseudo-3D cylindrical beaker, with optional tick marks, containing a solution.
 * Based on the value of solutionLevelProperty, it fills the beaker with solution from the bottom up.
 * The Beaker and solution use flat style shading and highlights to provide pseudo-3D dimension.
 *
 * This node expects the provided solutionLevelProperty that maps between 0 (empty) and 1 (full).
 *
 * @author Marla Schulz <marla.schulz@colorado.edu>
 */
import TRangedProperty from '../../axon/js/TRangedProperty.js';
import StrictOmit from '../../phet-core/js/types/StrictOmit.js';
import { Node, NodeOptions, TColor, TPaint } from '../../scenery/js/imports.js';
type SelfOptions = {
    emptyBeakerFill?: TPaint;
    solutionFill?: TColor;
    solutionShadowFill?: TPaint;
    solutionGlareFill?: TPaint;
    beakerGlareFill?: TPaint;
    beakerHeight?: number;
    beakerWidth?: number;
    yRadiusOfEnds?: number;
    ticksVisible?: boolean;
    tickStroke?: TPaint;
    beakerStroke?: TPaint;
    lineWidth?: number;
    numberOfTicks?: number;
    majorTickMarkModulus?: number;
};
export type BeakerNodeOptions = SelfOptions & StrictOmit<NodeOptions, 'children'>;
export declare const SOLUTION_VISIBLE_THRESHOLD = 0.001;
export default class BeakerNode extends Node {
    private readonly ticks;
    private readonly disposeBeakerNode;
    constructor(solutionLevelProperty: TRangedProperty, providedOptions?: BeakerNodeOptions);
    dispose(): void;
    setTicksVisible(visible: boolean): void;
}
export {};
//# sourceMappingURL=BeakerNode.d.ts.map