React hook that exposes IMask object
npm install use-imaskor if you use yarn
yarn add use-imaskconst maskOptions = { mask: Number }; // make sure options don't change on each render (use constant or useMemo or ref)
function Example() {
  const [value, setValue] = useState("");
  const [ ref ] = useIMask(maskOptions, {
  // use onAccept callback instead of onChange to change value
    onAccept: e => { 
      setValue(e.target.value);
    },
  });
  return (
    <input ref={ref} value={value} />
  );
}| name | type | description | 
|---|---|---|
| options | <M extends AnyMaskedOptions> | mask options, when options change updateOptions function is called by the IMask object | 
| onAccept | (e: ChangeEvent<E>, mask: InputMask<M> | undefined) => void | function called on IMask accept event | 
| onComplete | (e: ChangeEvent<E>, mask: InputMask<M> | undefined) => void | function called on IMask complete event | 
| name | type | description | 
|---|---|---|
| ref | RefObject<HTMLInputElement|null> | apply this to your input element | 
| maskRef | RefObject<InputMask<M> | undefined> | ref with IMask object |