@navinc/base-react-components
Version:
Nav's Pattern Library
18 lines (17 loc) • 1.04 kB
TypeScript
import { type Brand } from '@navinc/utils';
import { ChangeEventHandler } from 'react';
import { BasePatternInputProps } from '../base-pattern-input/base-pattern-input.js';
import { TargetValue } from '../shared.js';
export type PhoneNumber = Brand<string, 'PhoneNumber'>;
type UpdatedHTMLInputElement = TargetValue<HTMLInputElement, PhoneNumber>;
export declare const toPhoneNumber: (value: string) => PhoneNumber;
export declare const phoneNumberValidator: (phoneNumber: PhoneNumber | undefined, errorMessage?: string) => string | undefined;
export type BasePhoneNumberInputProps = Omit<BasePatternInputProps, 'pattern' | 'value' | 'onChange'> & {
value?: PhoneNumber;
onChange?: ChangeEventHandler<UpdatedHTMLInputElement>;
};
export declare const BasePhoneNumberInput: import("react").ForwardRefExoticComponent<Omit<BasePatternInputProps, "pattern" | "onChange" | "value"> & {
value?: PhoneNumber;
onChange?: ChangeEventHandler<UpdatedHTMLInputElement>;
} & import("react").RefAttributes<HTMLInputElement>>;
export {};