namespace QMax.Api.Infrastructure.Max; public interface IMaxBridgeClient { Task GetStatusAsync(CancellationToken cancellationToken); Task BeginPhoneLoginAsync(string phoneNumber, CancellationToken cancellationToken); Task SubmitLoginCodeAsync(string code, CancellationToken cancellationToken); Task GetSnapshotAsync(CancellationToken cancellationToken); Task> FetchUpdatesAsync(CancellationToken cancellationToken); Task FetchChatHistoryAsync(string externalChatId, CancellationToken cancellationToken); Task FetchChatPresenceAsync(string externalChatId, CancellationToken cancellationToken); Task SendTextAsync(string externalChatId, string text, CancellationToken cancellationToken); Task SendAttachmentAsync(string externalChatId, string path, string caption, CancellationToken cancellationToken); Task EditMessageAsync(string externalChatId, string externalMessageId, string? currentText, string text, CancellationToken cancellationToken); Task DeleteMessageAsync(string externalChatId, string externalMessageId, string? currentText, CancellationToken cancellationToken); Task SetReactionAsync(string externalChatId, string externalMessageId, string? currentText, string emoji, CancellationToken cancellationToken); Task ClearReactionAsync(string externalChatId, string externalMessageId, string? currentText, string emoji, CancellationToken cancellationToken); Task DownloadMediaAsync(string remoteUrl, CancellationToken cancellationToken); }