lotus-sdk
Version:
Central repository for several classes of tools for integrating with, and building for, the Lotusia ecosystem
53 lines • 2.02 kB
TypeScript
import BN from 'bn.js';
export interface BNWrapperOptions {
endian?: 'little' | 'big';
size?: number;
}
declare class BNWrapper {
private _bn;
static readonly Zero: BNWrapper;
static readonly One: BNWrapper;
static readonly Minus1: BNWrapper;
constructor(n: number | string | BN | Buffer, base?: number | 'hex' | 'le' | 'be');
static fromString(str: string, base?: number): BNWrapper;
static fromBuffer(buf: Buffer, opts?: BNWrapperOptions): BNWrapper;
static fromSM(buf: Buffer, opts?: BNWrapperOptions): BNWrapper;
static fromScriptNumBuffer(buf: Buffer, fRequireMinimal?: boolean, size?: number): BNWrapper;
static reversebuf(buf: Buffer): Buffer;
static trim(buf: Buffer, natlen: number): Buffer;
static pad(buf: Buffer, natlen: number, size: number): Buffer;
static fromNumber(n: number): BNWrapper;
toNumber(): number;
add(r: BNWrapper): BNWrapper;
mod(r: BNWrapper): BNWrapper;
umod(r: BNWrapper): BNWrapper;
get bn(): BN;
toString(base?: number): string;
toBuffer(opts?: BNWrapperOptions): Buffer;
toArrayLike(ArrayType: typeof Buffer, endian?: 'le' | 'be', length?: number): Buffer;
mul(r: BNWrapper): BNWrapper;
sub(r: BNWrapper): BNWrapper;
pow(r: BNWrapper): BNWrapper;
div(r: BNWrapper): BNWrapper;
modPow(exponent: BNWrapper, modulus: BNWrapper): BNWrapper;
and(other: BNWrapper | number): BNWrapper;
neg(): BNWrapper;
invm(r: BNWrapper): BNWrapper;
eq(other: BNWrapper): boolean;
lt(other: BNWrapper): boolean;
gt(other: BNWrapper): boolean;
lte(other: BNWrapper): boolean;
gte(other: BNWrapper): boolean;
isZero(): boolean;
isNeg(): boolean;
isOdd(): boolean;
isEven(): boolean;
toSMBigEndian(): Buffer;
toSM(opts?: BNWrapperOptions): Buffer;
toScriptNumBuffer(): Buffer;
cmp(other: BNWrapper): number;
copy(other: BNWrapper): BNWrapper;
clone(): BNWrapper;
}
export { BNWrapper as BN };
//# sourceMappingURL=bn.d.ts.map