import type { MaSelectOption, MaSelectSize } from '@/components/select-2/types';
import type { MaFlagIconRatio } from '@/components/icon/types';
import type { MaBadgeProps } from '@/components/badge/index.vue';
export interface MaCountrySelectProps {
    value: string | string[] | null;
    options: MaSelectOption[];
    size?: MaSelectSize;
    showSearch?: boolean;
    listHeight?: number;
    showSelectedCountryCode?: boolean;
    placeholder?: string;
    iconRound?: boolean;
    iconRatio?: MaFlagIconRatio;
    dropdownClassName?: string;
    badgeProps?: MaBadgeProps;
}
declare var __VLS_7: string | number, __VLS_8: any, __VLS_10: {
    value: string | string[];
}, __VLS_25: import("@/components/select-2/types").MaSelectOptionValue, __VLS_26: {
    label: string;
    value: import("@/components/select-2/types").MaSelectOptionValue;
};
type __VLS_Slots = {} & {
    [K in NonNullable<typeof __VLS_7>]?: (props: typeof __VLS_8) => any;
} & {
    [K in NonNullable<typeof __VLS_25>]?: (props: typeof __VLS_26) => any;
} & {
    input?: (props: typeof __VLS_10) => any;
};
declare const __VLS_component: import("vue").DefineComponent<MaCountrySelectProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    "update:value": (...args: any[]) => void;
}, string, import("vue").PublicProps, Readonly<MaCountrySelectProps> & Readonly<{
    "onUpdate:value"?: (...args: any[]) => any;
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
export default _default;
type __VLS_WithSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
