Skip to content

Ucs03.ts

This module handles interaction with the UCS03 protocol.

Added in v2.0.0

Contract ABI

Signature

export declare const Abi: readonly [
{
readonly type: "function"
readonly name: "ensureCreateWrappedTokenExported"
readonly inputs: readonly [
{ readonly name: "path"; readonly type: "uint256"; readonly internalType: "uint256" },
{ readonly name: "channelId"; readonly type: "uint32"; readonly internalType: "uint32" },
{ readonly name: "baseToken"; readonly type: "bytes"; readonly internalType: "bytes" },
{ readonly name: "quoteToken"; readonly type: "address"; readonly internalType: "address" },
{ readonly name: "metadata"; readonly type: "bytes"; readonly internalType: "bytes" },
{ readonly name: "kind"; readonly type: "uint8"; readonly internalType: "uint8" }
]
readonly outputs: readonly []
readonly stateMutability: "nonpayable"
},
{
readonly type: "function"
readonly name: "ensureExported"
readonly inputs: readonly [
{
readonly name: ""
readonly type: "tuple"
readonly internalType: "struct ZkgmPacket"
readonly components: readonly [
{ readonly name: "salt"; readonly type: "bytes32"; readonly internalType: "bytes32" },
{ readonly name: "path"; readonly type: "uint256"; readonly internalType: "uint256" },
{
readonly name: "instruction"
readonly type: "tuple"
readonly internalType: "struct Instruction"
readonly components: readonly [
{ readonly name: "version"; readonly type: "uint8"; readonly internalType: "uint8" },
{ readonly name: "opcode"; readonly type: "uint8"; readonly internalType: "uint8" },
{ readonly name: "operand"; readonly type: "bytes"; readonly internalType: "bytes" }
]
}
]
},
{
readonly name: ""
readonly type: "tuple"
readonly internalType: "struct Instruction"
readonly components: readonly [
{ readonly name: "version"; readonly type: "uint8"; readonly internalType: "uint8" },
{ readonly name: "opcode"; readonly type: "uint8"; readonly internalType: "uint8" },
{ readonly name: "operand"; readonly type: "bytes"; readonly internalType: "bytes" }
]
},
{
readonly name: ""
readonly type: "tuple"
readonly internalType: "struct Forward"
readonly components: readonly [
{ readonly name: "path"; readonly type: "uint256"; readonly internalType: "uint256" },
{ readonly name: "timeoutHeight"; readonly type: "uint64"; readonly internalType: "uint64" },
{ readonly name: "timeoutTimestamp"; readonly type: "uint64"; readonly internalType: "uint64" },
{
readonly name: "instruction"
readonly type: "tuple"
readonly internalType: "struct Instruction"
readonly components: readonly [
{ readonly name: "version"; readonly type: "uint8"; readonly internalType: "uint8" },
{ readonly name: "opcode"; readonly type: "uint8"; readonly internalType: "uint8" },
{ readonly name: "operand"; readonly type: "bytes"; readonly internalType: "bytes" }
]
}
]
},
{
readonly name: ""
readonly type: "tuple"
readonly internalType: "struct Call"
readonly components: readonly [
{ readonly name: "sender"; readonly type: "bytes"; readonly internalType: "bytes" },
{ readonly name: "eureka"; readonly type: "bool"; readonly internalType: "bool" },
{ readonly name: "contractAddress"; readonly type: "bytes"; readonly internalType: "bytes" },
{ readonly name: "contractCalldata"; readonly type: "bytes"; readonly internalType: "bytes" }
]
},
{
readonly name: ""
readonly type: "tuple"
readonly internalType: "struct Batch"
readonly components: readonly [
{
readonly name: "instructions"
readonly type: "tuple[]"
readonly internalType: "struct Instruction[]"
readonly components: readonly [
{ readonly name: "version"; readonly type: "uint8"; readonly internalType: "uint8" },
{ readonly name: "opcode"; readonly type: "uint8"; readonly internalType: "uint8" },
{ readonly name: "operand"; readonly type: "bytes"; readonly internalType: "bytes" }
]
}
]
},
{
readonly name: ""
readonly type: "tuple"
readonly internalType: "struct TokenOrderV1"
readonly components: readonly [
{ readonly name: "sender"; readonly type: "bytes"; readonly internalType: "bytes" },
{ readonly name: "receiver"; readonly type: "bytes"; readonly internalType: "bytes" },
{ readonly name: "baseToken"; readonly type: "bytes"; readonly internalType: "bytes" },
{ readonly name: "baseAmount"; readonly type: "uint256"; readonly internalType: "uint256" },
{ readonly name: "baseTokenSymbol"; readonly type: "string"; readonly internalType: "string" },
{ readonly name: "baseTokenName"; readonly type: "string"; readonly internalType: "string" },
{ readonly name: "baseTokenDecimals"; readonly type: "uint8"; readonly internalType: "uint8" },
{ readonly name: "baseTokenPath"; readonly type: "uint256"; readonly internalType: "uint256" },
{ readonly name: "quoteToken"; readonly type: "bytes"; readonly internalType: "bytes" },
{ readonly name: "quoteAmount"; readonly type: "uint256"; readonly internalType: "uint256" }
]
},
{
readonly name: ""
readonly type: "tuple"
readonly internalType: "struct Ack"
readonly components: readonly [
{ readonly name: "tag"; readonly type: "uint256"; readonly internalType: "uint256" },
{ readonly name: "innerAck"; readonly type: "bytes"; readonly internalType: "bytes" }
]
},
{
readonly name: ""
readonly type: "tuple"
readonly internalType: "struct BatchAck"
readonly components: readonly [
{ readonly name: "acknowledgements"; readonly type: "bytes[]"; readonly internalType: "bytes[]" }
]
},
{
readonly name: ""
readonly type: "tuple"
readonly internalType: "struct TokenOrderAck"
readonly components: readonly [
{ readonly name: "fillType"; readonly type: "uint256"; readonly internalType: "uint256" },
{ readonly name: "marketMaker"; readonly type: "bytes"; readonly internalType: "bytes" }
]
},
{
readonly name: ""
readonly type: "tuple"
readonly internalType: "struct TokenOrderV2"
readonly components: readonly [
{ readonly name: "sender"; readonly type: "bytes"; readonly internalType: "bytes" },
{ readonly name: "receiver"; readonly type: "bytes"; readonly internalType: "bytes" },
{ readonly name: "baseToken"; readonly type: "bytes"; readonly internalType: "bytes" },
{ readonly name: "baseAmount"; readonly type: "uint256"; readonly internalType: "uint256" },
{ readonly name: "quoteToken"; readonly type: "bytes"; readonly internalType: "bytes" },
{ readonly name: "quoteAmount"; readonly type: "uint256"; readonly internalType: "uint256" },
{ readonly name: "kind"; readonly type: "uint8"; readonly internalType: "uint8" },
{ readonly name: "metadata"; readonly type: "bytes"; readonly internalType: "bytes" }
]
},
{
readonly name: ""
readonly type: "tuple"
readonly internalType: "struct TokenMetadata"
readonly components: readonly [
{ readonly name: "implementation"; readonly type: "bytes"; readonly internalType: "bytes" },
{ readonly name: "initializer"; readonly type: "bytes"; readonly internalType: "bytes" }
]
},
{
readonly name: ""
readonly type: "tuple"
readonly internalType: "struct SolverMetadata"
readonly components: readonly [
{ readonly name: "solverAddress"; readonly type: "bytes"; readonly internalType: "bytes" },
{ readonly name: "metadata"; readonly type: "bytes"; readonly internalType: "bytes" }
]
}
]
readonly outputs: readonly []
readonly stateMutability: "nonpayable"
},
{
readonly type: "event"
readonly name: "CreateWrappedToken"
readonly inputs: readonly [
{ readonly name: "path"; readonly type: "uint256"; readonly indexed: false; readonly internalType: "uint256" },
{ readonly name: "channelId"; readonly type: "uint32"; readonly indexed: true; readonly internalType: "uint32" },
{ readonly name: "baseToken"; readonly type: "bytes"; readonly indexed: false; readonly internalType: "bytes" },
{
readonly name: "quoteToken"
readonly type: "address"
readonly indexed: true
readonly internalType: "address"
},
{ readonly name: "metadata"; readonly type: "bytes"; readonly indexed: false; readonly internalType: "bytes" },
{ readonly name: "kind"; readonly type: "uint8"; readonly indexed: false; readonly internalType: "uint8" }
]
readonly anonymous: false
},
{
readonly type: "constructor"
readonly inputs: readonly [
{ readonly name: "_ibcHandler"; readonly type: "address"; readonly internalType: "contract IIBCModulePacket" },
{ readonly name: "_sendImpl"; readonly type: "address"; readonly internalType: "contract UCS03ZkgmSendImpl" },
{ readonly name: "_stakeImpl"; readonly type: "address"; readonly internalType: "contract UCS03ZkgmStakeImpl" },
{ readonly name: "_faoImpl"; readonly type: "address"; readonly internalType: "contract UCS03ZkgmTokenOrderImpl" }
]
readonly stateMutability: "nonpayable"
},
{ readonly type: "receive"; readonly stateMutability: "payable" },
{
readonly type: "function"
readonly name: "EXEC_MIN_GAS"
readonly inputs: readonly []
readonly outputs: readonly [{ readonly name: ""; readonly type: "uint256"; readonly internalType: "uint256" }]
readonly stateMutability: "view"
},
{
readonly type: "function"
readonly name: "FAO_IMPL"
readonly inputs: readonly []
readonly outputs: readonly [{ readonly name: ""; readonly type: "address"; readonly internalType: "address" }]
readonly stateMutability: "view"
},
{
readonly type: "function"
readonly name: "IBC_HANDLER"
readonly inputs: readonly []
readonly outputs: readonly [
{ readonly name: ""; readonly type: "address"; readonly internalType: "contract IIBCModulePacket" }
]
readonly stateMutability: "view"
},
{
readonly type: "function"
readonly name: "SEND_IMPL"
readonly inputs: readonly []
readonly outputs: readonly [{ readonly name: ""; readonly type: "address"; readonly internalType: "address" }]
readonly stateMutability: "view"
},
{
readonly type: "function"
readonly name: "STAKE_IMPL"
readonly inputs: readonly []
readonly outputs: readonly [{ readonly name: ""; readonly type: "address"; readonly internalType: "address" }]
readonly stateMutability: "view"
},
{
readonly type: "function"
readonly name: "UPGRADE_INTERFACE_VERSION"
readonly inputs: readonly []
readonly outputs: readonly [{ readonly name: ""; readonly type: "string"; readonly internalType: "string" }]
readonly stateMutability: "view"
},
{
readonly type: "function"
readonly name: "_deprecated_channelBalanceV1"
readonly inputs: readonly [
{ readonly name: ""; readonly type: "uint32"; readonly internalType: "uint32" },
{ readonly name: ""; readonly type: "uint256"; readonly internalType: "uint256" },
{ readonly name: ""; readonly type: "address"; readonly internalType: "address" }
]
readonly outputs: readonly [{ readonly name: ""; readonly type: "uint256"; readonly internalType: "uint256" }]
readonly stateMutability: "view"
},
{
readonly type: "function"
readonly name: "authority"
readonly inputs: readonly []
readonly outputs: readonly [{ readonly name: ""; readonly type: "address"; readonly internalType: "address" }]
readonly stateMutability: "view"
},
{
readonly type: "function"
readonly name: "channelBalanceV2"
readonly inputs: readonly [
{ readonly name: ""; readonly type: "uint32"; readonly internalType: "uint32" },
{ readonly name: ""; readonly type: "uint256"; readonly internalType: "uint256" },
{ readonly name: ""; readonly type: "address"; readonly internalType: "address" },
{ readonly name: ""; readonly type: "bytes"; readonly internalType: "bytes" }
]
readonly outputs: readonly [{ readonly name: ""; readonly type: "uint256"; readonly internalType: "uint256" }]
readonly stateMutability: "view"
},
{
readonly type: "function"
readonly name: "channelGovernanceToken"
readonly inputs: readonly [{ readonly name: ""; readonly type: "uint32"; readonly internalType: "uint32" }]
readonly outputs: readonly [
{ readonly name: "unwrappedToken"; readonly type: "bytes"; readonly internalType: "bytes" },
{ readonly name: "metadataImage"; readonly type: "bytes32"; readonly internalType: "bytes32" }
]
readonly stateMutability: "view"
},
{
readonly type: "function"
readonly name: "decodeRelayerMessage"
readonly inputs: readonly [{ readonly name: "relayerMsg"; readonly type: "bytes"; readonly internalType: "bytes" }]
readonly outputs: readonly [
{ readonly name: ""; readonly type: "bool"; readonly internalType: "bool" },
{ readonly name: ""; readonly type: "bytes"; readonly internalType: "bytes" }
]
readonly stateMutability: "pure"
},
{
readonly type: "function"
readonly name: "decodeZkgmERC20InitializeCall"
readonly inputs: readonly [{ readonly name: "call"; readonly type: "bytes"; readonly internalType: "bytes" }]
readonly outputs: readonly [
{ readonly name: ""; readonly type: "address"; readonly internalType: "address" },
{ readonly name: ""; readonly type: "address"; readonly internalType: "address" },
{ readonly name: ""; readonly type: "string"; readonly internalType: "string" },
{ readonly name: ""; readonly type: "string"; readonly internalType: "string" },
{ readonly name: ""; readonly type: "uint8"; readonly internalType: "uint8" }
]
readonly stateMutability: "pure"
},
{
readonly type: "function"
readonly name: "execute"
readonly inputs: readonly [
{ readonly name: "caller"; readonly type: "address"; readonly internalType: "address" },
{
readonly name: "ibcPacket"
readonly type: "tuple"
readonly internalType: "struct IBCPacket"
readonly components: readonly [
{ readonly name: "sourceChannelId"; readonly type: "uint32"; readonly internalType: "uint32" },
{ readonly name: "destinationChannelId"; readonly type: "uint32"; readonly internalType: "uint32" },
{ readonly name: "data"; readonly type: "bytes"; readonly internalType: "bytes" },
{ readonly name: "timeoutHeight"; readonly type: "uint64"; readonly internalType: "uint64" },
{ readonly name: "timeoutTimestamp"; readonly type: "uint64"; readonly internalType: "uint64" }
]
},
{ readonly name: "relayer"; readonly type: "address"; readonly internalType: "address" },
{ readonly name: "relayerMsg"; readonly type: "bytes"; readonly internalType: "bytes" },
{ readonly name: "intent"; readonly type: "bool"; readonly internalType: "bool" }
]
readonly outputs: readonly [{ readonly name: ""; readonly type: "bytes"; readonly internalType: "bytes" }]
readonly stateMutability: "nonpayable"
},
{
readonly type: "function"
readonly name: "getBucket"
readonly inputs: readonly [{ readonly name: "token"; readonly type: "address"; readonly internalType: "address" }]
readonly outputs: readonly [
{
readonly name: ""
readonly type: "tuple"
readonly internalType: "struct TokenBucket.Bucket"
readonly components: readonly [
{ readonly name: "capacity"; readonly type: "uint256"; readonly internalType: "uint256" },
{ readonly name: "available"; readonly type: "uint256"; readonly internalType: "uint256" },
{ readonly name: "refillRate"; readonly type: "uint256"; readonly internalType: "uint256" },
{ readonly name: "lastRefill"; readonly type: "uint256"; readonly internalType: "uint256" }
]
}
]
readonly stateMutability: "view"
},
{
readonly type: "function"
readonly name: "getGovernanceToken"
readonly inputs: readonly [{ readonly name: "channelId"; readonly type: "uint32"; readonly internalType: "uint32" }]
readonly outputs: readonly [
{ readonly name: ""; readonly type: "address"; readonly internalType: "contract ZkgmERC20" },
{
readonly name: ""
readonly type: "tuple"
readonly internalType: "struct GovernanceToken"
readonly components: readonly [
{ readonly name: "unwrappedToken"; readonly type: "bytes"; readonly internalType: "bytes" },
{ readonly name: "metadataImage"; readonly type: "bytes32"; readonly internalType: "bytes32" }
]
}
]
readonly stateMutability: "view"
},
{
readonly type: "function"
readonly name: "gitRev"
readonly inputs: readonly []
readonly outputs: readonly [{ readonly name: ""; readonly type: "string"; readonly internalType: "string" }]
readonly stateMutability: "pure"
},
{
readonly type: "function"
readonly name: "ibcAddress"
readonly inputs: readonly []
readonly outputs: readonly [{ readonly name: ""; readonly type: "address"; readonly internalType: "address" }]
readonly stateMutability: "view"
},
{
readonly type: "function"
readonly name: "inFlightPacket"
readonly inputs: readonly [{ readonly name: ""; readonly type: "bytes32"; readonly internalType: "bytes32" }]
readonly outputs: readonly [
{ readonly name: "sourceChannelId"; readonly type: "uint32"; readonly internalType: "uint32" },
{ readonly name: "destinationChannelId"; readonly type: "uint32"; readonly internalType: "uint32" },
{ readonly name: "data"; readonly type: "bytes"; readonly internalType: "bytes" },
{ readonly name: "timeoutHeight"; readonly type: "uint64"; readonly internalType: "uint64" },
{ readonly name: "timeoutTimestamp"; readonly type: "uint64"; readonly internalType: "uint64" }
]
readonly stateMutability: "view"
},
{
readonly type: "function"
readonly name: "initialize"
readonly inputs: readonly [
{ readonly name: "_authority"; readonly type: "address"; readonly internalType: "address" }
]
readonly outputs: readonly []
readonly stateMutability: "nonpayable"
},
{
readonly type: "function"
readonly name: "isConsumingScheduledOp"
readonly inputs: readonly []
readonly outputs: readonly [{ readonly name: ""; readonly type: "bytes4"; readonly internalType: "bytes4" }]
readonly stateMutability: "view"
},
{
readonly type: "function"
readonly name: "metadataImageOf"
readonly inputs: readonly [{ readonly name: ""; readonly type: "address"; readonly internalType: "address" }]
readonly outputs: readonly [{ readonly name: ""; readonly type: "bytes32"; readonly internalType: "bytes32" }]
readonly stateMutability: "view"
},
{
readonly type: "function"
readonly name: "migrateV1ToV2"
readonly inputs: readonly [
{
readonly name: "balanceMigrations"
readonly type: "tuple[]"
readonly internalType: "struct V1ToV2Migration[]"
readonly components: readonly [
{ readonly name: "path"; readonly type: "uint256"; readonly internalType: "uint256" },
{ readonly name: "channelId"; readonly type: "uint32"; readonly internalType: "uint32" },
{ readonly name: "baseToken"; readonly type: "address"; readonly internalType: "address" },
{ readonly name: "quoteToken"; readonly type: "bytes"; readonly internalType: "bytes" }
]
},
{
readonly name: "wrappedMigrations"
readonly type: "tuple[]"
readonly internalType: "struct V1ToV2WrappedTokenMigration[]"
readonly components: readonly [
{ readonly name: "path"; readonly type: "uint256"; readonly internalType: "uint256" },
{ readonly name: "channelId"; readonly type: "uint32"; readonly internalType: "uint32" },
{ readonly name: "baseToken"; readonly type: "bytes"; readonly internalType: "bytes" },
{ readonly name: "quoteToken"; readonly type: "address"; readonly internalType: "address" }
]
}
]
readonly outputs: readonly []
readonly stateMutability: "nonpayable"
},
{
readonly type: "function"
readonly name: "onAcknowledgementPacket"
readonly inputs: readonly [
{ readonly name: "caller"; readonly type: "address"; readonly internalType: "address" },
{
readonly name: "ibcPacket"
readonly type: "tuple"
readonly internalType: "struct IBCPacket"
readonly components: readonly [
{ readonly name: "sourceChannelId"; readonly type: "uint32"; readonly internalType: "uint32" },
{ readonly name: "destinationChannelId"; readonly type: "uint32"; readonly internalType: "uint32" },
{ readonly name: "data"; readonly type: "bytes"; readonly internalType: "bytes" },
{ readonly name: "timeoutHeight"; readonly type: "uint64"; readonly internalType: "uint64" },
{ readonly name: "timeoutTimestamp"; readonly type: "uint64"; readonly internalType: "uint64" }
]
},
{ readonly name: "ack"; readonly type: "bytes"; readonly internalType: "bytes" },
{ readonly name: "relayer"; readonly type: "address"; readonly internalType: "address" }
]
readonly outputs: readonly []
readonly stateMutability: "nonpayable"
},
{
readonly type: "function"
readonly name: "onChanCloseConfirm"
readonly inputs: readonly [
{ readonly name: ""; readonly type: "address"; readonly internalType: "address" },
{ readonly name: ""; readonly type: "uint32"; readonly internalType: "uint32" },
{ readonly name: ""; readonly type: "address"; readonly internalType: "address" }
]
readonly outputs: readonly []
readonly stateMutability: "nonpayable"
},
{
readonly type: "function"
readonly name: "onChanCloseInit"
readonly inputs: readonly [
{ readonly name: ""; readonly type: "address"; readonly internalType: "address" },
{ readonly name: ""; readonly type: "uint32"; readonly internalType: "uint32" },
{ readonly name: ""; readonly type: "address"; readonly internalType: "address" }
]
readonly outputs: readonly []
readonly stateMutability: "nonpayable"
},
{
readonly type: "function"
readonly name: "onChanOpenAck"
readonly inputs: readonly [
{ readonly name: ""; readonly type: "address"; readonly internalType: "address" },
{ readonly name: "channelId"; readonly type: "uint32"; readonly internalType: "uint32" },
{ readonly name: ""; readonly type: "uint32"; readonly internalType: "uint32" },
{ readonly name: "counterpartyVersion"; readonly type: "string"; readonly internalType: "string" },
{ readonly name: ""; readonly type: "address"; readonly internalType: "address" }
]
readonly outputs: readonly []
readonly stateMutability: "nonpayable"
},
{
readonly type: "function"
readonly name: "onChanOpenConfirm"
readonly inputs: readonly [
{ readonly name: ""; readonly type: "address"; readonly internalType: "address" },
{ readonly name: "channelId"; readonly type: "uint32"; readonly internalType: "uint32" },
{ readonly name: ""; readonly type: "address"; readonly internalType: "address" }
]
readonly outputs: readonly []
readonly stateMutability: "nonpayable"
},
{
readonly type: "function"
readonly name: "onChanOpenInit"
readonly inputs: readonly [
{ readonly name: ""; readonly type: "address"; readonly internalType: "address" },
{ readonly name: ""; readonly type: "uint32"; readonly internalType: "uint32" },
{ readonly name: ""; readonly type: "uint32"; readonly internalType: "uint32" },
{ readonly name: "version"; readonly type: "string"; readonly internalType: "string" },
{ readonly name: ""; readonly type: "address"; readonly internalType: "address" }
]
readonly outputs: readonly []
readonly stateMutability: "nonpayable"
},
{
readonly type: "function"
readonly name: "onChanOpenTry"
readonly inputs: readonly [
{ readonly name: ""; readonly type: "address"; readonly internalType: "address" },
{ readonly name: ""; readonly type: "uint32"; readonly internalType: "uint32" },
{ readonly name: ""; readonly type: "uint32"; readonly internalType: "uint32" },
{ readonly name: ""; readonly type: "uint32"; readonly internalType: "uint32" },
{ readonly name: "version"; readonly type: "string"; readonly internalType: "string" },
{ readonly name: "counterpartyVersion"; readonly type: "string"; readonly internalType: "string" },
{ readonly name: ""; readonly type: "address"; readonly internalType: "address" }
]
readonly outputs: readonly []
readonly stateMutability: "nonpayable"
},
{
readonly type: "function"
readonly name: "onRecvIntentPacket"
readonly inputs: readonly [
{ readonly name: "caller"; readonly type: "address"; readonly internalType: "address" },
{
readonly name: "packet"
readonly type: "tuple"
readonly internalType: "struct IBCPacket"
readonly components: readonly [
{ readonly name: "sourceChannelId"; readonly type: "uint32"; readonly internalType: "uint32" },
{ readonly name: "destinationChannelId"; readonly type: "uint32"; readonly internalType: "uint32" },
{ readonly name: "data"; readonly type: "bytes"; readonly internalType: "bytes" },
{ readonly name: "timeoutHeight"; readonly type: "uint64"; readonly internalType: "uint64" },
{ readonly name: "timeoutTimestamp"; readonly type: "uint64"; readonly internalType: "uint64" }
]
},
{ readonly name: "relayer"; readonly type: "address"; readonly internalType: "address" },
{ readonly name: "relayerMsg"; readonly type: "bytes"; readonly internalType: "bytes" }
]
readonly outputs: readonly [{ readonly name: ""; readonly type: "bytes"; readonly internalType: "bytes" }]
readonly stateMutability: "nonpayable"
},
{
readonly type: "function"
readonly name: "onRecvPacket"
readonly inputs: readonly [
{ readonly name: "caller"; readonly type: "address"; readonly internalType: "address" },
{
readonly name: "packet"
readonly type: "tuple"
readonly internalType: "struct IBCPacket"
readonly components: readonly [
{ readonly name: "sourceChannelId"; readonly type: "uint32"; readonly internalType: "uint32" },
{ readonly name: "destinationChannelId"; readonly type: "uint32"; readonly internalType: "uint32" },
{ readonly name: "data"; readonly type: "bytes"; readonly internalType: "bytes" },
{ readonly name: "timeoutHeight"; readonly type: "uint64"; readonly internalType: "uint64" },
{ readonly name: "timeoutTimestamp"; readonly type: "uint64"; readonly internalType: "uint64" }
]
},
{ readonly name: "relayer"; readonly type: "address"; readonly internalType: "address" },
{ readonly name: "relayerMsg"; readonly type: "bytes"; readonly internalType: "bytes" }
]
readonly outputs: readonly [{ readonly name: ""; readonly type: "bytes"; readonly internalType: "bytes" }]
readonly stateMutability: "nonpayable"
},
{
readonly type: "function"
readonly name: "onTimeoutPacket"
readonly inputs: readonly [
{ readonly name: "caller"; readonly type: "address"; readonly internalType: "address" },
{
readonly name: "ibcPacket"
readonly type: "tuple"
readonly internalType: "struct IBCPacket"
readonly components: readonly [
{ readonly name: "sourceChannelId"; readonly type: "uint32"; readonly internalType: "uint32" },
{ readonly name: "destinationChannelId"; readonly type: "uint32"; readonly internalType: "uint32" },
{ readonly name: "data"; readonly type: "bytes"; readonly internalType: "bytes" },
{ readonly name: "timeoutHeight"; readonly type: "uint64"; readonly internalType: "uint64" },
{ readonly name: "timeoutTimestamp"; readonly type: "uint64"; readonly internalType: "uint64" }
]
},
{ readonly name: "relayer"; readonly type: "address"; readonly internalType: "address" }
]
readonly outputs: readonly []
readonly stateMutability: "nonpayable"
},
{
readonly type: "function"
readonly name: "overwriteGovernanceToken"
readonly inputs: readonly [
{ readonly name: "channelId"; readonly type: "uint32"; readonly internalType: "uint32" },
{
readonly name: "governanceToken"
readonly type: "tuple"
readonly internalType: "struct GovernanceToken"
readonly components: readonly [
{ readonly name: "unwrappedToken"; readonly type: "bytes"; readonly internalType: "bytes" },
{ readonly name: "metadataImage"; readonly type: "bytes32"; readonly internalType: "bytes32" }
]
}
]
readonly outputs: readonly []
readonly stateMutability: "nonpayable"
},
{
readonly type: "function"
readonly name: "pause"
readonly inputs: readonly []
readonly outputs: readonly []
readonly stateMutability: "nonpayable"
},
{
readonly type: "function"
readonly name: "paused"
readonly inputs: readonly []
readonly outputs: readonly [{ readonly name: ""; readonly type: "bool"; readonly internalType: "bool" }]
readonly stateMutability: "view"
},
{
readonly type: "function"
readonly name: "predictStakeManagerAddress"
readonly inputs: readonly []
readonly outputs: readonly [
{ readonly name: ""; readonly type: "address"; readonly internalType: "contract ZkgmERC721" }
]
readonly stateMutability: "view"
},
{
readonly type: "function"
readonly name: "predictWrappedToken"
readonly inputs: readonly [
{ readonly name: "path"; readonly type: "uint256"; readonly internalType: "uint256" },
{ readonly name: "channel"; readonly type: "uint32"; readonly internalType: "uint32" },
{ readonly name: "token"; readonly type: "bytes"; readonly internalType: "bytes" }
]
readonly outputs: readonly [
{ readonly name: ""; readonly type: "address"; readonly internalType: "address" },
{ readonly name: ""; readonly type: "bytes32"; readonly internalType: "bytes32" }
]
readonly stateMutability: "nonpayable"
},
{
readonly type: "function"
readonly name: "predictWrappedTokenFromMetadataImageV2"
readonly inputs: readonly [
{ readonly name: "path"; readonly type: "uint256"; readonly internalType: "uint256" },
{ readonly name: "channel"; readonly type: "uint32"; readonly internalType: "uint32" },
{ readonly name: "token"; readonly type: "bytes"; readonly internalType: "bytes" },
{ readonly name: "metadataImage"; readonly type: "bytes32"; readonly internalType: "bytes32" }
]
readonly outputs: readonly [
{ readonly name: ""; readonly type: "address"; readonly internalType: "address" },
{ readonly name: ""; readonly type: "bytes32"; readonly internalType: "bytes32" }
]
readonly stateMutability: "nonpayable"
},
{
readonly type: "function"
readonly name: "predictWrappedTokenV2"
readonly inputs: readonly [
{ readonly name: "path"; readonly type: "uint256"; readonly internalType: "uint256" },
{ readonly name: "channel"; readonly type: "uint32"; readonly internalType: "uint32" },
{ readonly name: "token"; readonly type: "bytes"; readonly internalType: "bytes" },
{
readonly name: "metadata"
readonly type: "tuple"
readonly internalType: "struct TokenMetadata"
readonly components: readonly [
{ readonly name: "implementation"; readonly type: "bytes"; readonly internalType: "bytes" },
{ readonly name: "initializer"; readonly type: "bytes"; readonly internalType: "bytes" }
]
}
]
readonly outputs: readonly [
{ readonly name: ""; readonly type: "address"; readonly internalType: "address" },
{ readonly name: ""; readonly type: "bytes32"; readonly internalType: "bytes32" }
]
readonly stateMutability: "nonpayable"
},
{
readonly type: "function"
readonly name: "proxiableUUID"
readonly inputs: readonly []
readonly outputs: readonly [{ readonly name: ""; readonly type: "bytes32"; readonly internalType: "bytes32" }]
readonly stateMutability: "view"
},
{
readonly type: "function"
readonly name: "registerGovernanceToken"
readonly inputs: readonly [
{ readonly name: "channelId"; readonly type: "uint32"; readonly internalType: "uint32" },
{
readonly name: "governanceToken"
readonly type: "tuple"
readonly internalType: "struct GovernanceToken"
readonly components: readonly [
{ readonly name: "unwrappedToken"; readonly type: "bytes"; readonly internalType: "bytes" },
{ readonly name: "metadataImage"; readonly type: "bytes32"; readonly internalType: "bytes32" }
]
}
]
readonly outputs: readonly []
readonly stateMutability: "nonpayable"
},
{
readonly type: "function"
readonly name: "send"
readonly inputs: readonly [
{ readonly name: "channelId"; readonly type: "uint32"; readonly internalType: "uint32" },
{ readonly name: "timeoutHeight"; readonly type: "uint64"; readonly internalType: "uint64" },
{ readonly name: "timeoutTimestamp"; readonly type: "uint64"; readonly internalType: "uint64" },
{ readonly name: "salt"; readonly type: "bytes32"; readonly internalType: "bytes32" },
{
readonly name: "instruction"
readonly type: "tuple"
readonly internalType: "struct Instruction"
readonly components: readonly [
{ readonly name: "version"; readonly type: "uint8"; readonly internalType: "uint8" },
{ readonly name: "opcode"; readonly type: "uint8"; readonly internalType: "uint8" },
{ readonly name: "operand"; readonly type: "bytes"; readonly internalType: "bytes" }
]
}
]
readonly outputs: readonly []
readonly stateMutability: "payable"
},
{
readonly type: "function"
readonly name: "setAuthority"
readonly inputs: readonly [
{ readonly name: "newAuthority"; readonly type: "address"; readonly internalType: "address" }
]
readonly outputs: readonly []
readonly stateMutability: "nonpayable"
},
{
readonly type: "function"
readonly name: "setBucketConfig"
readonly inputs: readonly [
{ readonly name: "token"; readonly type: "address"; readonly internalType: "address" },
{ readonly name: "capacity"; readonly type: "uint256"; readonly internalType: "uint256" },
{ readonly name: "refillRate"; readonly type: "uint256"; readonly internalType: "uint256" },
{ readonly name: "reset"; readonly type: "bool"; readonly internalType: "bool" }
]
readonly outputs: readonly []
readonly stateMutability: "nonpayable"
},
{
readonly type: "function"
readonly name: "stakes"
readonly inputs: readonly [{ readonly name: ""; readonly type: "uint256"; readonly internalType: "uint256" }]
readonly outputs: readonly [
{ readonly name: "state"; readonly type: "uint8"; readonly internalType: "enum ZkgmStakeState" },
{ readonly name: "channelId"; readonly type: "uint32"; readonly internalType: "uint32" },
{ readonly name: "validator"; readonly type: "bytes"; readonly internalType: "bytes" },
{ readonly name: "amount"; readonly type: "uint256"; readonly internalType: "uint256" },
{ readonly name: "unstakingCompletion"; readonly type: "uint256"; readonly internalType: "uint256" }
]
readonly stateMutability: "view"
},
{
readonly type: "function"
readonly name: "tokenOrigin"
readonly inputs: readonly [{ readonly name: ""; readonly type: "address"; readonly internalType: "address" }]
readonly outputs: readonly [{ readonly name: ""; readonly type: "uint256"; readonly internalType: "uint256" }]
readonly stateMutability: "view"
},
{
readonly type: "function"
readonly name: "unpause"
readonly inputs: readonly []
readonly outputs: readonly []
readonly stateMutability: "nonpayable"
},
{
readonly type: "function"
readonly name: "upgradeToAndCall"
readonly inputs: readonly [
{ readonly name: "newImplementation"; readonly type: "address"; readonly internalType: "address" },
{ readonly name: "data"; readonly type: "bytes"; readonly internalType: "bytes" }
]
readonly outputs: readonly []
readonly stateMutability: "payable"
},
{
readonly type: "event"
readonly name: "AuthorityUpdated"
readonly inputs: readonly [
{
readonly name: "authority"
readonly type: "address"
readonly indexed: false
readonly internalType: "address"
}
]
readonly anonymous: false
},
{
readonly type: "event"
readonly name: "CreateWrappedToken"
readonly inputs: readonly [
{ readonly name: "path"; readonly type: "uint256"; readonly indexed: false; readonly internalType: "uint256" },
{ readonly name: "channelId"; readonly type: "uint32"; readonly indexed: true; readonly internalType: "uint32" },
{ readonly name: "baseToken"; readonly type: "bytes"; readonly indexed: false; readonly internalType: "bytes" },
{
readonly name: "quoteToken"
readonly type: "address"
readonly indexed: true
readonly internalType: "address"
},
{ readonly name: "metadata"; readonly type: "bytes"; readonly indexed: false; readonly internalType: "bytes" },
{ readonly name: "kind"; readonly type: "uint8"; readonly indexed: false; readonly internalType: "uint8" }
]
readonly anonymous: false
},
{
readonly type: "event"
readonly name: "Initialized"
readonly inputs: readonly [
{ readonly name: "version"; readonly type: "uint64"; readonly indexed: false; readonly internalType: "uint64" }
]
readonly anonymous: false
},
{
readonly type: "event"
readonly name: "Paused"
readonly inputs: readonly [
{ readonly name: "account"; readonly type: "address"; readonly indexed: false; readonly internalType: "address" }
]
readonly anonymous: false
},
{
readonly type: "event"
readonly name: "TokenBucketUpdate"
readonly inputs: readonly [
{ readonly name: "token"; readonly type: "address"; readonly indexed: true; readonly internalType: "address" },
{
readonly name: "capacity"
readonly type: "uint256"
readonly indexed: false
readonly internalType: "uint256"
},
{
readonly name: "refillRate"
readonly type: "uint256"
readonly indexed: false
readonly internalType: "uint256"
}
]
readonly anonymous: false
},
{
readonly type: "event"
readonly name: "Unpaused"
readonly inputs: readonly [
{ readonly name: "account"; readonly type: "address"; readonly indexed: false; readonly internalType: "address" }
]
readonly anonymous: false
},
{
readonly type: "event"
readonly name: "Upgraded"
readonly inputs: readonly [
{
readonly name: "implementation"
readonly type: "address"
readonly indexed: true
readonly internalType: "address"
}
]
readonly anonymous: false
},
{
readonly type: "error"
readonly name: "AccessManagedInvalidAuthority"
readonly inputs: readonly [
{ readonly name: "authority"; readonly type: "address"; readonly internalType: "address" }
]
},
{
readonly type: "error"
readonly name: "AccessManagedRequiredDelay"
readonly inputs: readonly [
{ readonly name: "caller"; readonly type: "address"; readonly internalType: "address" },
{ readonly name: "delay"; readonly type: "uint32"; readonly internalType: "uint32" }
]
},
{
readonly type: "error"
readonly name: "AccessManagedUnauthorized"
readonly inputs: readonly [{ readonly name: "caller"; readonly type: "address"; readonly internalType: "address" }]
},
{
readonly type: "error"
readonly name: "AddressEmptyCode"
readonly inputs: readonly [{ readonly name: "target"; readonly type: "address"; readonly internalType: "address" }]
},
{
readonly type: "error"
readonly name: "ERC1967InvalidImplementation"
readonly inputs: readonly [
{ readonly name: "implementation"; readonly type: "address"; readonly internalType: "address" }
]
},
{ readonly type: "error"; readonly name: "ERC1967NonPayable"; readonly inputs: readonly [] },
{ readonly type: "error"; readonly name: "EnforcedPause"; readonly inputs: readonly [] },
{ readonly type: "error"; readonly name: "ErrAsyncCallUnsupported"; readonly inputs: readonly [] },
{ readonly type: "error"; readonly name: "ErrBatchMustBeSync"; readonly inputs: readonly [] },
{ readonly type: "error"; readonly name: "ErrChannelGovernanceTokenAlreadySet"; readonly inputs: readonly [] },
{ readonly type: "error"; readonly name: "ErrChannelGovernanceTokenNotSet"; readonly inputs: readonly [] },
{ readonly type: "error"; readonly name: "ErrInfiniteGame"; readonly inputs: readonly [] },
{ readonly type: "error"; readonly name: "ErrInvalidBatchInstruction"; readonly inputs: readonly [] },
{ readonly type: "error"; readonly name: "ErrInvalidForwardDestinationChannelId"; readonly inputs: readonly [] },
{ readonly type: "error"; readonly name: "ErrInvalidForwardInstruction"; readonly inputs: readonly [] },
{ readonly type: "error"; readonly name: "ErrInvalidHops"; readonly inputs: readonly [] },
{ readonly type: "error"; readonly name: "ErrInvalidIBCVersion"; readonly inputs: readonly [] },
{ readonly type: "error"; readonly name: "ErrNotIBC"; readonly inputs: readonly [] },
{ readonly type: "error"; readonly name: "ErrOnlyMaker"; readonly inputs: readonly [] },
{ readonly type: "error"; readonly name: "ErrTokenBucketRateLimitExceeded"; readonly inputs: readonly [] },
{ readonly type: "error"; readonly name: "ErrTokenBucketZeroCapacity"; readonly inputs: readonly [] },
{ readonly type: "error"; readonly name: "ErrTokenBucketZeroRefillRate"; readonly inputs: readonly [] },
{ readonly type: "error"; readonly name: "ErrUnauthorized"; readonly inputs: readonly [] },
{ readonly type: "error"; readonly name: "ErrUnknownOpcode"; readonly inputs: readonly [] },
{ readonly type: "error"; readonly name: "ExpectedPause"; readonly inputs: readonly [] },
{ readonly type: "error"; readonly name: "FailedCall"; readonly inputs: readonly [] },
{ readonly type: "error"; readonly name: "InvalidInitialization"; readonly inputs: readonly [] },
{ readonly type: "error"; readonly name: "NotInitializing"; readonly inputs: readonly [] },
{ readonly type: "error"; readonly name: "UUPSUnauthorizedCallContext"; readonly inputs: readonly [] },
{
readonly type: "error"
readonly name: "UUPSUnsupportedProxiableUUID"
readonly inputs: readonly [{ readonly name: "slot"; readonly type: "bytes32"; readonly internalType: "bytes32" }]
}
]

