The data structures for tool keymaps and presets were different, use the same structure and expose function publicly.