While it is not the same as documentation, you can just look it up in the sources.
The IDE takes you do the declaration of any method... Such as:
procedure TStringList.Insert(Index: Integer; const S: string);
"Integer" => same limit.
Assuming you have enough memory.
If you want to be extra careful, check the implementation, if it maybe one less, in case some code calculates "Index + 1" or something.
Also, that of course does not say, if the limit can be used by simply doing that many "Add". (But then, I do not have Delphi, to check if it can do that...).
That depends on how Capacity grows, and if it will reach that final limit, or break before. But you can always set Capacity yourself to that value, and then the normal growth procedure wont interfere.