import type { PropType, Ref } from 'vue'; export interface MaskProps { mask: string | MaskOptions | undefined; returnMaskedValue?: boolean; } export interface MaskOptions { mask: string; tokens: Record; } export declare const makeMaskProps: (defaults?: Defaults | undefined) => { mask: unknown extends Defaults["mask"] ? PropType : { type: PropType; default: unknown extends Defaults["mask"] ? string | MaskOptions : Defaults["mask"] | NonNullable; }; returnMaskedValue: unknown extends Defaults["returnMaskedValue"] ? BooleanConstructor : { type: PropType; default: unknown extends Defaults["returnMaskedValue"] ? boolean : boolean | Defaults["returnMaskedValue"]; }; }; export type MaskItem = { convert?: (char: string) => string; } & ({ pattern?: never; test: (char: string) => boolean; } | { pattern: RegExp; test?: never; }); export declare const defaultDelimiters: RegExp; export declare function isMaskDelimiter(char: string): boolean; export declare function useMask(props: MaskProps, inputRef: Ref): { updateRange: () => void; maskText: (text: string | null | undefined) => string; unmaskText: (text: string | null) => string | null; };