using System.Collections.Generic;
using System.IO;
using System.Threading;
using System.Threading.Tasks;
using Knot.Modules.TelegramImport.Application.TelegramImport.DTOs;

namespace Knot.Modules.TelegramImport.Application.Abstractions;

public interface ITelegramHtmlParser
{
    Task<List<TelegramMessage>> ParseMessagesAsync(Stream htmlStream, string baseDirInZip, CancellationToken ct = default);
    Task<List<string>> ExtractAllUserNamesAsync(Stream htmlStream, CancellationToken ct = default);
    Task<string?> ExtractGroupNameAsync(Stream htmlStream, CancellationToken ct = default);
}
