/// import { SCALECompatAddressType } from '../../../compat/SubstrateCompatAddress'; import { SubstrateNetwork } from '../../../SubstrateNetwork'; import { SCALEAccountId } from './type/SCALEAccountId'; import { SCALEArray } from './type/SCALEArray'; import { SCALEBoolean } from './type/SCALEBoolean'; import { SCALEBytes } from './type/SCALEBytes'; import { SCALECompactInt } from './type/SCALECompactInt'; import { SCALEData } from './type/SCALEData'; import { SCALEEnum } from './type/SCALEEnum'; import { SCALEEra } from './type/SCALEEra'; import { SCALEHash } from './type/SCALEHash'; import { SCALEInt } from './type/SCALEInt'; import { SCALEMultiAddress, SCALEMultiAddressType } from './type/SCALEMultiAddress'; import { SCALEOptional } from './type/SCALEOptional'; import { SCALEString } from './type/SCALEString'; import { SCALETuple } from './type/SCALETuple'; import { SCALEType } from './type/SCALEType'; export declare type DecoderMethod = (network: Network, runtimeVersion: number | undefined, hex: string) => SCALEDecodeResult; export declare type DecoderPartialMethod = (hex: string) => SCALEDecodeResult; export interface SCALEDecodeResult { bytesDecoded: number; decoded: T; } export declare class SCALEDecoder { private readonly network; private readonly runtimeVersion; private hex; constructor(network: Network, runtimeVersion: number | undefined, bytes: string | Uint8Array | Buffer); decodeNextAccount(): SCALEDecodeResult; decodeNextAccountId(byteLength?: number): SCALEDecodeResult>; decodeNextArray(decoderMethod: DecoderMethod): SCALEDecodeResult>; decodeNextBoolean(): SCALEDecodeResult; decodeNextBytes(): SCALEDecodeResult; decodeNextCompactInt(): SCALEDecodeResult; decodeNextEra(): SCALEDecodeResult; decodeNextHash(bitLength: number): SCALEDecodeResult; decodeNextInt(bitLength: number): SCALEDecodeResult; decodeNextMultiAccount(type?: T): SCALEDecodeResult>; decodeNextOptional(decoderMethod: DecoderMethod): SCALEDecodeResult>; decodeNextString(): SCALEDecodeResult; decodeNextTuple(firstDecoderMethod: DecoderMethod, secondDecoderMethod: DecoderMethod): SCALEDecodeResult>; decodeNextEnum(getEnumValue: (value: number) => T | null): SCALEDecodeResult>; decodeNextData(): SCALEDecodeResult; decodeNextObject(decoderMethod: DecoderMethod): SCALEDecodeResult; private decodeNextValuePartial; private decodeNextValue; private moveCursor; }