// SPDX-License-Identifier: MIT pragma solidity ^0.8.20; import "./ICoupon.sol"; /// @title ICompliance — 合规合约接口 /// @notice 定义 OFAC、KYC、Travel Rule 检查的外部调用接口 interface ICompliance { function isBlacklisted(address account) external view returns (bool); function isFrozen(address account) external view returns (bool); function getKycLevel(address account) external view returns (uint8); function requireKycLevel(address account, uint8 requiredLevel) external view; function preTradeCheck( address buyer, address seller, uint256 amount, ICoupon.CouponType couponType ) external view; function p2pComplianceCheck( address sender, address receiver, uint256 amount ) external view; function recordTravelRule( address sender, address receiver, bytes32 senderInfoHash, bytes32 receiverInfoHash ) external; }