import React from 'react';
import { ValueType } from 'react-select';
import { SelectComponentsProps } from 'react-select/src/Select';
import { JDatomExtentionSet, JDinputExtention } from '../../types/interface';
export interface IselectedOption<T = any> {
    label: string;
    value: T;
}
export declare enum SelectBoxSize {
    TWO = "4rem",
    FOUR = "6rem",
    SIX = "9rem",
    FIVE = "11rem"
}
export interface JDselectProps extends SelectComponentsProps, JDinputExtention {
    /** 라벨값*/
    label?: string | JSX.Element;
    /** 사용금지*/
    disabled?: boolean;
    /** 선택된 옵션*/
    selectedOption?: IselectedOption | null;
    /** 선택된 옵션들*/
    selectedOptions?: ValueType<IselectedOption<any>>;
    /** 전체 옵션들*/
    options?: IselectedOption[];
    /** 선택된 옵션들이 변할떄*/
    onChanges?(selectedOps: IselectedOption[]): void;
    /** 옵션이 변할떄*/
    onChange?(selecteds: IselectedOption): void;
    className?: string;
    props?: any;
    /** 모양변환*/
    mode?: 'underline';
    /** 기본값*/
    defaultValue?: IselectedOption | null;
    /** 열림정의*/
    isOpen?: boolean;
    /** 메뉴가 셀렉트 박스 범위에 국한 받지않음*/
    menuCanOverflow?: boolean;
    /** 메뉴 텍스트 넘침 허용*/
    textOverflow?: 'visible' | 'hidden';
    /** 사이즈*/
    size?: 'small';
    /** 길이*/
    width?: '';
    /** 라벨 위치*/
    labelPosition?: 'left' | 'right';
    /** 배경색*/
    background?: 'white';
    /** 보더색*/
    borderColor?: 'primary';
    /** 아래화살표를 보여야할지 */
    displayArrow?: boolean;
    /** 가운데정렬 */
    menuItemCenterlize?: boolean;
    /** 모바일 환경에서는 네이티브 셀렉트를 사용함 */
    nativeOptions?: boolean;
}
export declare const JDselectTemp: React.FC<JDselectProps & JDatomExtentionSet>;
declare const JDselect: React.NamedExoticComponent<JDselectProps & JDatomExtentionSet>;
export default JDselect;
