package com.airlock.iam.flow.shared.domain.model.oath;

import com.airlock.iam.authentication.api.domain.model.step.AuthenticationFlowStep;
import com.airlock.iam.common.api.domain.model.otp.UnverifiedOtp;
import com.airlock.iam.flow.api.domain.model.step.StepAction;
import com.airlock.iam.flow.api.domain.model.step.StepError;
import com.airlock.iam.flow.api.domain.model.step.StepResult;

public interface OathOtpAuthenticationStep extends AuthenticationFlowStep {
   StepResult checkOtp(UnverifiedOtp var1);

   enum OathOtpStepActions implements StepAction {
      OATH_OTP_REQUIRED,
      NEXT_OATH_OTP_REQUIRED;
   }

   enum OathOtpStepErrors implements StepError {
      OATH_OTP_WRONG;
   }
}
