namespace IOL.GreatOffice.Api.Endpoints.Internal; /// /// A base class for an endpoint that accepts parameters. /// public static class RouteBaseAsync { public static class WithRequest { public abstract class WithResult : BaseRoute { public abstract Task HandleAsync( TRequest request, CancellationToken cancellationToken = default ); } public abstract class WithoutResult : BaseRoute { public abstract Task HandleAsync( TRequest request, CancellationToken cancellationToken = default ); } public abstract class WithActionResult : BaseRoute { public abstract Task> HandleAsync( TRequest request, CancellationToken cancellationToken = default ); } public abstract class WithActionResult : BaseRoute { public abstract Task HandleAsync( TRequest request, CancellationToken cancellationToken = default ); } } public static class WithoutRequest { public abstract class WithResult : BaseRoute { public abstract Task HandleAsync( CancellationToken cancellationToken = default ); } public abstract class WithoutResult : BaseRoute { public abstract Task HandleAsync( CancellationToken cancellationToken = default ); } public abstract class WithActionResult : BaseRoute { public abstract Task> HandleAsync( CancellationToken cancellationToken = default ); } public abstract class WithActionResult : BaseRoute { public abstract Task HandleAsync( CancellationToken cancellationToken = default ); } } }