import { Float } from "./float";
import { Hex } from "./hex";
import { ICharacter } from "./_character";
import { INumeric } from "./_numeric";
import { DecFloat34 } from "./decfloat34";
export declare const DIGITS: RegExp;
export declare const MAX_INTEGER = 2147483647;
export declare const MIN_INTEGER = -2147483648;
export declare function toInteger(value: string, exception?: boolean): number;
export declare class Integer implements INumeric {
    private value;
    private constant;
    private integerCalculationType;
    private readonly qualifiedName;
    constructor(input?: {
        qualifiedName?: string;
    });
    /** ABAP determines the calculation type from the operand types, character-like operands raise it
     * above type i even if the intermediate result is integer, ie. "'1.0' * 18 / 16" is not rounded */
    clearIntegerCalculationType(): Integer;
    isIntegerCalculationType(): boolean;
    getQualifiedName(): string | undefined;
    clone(): Integer;
    setConstant(): this;
    set(value: INumeric | ICharacter | Hex | string | number | Integer | Float | DecFloat34): this;
    clear(): void;
    get(): number;
}
