/**

@defgroup internal_api Internal and System API
@brief Internal and System API
@{

@}

@defgroup os_services Operating System Services
@brief Operating System Services
@{
@}

@defgroup io_interfaces Device Drivers
@brief Interfaces to interact with various hardware peripherals.
@details A collection of hardware-agnostic interfaces used to implement and interact with device
         drivers.
@{
@}

@defgroup misc_interfaces Miscellaneous Devices
@ingroup io_interfaces
@brief Interfaces for hardware peripherals that do not have a dedicated driver class.
@{
@}

@brief Interfaces for USB hardware and associated standards.
@defgroup usb_interfaces USB
@ingroup io_interfaces
@{
@}

@brief Interfaces for multi-function devices.
@defgroup mfd_interfaces Multi-function Devices
@ingroup io_interfaces
@{
@}

@brief Testing
@defgroup testing Testing
@{
@}

@brief Debug Services
@defgroup debug Debug
@ingroup os_services
@{
@}

@brief Device Management
@defgroup device_mgmt Device Management
@ingroup os_services
@{
@}

@brief MCUmgr
@defgroup mcumgr MCUmgr
@ingroup device_mgmt
@{
@}

@brief Transport layers for MCUmgr: SMP, UART, etc.
@defgroup mcumgr_transport Transport layers
@ingroup mcumgr
@{
@}

@brief Connectivity
@defgroup connectivity Connectivity
@{
@}

@brief USB
@defgroup usb USB
@ingroup connectivity
@{
@}

@brief Utilities
@defgroup utilities Utilities
@{

@brief Data Structure APIs
@defgroup datastructure_apis Data Structure APIs
@{
@}

@}

@brief APIs to interact with third-party services or applications
@defgroup third_party Third-party
@{
@}

@brief Modem APIs
@defgroup modem Modem APIs
@ingroup connectivity
@since 3.5
@version 1.0.0
@{
@}

@brief Memory Management APIs
@defgroup mem_mgmt Memory Management APIs
@{
@}

*/
