/**
 * StatusBar is the base class for the status bar that appears at the top of games. It sizes itself to match the bounds
 * of the browser self (the visible bounds) and float to either the top of the browser self or the layout bounds.
 * Subclasses are responsible for adding UI components to the bar.
 *
 * @author Chris Malley (PixelZoom, Inc.)
 */
import '../../globals.js';
import TReadOnlyProperty from '../../axon/js/TReadOnlyProperty.js';
import Bounds2 from '../../dot/js/Bounds2.js';
import PhetFont from '../../scenery-phet/js/PhetFont.js';
import Node, { NodeOptions } from '../../scenery/js/nodes/Node.js';
import Color from '../../scenery/js/util/Color.js';
import TColor from '../../scenery/js/util/TColor.js';
type SelfOptions = {
    barFill?: TColor;
    barStroke?: TColor;
    barHeight?: number;
    xMargin?: number;
    yMargin?: number;
    floatToTop?: boolean;
    dynamicAlignment?: boolean;
};
export type StatusBarOptions = SelfOptions & NodeOptions;
declare class StatusBar extends Node {
    protected readonly positioningBoundsProperty: TReadOnlyProperty<Bounds2>;
    private readonly disposeStatusBar;
    static readonly DEFAULT_FONT: PhetFont;
    static readonly DEFAULT_TEXT_FILL: Color;
    /**
     * @param layoutBounds
     * @param visibleBoundsProperty - visible bounds of the parent ScreenView
     * @param [providedOptions]
     */
    constructor(layoutBounds: Bounds2, visibleBoundsProperty: TReadOnlyProperty<Bounds2>, providedOptions?: StatusBarOptions);
    dispose(): void;
}
export default StatusBar;
//# sourceMappingURL=StatusBar.d.ts.map