opnet
Version:
The perfect library for building Bitcoin-based applications.
81 lines (78 loc) • 2.31 kB
text/typescript
import { ABIDataTypes } from '@btc-vision/transaction';
import { BitcoinAbiTypes } from '../../../BitcoinAbiTypes.js';
import { BitcoinInterfaceAbi } from '../../../interfaces/BitcoinInterfaceAbi.js';
import { OP_20S_ABI } from '../opnet/OP_20S_ABI.js';
export const PeggedTokenEvents: BitcoinInterfaceAbi = [
{
name: 'Minted',
values: [
{ name: 'to', type: ABIDataTypes.ADDRESS },
{ name: 'amount', type: ABIDataTypes.UINT256 },
],
type: BitcoinAbiTypes.Event,
},
{
name: 'Burned',
values: [
{ name: 'from', type: ABIDataTypes.ADDRESS },
{ name: 'amount', type: ABIDataTypes.UINT256 },
],
type: BitcoinAbiTypes.Event,
},
{
name: 'CustodianChanged',
values: [
{ name: 'previousCustodian', type: ABIDataTypes.ADDRESS },
{ name: 'newCustodian', type: ABIDataTypes.ADDRESS },
],
type: BitcoinAbiTypes.Event,
},
];
export const PeggedToken_ABI: BitcoinInterfaceAbi = [
{
name: 'mint',
inputs: [
{ name: 'to', type: ABIDataTypes.ADDRESS },
{ name: 'amount', type: ABIDataTypes.UINT256 },
],
outputs: [],
type: BitcoinAbiTypes.Function,
},
{
name: 'burnFrom',
inputs: [
{ name: 'from', type: ABIDataTypes.ADDRESS },
{ name: 'amount', type: ABIDataTypes.UINT256 },
],
outputs: [],
type: BitcoinAbiTypes.Function,
},
{
name: 'transferCustodian',
inputs: [{ name: 'newCustodian', type: ABIDataTypes.ADDRESS }],
outputs: [],
type: BitcoinAbiTypes.Function,
},
{
name: 'acceptCustodian',
inputs: [],
outputs: [],
type: BitcoinAbiTypes.Function,
},
{
name: 'custodian',
constant: true,
inputs: [],
outputs: [{ name: 'custodian', type: ABIDataTypes.ADDRESS }],
type: BitcoinAbiTypes.Function,
},
{
name: 'pendingCustodian',
constant: true,
inputs: [],
outputs: [{ name: 'pendingCustodian', type: ABIDataTypes.ADDRESS }],
type: BitcoinAbiTypes.Function,
},
...PeggedTokenEvents,
...OP_20S_ABI,
];