I'm not sure this should be part of the base class, since we might want to make an extension that exports a dynamically determined set of keys or something like that.