getForeignCallMetadata(config, rulesEngineForeignCallContract, policyId, foreignCallId, blockParams?): Promise<string>
Defined in: src/modules/foreign-calls.ts:403 Retrieves the metadata for a foreign call from the rules engine component contract.

Parameters

ParameterTypeDescription
configConfigThe configuration object containing network and wallet information.
rulesEngineForeignCallContract{ abi: ({ anonymous: undefined; inputs: ({ components: undefined; internalType: string; name: string; type: string; } | { components: ({ components: undefined; internalType: string; name: string; type: string; } | { components: …[]; internalType: string; name: string; type: string; })[]; internalType: string; name: string; type: string; })[]; name: string; outputs: object[]; stateMutability: string; type: string; } | { anonymous: undefined; inputs: ({ components: undefined; internalType: string; name: string; type: string; } | { components: ({ components: undefined; internalType: string; name: string; type: string; } | { components: …[]; internalType: string; name: string; type: string; })[]; internalType: string; name: string; type: string; })[]; name: string; outputs: object[]; stateMutability: string; type: string; } | { anonymous: boolean; inputs: object[]; name: string; outputs: undefined; stateMutability: undefined; type: string; })[]; address: `0x${string}`; }The contract instance containing the address and ABI for interaction.
rulesEngineForeignCallContract.abi({ anonymous: undefined; inputs: ({ components: undefined; internalType: string; name: string; type: string; } | { components: ({ components: undefined; internalType: string; name: string; type: string; } | { components: …[]; internalType: string; name: string; type: string; })[]; internalType: string; name: string; type: string; })[]; name: string; outputs: object[]; stateMutability: string; type: string; } | { anonymous: undefined; inputs: ({ components: undefined; internalType: string; name: string; type: string; } | { components: ({ components: undefined; internalType: string; name: string; type: string; } | { components: …[]; internalType: string; name: string; type: string; })[]; internalType: string; name: string; type: string; })[]; name: string; outputs: object[]; stateMutability: string; type: string; } | { anonymous: boolean; inputs: object[]; name: string; outputs: undefined; stateMutability: undefined; type: string; })[]-
rulesEngineForeignCallContract.address`0x${string}`-
policyIdnumberThe ID of the policy associated with the foreign call.
foreignCallId?numberThe ID of the foreign call to retrieve.
blockParams?ContractBlockParametersOptional parameters to specify block number or tag for the contract read operation.

Returns

Promise<string> A promise that resolves to the result of the foreign call, or null if an error occurs.

Throws

Will log an error to the console if the contract interaction fails.