We do plan to document this in one of the next releases, we are aware that a clear specification would be very helpful.
Anyway, in Rebex SFTP, when working with the main Sftp class, you can generally catch SftpException only - SshExceptions and ProxySocketExceptions should be re-thrown as SftpException with an appropriate Status and an InnerException set to the original exception.
Other than that, methods and properties of all classes can throw ArgumentException and InvalidOperation, but these usually indicate that something is wrong with your code (or our code) and should not be handled unless for logging or error reporting purposes.
The SshPrivateKey class methods might throw CryptographicException when a cryptography-related error occurs.