Considering that there should be some kind of logical progression/improvements over the original BG 1/2 resting system, I think it should be a combination of options and factors.
ResourcesLong and short rest should consume resources. Food might be a main resting resource, and money could be considered its substitute - consider that you "bought" food from a nearby merchant. I like the idea of rations, mentioned above. So if you don't have enough food for rations - you pay money (just to save time for you instead of actually running to a nearby merchant). Of course, for this to work, food shouldn't be able to heal you in battle, and heal very little outside of battle, unless during rest.
Short rest - with food more health is restored (but it is not required)
Long rest - Food or gold instead are required. Maybe some additional resource(s) could be added, that would provide long-lasting bonuses (like in PoE2). And as a failsafe, if your party doesn't have neither (enough) food, nor money, then health isn't restored (but spells are) and maybe some kind of minor negative status applied (-1 initiative, disadvantage or some such).
Long Rest RestrictionsTo avoid spamming long rest on every occasion and before every battle, there should be some limitations of using it (like in the originals).
Long rests should be allowed only in relatively safe areas. Say, not in caves, dungeons and behind enemy lines, no enemies in a certain radius or/and you should clean X enemy groups to be able to set camp in the area.
In barely to mildly safe areas long rest could be allowed but with a chance of random attacks. To make those attackers not OP you should be able to control all NPCs in your camp (or at least all your companions).
TriggersA combination of suggested triggers would work great, IMO.
Such triggers might be:
- X amount of battles
- walked X distance
- used jump or other physical ability more than X times
- little to no spells left
- Quest event (party partook in some festivities/activities)
- ...
After one 1-2 conditions are met, your companions will suggest to rest. after 3 conditions are met, certain negative statuses begin to apply (eg slowed/encumbered, disadvantages, minus 1 on all rolls, etc), so with each new trigger another status applied in addition, on per-party member basis.
Short rest could clean one of the negative statuses, but the same trigger will reapply in half of initial value (e.g. X/2 amount of battles or walked X/2 distance), if quantifiable. According to D&d5e short rest is limited to 2 per long rest, which should be fair.