import Foundation protocol MessageReaderProtocol { func connect() throws func getConversations() throws -> [iMessageConversation] func getMessages(conversationId: String, since: Date?) throws -> [iMessage] func lookupContact(identifier: String) -> ContactInfo? func getAllContacts() -> [ContactInfo] func loadContacts() async -> Bool func extractTextFromAttributedBody(_ data: Data) -> String? }