Sri Lanka captain Tillakaratne Dilshan will miss the third Test against England, which starts on 16 June, because of a broken thumb.
Dilshan was struck on the thumb by a Chris Tremlett delivery on day three of the the drawn second Test at Lord's.
"The doctors have told me it will take three to four weeks to heal but I have an outside chance of being ready for the one-dayers," he said.
The two sides play a Twenty20 match on 25 June and the ODIs start on 28 June.
Kumar Sangakkara will skipper the tourists in Dilshan's absence for the next Test, which will take place at the Rose Bowl.
Dilshan was injured on the way to 193 in Sri Lanka's first innings 479 and did not bat during his side's second innings as they reached 127-3 before the teams shook hands on a draw.
He would have batted in an emergency if needed but, in contrast to his side's collapse in the first Test at Cardiff, Sri Lanka held firm this time around after being put in to bat for after lunch on the final day at Lord's.
Sangakarra opened with Dilshan missing and, even though he went cheaply, the tourists showed enough steel to frustrate England's bowlers and give themselves a chance of levelling the series with victory at the Rose Bowl.
"Overall I am happy," added Dilshan. "It was all round a very good performance after the Cardiff match."
Lahiru Thirimanne and Dinesh Chandimal, both 21 and without a Test appearance to their names, are the favourites to replace Dilshan.