UNPKG

@arteneo/forge

Version:
35 lines (34 loc) 2.79 kB
import React from "react"; import { AxiosResponse } from "axios"; import { FormikValues } from "formik"; import { AutocompleteChangeReason, AutocompleteChangeDetails, AutocompleteRenderOptionState } from "@mui/material"; import { SelectProps, SelectRenderInputProps } from "../../../components/Form/fields/Select"; 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 SelectAutocompleteApiSpecificProps { endpoint: FieldAutocompleteEndpointType; onChange?: (path: string, setFieldValue: (field: string, value: any, shouldValidate?: boolean) => void, value: SelectValueType, onChange: () => void, setInputValue: React.Dispatch<React.SetStateAction<string>>, setSelectedOption: React.Dispatch<React.SetStateAction<undefined | OptionInterface>>, setSkipLoading: (skipLoading: boolean) => void, values: FormikValues, event: React.SyntheticEvent, reason: AutocompleteChangeReason, name: string, details?: AutocompleteChangeDetails<OptionInterface>) => void; processResponse?: (response: AxiosResponse) => OptionsType; getInitialSelectedOption?: (path: string, initialValues?: FormikValues, initializedValuesResponse?: AxiosResponse) => undefined | OptionInterface; getOptionRepresentation?: (option: OptionInterface) => string; renderOption?: (inputValue: string, props: React.HTMLAttributes<HTMLLIElement>, option: OptionInterface, state: AutocompleteRenderOptionState) => React.ReactNode; renderInput?: (params: SelectAutocompleteApiRenderInputProps) => React.ReactNode; noOptionsText?: (inputValue: string, loading: boolean) => string; disableNoOptionsTextTranslate?: boolean; loadUseEffectDependency?: any; } type SelectAutocompleteApiProps = SelectAutocompleteApiSpecificProps & Omit<SelectProps, "options" | "onChange" | "renderInput">; interface SelectAutocompleteApiRenderInputProps extends SelectRenderInputProps { option?: OptionInterface; loading: boolean; } declare const SelectAutocompleteApi: { ({ endpoint, onChange, processResponse, loadUseEffectDependency, disableTranslateOption, getInitialSelectedOption, getOptionRepresentation, renderOption, renderInput, noOptionsText, disableNoOptionsTextTranslate, ...selectProps }: SelectAutocompleteApiProps): React.JSX.Element; defaultProps: { transformInitialValue: (value: any) => any; }; }; export default SelectAutocompleteApi; export { SelectAutocompleteApiProps, SelectAutocompleteApiSpecificProps, SelectAutocompleteApiRenderInputProps };