Boil the eggs: Place eggs in a pot, cover with cold water by about an inch, and bring to a rolling boil.
Turn off the heat, cover, and let sit for 10–12 minutes. Transfer to an ice bath for at least 5 minutes to cool and make peeling easier.
Prep the lettuce: Separate and rinse the lettuce leaves. Pat dry thoroughly with paper towels.
For wraps, choose larger, unbroken leaves that can fold or cup the filling without tearing.
Chop the mix-ins: Finely chop celery and slice green onions. If using pickles, dice them small to keep texture even. Set aside.
Peel and chop the eggs: Peel cooled eggs and chop into bite-size pieces.
Aim for a rough chop for more texture in the salad.
Make the dressing: In a bowl, combine 1/3–1/2 cup mayonnaise (to taste) with 1–2 teaspoons mustard, a squeeze of lemon juice, a pinch of salt, and a few grinds of pepper. Stir until smooth.
Combine: Add the chopped eggs, celery, green onion, and pickles (if using) to the dressing. Gently fold until evenly coated.
Taste and adjust salt, pepper, and mustard. Add dill or parsley if you like.
Assemble the wraps: Spoon egg salad into the center of a lettuce leaf. For romaine, place it along the stem; for butter lettuce, treat each leaf like a small cup.
Add a sprinkle of paprika or a slice of avocado if desired.
Wrap and serve: Fold the sides of the leaf inward and roll, or simply fold like a taco. Serve immediately for the best crunch.