Source: src/Ucs03.ts:23

Added in v2.0.0

Signature

export declare const AckAbi: LazyArg<
readonly [
{ readonly name: "tag"; readonly type: "uint256"; readonly internalType: "uint256" },
{ readonly name: "innerAck"; readonly type: "bytes"; readonly internalType: "bytes" }
]
>

Source: src/Ucs03.ts:987

Added in v2.0.0

Signature

export declare const BatchAbi: LazyArg<
readonly [
{
readonly name: "instructions"
readonly type: "tuple[]"
readonly internalType: "struct Instruction[]"
readonly components: readonly [
{ readonly name: "version"; readonly type: "uint8"; readonly internalType: "uint8" },
{ readonly name: "opcode"; readonly type: "uint8"; readonly internalType: "uint8" },
{ readonly name: "operand"; readonly type: "bytes"; readonly internalType: "bytes" }
]
}
]
>

Source: src/Ucs03.ts:982

Added in v2.0.0

Signature

export declare const BatchAckAbi: LazyArg<
readonly [{ readonly name: "acknowledgements"; readonly type: "bytes[]"; readonly internalType: "bytes[]" }]
>

Source: src/Ucs03.ts:992

Added in v2.0.0

Signature

export declare const CallAbi: LazyArg<
readonly [
{ readonly name: "sender"; readonly type: "bytes"; readonly internalType: "bytes" },
{ readonly name: "eureka"; readonly type: "bool"; readonly internalType: "bool" },
{ readonly name: "contractAddress"; readonly type: "bytes"; readonly internalType: "bytes" },
{ readonly name: "contractCalldata"; readonly type: "bytes"; readonly internalType: "bytes" }
]
>

