viem
Version:
1,816 lines (1,815 loc) • 259 kB
TypeScript
export declare const accountKeychain: readonly [{
readonly name: "authorizeKey";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "keyId";
}, {
readonly type: "uint8";
readonly name: "signatureType";
}, {
readonly type: "uint64";
readonly name: "expiry";
}, {
readonly type: "bool";
readonly name: "enforceLimits";
}, {
readonly type: "tuple[]";
readonly name: "limits";
readonly components: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint256";
readonly name: "amount";
}];
}];
readonly outputs: readonly [];
}, {
readonly name: "authorizeKey";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "keyId";
}, {
readonly type: "uint8";
readonly name: "signatureType";
}, {
readonly type: "tuple";
readonly name: "config";
readonly components: readonly [{
readonly type: "uint64";
readonly name: "expiry";
}, {
readonly type: "bool";
readonly name: "enforceLimits";
}, {
readonly type: "tuple[]";
readonly name: "limits";
readonly components: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint256";
readonly name: "amount";
}, {
readonly type: "uint64";
readonly name: "period";
}];
}, {
readonly type: "bool";
readonly name: "allowAnyCalls";
}, {
readonly type: "tuple[]";
readonly name: "allowedCalls";
readonly components: readonly [{
readonly type: "address";
readonly name: "target";
}, {
readonly type: "tuple[]";
readonly name: "selectorRules";
readonly components: readonly [{
readonly type: "bytes4";
readonly name: "selector";
}, {
readonly type: "address[]";
readonly name: "recipients";
}];
}];
}];
}];
readonly outputs: readonly [];
}, {
readonly name: "authorizeKey";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "keyId";
}, {
readonly type: "uint8";
readonly name: "signatureType";
}, {
readonly type: "tuple";
readonly name: "config";
readonly components: readonly [{
readonly type: "uint64";
readonly name: "expiry";
}, {
readonly type: "bool";
readonly name: "enforceLimits";
}, {
readonly type: "tuple[]";
readonly name: "limits";
readonly components: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint256";
readonly name: "amount";
}, {
readonly type: "uint64";
readonly name: "period";
}];
}, {
readonly type: "bool";
readonly name: "allowAnyCalls";
}, {
readonly type: "tuple[]";
readonly name: "allowedCalls";
readonly components: readonly [{
readonly type: "address";
readonly name: "target";
}, {
readonly type: "tuple[]";
readonly name: "selectorRules";
readonly components: readonly [{
readonly type: "bytes4";
readonly name: "selector";
}, {
readonly type: "address[]";
readonly name: "recipients";
}];
}];
}];
}, {
readonly type: "bytes32";
readonly name: "witness";
}];
readonly outputs: readonly [];
}, {
readonly name: "authorizeAdminKey";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "keyId";
}, {
readonly type: "uint8";
readonly name: "signatureType";
}, {
readonly type: "bytes32";
readonly name: "witness";
}];
readonly outputs: readonly [];
}, {
readonly name: "burnKeyAuthorizationWitness";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "witness";
}];
readonly outputs: readonly [];
}, {
readonly name: "revokeKey";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "keyId";
}];
readonly outputs: readonly [];
}, {
readonly name: "updateSpendingLimit";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "keyId";
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint256";
readonly name: "newLimit";
}];
readonly outputs: readonly [];
}, {
readonly name: "setAllowedCalls";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "keyId";
}, {
readonly type: "tuple[]";
readonly name: "scopes";
readonly components: readonly [{
readonly type: "address";
readonly name: "target";
}, {
readonly type: "tuple[]";
readonly name: "selectorRules";
readonly components: readonly [{
readonly type: "bytes4";
readonly name: "selector";
}, {
readonly type: "address[]";
readonly name: "recipients";
}];
}];
}];
readonly outputs: readonly [];
}, {
readonly name: "removeAllowedCalls";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "keyId";
}, {
readonly type: "address";
readonly name: "target";
}];
readonly outputs: readonly [];
}, {
readonly name: "getKey";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "address";
readonly name: "keyId";
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly components: readonly [{
readonly type: "uint8";
readonly name: "signatureType";
}, {
readonly type: "address";
readonly name: "keyId";
}, {
readonly type: "uint64";
readonly name: "expiry";
}, {
readonly type: "bool";
readonly name: "enforceLimits";
}, {
readonly type: "bool";
readonly name: "isRevoked";
}];
}];
}, {
readonly name: "getRemainingLimit";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "address";
readonly name: "keyId";
}, {
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [{
readonly type: "uint256";
readonly name: "remaining";
}];
}, {
readonly name: "getRemainingLimitWithPeriod";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "address";
readonly name: "keyId";
}, {
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [{
readonly type: "uint256";
readonly name: "remaining";
}, {
readonly type: "uint64";
readonly name: "periodEnd";
}];
}, {
readonly name: "getAllowedCalls";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "address";
readonly name: "keyId";
}];
readonly outputs: readonly [{
readonly type: "bool";
readonly name: "isScoped";
}, {
readonly type: "tuple[]";
readonly name: "scopes";
readonly components: readonly [{
readonly type: "address";
readonly name: "target";
}, {
readonly type: "tuple[]";
readonly name: "selectorRules";
readonly components: readonly [{
readonly type: "bytes4";
readonly name: "selector";
}, {
readonly type: "address[]";
readonly name: "recipients";
}];
}];
}];
}, {
readonly name: "isKeyAuthorizationWitnessBurned";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "bytes32";
readonly name: "witness";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "isAdminKey";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "address";
readonly name: "keyId";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "getTransactionKey";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "KeyAuthorized";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "publicKey";
readonly indexed: true;
}, {
readonly type: "uint8";
readonly name: "signatureType";
}, {
readonly type: "uint64";
readonly name: "expiry";
}];
}, {
readonly name: "AdminKeyAuthorized";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "publicKey";
readonly indexed: true;
}];
}, {
readonly name: "KeyRevoked";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "publicKey";
readonly indexed: true;
}];
}, {
readonly name: "SpendingLimitUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "publicKey";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "newLimit";
}];
}, {
readonly name: "AccessKeySpend";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "publicKey";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "amount";
}, {
readonly type: "uint256";
readonly name: "remainingLimit";
}];
}, {
readonly name: "KeyAuthorizationWitness";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "bytes32";
readonly name: "witness";
readonly indexed: true;
}];
}, {
readonly name: "KeyAuthorizationWitnessBurned";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "bytes32";
readonly name: "witness";
readonly indexed: true;
}];
}, {
readonly name: "UnauthorizedCaller";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "KeyAlreadyExists";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "KeyNotFound";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "KeyExpired";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "SpendingLimitExceeded";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidSpendingLimit";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidSignatureType";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ZeroPublicKey";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ExpiryInPast";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "KeyAlreadyRevoked";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "SignatureTypeMismatch";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "uint8";
readonly name: "expected";
}, {
readonly type: "uint8";
readonly name: "actual";
}];
}, {
readonly name: "CallNotAllowed";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidCallScope";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidKeyId";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidKeyAuthorizationWitness";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "KeyAuthorizationWitnessAlreadyBurned";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "LegacyAuthorizeKeySelectorChanged";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "bytes4";
readonly name: "newSelector";
}];
}];
export declare const addressRegistry: readonly [{
readonly name: "registerVirtualMaster";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "salt";
}];
readonly outputs: readonly [{
readonly type: "bytes4";
readonly name: "masterId";
}];
}, {
readonly name: "getMaster";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "bytes4";
readonly name: "masterId";
}];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "resolveRecipient";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "to";
}];
readonly outputs: readonly [{
readonly type: "address";
readonly name: "effectiveRecipient";
}];
}, {
readonly name: "resolveVirtualAddress";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "virtualAddr";
}];
readonly outputs: readonly [{
readonly type: "address";
readonly name: "master";
}];
}, {
readonly name: "isVirtualAddress";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "addr";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "decodeVirtualAddress";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "addr";
}];
readonly outputs: readonly [{
readonly type: "bool";
readonly name: "isVirtual";
}, {
readonly type: "bytes4";
readonly name: "masterId";
}, {
readonly type: "bytes6";
readonly name: "userTag";
}];
}, {
readonly name: "isImplicitlyApproved";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "addr";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "MasterRegistered";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "bytes4";
readonly name: "masterId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "masterAddress";
readonly indexed: true;
}];
}, {
readonly name: "MasterIdCollision";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "master";
}];
}, {
readonly name: "InvalidMasterAddress";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ProofOfWorkFailed";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "VirtualAddressUnregistered";
readonly type: "error";
readonly inputs: readonly [];
}];
export declare const nonce: readonly [{
readonly name: "getNonce";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "uint256";
readonly name: "nonceKey";
}];
readonly outputs: readonly [{
readonly type: "uint64";
readonly name: "nonce";
}];
}, {
readonly name: "NonceIncremented";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "nonceKey";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "newNonce";
}];
}, {
readonly name: "ProtocolNonceNotSupported";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidNonceKey";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "NonceOverflow";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ExpiringNonceReplay";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ExpiringNonceSetFull";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidExpiringNonceExpiry";
readonly type: "error";
readonly inputs: readonly [];
}];
export declare const receivePolicyGuard: readonly [{
readonly name: "balanceOf";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "bytes";
readonly name: "receipt";
}];
readonly outputs: readonly [{
readonly type: "uint256";
readonly name: "amount";
}];
}, {
readonly name: "claim";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "to";
}, {
readonly type: "bytes";
readonly name: "receipt";
}];
readonly outputs: readonly [];
}, {
readonly name: "burnBlockedReceipt";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "bytes";
readonly name: "receipt";
}];
readonly outputs: readonly [];
}, {
readonly name: "TransferBlocked";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "receiver";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "blockedNonce";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "amount";
}, {
readonly type: "uint8";
readonly name: "receiptVersion";
}, {
readonly type: "bytes";
readonly name: "receipt";
}];
}, {
readonly name: "ReceiptClaimed";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "receiver";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "blockedNonce";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "blockedAt";
}, {
readonly type: "uint8";
readonly name: "receiptVersion";
}, {
readonly type: "address";
readonly name: "originator";
}, {
readonly type: "address";
readonly name: "recipient";
}, {
readonly type: "address";
readonly name: "recoveryAuthority";
}, {
readonly type: "address";
readonly name: "caller";
}, {
readonly type: "address";
readonly name: "to";
}, {
readonly type: "uint256";
readonly name: "amount";
}];
}, {
readonly name: "ReceiptBurned";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "receiver";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "blockedNonce";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "blockedAt";
}, {
readonly type: "uint8";
readonly name: "receiptVersion";
}, {
readonly type: "address";
readonly name: "originator";
}, {
readonly type: "address";
readonly name: "recipient";
}, {
readonly type: "address";
readonly name: "recoveryAuthority";
}, {
readonly type: "address";
readonly name: "caller";
}, {
readonly type: "uint256";
readonly name: "amount";
}];
}, {
readonly name: "InvalidReceipt";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidClaimAddress";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "UnauthorizedClaimer";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "AddressReserved";
readonly type: "error";
readonly inputs: readonly [];
}];
export declare const signatureVerifier: readonly [{
readonly name: "recover";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "hash";
}, {
readonly type: "bytes";
readonly name: "signature";
}];
readonly outputs: readonly [{
readonly type: "address";
readonly name: "signer";
}];
}, {
readonly name: "verify";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "signer";
}, {
readonly type: "bytes32";
readonly name: "hash";
}, {
readonly type: "bytes";
readonly name: "signature";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "verifyKeychain";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "bytes32";
readonly name: "hash";
}, {
readonly type: "bytes";
readonly name: "signature";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "verifyKeychainAdmin";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "bytes32";
readonly name: "hash";
}, {
readonly type: "bytes";
readonly name: "signature";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "InvalidFormat";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidSignature";
readonly type: "error";
readonly inputs: readonly [];
}];
export declare const stablecoinDex: readonly [{
readonly name: "createPair";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "base";
}];
readonly outputs: readonly [{
readonly type: "bytes32";
readonly name: "key";
}];
}, {
readonly name: "place";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "bool";
readonly name: "isBid";
}, {
readonly type: "int16";
readonly name: "tick";
}];
readonly outputs: readonly [{
readonly type: "uint128";
readonly name: "orderId";
}];
}, {
readonly name: "placeFlip";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "bool";
readonly name: "isBid";
}, {
readonly type: "int16";
readonly name: "tick";
}, {
readonly type: "int16";
readonly name: "flipTick";
}];
readonly outputs: readonly [{
readonly type: "uint128";
readonly name: "orderId";
}];
}, {
readonly name: "cancel";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "orderId";
}];
readonly outputs: readonly [];
}, {
readonly name: "cancelStaleOrder";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "orderId";
}];
readonly outputs: readonly [];
}, {
readonly name: "swapExactAmountIn";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "tokenIn";
}, {
readonly type: "address";
readonly name: "tokenOut";
}, {
readonly type: "uint128";
readonly name: "amountIn";
}, {
readonly type: "uint128";
readonly name: "minAmountOut";
}];
readonly outputs: readonly [{
readonly type: "uint128";
readonly name: "amountOut";
}];
}, {
readonly name: "swapExactAmountOut";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "tokenIn";
}, {
readonly type: "address";
readonly name: "tokenOut";
}, {
readonly type: "uint128";
readonly name: "amountOut";
}, {
readonly type: "uint128";
readonly name: "maxAmountIn";
}];
readonly outputs: readonly [{
readonly type: "uint128";
readonly name: "amountIn";
}];
}, {
readonly name: "quoteSwapExactAmountIn";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "tokenIn";
}, {
readonly type: "address";
readonly name: "tokenOut";
}, {
readonly type: "uint128";
readonly name: "amountIn";
}];
readonly outputs: readonly [{
readonly type: "uint128";
readonly name: "amountOut";
}];
}, {
readonly name: "quoteSwapExactAmountOut";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "tokenIn";
}, {
readonly type: "address";
readonly name: "tokenOut";
}, {
readonly type: "uint128";
readonly name: "amountOut";
}];
readonly outputs: readonly [{
readonly type: "uint128";
readonly name: "amountIn";
}];
}, {
readonly name: "balanceOf";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "user";
}, {
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [{
readonly type: "uint128";
}];
}, {
readonly name: "withdraw";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint128";
readonly name: "amount";
}];
readonly outputs: readonly [];
}, {
readonly name: "getOrder";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "orderId";
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly components: readonly [{
readonly type: "uint128";
readonly name: "orderId";
}, {
readonly type: "address";
readonly name: "maker";
}, {
readonly type: "bytes32";
readonly name: "bookKey";
}, {
readonly type: "bool";
readonly name: "isBid";
}, {
readonly type: "int16";
readonly name: "tick";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "uint128";
readonly name: "remaining";
}, {
readonly type: "uint128";
readonly name: "prev";
}, {
readonly type: "uint128";
readonly name: "next";
}, {
readonly type: "bool";
readonly name: "isFlip";
}, {
readonly type: "int16";
readonly name: "flipTick";
}];
}];
}, {
readonly name: "getTickLevel";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "base";
}, {
readonly type: "int16";
readonly name: "tick";
}, {
readonly type: "bool";
readonly name: "isBid";
}];
readonly outputs: readonly [{
readonly type: "uint128";
readonly name: "head";
}, {
readonly type: "uint128";
readonly name: "tail";
}, {
readonly type: "uint128";
readonly name: "totalLiquidity";
}];
}, {
readonly name: "pairKey";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "tokenA";
}, {
readonly type: "address";
readonly name: "tokenB";
}];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "nextOrderId";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint128";
}];
}, {
readonly name: "books";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "pairKey";
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly components: readonly [{
readonly type: "address";
readonly name: "base";
}, {
readonly type: "address";
readonly name: "quote";
}, {
readonly type: "int16";
readonly name: "bestBidTick";
}, {
readonly type: "int16";
readonly name: "bestAskTick";
}];
}];
}, {
readonly name: "MIN_TICK";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "int16";
}];
}, {
readonly name: "MAX_TICK";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "int16";
}];
}, {
readonly name: "TICK_SPACING";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "int16";
}];
}, {
readonly name: "PRICE_SCALE";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint32";
}];
}, {
readonly name: "MIN_ORDER_AMOUNT";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint128";
}];
}, {
readonly name: "MIN_PRICE";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint32";
}];
}, {
readonly name: "MAX_PRICE";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint32";
}];
}, {
readonly name: "tickToPrice";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [{
readonly type: "int16";
readonly name: "tick";
}];
readonly outputs: readonly [{
readonly type: "uint32";
readonly name: "price";
}];
}, {
readonly name: "priceToTick";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [{
readonly type: "uint32";
readonly name: "price";
}];
readonly outputs: readonly [{
readonly type: "int16";
readonly name: "tick";
}];
}, {
readonly name: "PairCreated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "key";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "base";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "quote";
readonly indexed: true;
}];
}, {
readonly name: "OrderPlaced";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "orderId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "maker";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "bool";
readonly name: "isBid";
}, {
readonly type: "int16";
readonly name: "tick";
}, {
readonly type: "bool";
readonly name: "isFlipOrder";
}, {
readonly type: "int16";
readonly name: "flipTick";
}];
}, {
readonly name: "OrderFilled";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "orderId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "maker";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "taker";
readonly indexed: true;
}, {
readonly type: "uint128";
readonly name: "amountFilled";
}, {
readonly type: "bool";
readonly name: "partialFill";
}];
}, {
readonly name: "OrderFlipped";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "orderId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "maker";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "bool";
readonly name: "isBid";
}, {
readonly type: "int16";
readonly name: "tick";
}, {
readonly type: "int16";
readonly name: "flipTick";
}];
}, {
readonly name: "FlipFailed";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "orderId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "maker";
readonly indexed: true;
}, {
readonly type: "bytes4";
readonly name: "reason";
}];
}, {
readonly name: "OrderCancelled";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "orderId";
readonly indexed: true;
}];
}, {
readonly name: "Unauthorized";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "PairDoesNotExist";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "PairAlreadyExists";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "OrderDoesNotExist";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "IdenticalTokens";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidToken";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "TickOutOfBounds";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "int16";
readonly name: "tick";
}];
}, {
readonly name: "InvalidTick";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidFlipTick";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InsufficientBalance";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InsufficientLiquidity";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InsufficientOutput";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "MaxInputExceeded";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "BelowMinimumOrderSize";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "amount";
}];
}, {
readonly name: "InvalidBaseToken";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "OrderNotStale";
readonly type: "error";
readonly inputs: readonly [];
}];
export declare const tip20: readonly [{
readonly name: "name";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "string";
}];
}, {
readonly name: "symbol";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "string";
}];
}, {
readonly name: "decimals";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint8";
}];
}, {
readonly name: "totalSupply";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "quoteToken";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "nextQuoteToken";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "balanceOf";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "transfer";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "to";
}, {
readonly type: "uint256";
readonly name: "amount";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "approve";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "spender";
}, {
readonly type: "uint256";
readonly name: "amount";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "allowance";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "owner";
}, {
readonly type: "address";
readonly name: "spender";
}];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "transferFrom";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "from";
}, {
readonly type: "address";
readonly name: "to";
}, {
readonly type: "uint256";
readonly name: "amount";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "mint";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "to";
}, {
readonly type: "uint256";
readonly name: "amount";
}];
readonly outputs: readonly [];
}, {
readonly name: "burn";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "amount";
}];
readonly outputs: readonly [];
}, {
readonly name: "currency";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "string";
}];
}, {
readonly name: "supplyCap";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "paused";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "transferPolicyId";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "logoURI";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "string";
}];
}, {
readonly name: "setLogoURI";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "string";
readonly name: "newLogoURI";
}];
readonly outputs: readonly [];
}, {
readonly name: "burnBlocked";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "from";
}, {
readonly type: "uint256";
readonly name: "amount";
}];
readonly outputs: readonly [];
}, {
readonly name: "mintWithMemo";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "to";
}, {
readonly type: "uint256";
readonly name: "amount";
}, {
readonly type: "bytes32";
readonly name: "memo";
}];
readonly outputs: readonly [];
}, {
readonly name: "burnWithMemo";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "amount";
}, {
readonly type: "bytes32";
readonly name: "memo";
}];
readonly outputs: readonly [];
}, {
readonly name: "transferWithMemo";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "to";
}, {
readonly type: "uint256";
readonly name: "amount";
}, {
readonly type: "bytes32";
readonly name: "memo";
}];
readonly outputs: readonly [];
}, {
readonly name: "transferFromWithMemo";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "from";
}, {
readonly type: "address";
readonly name: "to";
}, {
readonly type: "uint256";
readonly name: "amount";
}, {
readonly type: "bytes32";
readonly name: "memo";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "changeTransferPolicyId";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "newPolicyId";
}];
readonly outputs: readonly [];
}, {
readonly name: "setSupplyCap";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "newSupplyCap";
}];
readonly outputs: readonly [];
}, {
readonly name: "pause";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [];
readonly outputs: readonly [];
}, {
readonly name: "unpause";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [];
readonly outputs: readonly [];
}, {
readonly name: "setNextQuoteToken";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "newQuoteToken";
}];