Plasma Workspace is used as base for both Plama Desktop and Plasma Mobile. It contains shared KCMs, applets as well as multiple libraries.
The Task Manager provides various QAbstractListModel-based model for listing Windows (TaskManager::AbstractWindowTasksModel), Startup tasks (TaskManager::StartupTasksModel) and Launcher Job (TaskManager::LauncherTasksModel).
libkworkspace provides functions to allow you to interact with the %KDE session manager (SessionManagement).
libnotificationmanager is responsible for listing notifications, closing them and interacting with them in Plasma. This class provides a %Qt model for jobs: NotificationManager::JobsModel. As well as a %Qt model for notifications and jobs: NotificationManager::Notifications.