ApexException The general / main Apex exception. Handles the logging and rendering of errors for all Apex based exceptions.
CommException Handles all errors related to communications, such as invalid e-mail address, unable to connect to SMTP, unable to send SMS message via Nexcmo, etc.
ComponentException Handles all component related errors, such as no component exists, class name does not exist, unable to load PHP class, etc.
ContainerException Handles all errors within the dependency injection container, such as unable to find class name / dependency, unable to load class, etc.
DBException Handles all database related errors including connection, SQL query, and formatting errors.
EncryptException Handles all encryption errors
FormException Handles various form errors, such as simple validation errors that call for
IOException Handles all file I/O errors, such as file does not exist, directory does not exists, unable to create or unpack zip archive, etc.
MiscException Handles various miscellaneous errors, such as administrator does not exist, etc.
PackageException Handles all package related errors, such as package does not exists, package already exists, unable to load / publish / download package, etc.
RepoException Handles all repository based errors, such as repo does not exists, unable to connect, invalid access, etc.
ServiceException Handles the various errors thrown by services / dispatchers, such as instance not defined, method does not exist, etc.
StorageException Handles all exceptions for the remote storage library, which uses the league/flaystem package.
ThemeException Handles all theme based errors such as theme does not exist, unable to download theme, unable to install theme, etc.
UpgradeException Handles all upgrade errors such as upgrade does not exist, unable to download, unable to load upgrade.php class file, etc.
UserException Handles all user exceptions, such as user does not exist, unable to create / update / delete user, etc.