diff --git a/src/AsyncSelect/AsyncSelect.tsx b/src/AsyncSelect/AsyncSelect.tsx
index d94251773..11942a9ac 100644
--- a/src/AsyncSelect/AsyncSelect.tsx
+++ b/src/AsyncSelect/AsyncSelect.tsx
@@ -1,65 +1,49 @@
-import React, { useContext, forwardRef } from "react";
+import React, { forwardRef, ReactNode, MutableRefObject } from "react";
+import Select from "react-select/base";
import AsyncReactSelect from "react-select/async";
+import { AsyncProps } from "react-select/async";
+import { GroupBase } from "react-select";
import { useTranslation } from "react-i18next";
-import { ThemeContext } from "styled-components";
+import { useTheme } from "styled-components";
import propTypes from "@styled-system/prop-types";
import { Field } from "../Form";
import { MaybeFieldLabel } from "../FieldLabel";
import { InlineValidation } from "../Validation";
import customStyles from "../Select/customReactSelectStyles";
import { SelectOption } from "../Select/SelectOption";
+import { getSubset } from "../utils/subset";
import {
SelectControl,
SelectMultiValue,
SelectClearIndicator,
SelectContainer,
- SelectMenu,
SelectInput,
SelectDropdownIndicator,
-} from "../Select";
-import { getSubset } from "../utils/subset";
+ SelectMenu,
+} from "./AsyncSelectComponents";
-type AsyncSelectProps = {
- windowThreshold?: number;
- isClearable?: boolean;
- filterOption?: (...args: any[]) => any;
- autocomplete?: boolean;
- disabled?: boolean;
- error?: boolean;
- errorMessage?: string;
- errorList?: string[];
+type AsyncCustomProps