import AppKit protocol PostingService: Sendable { var account: Account { get } func uploadMedia(imageData: Data, filename: String, altText: String?) async throws -> String func createPost(text: String, mediaIDs: [String]) async throws -> URL } struct PostingError: LocalizedError { let message: String var errorDescription: String? { message } }