import { MaskToken } from './mask';
export declare enum CursorPosition {
    BeforeChar = -1,
    Any = 0,
    AfterChar = 1
}
export declare class Cursor<Token extends MaskToken> extends Number {
    position: number;
    private tokens;
    private reversed;
    constructor(position: number, tokens: Token[], reversed?: boolean);
    private move;
    moveBack(amount: number, cursorPosition?: CursorPosition): number;
    moveForward(amount: number, cursorPosition?: CursorPosition): number;
    updateTokens(newTokens: Token[], fromEnd?: boolean): void;
    valueOf(): number;
}
