/// <summary> /// Stores a claim offer. /// </summary> /// <remarks> /// Stores a claim offer from the issuer specified in the <paramref name="claimOfferJson"/> /// into the provided <paramref name="wallet"/>. The expected structure of the claim offer /// is as follows: /// <code> /// { /// "issuer_did": string, /// "schema_seq_no": string /// } /// </code> /// </remarks> /// <param name="wallet">The target wallet.</param> /// <param name="claimOfferJson">The claim offer JSON</param> /// <returns>An asynchronous <see cref="Task"/> that completes when the operation has completed.</returns> public static Task ProverStoreClaimOfferAsync(Wallet wallet, string claimOfferJson) { var taskCompletionSource = new TaskCompletionSource <bool>(); var commandHandle = PendingCommands.Add(taskCompletionSource); var commandResult = IndyNativeMethods.indy_prover_store_claim_offer( commandHandle, wallet.Handle, claimOfferJson, CallbackHelper.TaskCompletingNoValueCallback ); CallbackHelper.CheckResult(commandResult); return(taskCompletionSource.Task); }