import { SelectProps } from '@mui/material';
import { CountryIso2 } from 'react-international-phone';
import { ParsedCountry } from 'react-international-phone/build/types';
export interface CountryDisplayOptions {
    hideFlag?: boolean;
    hideDialCode?: boolean;
}
export interface CountrySelectProps<T extends keyof ParsedCountry = 'iso2'> extends Omit<SelectProps, 'value' | 'onChange'> {
    value: T extends 'iso2' ? CountryIso2 : string;
    onChange?: (value: T extends 'iso2' ? CountryIso2 : string) => void;
    selectCountryProps?: CountryDisplayOptions;
    preview?: boolean;
    valueField?: T;
}
type CountrySelectComponent = <T extends keyof ParsedCountry = 'iso2'>(props: CountrySelectProps<T> & {
    ref?: React.ForwardedRef<HTMLDivElement>;
}) => React.ReactElement<any>;
declare const CountrySelect: CountrySelectComponent;
export default CountrySelect;
