
@namespace("keybase.1")
protocol prove {
  import idl "common.avdl";
  import idl "identify_common.avdl";
  import idl "prove_common.avdl";

  record CheckProofStatus {
    boolean found;
    ProofStatus status;
    string proofText;
    ProofState state;
  }

  record StartProofResult {
    SigID sigID;
  }

  /*
    Create a proof. Set promptPosted to true to enable the okToCheck,
    displayRecheckWarning ui loop.
  */
  StartProofResult startProof(int sessionID, string service, string username, boolean force, boolean promptPosted, boolean auto);
  CheckProofStatus checkProof(int sessionID, SigID sigID);
}
