namespace MeetingAssistant.Recording; public interface IRecordedAudioStore { Task CreateSessionAsync(CancellationToken cancellationToken); Task CreateSessionAsync( MeetingAssistantOptions options, CancellationToken cancellationToken) { return CreateSessionAsync(cancellationToken); } Task DeleteStaleRecordingsAsync(CancellationToken cancellationToken); } public interface IRecordedAudioSink : IAsyncDisposable { string AudioPath { get; } Task AppendAsync(AudioChunk chunk, CancellationToken cancellationToken); Task CompleteAsync(CancellationToken cancellationToken); Task DeleteAsync(CancellationToken cancellationToken); }