import CaretString from "../model/CaretString";
import { type MaskResult } from "../model/types";
import CaretStringIterator from "./CaretStringIterator";
import type { Notation } from "../../types";
export declare class Mask {
    private static cache;
    private initialState;
    constructor(format: string, customNotations?: Notation[]);
    static getOrCreate(format: string, customNotations: Notation[]): Mask;
    static isValid(format: string, customNotations: Notation[]): boolean;
    apply(text: CaretString): MaskResult;
    makeIterator(text: CaretString): CaretStringIterator;
    placeholder: () => string;
    acceptableTextLength(): number;
    totalTextLength(): number;
    acceptableValueLength(): number;
    totalValueLength(): number;
    private appendPlaceholder;
    private noMandatoryCharactersLeftAfterState;
}
export default Mask;
//# sourceMappingURL=Mask.d.ts.map