Source: src/Ucs03.ts:977

Added in v2.0.0

Signature

export declare const ForwardAbi: LazyArg<
readonly [
{ readonly name: "path"; readonly type: "uint256"; readonly internalType: "uint256" },
{ readonly name: "timeoutHeight"; readonly type: "uint64"; readonly internalType: "uint64" },
{ readonly name: "timeoutTimestamp"; readonly type: "uint64"; readonly internalType: "uint64" },
{
readonly name: "instruction"
readonly type: "tuple"
readonly internalType: "struct Instruction"
readonly components: readonly [
{ readonly name: "version"; readonly type: "uint8"; readonly internalType: "uint8" },
{ readonly name: "opcode"; readonly type: "uint8"; readonly internalType: "uint8" },
{ readonly name: "operand"; readonly type: "bytes"; readonly internalType: "bytes" }
]
}
]
>

Source: src/Ucs03.ts:972

Added in v2.0.0

Signature

export declare const InstructionAbi: LazyArg<
readonly [
{ readonly name: "version"; readonly type: "uint8"; readonly internalType: "uint8" },
{ readonly name: "opcode"; readonly type: "uint8"; readonly internalType: "uint8" },
{ readonly name: "operand"; readonly type: "bytes"; readonly internalType: "bytes" }
]
>

