Please add strong wording that $(D startIdx) refers to code points (e.g. number of bytes for string etc), not code units (number of actual character). So indexOf(s, 70, 'a') does not look starting necessarily at the 70th character in the string.

Also, one good synopsis would be to state that:

1. If `s[startIdx .. $].indexOf(c, cs)` returns `-1`, then `s.indexOf(c, startIdx, cs)` also returns `-1`;
2. Otherwise, `s.indexOf(c, startIdx, cs)` returns `s[startIdx .. $].indexOf(c, cs)`.