thalos-bff/src/Thalos.Bff.Application/Adapters/IThalosServiceClient.cs
2026-02-22 04:10:17 -06:00

32 lines
1.2 KiB
C#

using Thalos.Bff.Application.Contracts;
using Thalos.Service.Identity.Abstractions.Contracts;
namespace Thalos.Bff.Application.Adapters;
/// <summary>
/// Adapter boundary for downstream thalos-service calls.
/// </summary>
public interface IThalosServiceClient
{
/// <summary>
/// Requests token issuance from thalos-service.
/// </summary>
/// <param name="request">Identity token issuance request.</param>
/// <returns>Token issuance response.</returns>
Task<IssueIdentityTokenResponse> IssueTokenAsync(IssueIdentityTokenRequest request);
/// <summary>
/// Requests policy evaluation from thalos-service.
/// </summary>
/// <param name="request">Identity policy request.</param>
/// <returns>Identity policy response.</returns>
Task<EvaluateIdentityPolicyResponse> EvaluatePolicyAsync(EvaluateIdentityPolicyRequest request);
/// <summary>
/// Requests token refresh from thalos-service.
/// </summary>
/// <param name="request">Session refresh request.</param>
/// <returns>Session refresh response.</returns>
Task<RefreshIdentitySessionResponse> RefreshSessionAsync(RefreshIdentitySessionRequest request);
}