using NATS.Server.Auth; namespace NATS.Server.Imports; public sealed class ServiceExport { /// /// Gets authorization rules controlling which accounts may import this service. /// public ExportAuth Auth { get; init; } = new(); /// /// Gets the exporting account that owns this service definition. /// public Account? Account { get; init; } /// /// Gets the response mode expected from service responders (singleton or streamed). /// public ServiceResponseType ResponseType { get; init; } = ServiceResponseType.Singleton; /// /// Gets the threshold used for service latency advisories and slow-response tracking. /// public TimeSpan ResponseThreshold { get; init; } = TimeSpan.FromMinutes(2); /// /// Gets optional service latency sampling configuration for exported service calls. /// public ServiceLatency? Latency { get; init; } /// /// Gets a value indicating whether distributed tracing headers are allowed for this service. /// public bool AllowTrace { get; init; } }