Mix flour, oats, baking powder, salt, baking soda, cinnamon, and nutmeg in a small bowl.
In a large bowl, mix eggs, sugar, oil, sour cream, vanilla, and shredded apples.
Slowly add the flour mixture into the egg mixture and mix until well blended.
Fold in cranberries and pecans if using.
Scoop batter into muffin tins until cups are about ¾ full (batter does not rise much).
Mix flour, brown sugar, butter, cinnamon and salt for the streusel topping until crumbly and butter mixed in well.
Sprinkle each muffin with approximately 1 tablespoon of streusel topping on each muffin and then bake for 15-17 minutes or until starting to brown on the top.
Remove from oven, after 5 minutes remove muffins from pan and place on a cooling rack.
Preheat oven to 350°.