syntax = "proto3";

package proto;

option java_package = "com.hederahashgraph.api.proto.java";
option java_multiple_files = true;

import "BasicTypes.proto";
import "QueryHeader.proto";
import "ResponseHeader.proto";
import "CryptoAddClaim.proto";

/* Get a single claim attached to an account, or return null if it does not exist. */
message CryptoGetClaimQuery {
    QueryHeader header = 1; // standard info sent from client to node, including the signed payment, and what kind of response is requested (cost, state proof, both, or neither).
    AccountID accountID = 2; // the account to which the claim may be attached
    bytes hash = 3; // the hash of the claim
}

/* Response when the client sends the node CryptoGetClaimQuery. If the claim exists, there can be a state proof for that single claim. If the claim doesn't exist, then the state proof must be obtained for the account as a whole, which lists all the attached claims, which then proves that any claim not on the list must not exist. */
message CryptoGetClaimResponse {
    ResponseHeader header = 1; //standard response from node to client, including the requested fields: cost, or state proof, or both, or neither
    Claim claim = 2; // the claim (account, hash, keys), or null if there is no Claim with the given hash attached to the given account
}


