AI-Studio/app/MindWork AI Studio/Tools/Media/IMediaTranscriptStorage.cs
Thorsten Sommer 58cc811a58
Some checks failed
Build and Release / Determine run mode (push) Has been cancelled
Build and Release / Read metadata (push) Has been cancelled
Build and Release / Sync Flatpak repo (push) Has been cancelled
Build and Release / Collect Flatpak artifacts (push) Has been cancelled
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-aarch64-apple-darwin, osx-arm64, macos-latest, aarch64-apple-darwin, dmg,app,updater, dmg) (push) Has been cancelled
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-aarch64-pc-windows-msvc.exe, win-arm64, windows-latest, aarch64-pc-windows-msvc, nsis,updater, nsis) (push) Has been cancelled
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-aarch64-unknown-linux-gnu, linux-arm64, ubuntu-22.04-arm, aarch64-unknown-linux-gnu, appimage,updater, appimage) (push) Has been cancelled
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-x86_64-apple-darwin, osx-x64, macos-latest, x86_64-apple-darwin, dmg,app,updater, dmg) (push) Has been cancelled
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-x86_64-pc-windows-msvc.exe, win-x64, windows-latest, x86_64-pc-windows-msvc, nsis,updater, nsis) (push) Has been cancelled
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-x86_64-unknown-linux-gnu, linux-x64, ubuntu-22.04, x86_64-unknown-linux-gnu, appimage,updater, appimage) (push) Has been cancelled
Build and Release / Prepare & create release (push) Has been cancelled
Build and Release / Publish release (push) Has been cancelled
Added the visual briefing assistant (#893)
2026-08-02 21:41:12 +02:00

30 lines
1.2 KiB
C#

using AIStudio.Chat;
namespace AIStudio.Tools.Media;
/// <summary>
/// Persists a completed media transcript for a feature-specific owner.
/// </summary>
public interface IMediaTranscriptStorage
{
/// <summary>
/// Determines whether this storage handles the specified media-import owner.
/// </summary>
/// <param name="owner">The feature-specific media-import owner.</param>
/// <returns><see langword="true"/> when the transcript can be stored.</returns>
bool CanStore(MediaImportOwner owner);
/// <summary>
/// Persists a completed transcript and returns the attachment exposed to the calling workflow.
/// </summary>
/// <param name="target">The stable media-import target.</param>
/// <param name="originalMediaPath">The original media path.</param>
/// <param name="transcript">The completed transcript text.</param>
/// <param name="token">The cancellation token.</param>
/// <returns>The attachment representing the persisted transcript.</returns>
Task<FileAttachment> StoreAsync(
MediaImportTarget target,
string originalMediaPath,
string transcript,
CancellationToken token);
}