// Copyright (c) Microsoft. All rights reserved. using System.Text.Json.Serialization; namespace LongRunningTools; /// /// Represents the input for the content generation workflow. /// public sealed class ContentGenerationInput { [JsonPropertyName("topic")] public string Topic { get; set; } = string.Empty; [JsonPropertyName("max_review_attempts")] public int MaxReviewAttempts { get; set; } = 3; [JsonPropertyName("approval_timeout_hours")] public float ApprovalTimeoutHours { get; set; } = 72; } /// /// Represents the content generated by the writer agent. /// public sealed class GeneratedContent { [JsonPropertyName("title")] public string Title { get; set; } = string.Empty; [JsonPropertyName("content")] public string Content { get; set; } = string.Empty; } /// /// Represents the human approval response. /// public sealed class HumanApprovalResponse { [JsonPropertyName("approved")] public bool Approved { get; set; } [JsonPropertyName("feedback")] public string Feedback { get; set; } = string.Empty; }