Aromatics: Finely chop the garlic, shallot, and ginger. Set them aside so they are ready to use.
Vegetables: In a food processor, pulse the carrot and celery a few times until they are diced into small cubes. Do not over-process them. We want some crunch in every bite, but the pieces should be small. Transfer them to a plate and set aside.
Chestnuts and shrimp: Drain the water chestnuts and roughly chop them. Dice the shrimp into small bite-size pieces.
Sauce: In a small bowl, combine the sauce ingredients, from the peanut butter to the apple juice. Stir until smooth. The sauce should be creamy but still pourable, not too thick.
Sauté the aromatics
Preheat a large 12-inch skillet or wok over medium-high heat until it feels warm when you place your palm about 2–3 inches above the surface. Add the oil, then sauté the garlic, shallot, and ginger with a pinch of salt until fragrant, about 10 seconds.
Brown the chicken
Add the ground chicken. Season with salt and white pepper. Sauté until the meat is cooked through and broken into small bits, about 3 minutes.
Reduce the heat to medium and keep sautéing until most of the moisture has evaporated, about 2 minutes. The skillet should not look wet or watery, or the filling will taste diluted.
Add the vegetables
Turn the heat back up to medium-high. Add the carrot and celery with a pinch of salt. Sauté for 1–2 minutes, until the vegetables release a little moisture but still keep their crunch.
Add the shrimp and water chestnuts
Add the water chestnuts and shrimp. Keep tossing and scooping for about 1 minute, or until the shrimp just turn opaque.
Season the filling
Add 2 tablespoons of the sauce and stir-fry briefly to coat everything, about 10 seconds. Keep the sauce minimal so the filling stays crunchy and does not turn soggy or wet.
Taste and season with more salt and white pepper, if needed. Turn off the heat.
Serve
Separate the lettuce into individual leaves and arrange them on a large serving plate. Spoon a few tablespoons of the filling into the center of each lettuce cup.
Garnish with scallions and chopped nuts. Serve the extra sauce on the side. These lettuce wraps are best served warm or at room temperature.
Notes
Keep the texture of this dish fresh, crisp, and light. The filling should not be watery or soggy. Make sure all the ingredients are prepped and ready before you start stir-frying. This makes the cooking much easier.
If you are using only chicken and no shrimp, use no more than 1 pound of ground chicken. These lettuce wraps are all about the balance of textures. Too much meat can make the filling dense and less crunchy.
In places like China, Hong Kong, and Taiwan, this dish often includes shrimp, sometimes mixed with a little minced pork. If you want to make a shrimp-only version, use up to 1 pound of raw, peeled, and deveined shrimp.
If the skillet starts to feel dry while stir-frying, add 1 tablespoon of oil at a time, just enough to keep the ingredients moving easily.