📊 Dart Class Diagram

Generated by parse_mermaid_dart
classDiagram class IECDHKeyExchangeService { <> 📁 i_ecdh_key_exchange_service.dart } class IErmesPeerCipher { <> 📁 i_ermes_peer_cipher.dart } class IErmesPeerKeyExchange { <> 📁 i_ermes_peer_key_exchange.dart } class GenericObjectManager_K__V_ { <> 📁 generic_object_manager.dart } class IErmesHandshake_LocalHandshakeInfo__RemoteHandshakeInfo_ { <> 📁 i_ermes_handshake.dart } class IErmesHandshakeHandler_LocalHandshakeInfo__RemoteHandshakeInfo_ { <> 📁 i_ermes_handshake_handler.dart } class AccountInfo_InfoJsonType_ { <> 📁 i_ermes_book.dart } class _IErmesBookPrivate { <> 📁 i_ermes_book.dart } class IErmesBookService { <> 📁 i_ermes_book.dart } class IErmesBookRepository { <> 📁 i_ermes_book.dart } class _IErmesSignalingPrivate { <> 📁 i_ermes_signaling.dart } class IErmesSignalingRepository_SignalMessageType_ { <> 📁 i_ermes_signaling.dart } class IErmesSignalingService { <> 📁 i_ermes_signaling.dart } class IErmesSignalingHandler_SocketType_ { <> 📁 i_ermes_signaling_handler.dart } class ISignalErmes { <> 📁 i_ermes_signaling_server.dart } class ISignalErmesRaw_EncryptionType_ { <> 📁 i_ermes_signaling_server.dart } class IErmesSignalingServer { <> 📁 i_ermes_signaling_server.dart } class IErmesSignalingTODO_SocketType_ { <> 📁 i_ermes_todo.dart } class IErmesPrivate { <> 📁 i_ermes.dart } class IErmesRepository { <> 📁 i_ermes.dart } class IErmesService { <> 📁 i_ermes.dart } class IErmesConnection { <> 📁 i_ermes_connection.dart } class IErmesConnectionsHandler { <> 📁 i_ermes_connections_handler.dart } class _IErmesIcePrivate { <> 📁 i_ermes_ice_deprecated.dart } class IErmesIceRepository { <> 📁 i_ermes_ice_deprecated.dart } class _IErmesMessageControlPrivate { <> 📁 i_ermes_message_control.dart } class IErmesMessageControlRepository { <> 📁 i_ermes_message_control.dart } class IErmesMessageControlService { <> 📁 i_ermes_message_control.dart } class IErmesPeer { <> 📁 i_ermes_peer.dart } class _IIdHandlerPrivate { <> 📁 i_id_handler.dart } class IIdHandlerRepository { <> 📁 i_id_handler.dart } class IIdHandlerService { <> 📁 i_id_handler.dart } class _IIdHandlerStoragePrivate { <> 📁 i_id_handler_storage.dart } class IIdHandlerStorageRepository { <> 📁 i_id_handler_storage.dart } class IIdHandlerStorageService { <> 📁 i_id_handler_storage.dart } class IOrcErmes { <> 📁 i_orc_ermes.dart } class IErmesCachingRepository_DataJson_ { <> 📁 i_ermes_caching.dart } class IErmesCachingService_DataJson_ { <> 📁 i_ermes_caching.dart } class IErmesStorageRepository_DataJson_ { <> 📁 i_ermes_storage.dart } class IErmesStorageService_DataJson_ { <> 📁 i_ermes_storage.dart } class IErmesStorageAndCaching_DataJson_ { <> 📁 i_ermes_storage_and_caching.dart } class IErmesStorageAndCachingMessages_DataJson_ { <> 📁 i_ermes_storage_and_caching_messages.dart } class IErmesStorageAndCachingReserved_DataJson_ { <> 📁 i_ermes_storage_reserved.dart } class SocketDto_SocketType_ { <> 📁 callback_type_aliases.dart } class KeyInfo { <> 📁 cipher_types.dart } class DataEncrypted { <> 📁 cipher_types.dart } class DigestConverter { <> 📁 digest_converter.dart } class JsonConverter_T__S_ { <> 📁 json_converter.dart } class Uint8ListConverter { <> 📁 uint8list_converter.dart } class MessageValue { <> 📁 message_enums.dart } class ServiceReasons { <> 📁 message_enums.dart } class MessageWithId { <> 📁 message_enums.dart } class IErmesSerializable { <> 📁 message_enums.dart } class ErmesPeerInfo { <> 📁 message_enums.dart } class MessageRoot { <> 📁 message_root.dart } class MessageType { <> 📁 message_type.dart } class _MessageTypeData { <> 📁 message_type.dart } class _MessageTypeChunk { <> 📁 message_type.dart } class _MessageTypeService { <> 📁 message_type.dart } class MessageData { <> 📁 messages.dart } class MessageDataGeneric_T_ { <> 📁 messages.dart } class ChunkMessage { <> 📁 messages.dart } class ChunkMessageGeneric_T_ { <> 📁 messages.dart } class ChunkInfo { <> 📁 messages.dart } class InternalMessage { <> 📁 messages.dart } class OnSignalCreateSocketCallbackInput { <> 📁 ermes_callback.dart } class ErmesServiceInputGeneric_RepoType_ { <> 📁 ermes_input.dart } class CallbackOnMessageReceived { <> 📁 ermes_types.dart } class IdHandlerRepositoryInput { <> 📁 id_handler_input.dart } class IdHandlerServiceInput { <> 📁 id_handler_input.dart } class PaginationDto_T__C_ { <> 📁 pagination_types.dart } class ServiceMessage { <> 📁 service_messages.dart } class ServiceMessageConnectionClose { <> 📁 service_messages.dart } class ServiceMessageControl { <> 📁 service_messages.dart } class ServiceMessageAcknowledge { <> 📁 service_messages.dart } class ServiceMessageArrayRequest { <> 📁 service_messages.dart } class ServiceMessageNewKey { <> 📁 service_messages.dart } class SignalData { <> 📁 signaling_types.dart } class Signal { <> 📁 signaling_types.dart } class _SignalData { <> 📁 signaling_types.dart } class _SignalString { <> 📁 signaling_types.dart } class Response { <> 📁 signaling_types.dart } class OfferResponse { <> 📁 signaling_types.dart } class AnswerResponse { <> 📁 signaling_types.dart } class ISignalInfo { <> 📁 signaling_types.dart } class SignalInfoOffer { <> 📁 signaling_types.dart } class SignalInfoAnswer { <> 📁 signaling_types.dart } class SignalInfo { <> 📁 signaling_types.dart } class _SignalInfoOffer { <> 📁 signaling_types.dart } class _SignalInfoAnswer { <> 📁 signaling_types.dart } class StorageType { <> 📁 storage_types.dart } class ISymmetric { <> <> 📁 external_library } class Uint8List { <> <> 📁 external_library } class ICipher { <> <> 📁 external_library } class Digest { <> <> 📁 external_library } class ISymmetricCipher { <> <> 📁 external_library } class GenericObjectManager { <> <> 📁 external_library } class IErmesHandshake { <> <> 📁 external_library } class LocalHandshakeInfo { <> <> 📁 external_library } class RemoteHandshakeInfo { <> <> 📁 external_library } class IdAccountType { <> <> 📁 external_library } class InfoJsonType { <> <> 📁 external_library } class AccountInfo { <> <> 📁 external_library } class PaginationDto { <> <> 📁 external_library } class OnSignalCallback { <> <> 📁 external_library } class SignalMessageType { <> <> 📁 external_library } class OnSignalCreateSocketCallback { <> <> 📁 external_library } class SocketReadyCallback { <> <> 📁 external_library } class SocketType { <> <> 📁 external_library } class SocketDto { <> <> 📁 external_library } class EncryptionType { <> <> 📁 external_library } class SerializableDataType { <> <> 📁 external_library } class CallbackOnDataRepository { <> <> 📁 external_library } class CallbackOnDataArrived { <> <> 📁 external_library } class CallbackOnDataSending { <> <> 📁 external_library } class CallbackOnDataSent { <> <> 📁 external_library } class CallbackOnNewKey { <> <> 📁 external_library } class TypeOfDataExternal { <> <> 📁 external_library } class IdPeer { <> <> 📁 external_library } class IdType { <> <> 📁 external_library } class CallbackIdsToRequest { <> <> 📁 external_library } class CallbackOnDataArrivedFrom { <> <> 📁 external_library } class IErmesStorageAndCachingReserved { <> <> 📁 external_library } class IErmesCachingRepository { <> <> 📁 external_library } class IErmesStorageRepository { <> <> 📁 external_library } class IErmesStorageAndCaching { <> <> 📁 external_library } class DataJson { <> <> 📁 external_library } class CryptoAlgorithm { <> <> 📁 external_library } class JsonConverter { <> <> 📁 external_library } class PeerInfo { <> <> 📁 external_library } class MessageDataGeneric { <> <> 📁 external_library } class ChunkMessageGeneric { <> <> 📁 external_library } class RepoType { <> <> 📁 external_library } class CallbackOnMessage { <> <> 📁 external_library } AccountInfo_InfoJsonType_ --> ErmesPeerInfo : uses AccountInfo_InfoJsonType_ --> IdAccountType : uses AccountInfo_InfoJsonType_ --> InfoJsonType : uses AnswerResponse --> AnswerResponse : uses CallbackOnMessageReceived --> CallbackOnDataArrived : uses CallbackOnMessageReceived --> CallbackOnMessage : uses CallbackOnMessageReceived --> CallbackOnMessageReceived : uses ChunkInfo --> ChunkInfo : uses ChunkMessage --> ChunkMessage : uses ChunkMessage --> Uint8List : uses ChunkMessageGeneric_T_ --> ChunkMessageGeneric : uses DataEncrypted --> Digest : uses DataEncrypted --> Uint8List : uses DigestConverter --> Digest : uses ErmesServiceInputGeneric_RepoType_ --> CallbackOnDataArrived : uses ErmesServiceInputGeneric_RepoType_ --> IErmesMessageControlService : uses ErmesServiceInputGeneric_RepoType_ --> IErmesStorageAndCaching : uses ErmesServiceInputGeneric_RepoType_ --> IIdHandlerService : uses ErmesServiceInputGeneric_RepoType_ --> RepoType : uses ErmesServiceInputGeneric_RepoType_ --> StorageType : uses GenericObjectManager_K__V_ --> GenericObjectManager : uses IECDHKeyExchangeService --> IECDHKeyExchangeService : uses IECDHKeyExchangeService --> ISymmetric : uses IErmesCachingRepository <|.. IErmesCachingService_DataJson_ : implements IErmesConnection --> IErmesRepository : uses IErmesConnection --> IdPeer : uses IErmesConnectionsHandler --> IErmesConnection : uses IErmesConnectionsHandler --> IdPeer : uses IErmesHandshakeHandler_LocalHandshakeInfo__RemoteHandshakeInfo_ --> IErmesHandshake : uses IErmesHandshakeHandler_LocalHandshakeInfo__RemoteHandshakeInfo_ --> LocalHandshakeInfo : uses IErmesHandshakeHandler_LocalHandshakeInfo__RemoteHandshakeInfo_ --> RemoteHandshakeInfo : uses IErmesHandshake_LocalHandshakeInfo__RemoteHandshakeInfo_ --> IErmesRepository : uses IErmesPeer --> CallbackOnDataArrived : uses IErmesPeer --> IdAccountType : uses IErmesPeer --> TypeOfDataExternal : uses IErmesPeerCipher --> DataEncrypted : uses IErmesPeerCipher --> Digest : uses IErmesPeerCipher --> ICipher : uses IErmesPeerCipher --> Uint8List : uses IErmesPeerKeyExchange --> DataEncrypted : uses IErmesPeerKeyExchange --> ISymmetricCipher : uses IErmesPrivate <|.. IErmesRepository : implements IErmesPrivate <|.. IErmesService : implements IErmesRepository --> CallbackOnDataRepository : uses IErmesRepository --> IdAccountType : uses IErmesRepository --> SerializableDataType : uses IErmesRepository <|.. IErmesIceRepository : implements IErmesSerializable <|.. ChunkInfo : implements IErmesSerializable <|.. ChunkMessage : implements IErmesSerializable <|.. InternalMessage : implements IErmesSerializable <|.. MessageData : implements IErmesSerializable <|.. MessageRoot : implements IErmesSerializable <|.. MessageType : implements IErmesSerializable <|.. ServiceMessage : implements IErmesService --> CallbackOnDataArrived : uses IErmesService --> CallbackOnDataSending : uses IErmesService --> CallbackOnDataSent : uses IErmesService --> CallbackOnNewKey : uses IErmesService --> IErmesRepository : uses IErmesService --> TypeOfDataExternal : uses IErmesSignalingHandler_SocketType_ --> ISignalErmes : uses IErmesSignalingHandler_SocketType_ --> IdAccountType : uses IErmesSignalingHandler_SocketType_ --> SocketDto : uses IErmesSignalingHandler_SocketType_ --> SocketReadyCallback : uses IErmesSignalingHandler_SocketType_ --> SocketType : uses IErmesSignalingRepository_SignalMessageType_ --> IdAccountType : uses IErmesSignalingRepository_SignalMessageType_ --> OnSignalCallback : uses IErmesSignalingRepository_SignalMessageType_ --> SignalMessageType : uses IErmesSignalingServer --> ISignalErmes : uses IErmesSignalingServer --> IdAccountType : uses IErmesSignalingService --> OnSignalCreateSocketCallback : uses IErmesSignalingTODO_SocketType_ --> ISignalErmes : uses IErmesSignalingTODO_SocketType_ --> IdAccountType : uses IErmesSignalingTODO_SocketType_ --> SocketDto : uses IErmesSignalingTODO_SocketType_ --> SocketReadyCallback : uses IErmesSignalingTODO_SocketType_ --> SocketType : uses IErmesStorageAndCaching <|.. IErmesStorageAndCachingMessages_DataJson_ : implements IErmesStorageAndCachingReserved <|.. IErmesCachingRepository_DataJson_ : implements IErmesStorageAndCachingReserved <|.. IErmesStorageAndCaching_DataJson_ : implements IErmesStorageAndCachingReserved <|.. IErmesStorageRepository_DataJson_ : implements IErmesStorageAndCachingReserved_DataJson_ --> DataJson : uses IErmesStorageAndCachingReserved_DataJson_ --> IdType : uses IErmesStorageRepository <|.. IErmesStorageService_DataJson_ : implements IIdHandlerRepository --> IdType : uses IIdHandlerService --> IdType : uses IOrcErmes --> CallbackOnDataArrivedFrom : uses IOrcErmes --> IdPeer : uses IOrcErmes --> TypeOfDataExternal : uses ISignalErmesRaw_EncryptionType_ --> EncryptionType : uses ISignalErmesRaw_EncryptionType_ --> ISignalErmes : uses ISignalInfo --> SignalData : uses ISignalInfo <|.. SignalInfoAnswer : implements ISignalInfo <|.. SignalInfoOffer : implements IdHandlerServiceInput --> IIdHandlerRepository : uses IdHandlerServiceInput --> IIdHandlerStorageService : uses InternalMessage --> InternalMessage : uses InternalMessage --> MessageType : uses InternalMessage --> MessageValue : uses JsonConverter <|.. DigestConverter : implements JsonConverter <|.. Uint8ListConverter : implements KeyInfo --> CryptoAlgorithm : uses MessageData --> MessageData : uses MessageData --> Uint8List : uses MessageDataGeneric_T_ --> MessageDataGeneric : uses MessageRoot --> Digest : uses MessageRoot --> MessageRoot : uses MessageRoot --> Uint8List : uses MessageType --> ChunkMessage : uses MessageType --> MessageData : uses MessageType --> MessageValue : uses MessageType --> ServiceMessage : uses MessageType <|-- _MessageTypeChunk : extends MessageType <|-- _MessageTypeData : extends MessageType <|-- _MessageTypeService : extends MessageWithId <|.. ChunkMessage : implements MessageWithId <|.. MessageData : implements MessageWithId <|.. ServiceMessage : implements OfferResponse --> OfferResponse : uses OfferResponse --> SignalInfoAnswer : uses OnSignalCreateSocketCallbackInput --> IErmesService : uses OnSignalCreateSocketCallbackInput --> IdAccountType : uses PaginationDto_T__C_ --> PaginationDto : uses PeerInfo <|-- ErmesPeerInfo : extends Response --> Response : uses ServiceMessage <|-- ServiceMessageAcknowledge : extends ServiceMessage <|-- ServiceMessageArrayRequest : extends ServiceMessage <|-- ServiceMessageConnectionClose : extends ServiceMessage <|-- ServiceMessageControl : extends ServiceMessage <|-- ServiceMessageNewKey : extends ServiceMessageAcknowledge --> ServiceMessageAcknowledge : uses ServiceMessageArrayRequest --> ServiceMessageArrayRequest : uses ServiceMessageNewKey --> CryptoAlgorithm : uses ServiceMessageNewKey --> ServiceMessageNewKey : uses Signal <|-- _SignalData : extends Signal <|-- _SignalString : extends SignalData --> SignalData : uses SignalInfo <|-- _SignalInfoAnswer : extends SignalInfo <|-- _SignalInfoOffer : extends SignalInfoAnswer --> SignalData : uses SignalInfoAnswer --> SignalInfoAnswer : uses SignalInfoOffer --> SignalData : uses SignalInfoOffer --> SignalInfoOffer : uses SocketDto_SocketType_ --> IdAccountType : uses SocketDto_SocketType_ --> SocketType : uses StorageType --> IdType : uses StorageType <|.. MessageType : implements Uint8ListConverter --> Uint8List : uses _IErmesBookPrivate --> AccountInfo : uses _IErmesBookPrivate --> ErmesPeerInfo : uses _IErmesBookPrivate --> IdAccountType : uses _IErmesBookPrivate --> PaginationDto : uses _IErmesBookPrivate <|.. IErmesBookRepository : implements _IErmesBookPrivate <|.. IErmesBookService : implements _IErmesIcePrivate --> Signal : uses _IErmesIcePrivate --> SignalData : uses _IErmesIcePrivate <|.. IErmesIceRepository : implements _IErmesMessageControlPrivate --> CallbackIdsToRequest : uses _IErmesMessageControlPrivate --> IdType : uses _IErmesMessageControlPrivate <|.. IErmesMessageControlRepository : implements _IErmesMessageControlPrivate <|.. IErmesMessageControlService : implements _IErmesSignalingPrivate --> IdAccountType : uses _IErmesSignalingPrivate <|.. IErmesSignalingRepository_SignalMessageType_ : implements _IErmesSignalingPrivate <|.. IErmesSignalingService : implements _IIdHandlerPrivate --> IdType : uses _IIdHandlerPrivate <|.. IIdHandlerRepository : implements _IIdHandlerPrivate <|.. IIdHandlerService : implements _IIdHandlerStoragePrivate --> IdType : uses _IIdHandlerStoragePrivate <|.. IIdHandlerStorageRepository : implements _IIdHandlerStoragePrivate <|.. IIdHandlerStorageService : implements _MessageTypeChunk --> ChunkMessage : uses _MessageTypeData --> MessageData : uses _MessageTypeService --> ServiceMessage : uses _SignalData --> SignalData : uses _SignalInfoAnswer --> SignalInfoAnswer : uses _SignalInfoOffer --> SignalInfoOffer : uses

Diagram Legend

Arrows:
• Solid arrow <|-- = extends (inheritance)
• Dashed arrow <|.. = implements (interface)
• Dashed arrow <|.. = with (mixin)
• Composition arrow --> = uses (field type)

Annotations:
<<abstract>> = Abstract class
<<interface>> = Interface class
<<sealed>> = Sealed class
<<mixin>> = Mixin
<<enumeration>> = Enum