@dnb/eufemia
Version:
DNB Eufemia Design System UI Library
22 lines (21 loc) • 1.11 kB
TypeScript
import type { ChangeEventHandler, InputHTMLAttributes, JSX, MutableRefObject, ReactElement, Ref } from 'react';
import { type MaskitoOptions } from '@maskito/core';
import type { createNumberMask } from './hooks/useNumberMask';
export type TextMaskMask = RegExp | Array<RegExp | string> | false | typeof createNumberMask;
export type TextMaskInputElement = ReactElement<any>;
export type TextMaskValue = string | number;
export type TextMaskProps = Omit<InputHTMLAttributes<HTMLInputElement>, 'onChange' | 'value' | 'size'> & {
mask: TextMaskMask;
inputRef?: Ref<HTMLInputElement> & MutableRefObject<HTMLInputElement | null>;
inputElement?: TextMaskInputElement;
onChange?: ChangeEventHandler<HTMLInputElement>;
value?: TextMaskValue;
size?: number;
showMask?: boolean;
optionsEnhancer?: (opts: MaskitoOptions | null) => MaskitoOptions | null;
ghostPlaceholder?: string;
stripValue?: (displayValue: string) => string;
allowOverflow?: boolean;
overwriteMode?: MaskitoOptions['overwriteMode'];
};
export default function TextMask(props: TextMaskProps): JSX.Element;