16 lines
438 B
C#
16 lines
438 B
C#
namespace ClaudeDo.Releases;
|
|
|
|
public sealed record ReleaseAsset(string Name, string BrowserDownloadUrl, long Size);
|
|
|
|
public sealed record GiteaRelease(
|
|
string TagName,
|
|
string Name,
|
|
IReadOnlyList<ReleaseAsset> Assets);
|
|
|
|
public interface IReleaseClient
|
|
{
|
|
Task<GiteaRelease?> GetLatestReleaseAsync(CancellationToken ct);
|
|
|
|
Task DownloadAsync(string url, string destPath, IProgress<long> progress, CancellationToken ct);
|
|
}
|