// Generated by the protocol buffer compiler. DO NOT EDIT!
// source: basic_types.proto
// Protobuf Java Version: 3.25.3
package com.hedera.hashgraph.sdk.proto;
public interface KeyOrBuilder extends
// @@protoc_insertion_point(interface_extends:proto.Key)
com.google.protobuf.MessageLiteOrBuilder {
/**
*
**
* smart contract instance that is authorized as if it had signed with a key
*
*
* .proto.ContractID contractID = 1;
* @return Whether the contractID field is set.
*/
boolean hasContractID();
/**
*
**
* smart contract instance that is authorized as if it had signed with a key
*
*
* .proto.ContractID contractID = 1;
* @return The contractID.
*/
com.hedera.hashgraph.sdk.proto.ContractID getContractID();
/**
*
**
* Ed25519 public key bytes
*
*
* bytes ed25519 = 2;
* @return Whether the ed25519 field is set.
*/
boolean hasEd25519();
/**
*
**
* Ed25519 public key bytes
*
*
* bytes ed25519 = 2;
* @return The ed25519.
*/
com.google.protobuf.ByteString getEd25519();
/**
*
**
* (NOT SUPPORTED) RSA-3072 public key bytes
*
*
* bytes RSA_3072 = 3;
* @return Whether the rSA3072 field is set.
*/
boolean hasRSA3072();
/**
*
**
* (NOT SUPPORTED) RSA-3072 public key bytes
*
*
* bytes RSA_3072 = 3;
* @return The rSA3072.
*/
com.google.protobuf.ByteString getRSA3072();
/**
*
**
* (NOT SUPPORTED) ECDSA with the p-384 curve public key bytes
*
*
* bytes ECDSA_384 = 4;
* @return Whether the eCDSA384 field is set.
*/
boolean hasECDSA384();
/**
*
**
* (NOT SUPPORTED) ECDSA with the p-384 curve public key bytes
*
*
* bytes ECDSA_384 = 4;
* @return The eCDSA384.
*/
com.google.protobuf.ByteString getECDSA384();
/**
*
**
* a threshold N followed by a list of M keys, any N of which are required to form a valid
* signature
*
*
* .proto.ThresholdKey thresholdKey = 5;
* @return Whether the thresholdKey field is set.
*/
boolean hasThresholdKey();
/**
*
**
* a threshold N followed by a list of M keys, any N of which are required to form a valid
* signature
*
*
* .proto.ThresholdKey thresholdKey = 5;
* @return The thresholdKey.
*/
com.hedera.hashgraph.sdk.proto.ThresholdKey getThresholdKey();
/**
*
**
* A list of Keys of the Key type.
*
*
* .proto.KeyList keyList = 6;
* @return Whether the keyList field is set.
*/
boolean hasKeyList();
/**
*
**
* A list of Keys of the Key type.
*
*
* .proto.KeyList keyList = 6;
* @return The keyList.
*/
com.hedera.hashgraph.sdk.proto.KeyList getKeyList();
/**
*
**
* Compressed ECDSA(secp256k1) public key bytes
*
*
* bytes ECDSA_secp256k1 = 7;
* @return Whether the eCDSASecp256k1 field is set.
*/
boolean hasECDSASecp256K1();
/**
*
**
* Compressed ECDSA(secp256k1) public key bytes
*
*
* bytes ECDSA_secp256k1 = 7;
* @return The eCDSASecp256k1.
*/
com.google.protobuf.ByteString getECDSASecp256K1();
/**
*
**
* A smart contract that, if the recipient of the active message frame, should be treated
* as having signed. (Note this does not mean the <i>code being executed in the frame</i>
* will belong to the given contract, since it could be running another contract's code via
* <tt>delegatecall</tt>. So setting this key is a more permissive version of setting the
* contractID key, which also requires the code in the active message frame belong to the
* the contract with the given id.)
*
*
* .proto.ContractID delegatable_contract_id = 8;
* @return Whether the delegatableContractId field is set.
*/
boolean hasDelegatableContractId();
/**
*
**
* A smart contract that, if the recipient of the active message frame, should be treated
* as having signed. (Note this does not mean the <i>code being executed in the frame</i>
* will belong to the given contract, since it could be running another contract's code via
* <tt>delegatecall</tt>. So setting this key is a more permissive version of setting the
* contractID key, which also requires the code in the active message frame belong to the
* the contract with the given id.)
*
*
* .proto.ContractID delegatable_contract_id = 8;
* @return The delegatableContractId.
*/
com.hedera.hashgraph.sdk.proto.ContractID getDelegatableContractId();
public com.hedera.hashgraph.sdk.proto.Key.KeyCase getKeyCase();
}