namespace New.Application.WriteThrough; public enum UpdateOwnedApplicantDetailsResultKind { Success, NotFound, InvariantViolation, } public sealed record UpdateOwnedApplicantDetailsResult( UpdateOwnedApplicantDetailsResultKind Kind, string? Invariant = null, string? Message = null) { public static readonly UpdateOwnedApplicantDetailsResult Success = new(UpdateOwnedApplicantDetailsResultKind.Success); public static readonly UpdateOwnedApplicantDetailsResult NotFound = new(UpdateOwnedApplicantDetailsResultKind.NotFound); public static UpdateOwnedApplicantDetailsResult InvariantViolation(string invariant, string message) => new(UpdateOwnedApplicantDetailsResultKind.InvariantViolation, invariant, message); }