Source: src/Ucs03.ts:962

Added in v2.0.0

Signature

export declare const SolverMetadataAbi: LazyArg<
readonly [
{ readonly name: "solverAddress"; readonly type: "bytes"; readonly internalType: "bytes" },
{ readonly name: "metadata"; readonly type: "bytes"; readonly internalType: "bytes" }
]
>

Source: src/Ucs03.ts:957

Added in v2.0.0

Signature

export declare const TokenMetadataAbi: LazyArg<
readonly [
{ readonly name: "implementation"; readonly type: "bytes"; readonly internalType: "bytes" },
{ readonly name: "initializer"; readonly type: "bytes"; readonly internalType: "bytes" }
]
>

Source: src/Ucs03.ts:952

Added in v2.0.0

Signature

export declare const TokenOrderOrderAckAbi: LazyArg<
readonly [
{ readonly name: "fillType"; readonly type: "uint256"; readonly internalType: "uint256" },
{ readonly name: "marketMaker"; readonly type: "bytes"; readonly internalType: "bytes" }
]
>

Source: src/Ucs03.ts:997

Added in v2.0.0

Signature

export declare const TokenOrderV1Abi: LazyArg<
readonly [
{ readonly name: "sender"; readonly type: "bytes"; readonly internalType: "bytes" },
{ readonly name: "receiver"; readonly type: "bytes"; readonly internalType: "bytes" },
{ readonly name: "baseToken"; readonly type: "bytes"; readonly internalType: "bytes" },
{ readonly name: "baseAmount"; readonly type: "uint256"; readonly internalType: "uint256" },
{ readonly name: "baseTokenSymbol"; readonly type: "string"; readonly internalType: "string" },
{ readonly name: "baseTokenName"; readonly type: "string"; readonly internalType: "string" },
{ readonly name: "baseTokenDecimals"; readonly type: "uint8"; readonly internalType: "uint8" },
{ readonly name: "baseTokenPath"; readonly type: "uint256"; readonly internalType: "uint256" },
{ readonly name: "quoteToken"; readonly type: "bytes"; readonly internalType: "bytes" },
{ readonly name: "quoteAmount"; readonly type: "uint256"; readonly internalType: "uint256" }
]
>

