@navikt/ds-react
Version:
React components from the Norwegian Labour and Welfare Administration.
41 lines (40 loc) • 1.76 kB
TypeScript
import React from "react";
import { FormFieldType } from "../../useFormField.js";
import { ComboboxProps } from "../types.js";
interface InputContextValue extends FormFieldType {
clearInput: NonNullable<ComboboxProps["onClear"]>;
error?: ComboboxProps["error"];
focusInput: () => void;
inputRef: React.RefObject<HTMLInputElement | null>;
value: string;
setValue: (text: string) => void;
onChange: (newValue: string) => void;
searchTerm: string;
setSearchTerm: React.Dispatch<React.SetStateAction<string>>;
shouldAutocomplete?: boolean;
toggleOpenButtonRef: React.MutableRefObject<HTMLDivElement | null>;
hideCaret: boolean;
setHideCaret: React.Dispatch<React.SetStateAction<boolean>>;
anchorRef: HTMLDivElement | null;
setAnchorRef: React.Dispatch<React.SetStateAction<HTMLDivElement | null>>;
}
declare const useInputContext: <S extends boolean = true>(strict?: S) => S extends true ? InputContextValue : InputContextValue | undefined;
interface Props {
children: React.ReactNode;
value: {
defaultValue: ComboboxProps["defaultValue"];
description: ComboboxProps["description"];
disabled: ComboboxProps["disabled"];
readOnly: ComboboxProps["readOnly"];
error: ComboboxProps["error"];
errorId: ComboboxProps["errorId"];
id: ComboboxProps["id"];
value: ComboboxProps["value"];
onChange: ComboboxProps["onChange"];
onClear: ComboboxProps["onClear"];
shouldAutocomplete: ComboboxProps["shouldAutocomplete"];
size: ComboboxProps["size"];
};
}
declare const InputProvider: ({ children, value: props }: Props) => React.JSX.Element;
export { InputProvider as InputContextProvider, useInputContext };