How do I define a command for each of the options?
One operator.
Rather than communicate enums between two operators, can add logic to use one.

If I understand the question properly, either wish to apply (try) all modifiers or one of all using the enum.
For this example have expanded the enum, and added the ALL option to the enum, tested for it.
In hindsight prob should have named the enum modifier
Other options to consider would be to have an operator boolean property to apply all.  Operator properties can be passed via layout with
op = layout.operator(&quot;foo.bar&quot;)
op.apply_all = True

to have a button to call same operator but do something different.
Test script.
bl_info = {
    &quot;name&quot;: &quot;Test Add ons&quot;,
    &quot;blender&quot;: (2,91,2),
    &quot;category&quot;:&quot;Object&quot;,
}

import bpy

class ModifiersBase:
    @classmethod
    def poll(cls, context):
        ob = context.object
        return ob and ob.modifiers    

class ApplyModifiersOperator(ModifiersBase, bpy.types.Operator):
    bl_idname = &quot;object.apply_all_modifiers&quot;
    bl_label = &quot;Apply All Modifiers&quot;
        
    def modifier_items(self, context):
        ob = context.object
        items = []
        for m in ob.modifiers:
            items.append((m.name, m.name, m.type))
        items.append(None)
        items.append((&quot;ALL&quot;, &quot;ALL&quot;, &quot;Apply All Modifiers&quot;))
        return items
    
    modifiers : bpy.props.EnumProperty(
            items=modifier_items,
            )         

    def execute(self,context):
        ob = context.object
        wm = context.window_manager
        def ShowMessageBox(message = &quot;&quot;, title = &quot;Message Box&quot;, icon = 'INFO'):

            def draw(self, context):
                self.layout.label(text=message)

            wm.popup_menu(draw, title = title, icon = icon)
        try:
            if self.modifiers == 'ALL':
                for m in ob.modifiers:
                     bpy.ops.object.modifier_apply(modifier=m.name)
            else:
                bpy.ops.object.modifier_apply(modifier=self.modifiers)

        except RuntimeError as ex:
            ShowMessageBox(&quot;Please be sure of the modifiers setting&quot;, &quot;Error&quot;, 'ERROR')

        
        return {'FINISHED'}
            
class ModifierPanel(ModifiersBase, bpy.types.Panel):
    bl_label = &quot;Apply Modifiers&quot;
    bl_idname = &quot;OBJECT_PT_apply_modifiers&quot;
    bl_space_type = 'PROPERTIES'
    bl_region_type = 'WINDOW'
    bl_context = &quot;modifier&quot;

    def draw(self, context):
        layout = self.layout

        row = layout.row()
        row.operator_enum(&quot;object.apply_all_modifiers&quot;, &quot;modifiers&quot;)

        
classes = (
        ModifierPanel,
        ApplyModifiersOperator,
)    
def register():
    for cls in classes:
        bpy.utils.register_class(cls)
    
def unregister():
    for cls in reversed(classes):
        bpy.utils.unregister_class(cls)
 
if __name__ == &quot;__main__&quot;:
    register()