By using traits as argument types, a contract can interact with any other contract that satisfies the trait interface, enabling decentralized exchanges and aggregators.
clarity (define-public (swap (token <nft-trait>)) (contract-call! token transfer ...))