Flysystem is about dealing with files on some storage medium, be it S3, local, or some other supported driver.
There is no way to get a public URL as such using fly system, you have to use the underlying driver and the call will vary from driver to driver.
Your best bet would be to extend flysystem in your app - or create a package - that will handle retrieving a public URL.
You could also do some handling with Response::download (I think) and create a route to retrieve files that way from storage. The benefit here is you can do things like check users have permission to access the resource. This is ok with local files, but beware that if you're using S3 for example, it'll pull the file down to your server then stream it back again - which isn't ideal.