using System.Text.Json; using System.Text.Json.Serialization; using NozCli.Core.Config; using NozCli.Core.Models; namespace NozCli.Core.Serialization; [JsonSourceGenerationOptions(PropertyNamingPolicy = JsonKnownNamingPolicy.SnakeCaseLower)] [JsonSerializable(typeof(LocalConfig))] [JsonSerializable(typeof(PushBody))] [JsonSerializable(typeof(JsonElement))] [JsonSerializable(typeof(NotesCacheFile))] [JsonSerializable(typeof(List))] [JsonSerializable(typeof(NoteInfo))] [JsonSerializable(typeof(GraphData))] [JsonSerializable(typeof(List))] [JsonSerializable(typeof(List))] [JsonSerializable(typeof(List))] [JsonSerializable(typeof(FolderBody))] [JsonSerializable(typeof(List))] [JsonSerializable(typeof(TemplateInfo))] [JsonSerializable(typeof(TemplateContent))] public partial class NozJsonContext : JsonSerializerContext { } [JsonSourceGenerationOptions(PropertyNamingPolicy = JsonKnownNamingPolicy.SnakeCaseLower, WriteIndented = true)] [JsonSerializable(typeof(LocalConfig))] internal partial class NozJsonContextPretty : JsonSerializerContext { } public record PushBody(string Markdown); public record FolderBody(string Title, string? Description);