/**
 * A superclass for a panel of content in the Preferences Dialog. Mostly responsible for visibility of panel content.
 *
 * @author Jesse Greenberg
 */
import '../../../globals.js';
import type TReadOnlyProperty from '../../../axon/js/TReadOnlyProperty.js';
import type StrictOmit from '../../../phet-core/js/types/StrictOmit.js';
import Node, { type NodeOptions } from '../../../scenery/js/nodes/Node.js';
import type PreferencesType from './PreferencesType.js';
export type PreferencesPanelOptions = StrictOmit<NodeOptions, 'tagName' | 'labelTagName'>;
declare class PreferencesPanel extends Node {
    /**
     * @param preferencesType - PreferencesType for this panel
     * @param selectedTabProperty - Property representing the selected tab to be displayed.
     * @param tabVisibleProperty - Is the Tab for this panel invisible (so this panel should also be invisible)?
     * @param providedOptions
     */
    constructor(preferencesType: PreferencesType, selectedTabProperty: TReadOnlyProperty<PreferencesType>, tabVisibleProperty: TReadOnlyProperty<boolean>, providedOptions?: PreferencesPanelOptions);
}
export default PreferencesPanel;
