namespace MxGateway.Server.Security.Authentication; public sealed record ApiKeyVerificationResult( bool Succeeded, ApiKeyIdentity? Identity, ApiKeyVerificationFailure Failure) { public static ApiKeyVerificationResult Success(ApiKeyIdentity identity) { return new ApiKeyVerificationResult( Succeeded: true, Identity: identity, Failure: ApiKeyVerificationFailure.None); } public static ApiKeyVerificationResult Fail(ApiKeyVerificationFailure failure) { return new ApiKeyVerificationResult( Succeeded: false, Identity: null, Failure: failure); } }