from typing import Dict, List

default_shortcuts: Dict[str, List[str]] = {
    'napari:toggle_console_visibility': ['Control-Shift-C'],
    'napari:reset_scroll_progress': ['Control'],
    'napari:toggle_ndisplay': ['Control-Y'],
    'napari:toggle_theme': ['Control-Shift-T'],
    'napari:reset_view': ['Control-R'],
    'napari:delete_selected_layers': ['Control-Delete'],
    'napari:show_shortcuts': ['Control-Alt-/'],
    'napari:increment_dims_left': ['Left'],
    'napari:increment_dims_right': ['Right'],
    'napari:focus_axes_up': ['Alt-Up'],
    'napari:focus_axes_down': ['Alt-Down'],
    'napari:roll_axes': ['Control-E'],
    'napari:transpose_axes': ['Control-T'],
    'napari:toggle_grid': ['Control-G'],
    'napari:toggle_selected_visibility': ['V'],
    'napari:hold_for_pan_zoom': ['Space'],
    'napari:activate_labels_erase_mode': ['1'],
    'napari:activate_labels_paint_mode': ['2'],
    'napari:activate_labels_fill_mode': ['3'],
    'napari:activate_labels_picker_mode': ['4'],
    'napari:activate_labels_pan_zoom_mode': ['5'],
    'napari:new_label': ['M'],
    'napari:decrease_label_id': ['-'],
    'napari:increase_label_id': ['='],
    'napari:decrease_brush_size': ['['],
    'napari:increase_brush_size': [']'],
    'napari:toggle_preserve_labels': ['P'],
    'napari:activate_points_add_mode': ['2'],
    'napari:activate_points_select_mode': ['3'],
    'napari:activate_points_pan_zoom_mode': ['4'],
    'napari:activate_points_transform_mode': ['5'],
    'napari:select_all_in_slice': ['A', 'Control-A'],
    'napari:select_all_data': ['Shift-A'],
    'napari:delete_selected_points': ['Backspace', 'Delete', '1'],
    'napari:activate_add_rectangle_mode': ['R'],
    'napari:activate_add_ellipse_mode': ['E'],
    'napari:activate_add_line_mode': ['L'],
    'napari:activate_add_path_mode': ['T'],
    'napari:activate_add_polygon_mode': ['P'],
    'napari:activate_add_polygon_lasso_mode': ['Shift-P'],
    'napari:activate_direct_mode': ['4'],
    'napari:activate_select_mode': ['5'],
    'napari:activate_shapes_pan_zoom_mode': ['6'],
    'napari:activate_shapes_transform_mode': ['2'],
    'napari:activate_vertex_insert_mode': ['2'],
    'napari:activate_vertex_remove_mode': ['1'],
    'napari:copy_selected_shapes': ['Control-C'],
    'napari:paste_shape': ['Control-V'],
    'napari:move_shapes_selection_to_front': ['f'],
    'napari:move_shapes_selection_to_back': ['b'],
    'napari:select_all_shapes': ['A'],
    'napari:delete_selected_shapes': ['Backspace', 'Delete', '3'],
    'napari:finish_drawing_shape': ['Escape'],
    # image
    'napari:activate_image_pan_zoom_mode': ['1'],
    'napari:activate_image_transform_mode': ['2'],
    # vectors
    'napari:activate_vectors_pan_zoom_mode': ['1'],
    'napari:activate_vectors_transform_mode': ['2'],
    # tracks
    'napari:activate_tracks_pan_zoom_mode': ['1'],
    'napari:activate_tracks_transform_mode': ['2'],
    # surface
    'napari:activate_surface_pan_zoom_mode': ['1'],
    'napari:activate_surface_transform_mode': ['2'],
}