Source: src/Ucs03.ts:942

Added in v2.0.0

Signature

export declare const TokenOrderV2Abi: LazyArg<
readonly [
{ readonly name: "sender"; readonly type: "bytes"; readonly internalType: "bytes" },
{ readonly name: "receiver"; readonly type: "bytes"; readonly internalType: "bytes" },
{ readonly name: "baseToken"; readonly type: "bytes"; readonly internalType: "bytes" },
{ readonly name: "baseAmount"; readonly type: "uint256"; readonly internalType: "uint256" },
{ readonly name: "quoteToken"; readonly type: "bytes"; readonly internalType: "bytes" },
{ readonly name: "quoteAmount"; readonly type: "uint256"; readonly internalType: "uint256" },
{ readonly name: "kind"; readonly type: "uint8"; readonly internalType: "uint8" },
{ readonly name: "metadata"; readonly type: "bytes"; readonly internalType: "bytes" }
]
>

Source: src/Ucs03.ts:947

Added in v2.0.0

Signature

export declare const ZkgmPacketAbi: LazyArg<
readonly [
{ readonly name: "salt"; readonly type: "bytes32"; readonly internalType: "bytes32" },
{ readonly name: "path"; readonly type: "uint256"; readonly internalType: "uint256" },
{
readonly name: "instruction"
readonly type: "tuple"
readonly internalType: "struct Instruction"
readonly components: readonly [
{ readonly name: "version"; readonly type: "uint8"; readonly internalType: "uint8" },
{ readonly name: "opcode"; readonly type: "uint8"; readonly internalType: "uint8" },
{ readonly name: "operand"; readonly type: "bytes"; readonly internalType: "bytes" }
]
}
]
>

