import '../../tandem/js/PhetioIDUtils.js';
import '../../globals.js';
/**
 * In TypeScript, it is common to use a string literal union as an enumeration.  This type automatically specifies
 * validValues and the phetioType for convenience.
 *
 * @author Sam Reid (PhET Interactive Simulations)
 */
import Property, { PropertyOptions } from './Property.js';
import PickRequired from '../../phet-core/js/types/PickRequired.js';
import StrictOmit from '../../phet-core/js/types/StrictOmit.js';
type StringEnumerationPropertyOptions<T> = StrictOmit<PropertyOptions<T>, 'phetioValueType'> & PickRequired<PropertyOptions<T>, 'validValues'>;
export default class StringUnionProperty<T extends string> extends Property<T> {
    constructor(value: T, providedOptions: StringEnumerationPropertyOptions<T>);
}
export {};
//# sourceMappingURL=StringUnionProperty.d.ts.map