export declare const enum NumTypeName { i8 = "i8", u8 = "u8", i16 = "i16", u16 = "u16", i32 = "i32", ptr = "ptr", u32 = "u32", f32 = "f32", f64 = "f64" } export declare enum TypedArrayType { i8 = "Int8Array", u8 = "Uint8Array | Uint8ClampedArray", i16 = "Int16Array", u16 = "Uint16Array", i32 = "Int32Array", ptr = "Int32Array", u32 = "Uint32Array", f32 = "Float32Array", f64 = "Float64Array" } export declare type TypeSuffix = "f" | "u" | "p" | ""; export declare type Signedness = "signed" | "unsigned"; export declare type FloatPrecision = "single" | "double"; declare class NumType { readonly size: TSize; readonly name: NumTypeName; constructor(size: TSize, name: NumTypeName); toString(): string; getSizeInBits(): number; getDescription(): string; getSignedness(): Signedness | ""; getFloatPrecision(): FloatPrecision | ""; is(suspect: NumType): boolean; getHEAP(): string; getHEAPWrite(ptrExpr: string | number, value: string | number): string; getHEAPRead(ptrExpr: string | number): string; getHEAPIndex(ptrExpr: string | number): string; getHEAPWriteArray(jsArray: string, ptrExpr: string | number): string; getSelfHeapPtr(): string; getSelfTypedArray(): TypedArrayType; getSelfPtr(): string; getFnSpecName(fnName: string): string; isInt(): boolean; isI_(): boolean; isU_(): boolean; isFloat(): boolean; private getSuffix; } export declare const i8: NumType<1>; export declare const u8: NumType<1>; export declare const i16: NumType<2>; export declare const u16: NumType<2>; export declare const i32: NumType<4>; export declare const u32: NumType<4>; export declare const ptr: NumType<4>; export declare const f32: NumType<4>; export declare const f64: NumType<8>; export declare const NumTypes: (NumType<4> | NumType<8> | NumType<1> | NumType<2>)[]; export declare const NumTypesComaSeparated: string; export {}; //# sourceMappingURL=num.d.ts.map