Source: src/Ucs03.ts:967

Added in v2.0.0

Signature

export declare class Batch

Added in v2.0.0

Source: src/Ucs03.ts:1328

Signature

export declare class Call

Added in v2.0.0

Source: src/Ucs03.ts:1304

Signature

export declare class Forward

Added in v2.0.0

Source: src/Ucs03.ts:1262

Signature

export declare class Instruction

Added in v2.0.0

Source: src/Ucs03.ts:1400

Signature

export declare const Operand: S.Union<
[
S.Tuple<
[
S.TemplateLiteral<`0x${string}`>,
typeof S.BigIntFromSelf,
S.Struct<{
version: S.filter<S.refine<number, typeof S.NonNegative>>
opcode: S.refine<number, typeof S.NonNegative>
operand: S.TemplateLiteral<`0x${string}`>
}>
]
>,
S.Tuple<[typeof S.Number, typeof S.Number, S.TemplateLiteral<`0x${string}`>]>,
S.Tuple<
[
typeof S.BigIntFromSelf,
typeof S.BigIntFromSelf,
typeof S.BigIntFromSelf,
S.Struct<{
version: S.filter<S.refine<number, typeof S.NonNegative>>
opcode: S.refine<number, typeof S.NonNegative>
operand: S.TemplateLiteral<`0x${string}`>
}>
]
>,
S.Tuple<
[
S.TemplateLiteral<`0x${string}`>,
typeof S.Boolean,
S.TemplateLiteral<`0x${string}`>,
S.TemplateLiteral<`0x${string}`>
]
>,
S.Tuple<
[
S.Array$<
S.Struct<{
version: S.filter<S.refine<number, typeof S.NonNegative>>
opcode: S.refine<number, typeof S.NonNegative>
operand: S.TemplateLiteral<`0x${string}`>
}>
>
]
>,
S.Tuple<
[
S.SchemaClass<`0x${string}`, `0x${string}`, never>,
S.SchemaClass<`0x${string}`, `0x${string}`, never>,
S.SchemaClass<`0x${string}`, `0x${string}`, never>,
S.SchemaClass<bigint, bigint, never>,
S.SchemaClass<string, string, never>,
S.SchemaClass<string, string, never>,
S.refine<number, typeof S.Number>,
S.SchemaClass<bigint, bigint, never>,
S.SchemaClass<`0x${string}`, `0x${string}`, never>,
S.SchemaClass<bigint, bigint, never>
]
>,
S.Tuple<
[
S.SchemaClass<`0x${string}`, `0x${string}`, never>,
S.SchemaClass<`0x${string}`, `0x${string}`, never>,
S.SchemaClass<`0x${string}`, `0x${string}`, never>,
S.SchemaClass<bigint, bigint, never>,
S.SchemaClass<`0x${string}`, `0x${string}`, never>,
S.SchemaClass<bigint, bigint, never>,
S.Union<[S.Literal<[0]>, S.Literal<[1]>, S.Literal<[2]>, S.Literal<[3]>]>,
S.Union<[S.Literal<["0x"]>, S.SchemaClass<`0x${string}`, `0x${string}`, never>]>
]
>,
S.Tuple2<typeof S.BigIntFromSelf, S.TemplateLiteral<`0x${string}`>>,
S.Tuple<[S.NonEmptyArray<S.TemplateLiteral<`0x${string}`>>]>
]
>

