DFlow offers two forms of swapping: imperative and declarative swaps. Imperative swaps expose the route plan to the trader prior to signing the transaction. Declarative swaps allow traders to declare an intent to swap, and then use a filler to execute the swap.