Files
BotPages/BotPages.Core/Abstractions/IStateStorage.cs
FrigaT d817417a69
All checks were successful
CI / build-test (push) Successful in 42s
Переработанная версия ядра
2025-12-05 12:57:05 +03:00

20 lines
1002 B
C#

namespace BotPages.Core.Abstractions;
/// <summary>
/// Интерфейс универсального хранилища состояния.
/// Позволяет сохранять и восстанавливать данные между обновлениями.
/// </summary>
public interface IStateStorage
{
/// <summary>Получить состояние по ключу.</summary>
Task<T?> GetAsync<T>(CompositeSessionKey session, string key, CancellationToken ct);
/// <summary>Сохранить состояние по ключу.</summary>
Task SetAsync<T>(CompositeSessionKey session, string key, T state, CancellationToken ct);
/// <summary>Удалить состояние по ключу.</summary>
Task<bool> RemoveAsync(CompositeSessionKey session, string key, CancellationToken ct);
/// <summary>Удалить все состояния по ключу.</summary>
Task<bool> ClearAsync(CompositeSessionKey session, CancellationToken ct);
}