Source: src/Ucs03.ts:1230

Added in v2.0.0

Signature

export type Operand = typeof Operand.Type

Source: src/Ucs03.ts:1256

Added in v2.0.0

Signature

export declare class Packet

Added in v2.0.0

Source: src/Ucs03.ts:1839

Signature

export type Schema = Instruction | Forward | Call | Batch | TokenOrder

Source: src/Ucs03.ts:1421

Added in v2.0.0

Signature

export type SolverMetadata = typeof SolverMetadata.Type

Source: src/Ucs03.ts:1127

Added in v2.0.0

Signature

export type TokenMetadataKind = typeof TokenMetadataKind.Type

Source: src/Ucs03.ts:1160

Added in v2.0.0

Signature

export type TokenOrder = typeof TokenOrder.Type

Source: src/Ucs03.ts:1415

Added in v2.0.0

Signature

export declare class TokenOrderV1

Added in v2.0.0

Source: src/Ucs03.ts:1352

Signature

export declare class TokenOrderV2

Added in v2.0.0

Source: src/Ucs03.ts:1376

Signature

export declare const Ucs03: {
readonly "@unionlabs/sdk/Ucs03/TokenOrder": Data.Case.Constructor<TokenOrderV1 | TokenOrderV2, "_tag">
readonly "@unionlabs/sdk/Ucs03/Instruction": Data.Case.Constructor<Instruction, "_tag">
readonly "@unionlabs/sdk/Ucs03/Forward": Data.Case.Constructor<Forward, "_tag">
readonly "@unionlabs/sdk/Ucs03/Call": Data.Case.Constructor<Call, "_tag">
readonly "@unionlabs/sdk/Ucs03/Batch": Data.Case.Constructor<Batch, "_tag">
readonly $is: <Tag>(
tag: Tag
) => (
u: unknown
) => u is Extract<TokenOrderV1 | TokenOrderV2 | Instruction | Forward | Call | Batch, { readonly _tag: Tag }>
readonly $match: {
<Cases>(
cases: Cases
): (
value: TokenOrderV1 | TokenOrderV2 | Instruction | Forward | Call | Batch
) => Unify<
ReturnType<
Cases[
| "@unionlabs/sdk/Ucs03/TokenOrder"
| "@unionlabs/sdk/Ucs03/Instruction"
| "@unionlabs/sdk/Ucs03/Forward"
| "@unionlabs/sdk/Ucs03/Call"
| "@unionlabs/sdk/Ucs03/Batch"]
>
>
<Cases>(
value: TokenOrderV1 | TokenOrderV2 | Instruction | Forward | Call | Batch,
cases: Cases
): Unify<
ReturnType<
Cases[
| "@unionlabs/sdk/Ucs03/TokenOrder"
| "@unionlabs/sdk/Ucs03/Instruction"
| "@unionlabs/sdk/Ucs03/Forward"
| "@unionlabs/sdk/Ucs03/Call"
| "@unionlabs/sdk/Ucs03/Batch"]
>
>
}
}

