import React, { Ref } from "react"; import { Props as ReactSelectProps } from "react-select"; import { Props as ReactSelectCreatableProps } from "react-select/creatable"; import { Props as ReactSelectAsyncProps } from "react-select/async"; interface ArrowSelectProps { menuInPortal?: boolean; menuRef?: Ref; selectRef?: Ref; height?: number; optionsMessage?: string; } export interface SelectProps extends ReactSelectProps, ArrowSelectProps { } export interface SelectCreatableProps extends ReactSelectCreatableProps, ArrowSelectProps { } export interface SelectAsyncProps extends ReactSelectAsyncProps, ArrowSelectProps { } export type SelectBaseProps = ({ type: "default"; } & SelectProps) | ({ type: "creatable"; } & SelectCreatableProps) | ({ type: "async"; } & SelectAsyncProps); declare const Select: { (props: SelectProps): React.JSX.Element; Creatable: ({ createOptionPosition, ...rest }: SelectCreatableProps) => React.JSX.Element; Async: (props: SelectAsyncProps) => React.JSX.Element; }; export { Select };