import { NumberFilterFunctions, NumberFilterOperators } from "../../odata/ODataModel";
import { InputModel, QBasePath } from "../base/QBasePath";
export declare abstract class QNumberV2Base<BaseType extends number | string, ConvertedType, SubClass extends QNumberV2Base<BaseType, ConvertedType, any>> extends QBasePath<BaseType, ConvertedType> {
    protected formatValue(value: BaseType): string;
    protected abstract createNewFunctionPath(func: NumberFilterFunctions): SubClass;
    protected abstract createNewOperationPath(operator: NumberFilterOperators, value: InputModel<this["converter"]>): SubClass;
    plus(value: InputModel<this["converter"]>): SubClass;
    add: (value: InputModel<this["converter"]>) => SubClass;
    minus(value: InputModel<this["converter"]>): SubClass;
    sub: (value: InputModel<this["converter"]>) => SubClass;
    multiply(value: InputModel<this["converter"]>): SubClass;
    mul: (value: InputModel<this["converter"]>) => SubClass;
    divide(value: InputModel<this["converter"]>): SubClass;
    div: (value: InputModel<this["converter"]>) => SubClass;
    modulo(value: InputModel<this["converter"]>): SubClass;
    mod: (value: InputModel<this["converter"]>) => SubClass;
    ceiling(): SubClass;
    floor(): SubClass;
    round(): SubClass;
}
