import android.annotation.NonNull;
import android.annotation.Nullable;
import java.security.GeneralSecurityException;
import java.security.InvalidKeyException;
import java.security.PrivateKey;
import java.security.PublicKey;

public interface HpkeSpi {
    void engineInitSender(@NonNull PublicKey var1, @Nullable byte[] var2, @Nullable PrivateKey var3, @Nullable byte[] var4, @Nullable byte[] var5) throws InvalidKeyException;

    void engineInitSenderWithSeed(@NonNull PublicKey var1, @Nullable byte[] var2, @Nullable PrivateKey var3, @Nullable byte[] var4, @Nullable byte[] var5, @NonNull byte[] var6) throws InvalidKeyException;

    void engineInitRecipient(@NonNull byte[] var1, @NonNull PrivateKey var2, @Nullable byte[] var3, @Nullable PublicKey var4, @Nullable byte[] var5, @Nullable byte[] var6) throws InvalidKeyException;

    @NonNull
    byte[] engineSeal(@NonNull byte[] var1, @Nullable byte[] var2);

    @NonNull
    byte[] engineOpen(@NonNull byte[] var1, @Nullable byte[] var2) throws GeneralSecurityException;

    @NonNull
    byte[] engineExport(int var1, @Nullable byte[] var2);

    @NonNull
    byte[] getEncapsulated();
}