import { MaskTokens } from './tokens'; export type MaskType = string | string[] | ((input: string) => string) | null; interface MaskNumber { locale?: string; fraction?: number; unsigned?: boolean; } type ConvertType = StringConstructor | NumberConstructor | BigIntConstructor | ((value: string) => Partial); export interface MaskOptions { mask?: MaskType; convert?: ConvertType; convertWhenCompleted?: boolean; marker?: string; tokens?: MaskTokens; tokensReplace?: boolean; eager?: boolean; reversed?: boolean; number?: MaskNumber; } export declare class Mask { readonly opts: MaskOptions; private readonly memo; constructor(defaults?: MaskOptions); masked(value: string): string; unmasked(value: string): string; converted(value: string): string | number | bigint; isEager(): boolean; isReversed(): boolean; completed(value: string): boolean; findMask(value: string): string | null; escapeMask(maskRaw: string): { mask: string; escaped: number[]; }; private process; private processMarker; } export {};