using System.Text.Json.Serialization;
namespace AIStudio.Assistants.VisualBriefing;
///
/// Defines VisualBriefingSource for the visual briefing feature.
///
public sealed class VisualBriefingSource
{
///
/// Defines SourceId for the visual briefing feature.
///
public Guid SourceId { get; set; } = Guid.NewGuid();
///
/// Defines Kind for the visual briefing feature.
///
public VisualBriefingSourceKind Kind { get; set; }
///
/// Defines Path for the visual briefing feature.
///
public string Path { get; set; } = string.Empty;
///
/// Defines Size for the visual briefing feature.
///
public long Size { get; set; }
///
/// Defines LastWriteTimeUtc for the visual briefing feature.
///
public DateTimeOffset LastWriteTimeUtc { get; set; }
///
/// Defines TranscriptStatus for the visual briefing feature.
///
public VisualBriefingTranscriptStatus TranscriptStatus { get; set; } = VisualBriefingTranscriptStatus.NOT_REQUIRED;
///
/// Defines IsMedia for the visual briefing feature.
///
public bool IsMedia { get; set; }
///
/// Defines AssetId for the visual briefing feature.
///
public string AssetId { get; set; } = string.Empty;
///
/// Defines Status for the visual briefing feature.
///
[JsonIgnore]
public VisualBriefingSourceStatus Status { get; set; } = VisualBriefingSourceStatus.UNCHANGED;
}