Shared helper
src/test/interface.sol
The dataset's shared interface declarations: token, router, pool, lending and cheat-code interfaces that its tests import. It declares function signatures only and holds no logic. It is long, so it is split into collapsed sections you open as needed.
Code
Shown in full with its original header, as part of the open dataset (repository licence Apache-2.0, see NOTICE). This file's own SPDX header reads UNLICENSED. It declares interfaces and helpers only. ThreatWire has not executed this code. It is shown for defensive research, as published in the public reference dataset. Check licences, verify the blob against the pinned commit, and do not run it against live contracts without your own review.
CheatCodeslines 1–262
IERC20, ICErc20Delegatelines 263–482
ERC1820Registry, IUniswapV2Factory, IUniswapV2Pair, IBacon, +2 morelines 483–623
IACOWriter, IRevestlines 624–789
AnyswapV4Router, WETH, AnyswapV1ERC20, IERC1820Registry, +2 morelines 790–932
Uni_Pair_V2, Uni_Router_V3lines 933–1081
Uni_Router_V2lines 1082–1263
WETH9, crETHlines 1264–1444
crAMPlines 1445–1612
AMPlines 1613–1775
IUSDC, IBaseV1Router01, IDeiLenderSolidex, ISSPv4, +6 morelines 1776–2102
IPancakeCallee, IPancakePair, IPancakeRouterlines 2103–2378
GymSinglePool, GymToken, ILiquidityMigrationV2, WBNB, +2 morelines 2379–2659
Monoswaplines 2660–2890
IDMMExchangeRouter, MonoXPoollines 2891–3062
USDClines 3063–3251
MonoToken, IOneRingVault, ICEtherDelegatelines 3252–3405
IUnitroller, IBalancerVault, ICointrollerlines 3406–3814
IPriceFeed, IRTokenlines 3815–4020
ISimplePriceOracle, ITreasureMarketplaceBuyer, IERC721, IERC721Enumerable, +3 morelines 4021–4163
IRouter, ILendingPool, ILendingPoolAddressesProviderlines 4164–4334
AToken, VyperContract, IAggregator, CErc20Interface, +6 morelines 4335–4642
ICurvePool, IBeanStalk, TransferHelperlines 4643–4793
Clones, INOVO, IBuildFinance, MultiSig, +2 morelines 4794–4935
ISushiSwap, IOmni, DataTypes, ILib, +11 morelines 4936–5084
IGrimBoostVault, IFlashLoanRecipient, IBeethovenVault, IRedactedCartelSafeERC20, +10 morelines 5085–5261
IQuoter, IPoolInitializer, INonfungiblePositionManager, IERC4626lines 5262–5430
IPresaleV4, FixedPointMathLiblines 5431–5669
SafeTransferLib, Nonceslines 5670–5824
IPancakeV3PoolActions, IPancakeV3PoolDerivedState, IPancakeV3PoolImmutables, IPancakeV3PoolState, +1 morelines 5825–5973
IPancakeV3Pool, IPancakeV3Factory, ILoanTokenLogicWethlines 5974–6114
IMorphoBuleFlashLoan, IUniswapV3Flash, IMakerDaoFlashlines 6115–6133
Components and what they do
- Interface declarations for tokens, routers, pools and lending markets
- The Foundry cheat-code interface used by the tests
Related files
24 linkedImports used by this file, other reproduction files from the same month or protocol in the dataset, and patterns for the same incident. Each opens in our reader with verbatim source.
- src/test/2025-08/0x8d2e_exp.solImports this file · 45 lines
- src/test/2025-08/0xf340_exp.solImports this file · 72 lines
- src/test/2025-01/98Token_exp.solImports this file · 53 lines
- src/test/2024-08/AAVE_Repay_Adapter.solImports this file · 363 lines
- src/test/2025-06/AAVEBoost_exp.solImports this file · 78 lines
- src/test/2026-04/AaveRebalancerCreditDelegation_exp.solImports this file · 126 lines
- src/test/2025-08/ABCCApp_exp.solImports this file · 111 lines
- src/test/2025-07/ActivePoolScrvUsdUrgentRedemption_exp.solImports this file · 200 lines
- src/test/2025-07/ActivePoolUrgentRedemption_exp.solImports this file · 194 lines
- src/test/2024-02/ADC_exp.solImports this file · 105 lines
- src/test/2024-02/AffineDeFi_exp.solImports this file · 73 lines
- src/test/2026-06/AIDC_exp.solImports this file · 198 lines
- src/test/2025-04/AIRWA_exp.solImports this file · 105 lines
- src/test/2026-06/AISOTHPresale_exp.solImports this file · 125 lines
- src/test/2025-01/AIXBTForcedSwap_exp.solImports this file · 260 lines
- src/test/2024-10/AIZPTToken_exp.solImports this file · 72 lines
- src/test/2024-11/Ak1111_exp.solImports this file · 56 lines
- src/test/2026-03/AlkemiEarn_exp.solImports this file · 91 lines
- src/test/2025-03/Alkimiya_io_exp.solImports this file · 145 lines
- src/test/2024-03/ALP_exp.solImports this file · 84 lines
- src/test/2026-06/AmbientCrocSwapDex_exp.solImports this file · 262 lines
- src/test/2025-04/AmpKashi_exp.solImports this file · 267 lines
- src/test/2025-07/AnyswapWETHPermit_exp.solImports this file · 127 lines
- src/test/2024-06/APEMAGA_exp.solImports this file · 66 lines
Also imports external libraries: forge-std/Test.sol.
File record
- Name
- interface.sol
- Path
- src/test/interface.sol
- Repository
- SunWeb3Sec/DeFiHackLabs (licence Apache-2.0)
- Commit
- 7363f76db51f0fea97f8e659b20ee8bdc5fbca25
- Blob
- 9120f4017fc9a5684f3d864fe0fad2ecf9d87185
- Language
- Solidity
- Size
- 6133 lines
- Licence
- file header UNLICENSED; repository Apache-2.0
- Retrieved
- 2026-10-19
Provenance
Path src/test/interface.sol, commit 7363f76db51f0fea97f8e659b20ee8bdc5fbca25, blob 9120f4017fc9a5684f3d864fe0fad2ecf9d87185, retrieved 2026-10-19. Verbatim copy including the SPDX header, read with git show. No edits. ThreatWire has never executed this file. Reference: source file at the pinned commit.