using StellaOps.Router.Common.Enums;
namespace StellaOps.Router.Common.Models;
///
/// Represents the outcome of a routing decision.
///
public sealed record RoutingDecision
{
///
/// Gets the selected endpoint.
///
public required EndpointDescriptor Endpoint { get; init; }
///
/// Gets the selected connection.
///
public required ConnectionState Connection { get; init; }
///
/// Gets the transport type to use.
///
public required TransportType TransportType { get; init; }
///
/// Gets the effective timeout for the request.
///
public required TimeSpan EffectiveTimeout { get; init; }
}