@arteneo/forge
Version:
33 lines (32 loc) • 2.54 kB
TypeScript
import React from "react";
import { AxiosResponse } from "axios";
import { FormikValues } from "formik";
import { AutocompleteChangeDetails, AutocompleteChangeReason } from "@mui/material";
import { MultiselectProps, MultiselectRenderInputProps } from "../../../components/Form/fields/Multiselect";
import OptionsType from "../../../components/Form/definitions/OptionsType";
import OptionInterface from "../../../components/Form/definitions/OptionInterface";
import FieldAutocompleteEndpointType from "../../../components/Form/definitions/FieldAutocompleteEndpointType";
import { SelectValueType } from "../../../components/Form/definitions/AutocompleteTypes";
interface MultiselectAutocompleteApiSpecificProps {
endpoint: FieldAutocompleteEndpointType;
onChange?: (path: string, setFieldValue: (field: string, value: any, shouldValidate?: boolean) => void, value: SelectValueType, onChange: () => void, setInputValue: React.Dispatch<React.SetStateAction<string>>, setSelectedOptions: React.Dispatch<React.SetStateAction<undefined | OptionInterface[]>>, values: FormikValues, event: React.SyntheticEvent, reason: AutocompleteChangeReason, name: string, details?: AutocompleteChangeDetails<OptionInterface>) => void;
processResponse?: (response: AxiosResponse) => OptionsType;
getInitialSelectedOptions?: (path: string, initialValues?: FormikValues, initializedValuesResponse?: AxiosResponse) => undefined | OptionInterface[];
renderInput?: (params: MultiselectAutocompleteApiRenderInputProps) => React.ReactNode;
noOptionsText?: (inputValue: string, loading: boolean) => string;
disableNoOptionsTextTranslate?: boolean;
loadUseEffectDependency?: any;
}
type MultiselectAutocompleteApiProps = MultiselectAutocompleteApiSpecificProps & Omit<MultiselectProps, "options" | "onChange" | "renderInput">;
interface MultiselectAutocompleteApiRenderInputProps extends MultiselectRenderInputProps {
options?: undefined | OptionInterface[];
loading: boolean;
}
declare const MultiselectAutocompleteApi: {
({ endpoint, onChange, processResponse, loadUseEffectDependency, disableTranslateOption, getInitialSelectedOptions, renderInput, noOptionsText, disableNoOptionsTextTranslate, ...multiselectProps }: MultiselectAutocompleteApiProps): React.JSX.Element;
defaultProps: {
transformInitialValue: (value: any) => any;
};
};
export default MultiselectAutocompleteApi;
export { MultiselectAutocompleteApiProps, MultiselectAutocompleteApiSpecificProps, MultiselectAutocompleteApiRenderInputProps, };