import { FunctionArgumentMetadataV7, FunctionMetadataV7 } from '../../interfaces/metadata'; import { AnyU8a, ArgsDef, CallFunction, Codec, IMethod, ModulesWithCalls } from '../../types'; import Struct from '../../codec/Struct'; import U8aFixed from '../../codec/U8aFixed'; /** * @name CallIndex * @description * A wrapper around the `[sectionIndex, methodIndex]` value that uniquely identifies a method */ export declare class CallIndex extends U8aFixed { constructor(value?: AnyU8a); } /** * @name Call * @description * Extrinsic function descriptor, as defined in * {@link https://github.com/paritytech/wiki/blob/master/Extrinsic.md#the-extrinsic-format-for-node}. */ export default class Call extends Struct implements IMethod { protected _meta: FunctionMetadataV7; constructor(value: any, meta?: FunctionMetadataV7); /** * Decode input to pass into constructor. * * @param value - Value to decode, one of: * - hex * - Uint8Array * - {@see DecodeMethodInput} * @param _meta - Metadata to use, so that `injectMethods` lookup is not * necessary. */ private static decodeCall; private static decodeCallViaObject; private static decodeCallViaU8a; static filterOrigin(meta?: FunctionMetadataV7): FunctionArgumentMetadataV7[]; static findFunction(callIndex: Uint8Array): CallFunction; /** * Get a mapping of `argument name -> argument type` for the function, from * its metadata. * * @param meta - The function metadata used to get the definition. */ private static getArgsDef; static injectMethods(moduleMethods: ModulesWithCalls): void; /** * @description The arguments for the function call */ readonly args: Codec[]; /** * @description Thge argument defintions */ readonly argsDef: ArgsDef; /** * @description The encoded `[sectionIndex, methodIndex]` identifier */ readonly callIndex: Uint8Array; /** * @description The encoded data */ readonly data: Uint8Array; /** * @description `true` if the `Origin` type is on the method (extrinsic method) */ readonly hasOrigin: boolean; /** * @description The [[FunctionMetadata]] */ readonly meta: FunctionMetadataV7; /** * @description Returns the name of the method */ readonly methodName: string; /** * @description Returns the module containing the method */ readonly sectionName: string; /** * @description Returns the base runtime type name for this instance */ toRawType(): string; }