/**
 * AquaRadioButtonGroup creates a group of AquaRadioButtons and manages their layout.
 *
 * @author Sam Reid (PhET Interactive Simulations)
 * @author Chris Malley (PixelZoom, Inc.)
 */
import '../../globals.js';
import type PhetioProperty from '../../axon/js/PhetioProperty.js';
import type TEmitter from '../../axon/js/TEmitter.js';
import type PickOptional from '../../phet-core/js/types/PickOptional.js';
import type StrictOmit from '../../phet-core/js/types/StrictOmit.js';
import { type ParallelDOMOptions, type TrimParallelDOMOptions } from '../../scenery/js/accessibility/pdom/ParallelDOM.js';
import FlowBox, { type FlowBoxOptions } from '../../scenery/js/layout/nodes/FlowBox.js';
import AquaRadioButton, { type AquaRadioButtonOptions } from './AquaRadioButton.js';
import type GroupItemOptions from './GroupItemOptions.js';
type SelfOptions = {
    radioButtonOptions?: StrictOmit<AquaRadioButtonOptions, 'soundPlayer' | 'tandem'>;
    touchAreaXDilation?: number;
    touchAreaYDilation?: number;
    mouseAreaXDilation?: number;
    mouseAreaYDilation?: number;
};
type TrimmedParentOptions = TrimParallelDOMOptions<FlowBoxOptions> & PickOptional<ParallelDOMOptions, 'labelTagName'>;
export type AquaRadioButtonGroupOptions = SelfOptions & StrictOmit<TrimmedParentOptions, 'children'>;
export type AquaRadioButtonGroupItem<T> = {
    value: T;
    options?: StrictOmit<AquaRadioButtonOptions, 'tandem'>;
} & GroupItemOptions;
export default class AquaRadioButtonGroup<T> extends FlowBox {
    private readonly radioButtons;
    readonly onInputEmitter: TEmitter;
    private readonly disposeAquaRadioButtonGroup;
    constructor(property: PhetioProperty<T>, items: AquaRadioButtonGroupItem<T>[], providedOptions?: AquaRadioButtonGroupOptions);
    private onRadioButtonInput;
    dispose(): void;
    /**
     * Gets the radio button that corresponds to the specified value.
     */
    getButton(value: T): AquaRadioButton<T>;
}
export {};
//# sourceMappingURL=AquaRadioButtonGroup.d.ts.map