AbiConstructor.from
Parses an arbitrary JSON ABI Constructor or Human Readable ABI Constructor into a typed AbiConstructor.AbiConstructor
.
Imports
Named
import { AbiConstructor } from 'ox'
Examples
JSON ABIs
import { AbiConstructor } from 'ox'
const constructor = AbiConstructor.from({
inputs: [
{ name: 'owner', type: 'address' },
],
payable: false,
stateMutability: 'nonpayable',
type: 'constructor',
})
const constructor: {
readonly inputs: readonly [{
readonly name: "owner";
readonly type: "address";
}];
readonly payable: false;
readonly stateMutability: "nonpayable";
readonly type: "constructor";
}constructor
Human Readable ABIs
A Human Readable ABI can be parsed into a typed ABI object:
import { AbiConstructor } from 'ox'
const constructor = AbiConstructor.from(
'constructor(address owner)'
)
const constructor: {
readonly type: "constructor";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "owner";
}];
}constructor
It is possible to specify struct
s along with your definitions:
import { AbiConstructor } from 'ox'
const constructor = AbiConstructor.from([
'struct Foo { address owner; uint256 amount; }',
'constructor(Foo foo)',
])
const constructor: {
readonly type: "constructor";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "tuple";
readonly components: readonly [{
readonly type: "address";
readonly name: "owner";
}, {
readonly type: "uint256";
readonly name: "amount";
}];
readonly name: "foo";
}];
}constructor
Definition
function from(
abiConstructor: AbiConstructor | string | readonly string[],
): AbiConstructor
Source: src/core/AbiConstructor.ts
Parameters
abiConstructor
- Type:
AbiConstructor | string | readonly string[]
The ABI Constructor to parse.
Return Type
Typed ABI Constructor.