When my kid declines a sandwich I will do a bagel with cream cheese or peanut butter or (if no nuts) sunbutter. Or just butter. Between that and some basic sandwich options, I can usually find something they want.
Then two kinds of fruit (hard enough to get them to eat veggies at home, I don't even bother with lunch). Favorites are blueberries and strawberries, which are pricy but also pack well and I know they will eat them. I also do apples, bananas, mangos (sometimes dried mango, which is a favorite), orange slices, or kiwi. Whatever is on sale, and I try to rotate through so they get variety.
Then a "snack" of some kind, which I know they will eat first. Goldfish, yogurt covered pretzels, a nut-free trail mix, etc.
Then a small dessert, usually like a small cookie or a handful of m&ms.
I use the Bentgo box and it makes all this really easy and forces me to do multiple smaller portions which I have found works great for picky eaters or kids who like one kind of food but not another, because it's a little bit of everything and usually they will finish the whole thing. If I tried putting a whole apple or banana in their lunch, it would go untouched, but if I cube a quarter of an apple and put it in the Bentgo, they'll eat it.
Make sure to get a good insulated lunchbox and include an ice pack so everything stays a bit fresher, it helps.
I can make these lunches in like 5 minutes and they are easy to shop for too.