namespace CoreAgent.Domain.Models { public class ApiResponse { public bool Success { get; set; } public string? Message { get; set; } public T? Data { get; set; } public List Errors { get; set; } public ApiResponse() { Success = true; Errors = new List(); } public static ApiResponse CreateSuccess(T data, string? message = null) { return new ApiResponse { Success = true, Data = data, Message = message }; } public static ApiResponse CreateError(string message, List? errors = null) { return new ApiResponse { Success = false, Message = message, Errors = errors ?? new List() }; } } public class ApiResponse : ApiResponse { public new static ApiResponse CreateSuccess(string? message = null) { return new ApiResponse { Success = true, Message = message }; } public new static ApiResponse CreateError(string message, List? errors = null) { return new ApiResponse { Success = false, Message = message, Errors = errors ?? new List() }; } } }