Files
sequence/services/csharp/lib/Models.cs
T
Vitalii Litvinchuk 23958e8e2c first commit
2026-06-13 23:23:50 +03:00

39 lines
682 B
C#

namespace SequenceAuth.Lib;
public enum SequenceState
{
Initialized,
Active,
Rotated,
Compromised
}
public enum ValidationOutcome
{
Success,
SequenceNotFound,
LimitExceeded,
CompromisedSequenceDetected,
InternalError
}
public enum OptionState
{
Some,
None
}
public record Option<T>(T? Value, OptionState State)
{
public static Option<T> Some(T value) => new(value, OptionState.Some);
public static Option<T> None() => new(default, OptionState.None);
}
public enum StoreOutcome
{
Success,
Failure
}
public record SequenceData(string UserId, int RequestsRemaining, SequenceState State, string NextSequenceId);