How do I fetch a list of available page attributes?

Permalink
I want to add a dropdown to a block edit form that allows user to choose the attribute [handle] that my code will work with in the controller.

How do I fetch a list of available attributes (and even better, by type ex. "select").

adavis