import { BrsType, BrsBoolean } from "./"; import { ValueKind, Comparable } from "./BrsType"; import { BrsNumber, Numeric } from "./BrsNumber"; import { Int32 } from "./Int32"; import { Int64 } from "./Int64"; import { Float } from "./Float"; import { roDouble } from "./components/RoDouble"; import { Boxable } from "./Boxing"; import Long from "long"; export declare class Double implements Numeric, Comparable, Boxable { readonly kind = ValueKind.Double; private readonly value; getValue(): number; toBoolean(): boolean; /** * Creates a new BrightScript double-precision value representing the provided `value`. * @param value the value to store in the BrightScript double, rounded to 64-bit (double) * precision. */ constructor(value: number | Long); /** * Creates a new BrightScript double-precision value representing the floating point value * contained in `asString`. * @param asString the string representation of the value to store in the BrightScript double. * Will be rounded to 64-bit (double) precision. * @returns a BrightScript double value representing `asString`. */ static fromString(asString: string): Double; add(rhs: BrsNumber): BrsNumber; subtract(rhs: BrsNumber): BrsNumber; multiply(rhs: BrsNumber): BrsNumber; divide(rhs: BrsNumber): Float | Double; modulo(rhs: BrsNumber): BrsNumber; intDivide(rhs: BrsNumber): Int32 | Int64; leftShift(rhs: BrsNumber): Int32; rightShift(rhs: BrsNumber): Int32; pow(exponent: BrsNumber): BrsNumber; and(rhs: BrsNumber | BrsBoolean): BrsNumber | BrsBoolean; or(rhs: BrsNumber | BrsBoolean): BrsNumber | BrsBoolean; not(): BrsNumber; lessThan(other: BrsType): BrsBoolean; greaterThan(other: BrsType): BrsBoolean; equalTo(other: BrsType): BrsBoolean; toString(parent?: BrsType): string; box(): roDouble; }