package com.airlock.iam.flow.shared.domain.service.continuation;

import com.airlock.iam.base.api.domain.model.user.UserId;
import com.airlock.iam.flow.api.domain.model.flow.FlowId;
import com.airlock.iam.flow.shared.domain.model.continuation.FlowContinuationInformation;
import com.airlock.iam.flow.shared.domain.model.continuation.FlowContinuationToken;
import com.airlock.iam.flow.shared.domain.model.continuation.FlowContinuationTokenHash;
import java.time.Duration;
import java.util.Optional;

public interface FlowContinuationTokenService {
   FlowContinuationToken createContinuationToken(UserId var1, FlowId var2, Duration var3);

   Optional<FlowContinuationInformation> resolveContinuationToken(FlowContinuationToken var1);

   void deleteContinuationToken(FlowContinuationTokenHash var1);
}
