import type { ReactElement } from "react"; import React from "react"; import type { FormFieldProps } from "../FormField"; interface MaskElementProps { readonly isMasking: boolean; readonly formattedValue: string; readonly placeholderMask: string; } export declare function MaskElement({ isMasking, formattedValue, placeholderMask, }: MaskElementProps): React.JSX.Element | null; export interface InputMaskProps { /** * A string pattern to mask the value. For example: * * - Phone number: `(***) ***-*****` = `(555) 123-3456` * - Hours and minutes: `**:**` = `01:20` * * By default, a `*` is used to indicate where a value would be in place. To * change that, use the `delimiter` prop. */ readonly pattern: string; /** * Change the delimiter when you need to have a `*` as a value that the input * returns. For example, you want your pattern to have a `*` in it. * * ``` * * ``` * * It would now replace `n` with the value you type and end up with `1*2=2` if * you give a value of `122`. * * @default "*" */ readonly delimiter?: string; /** * Allow/prevent users adding from more value than the desired pattern. * For example, your pattern could accept 10 characters. If it's strict, your * users can only type 10 characters. * * @default true */ readonly strict?: boolean; readonly children: ReactElement; } export declare function InputMask({ children, delimiter, pattern, strict, }: InputMaskProps): ReactElement>; export {};