Let start with a multi controlled Toffoli gate. Looking at the matrix representation (in the binary base), you easily see $$ \pmatrix{ 1& 0& 0& 0& 0& 0& 0& 0\\ 0& 1& 0& 0& 0& 0& 0& 0\\ 0& 0& 1& 0& 0& 0& 0& 0\\ 0& 0& 0& 1& 0& 0& 0& 0\\ 0& 0& 0& 0& 1& 0& 0& 0\\ 0& 0& 0& 0& 0& 1& 0& 0\\ 0& 0& 0& 0& 0& 0& 0& 1\\ 0& 0& 0& 0& 0& 0& 1& 0\\ } $$ that it only switches two states: $|111\rangle$ and $|110\rangle$. Conjugating with some $X$ gates on qubit 1 and 2 gives three more pair switches. Similar for the Fredkin gate which switches $|110\rangle$ and $|101\rangle$.
How to generate any of the $8\cdot 7 $ possible two level switches for three qubits out of elementary gates?
And how for general $n$?
For the three qubit case, I tried to e.g. construct a switch of $|000\rangle \leftrightarrow |111\rangle$ by mapping $|110\rangle \mapsto |000\rangle$. To achieve that I conjugated the Toffoli with the following sub circuit: two CNOTs conjugated by some $X$.
It worked! I could even construct a switch of $|000\rangle \leftrightarrow |011\rangle$ by extending the above subcircuit (with another Toffoli) the maps $|111\rangle \mapsto |011\rangle$.
But I'm not sure whether this approach is valid or if I had just a lucky punch...