import { FunctionArgumentMetadataLatest, FunctionMetadataLatest } from '../../interfaces/metadata'; import { AnyU8a, ArgsDef, Codec, IMethod, Registry } 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(registry: Registry, 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: FunctionMetadataLatest; constructor(registry: Registry, value: any, meta?: FunctionMetadataLatest); /** * 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. * @internal */ private static decodeCall; /** @internal */ private static decodeCallViaObject; /** @internal */ private static decodeCallViaU8a; static filterOrigin(meta?: FunctionMetadataLatest): FunctionArgumentMetadataLatest[]; /** * Get a mapping of `argument name -> argument type` for the function, from * its metadata. * * @param meta - The function metadata used to get the definition. * @internal */ private static getArgsDef; /** * @description The arguments for the function call */ get args(): Codec[]; /** * @description The argument definitions */ get argsDef(): ArgsDef; /** * @description The encoded `[sectionIndex, methodIndex]` identifier */ get callIndex(): Uint8Array; /** * @description The encoded data */ get data(): Uint8Array; /** * @description `true` if the `Origin` type is on the method (extrinsic method) */ get hasOrigin(): boolean; /** * @description The [[FunctionMetadata]] */ get meta(): FunctionMetadataLatest; /** * @description Returns the name of the method */ get methodName(): string; /** * @description Returns the module containing the method */ get sectionName(): string; /** * @description Returns the base runtime type name for this instance */ toRawType(): string; }