Ehhh, yes and no. If you use the Channel URL explicitly for how you display entries in that channel, you can generate a list by pulling up that model as well.
The real problem here is that a channel entry is in no way tied down to a specific URL; I can have 100 different template groups and 100 different templates in each, and call an entry from any channel I want. There is no implicit URL for a channel entry; unless, as I said, you use the Channel URL setting on a channel to explicitly display entries in that channel, so this would be a self-imposed URL restriction.
Here is a rough example of how you might list all of the entries in one channel if this is the case:
$entries = ee('Model')->get('ChannelEntry')
->filter('status', 'IN', array('open'))
->filter('channel_id', 'IN', array('47'))
->order('title', 'ASC')
->all();
$channel = ee('Model')->get('Channel')
->filter('channel_id', 'IN', array('47'))
->all();
foreach ($entries as $key => $entry) {
$path = $channel[0]->channel_url . '/';
$path .= $entry->url_title;
echo $path;
echo "<br>";
}
So this is really rough. For example, I don't check if the Channel URL ends in a /, and just append one regardless, you'd want to test to see if one is there first before just appending. Also, in this example, I'm hard-coding a channel id of 47
(just a channel in an install I have somewhere to test real quick).
Now if you really had to do this for each channel and each entry, you could place a loop in a loop, but this would result in an O(n^2)
timed algorithm, and be quite slow if you have a large number of channels/entries. Whatever you are trying to do this for, I wouldn't recommend it for any production applications that get used in public facing templates; this should be for a data export or something.
I'm not super familiar with the EE Model construct, and there may be some trickery you can pull to make this faster or more efficient, but this code example can at least do what I think you are looking for.