module arch.node.engines.encryption_messages;

import prelude open;
import arch.node.types.identities open;

type RequestEncrypt :=
  mkRequestEncrypt@{
    data : Plaintext;
    externalIdentity : ExternalIdentity;
    useReadsFor : Bool;
  };

type ReplyEncrypt :=
  mkReplyEncrypt@{
    ciphertext : Ciphertext;
    err : Option String;
  };

type EncryptionMsg :=
  | MsgEncryptionRequest RequestEncrypt
  | MsgEncryptionReply ReplyEncrypt;