Source: src/Ucs03.ts:1454

Added in v2.0.0

Signature

export type Ucs03 = typeof Schema.Type

Source: src/Ucs03.ts:1459

Added in v2.0.0

Signature

export declare const Schema: S.Union<
[typeof Instruction, typeof Forward, typeof Call, typeof Batch, S.Union<[typeof TokenOrderV1, typeof TokenOrderV2]>]
>

Source: src/Ucs03.ts:1448

Added in v2.0.0

Signature

export declare const TokenMetadataKind: S.Union<[S.Literal<[0]>, S.Literal<[1]>, S.Literal<[2]>, S.Literal<[3]>]>

Source: src/Ucs03.ts:1133

Added in v2.0.0

Signature

export declare const TokenOrder: S.Union<[typeof TokenOrderV1, typeof TokenOrderV2]>

Source: src/Ucs03.ts:1410

Added in v2.0.0

Signature

export declare const BatchFromHex: S.transformOrFail<S.TemplateLiteral<`0x${string}`>, typeof Batch, never>

Source: src/Ucs03.ts:1545

Added in v2.0.0

Signature

export declare const CallFromHex: S.transformOrFail<S.TemplateLiteral<`0x${string}`>, typeof Call, never>

Source: src/Ucs03.ts:1517

Added in v2.0.0

Signature

export declare const ForwardFromHex: S.transformOrFail<S.TemplateLiteral<`0x${string}`>, typeof Forward, never>

Source: src/Ucs03.ts:1465

Added in v2.0.0

Signature

export declare const InstructionFromHex: S.transformOrFail<S.TemplateLiteral<`0x${string}`>, typeof Instruction, never>

Source: src/Ucs03.ts:1655

Added in v2.0.0

Signature

export declare const PacketFromHex: S.transformOrFail<S.TemplateLiteral<`0x${string}`>, typeof Packet, never>

Source: src/Ucs03.ts:1849

Added in v2.0.0

Signature

export declare const SolverMetadataFromHex: S.transformOrFail<
S.TemplateLiteral<`0x${string}`>,
S.Struct<{ solverAddress: S.TemplateLiteral<`0x${string}`>; metadata: S.TemplateLiteral<`0x${string}`> }>,
never
>

Source: src/Ucs03.ts:1696

Added in v2.0.0

Signature

export declare const TokenOrderFromHex: S.transformOrFail<
S.TemplateLiteral<`0x${string}`>,
S.Union<[typeof TokenOrderV1, typeof TokenOrderV2]>,
never
>

Source: src/Ucs03.ts:1595

Added in v2.0.0

Signature

export declare const Ucs03FromHex: S.Union<
[
S.transformOrFail<S.TemplateLiteral<`0x${string}`>, typeof Batch, never>,
S.transformOrFail<S.TemplateLiteral<`0x${string}`>, S.Union<[typeof TokenOrderV1, typeof TokenOrderV2]>, never>,
S.transformOrFail<S.TemplateLiteral<`0x${string}`>, typeof Forward, never>,
S.transformOrFail<S.TemplateLiteral<`0x${string}`>, typeof Call, never>,
S.transformOrFail<S.TemplateLiteral<`0x${string}`>, typeof Instruction, never>
]
>

Source: src/Ucs03.ts:1732

Added in v2.0.0

Signature

export declare const Ucs03FromHexWithoutInstruction: S.Union<
[
S.transformOrFail<S.TemplateLiteral<`0x${string}`>, typeof Batch, never>,
S.transformOrFail<S.TemplateLiteral<`0x${string}`>, S.Union<[typeof TokenOrderV1, typeof TokenOrderV2]>, never>,
S.transformOrFail<S.TemplateLiteral<`0x${string}`>, typeof Forward, never>,
S.transformOrFail<S.TemplateLiteral<`0x${string}`>, typeof Call, never>
]
>

Source: src/Ucs03.ts:1765

Added in v2.0.0

Signature

export declare const Ucs03FromInstruction: S.transformOrFail<
typeof Instruction,
S.Union<
[typeof Instruction, typeof Forward, typeof Call, typeof Batch, S.Union<[typeof TokenOrderV1, typeof TokenOrderV2]>]
>,
never
>

Source: src/Ucs03.ts:1793

Added in v2.0.0

  • encode: wraps a UCS03 schema with an instruction

Signature

export declare const Ucs03WithInstructionFromHex: S.transform<
S.transformOrFail<S.TemplateLiteral<`0x${string}`>, typeof Instruction, never>,
S.transformOrFail<
typeof Instruction,
S.Union<
[
typeof Instruction,
typeof Forward,
typeof Call,
typeof Batch,
S.Union<[typeof TokenOrderV1, typeof TokenOrderV2]>
]
>,
never
>
>

Source: src/Ucs03.ts:1825

Added in v2.0.0

Signature

export type Ucs03WithInstructionFromHex = typeof Ucs03WithInstructionFromHex.Type

Source: src/Ucs03.ts:1833

Added in v2.0.0