nockchain-grpc/nockchain/blockchain.pb.go

2505 lines
76 KiB
Go
Raw Normal View History

2025-11-04 10:38:31 +07:00
// nockchain/common/v2/blockchain.proto
2025-10-06 13:38:53 +07:00
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.36.9
// protoc v3.20.3
// source: blockchain.proto
package nockchain
import (
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
unsafe "unsafe"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
2025-11-04 10:38:31 +07:00
type Balance struct {
state protoimpl.MessageState `protogen:"open.v1"`
Notes []*BalanceEntry `protobuf:"bytes,1,rep,name=notes,proto3" json:"notes,omitempty"`
Height *BlockHeight `protobuf:"bytes,2,opt,name=height,proto3" json:"height,omitempty"`
BlockId *Hash `protobuf:"bytes,3,opt,name=block_id,json=blockId,proto3,oneof" json:"block_id,omitempty"`
Page *PageResponse `protobuf:"bytes,4,opt,name=page,proto3" json:"page,omitempty"`
2025-10-06 13:38:53 +07:00
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
2025-11-04 10:38:31 +07:00
func (x *Balance) Reset() {
*x = Balance{}
2025-10-06 13:38:53 +07:00
mi := &file_blockchain_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
2025-11-04 10:38:31 +07:00
func (x *Balance) String() string {
2025-10-06 13:38:53 +07:00
return protoimpl.X.MessageStringOf(x)
}
2025-11-04 10:38:31 +07:00
func (*Balance) ProtoMessage() {}
2025-10-06 13:38:53 +07:00
2025-11-04 10:38:31 +07:00
func (x *Balance) ProtoReflect() protoreflect.Message {
2025-10-06 13:38:53 +07:00
mi := &file_blockchain_proto_msgTypes[0]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
2025-11-04 10:38:31 +07:00
// Deprecated: Use Balance.ProtoReflect.Descriptor instead.
func (*Balance) Descriptor() ([]byte, []int) {
2025-10-06 13:38:53 +07:00
return file_blockchain_proto_rawDescGZIP(), []int{0}
}
2025-11-04 10:38:31 +07:00
func (x *Balance) GetNotes() []*BalanceEntry {
2025-10-06 13:38:53 +07:00
if x != nil {
return x.Notes
}
return nil
}
2025-11-04 10:38:31 +07:00
func (x *Balance) GetHeight() *BlockHeight {
2025-10-06 13:38:53 +07:00
if x != nil {
return x.Height
}
return nil
}
2025-11-04 10:38:31 +07:00
func (x *Balance) GetBlockId() *Hash {
2025-10-06 13:38:53 +07:00
if x != nil {
return x.BlockId
}
return nil
}
2025-11-04 10:38:31 +07:00
func (x *Balance) GetPage() *PageResponse {
2025-10-06 13:38:53 +07:00
if x != nil {
return x.Page
}
return nil
}
type BalanceEntry struct {
state protoimpl.MessageState `protogen:"open.v1"`
Name *Name `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
Note *Note `protobuf:"bytes,2,opt,name=note,proto3" json:"note,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *BalanceEntry) Reset() {
*x = BalanceEntry{}
mi := &file_blockchain_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *BalanceEntry) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*BalanceEntry) ProtoMessage() {}
func (x *BalanceEntry) ProtoReflect() protoreflect.Message {
mi := &file_blockchain_proto_msgTypes[1]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use BalanceEntry.ProtoReflect.Descriptor instead.
func (*BalanceEntry) Descriptor() ([]byte, []int) {
return file_blockchain_proto_rawDescGZIP(), []int{1}
}
func (x *BalanceEntry) GetName() *Name {
if x != nil {
return x.Name
}
return nil
}
func (x *BalanceEntry) GetNote() *Note {
if x != nil {
return x.Note
}
return nil
}
type RawTransaction struct {
state protoimpl.MessageState `protogen:"open.v1"`
2025-11-04 10:38:31 +07:00
Version *NoteVersion `protobuf:"bytes,1,opt,name=version,proto3" json:"version,omitempty"`
Id *Hash `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"`
Spends []*SpendEntry `protobuf:"bytes,3,rep,name=spends,proto3" json:"spends,omitempty"`
2025-10-06 13:38:53 +07:00
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *RawTransaction) Reset() {
*x = RawTransaction{}
mi := &file_blockchain_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *RawTransaction) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*RawTransaction) ProtoMessage() {}
func (x *RawTransaction) ProtoReflect() protoreflect.Message {
mi := &file_blockchain_proto_msgTypes[2]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use RawTransaction.ProtoReflect.Descriptor instead.
func (*RawTransaction) Descriptor() ([]byte, []int) {
return file_blockchain_proto_rawDescGZIP(), []int{2}
}
2025-11-04 10:38:31 +07:00
func (x *RawTransaction) GetVersion() *NoteVersion {
2025-10-06 13:38:53 +07:00
if x != nil {
2025-11-04 10:38:31 +07:00
return x.Version
2025-10-06 13:38:53 +07:00
}
return nil
}
2025-11-04 10:38:31 +07:00
func (x *RawTransaction) GetId() *Hash {
2025-10-06 13:38:53 +07:00
if x != nil {
2025-11-04 10:38:31 +07:00
return x.Id
2025-10-06 13:38:53 +07:00
}
return nil
}
2025-11-04 10:38:31 +07:00
func (x *RawTransaction) GetSpends() []*SpendEntry {
2025-10-06 13:38:53 +07:00
if x != nil {
2025-11-04 10:38:31 +07:00
return x.Spends
2025-10-06 13:38:53 +07:00
}
return nil
}
2025-11-04 10:38:31 +07:00
type SpendEntry struct {
2025-10-06 13:38:53 +07:00
state protoimpl.MessageState `protogen:"open.v1"`
Name *Name `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
2025-11-04 10:38:31 +07:00
Spend *Spend `protobuf:"bytes,2,opt,name=spend,proto3" json:"spend,omitempty"`
2025-10-06 13:38:53 +07:00
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
2025-11-04 10:38:31 +07:00
func (x *SpendEntry) Reset() {
*x = SpendEntry{}
2025-10-06 13:38:53 +07:00
mi := &file_blockchain_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
2025-11-04 10:38:31 +07:00
func (x *SpendEntry) String() string {
2025-10-06 13:38:53 +07:00
return protoimpl.X.MessageStringOf(x)
}
2025-11-04 10:38:31 +07:00
func (*SpendEntry) ProtoMessage() {}
2025-10-06 13:38:53 +07:00
2025-11-04 10:38:31 +07:00
func (x *SpendEntry) ProtoReflect() protoreflect.Message {
2025-10-06 13:38:53 +07:00
mi := &file_blockchain_proto_msgTypes[3]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
2025-11-04 10:38:31 +07:00
// Deprecated: Use SpendEntry.ProtoReflect.Descriptor instead.
func (*SpendEntry) Descriptor() ([]byte, []int) {
2025-10-06 13:38:53 +07:00
return file_blockchain_proto_rawDescGZIP(), []int{3}
}
2025-11-04 10:38:31 +07:00
func (x *SpendEntry) GetName() *Name {
2025-10-06 13:38:53 +07:00
if x != nil {
return x.Name
}
return nil
}
2025-11-04 10:38:31 +07:00
func (x *SpendEntry) GetSpend() *Spend {
2025-10-06 13:38:53 +07:00
if x != nil {
2025-11-04 10:38:31 +07:00
return x.Spend
2025-10-06 13:38:53 +07:00
}
return nil
}
2025-11-04 10:38:31 +07:00
type Spend struct {
state protoimpl.MessageState `protogen:"open.v1"`
// Types that are valid to be assigned to SpendKind:
//
// *Spend_Legacy
// *Spend_Witness
SpendKind isSpend_SpendKind `protobuf_oneof:"spend_kind"`
2025-10-06 13:38:53 +07:00
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
2025-11-04 10:38:31 +07:00
func (x *Spend) Reset() {
*x = Spend{}
2025-10-06 13:38:53 +07:00
mi := &file_blockchain_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
2025-11-04 10:38:31 +07:00
func (x *Spend) String() string {
2025-10-06 13:38:53 +07:00
return protoimpl.X.MessageStringOf(x)
}
2025-11-04 10:38:31 +07:00
func (*Spend) ProtoMessage() {}
2025-10-06 13:38:53 +07:00
2025-11-04 10:38:31 +07:00
func (x *Spend) ProtoReflect() protoreflect.Message {
2025-10-06 13:38:53 +07:00
mi := &file_blockchain_proto_msgTypes[4]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
2025-11-04 10:38:31 +07:00
// Deprecated: Use Spend.ProtoReflect.Descriptor instead.
func (*Spend) Descriptor() ([]byte, []int) {
2025-10-06 13:38:53 +07:00
return file_blockchain_proto_rawDescGZIP(), []int{4}
}
2025-11-04 10:38:31 +07:00
func (x *Spend) GetSpendKind() isSpend_SpendKind {
2025-10-06 13:38:53 +07:00
if x != nil {
2025-11-04 10:38:31 +07:00
return x.SpendKind
2025-10-06 13:38:53 +07:00
}
return nil
}
2025-11-04 10:38:31 +07:00
func (x *Spend) GetLegacy() *LegacySpend {
2025-10-06 13:38:53 +07:00
if x != nil {
2025-11-04 10:38:31 +07:00
if x, ok := x.SpendKind.(*Spend_Legacy); ok {
return x.Legacy
}
2025-10-06 13:38:53 +07:00
}
return nil
}
2025-11-04 10:38:31 +07:00
func (x *Spend) GetWitness() *WitnessSpend {
if x != nil {
if x, ok := x.SpendKind.(*Spend_Witness); ok {
return x.Witness
}
}
return nil
}
type isSpend_SpendKind interface {
isSpend_SpendKind()
}
type Spend_Legacy struct {
Legacy *LegacySpend `protobuf:"bytes,1,opt,name=legacy,proto3,oneof"`
}
type Spend_Witness struct {
Witness *WitnessSpend `protobuf:"bytes,2,opt,name=witness,proto3,oneof"`
}
func (*Spend_Legacy) isSpend_SpendKind() {}
func (*Spend_Witness) isSpend_SpendKind() {}
type LegacySpend struct {
2025-10-06 13:38:53 +07:00
state protoimpl.MessageState `protogen:"open.v1"`
Signature *Signature `protobuf:"bytes,1,opt,name=signature,proto3" json:"signature,omitempty"`
Seeds []*Seed `protobuf:"bytes,2,rep,name=seeds,proto3" json:"seeds,omitempty"`
MinerFeeNicks *Nicks `protobuf:"bytes,3,opt,name=miner_fee_nicks,json=minerFeeNicks,proto3" json:"miner_fee_nicks,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
2025-11-04 10:38:31 +07:00
func (x *LegacySpend) Reset() {
*x = LegacySpend{}
2025-10-06 13:38:53 +07:00
mi := &file_blockchain_proto_msgTypes[5]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
2025-11-04 10:38:31 +07:00
func (x *LegacySpend) String() string {
2025-10-06 13:38:53 +07:00
return protoimpl.X.MessageStringOf(x)
}
2025-11-04 10:38:31 +07:00
func (*LegacySpend) ProtoMessage() {}
2025-10-06 13:38:53 +07:00
2025-11-04 10:38:31 +07:00
func (x *LegacySpend) ProtoReflect() protoreflect.Message {
2025-10-06 13:38:53 +07:00
mi := &file_blockchain_proto_msgTypes[5]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
2025-11-04 10:38:31 +07:00
// Deprecated: Use LegacySpend.ProtoReflect.Descriptor instead.
func (*LegacySpend) Descriptor() ([]byte, []int) {
2025-10-06 13:38:53 +07:00
return file_blockchain_proto_rawDescGZIP(), []int{5}
}
2025-11-04 10:38:31 +07:00
func (x *LegacySpend) GetSignature() *Signature {
2025-10-06 13:38:53 +07:00
if x != nil {
return x.Signature
}
return nil
}
2025-11-04 10:38:31 +07:00
func (x *LegacySpend) GetSeeds() []*Seed {
2025-10-06 13:38:53 +07:00
if x != nil {
return x.Seeds
}
return nil
}
2025-11-04 10:38:31 +07:00
func (x *LegacySpend) GetMinerFeeNicks() *Nicks {
2025-10-06 13:38:53 +07:00
if x != nil {
return x.MinerFeeNicks
}
return nil
}
2025-11-04 10:38:31 +07:00
type WitnessSpend struct {
state protoimpl.MessageState `protogen:"open.v1"`
Witness *Witness `protobuf:"bytes,1,opt,name=witness,proto3" json:"witness,omitempty"`
Seeds []*Seed `protobuf:"bytes,2,rep,name=seeds,proto3" json:"seeds,omitempty"`
Fee *Nicks `protobuf:"bytes,3,opt,name=fee,proto3" json:"fee,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *WitnessSpend) Reset() {
*x = WitnessSpend{}
mi := &file_blockchain_proto_msgTypes[6]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *WitnessSpend) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*WitnessSpend) ProtoMessage() {}
func (x *WitnessSpend) ProtoReflect() protoreflect.Message {
mi := &file_blockchain_proto_msgTypes[6]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use WitnessSpend.ProtoReflect.Descriptor instead.
func (*WitnessSpend) Descriptor() ([]byte, []int) {
return file_blockchain_proto_rawDescGZIP(), []int{6}
}
func (x *WitnessSpend) GetWitness() *Witness {
if x != nil {
return x.Witness
}
return nil
}
func (x *WitnessSpend) GetSeeds() []*Seed {
if x != nil {
return x.Seeds
}
return nil
}
func (x *WitnessSpend) GetFee() *Nicks {
if x != nil {
return x.Fee
}
return nil
}
2025-10-06 13:38:53 +07:00
type Seed struct {
2025-11-04 10:38:31 +07:00
state protoimpl.MessageState `protogen:"open.v1"`
// Absent when the seed originates from a coinbase output.
OutputSource *Source `protobuf:"bytes,1,opt,name=output_source,json=outputSource,proto3" json:"output_source,omitempty"`
LockRoot *Hash `protobuf:"bytes,2,opt,name=lock_root,json=lockRoot,proto3" json:"lock_root,omitempty"`
NoteData *NoteData `protobuf:"bytes,3,opt,name=note_data,json=noteData,proto3" json:"note_data,omitempty"`
Gift *Nicks `protobuf:"bytes,4,opt,name=gift,proto3" json:"gift,omitempty"`
ParentHash *Hash `protobuf:"bytes,5,opt,name=parent_hash,json=parentHash,proto3" json:"parent_hash,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *Seed) Reset() {
*x = Seed{}
mi := &file_blockchain_proto_msgTypes[7]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *Seed) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Seed) ProtoMessage() {}
func (x *Seed) ProtoReflect() protoreflect.Message {
mi := &file_blockchain_proto_msgTypes[7]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Seed.ProtoReflect.Descriptor instead.
func (*Seed) Descriptor() ([]byte, []int) {
return file_blockchain_proto_rawDescGZIP(), []int{7}
}
func (x *Seed) GetOutputSource() *Source {
if x != nil {
return x.OutputSource
}
return nil
}
func (x *Seed) GetLockRoot() *Hash {
if x != nil {
return x.LockRoot
}
return nil
}
func (x *Seed) GetNoteData() *NoteData {
if x != nil {
return x.NoteData
}
return nil
}
func (x *Seed) GetGift() *Nicks {
if x != nil {
return x.Gift
}
return nil
}
func (x *Seed) GetParentHash() *Hash {
if x != nil {
return x.ParentHash
}
return nil
}
type Witness struct {
state protoimpl.MessageState `protogen:"open.v1"`
LockMerkleProof *LockMerkleProof `protobuf:"bytes,1,opt,name=lock_merkle_proof,json=lockMerkleProof,proto3" json:"lock_merkle_proof,omitempty"`
PkhSignature *PkhSignature `protobuf:"bytes,2,opt,name=pkh_signature,json=pkhSignature,proto3" json:"pkh_signature,omitempty"`
Hax []*HaxPreimage `protobuf:"bytes,3,rep,name=hax,proto3" json:"hax,omitempty"` //uint64 tim = 4; // reserved field, currently 0
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *Witness) Reset() {
*x = Witness{}
mi := &file_blockchain_proto_msgTypes[8]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *Witness) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Witness) ProtoMessage() {}
func (x *Witness) ProtoReflect() protoreflect.Message {
mi := &file_blockchain_proto_msgTypes[8]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Witness.ProtoReflect.Descriptor instead.
func (*Witness) Descriptor() ([]byte, []int) {
return file_blockchain_proto_rawDescGZIP(), []int{8}
}
func (x *Witness) GetLockMerkleProof() *LockMerkleProof {
if x != nil {
return x.LockMerkleProof
}
return nil
}
func (x *Witness) GetPkhSignature() *PkhSignature {
if x != nil {
return x.PkhSignature
}
return nil
}
func (x *Witness) GetHax() []*HaxPreimage {
if x != nil {
return x.Hax
}
return nil
}
type HaxPreimage struct {
state protoimpl.MessageState `protogen:"open.v1"`
Hash *Hash `protobuf:"bytes,1,opt,name=hash,proto3" json:"hash,omitempty"`
Value []byte `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"` // jammed noun bytes
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *HaxPreimage) Reset() {
*x = HaxPreimage{}
mi := &file_blockchain_proto_msgTypes[9]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *HaxPreimage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*HaxPreimage) ProtoMessage() {}
func (x *HaxPreimage) ProtoReflect() protoreflect.Message {
mi := &file_blockchain_proto_msgTypes[9]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use HaxPreimage.ProtoReflect.Descriptor instead.
func (*HaxPreimage) Descriptor() ([]byte, []int) {
return file_blockchain_proto_rawDescGZIP(), []int{9}
}
func (x *HaxPreimage) GetHash() *Hash {
if x != nil {
return x.Hash
}
return nil
}
func (x *HaxPreimage) GetValue() []byte {
if x != nil {
return x.Value
}
return nil
}
type PkhSignature struct {
state protoimpl.MessageState `protogen:"open.v1"`
Entries []*PkhSignatureEntry `protobuf:"bytes,1,rep,name=entries,proto3" json:"entries,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *PkhSignature) Reset() {
*x = PkhSignature{}
mi := &file_blockchain_proto_msgTypes[10]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *PkhSignature) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PkhSignature) ProtoMessage() {}
func (x *PkhSignature) ProtoReflect() protoreflect.Message {
mi := &file_blockchain_proto_msgTypes[10]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use PkhSignature.ProtoReflect.Descriptor instead.
func (*PkhSignature) Descriptor() ([]byte, []int) {
return file_blockchain_proto_rawDescGZIP(), []int{10}
}
func (x *PkhSignature) GetEntries() []*PkhSignatureEntry {
if x != nil {
return x.Entries
}
return nil
}
type PkhSignatureEntry struct {
state protoimpl.MessageState `protogen:"open.v1"`
Hash *Hash `protobuf:"bytes,1,opt,name=hash,proto3" json:"hash,omitempty"`
Pubkey *SchnorrPubkey `protobuf:"bytes,2,opt,name=pubkey,proto3" json:"pubkey,omitempty"`
Signature *SchnorrSignature `protobuf:"bytes,3,opt,name=signature,proto3" json:"signature,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *PkhSignatureEntry) Reset() {
*x = PkhSignatureEntry{}
mi := &file_blockchain_proto_msgTypes[11]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *PkhSignatureEntry) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PkhSignatureEntry) ProtoMessage() {}
func (x *PkhSignatureEntry) ProtoReflect() protoreflect.Message {
mi := &file_blockchain_proto_msgTypes[11]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use PkhSignatureEntry.ProtoReflect.Descriptor instead.
func (*PkhSignatureEntry) Descriptor() ([]byte, []int) {
return file_blockchain_proto_rawDescGZIP(), []int{11}
}
func (x *PkhSignatureEntry) GetHash() *Hash {
if x != nil {
return x.Hash
}
return nil
}
func (x *PkhSignatureEntry) GetPubkey() *SchnorrPubkey {
if x != nil {
return x.Pubkey
}
return nil
}
func (x *PkhSignatureEntry) GetSignature() *SchnorrSignature {
if x != nil {
return x.Signature
}
return nil
}
type LockMerkleProof struct {
state protoimpl.MessageState `protogen:"open.v1"`
SpendCondition *SpendCondition `protobuf:"bytes,1,opt,name=spend_condition,json=spendCondition,proto3" json:"spend_condition,omitempty"`
Axis uint64 `protobuf:"varint,2,opt,name=axis,proto3" json:"axis,omitempty"`
Proof *MerkleProof `protobuf:"bytes,3,opt,name=proof,proto3" json:"proof,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *LockMerkleProof) Reset() {
*x = LockMerkleProof{}
mi := &file_blockchain_proto_msgTypes[12]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *LockMerkleProof) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LockMerkleProof) ProtoMessage() {}
func (x *LockMerkleProof) ProtoReflect() protoreflect.Message {
mi := &file_blockchain_proto_msgTypes[12]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use LockMerkleProof.ProtoReflect.Descriptor instead.
func (*LockMerkleProof) Descriptor() ([]byte, []int) {
return file_blockchain_proto_rawDescGZIP(), []int{12}
}
func (x *LockMerkleProof) GetSpendCondition() *SpendCondition {
if x != nil {
return x.SpendCondition
}
return nil
}
func (x *LockMerkleProof) GetAxis() uint64 {
if x != nil {
return x.Axis
}
return 0
}
func (x *LockMerkleProof) GetProof() *MerkleProof {
if x != nil {
return x.Proof
}
return nil
}
type SpendCondition struct {
state protoimpl.MessageState `protogen:"open.v1"`
Primitives []*LockPrimitive `protobuf:"bytes,1,rep,name=primitives,proto3" json:"primitives,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *SpendCondition) Reset() {
*x = SpendCondition{}
mi := &file_blockchain_proto_msgTypes[13]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *SpendCondition) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SpendCondition) ProtoMessage() {}
func (x *SpendCondition) ProtoReflect() protoreflect.Message {
mi := &file_blockchain_proto_msgTypes[13]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use SpendCondition.ProtoReflect.Descriptor instead.
func (*SpendCondition) Descriptor() ([]byte, []int) {
return file_blockchain_proto_rawDescGZIP(), []int{13}
}
func (x *SpendCondition) GetPrimitives() []*LockPrimitive {
if x != nil {
return x.Primitives
}
return nil
}
type LockPrimitive struct {
state protoimpl.MessageState `protogen:"open.v1"`
// Types that are valid to be assigned to Primitive:
//
// *LockPrimitive_Pkh
// *LockPrimitive_Tim
// *LockPrimitive_Hax
// *LockPrimitive_Burn
Primitive isLockPrimitive_Primitive `protobuf_oneof:"primitive"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *LockPrimitive) Reset() {
*x = LockPrimitive{}
mi := &file_blockchain_proto_msgTypes[14]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *LockPrimitive) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LockPrimitive) ProtoMessage() {}
func (x *LockPrimitive) ProtoReflect() protoreflect.Message {
mi := &file_blockchain_proto_msgTypes[14]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use LockPrimitive.ProtoReflect.Descriptor instead.
func (*LockPrimitive) Descriptor() ([]byte, []int) {
return file_blockchain_proto_rawDescGZIP(), []int{14}
}
func (x *LockPrimitive) GetPrimitive() isLockPrimitive_Primitive {
if x != nil {
return x.Primitive
}
return nil
}
func (x *LockPrimitive) GetPkh() *PkhLock {
if x != nil {
if x, ok := x.Primitive.(*LockPrimitive_Pkh); ok {
return x.Pkh
}
}
return nil
}
func (x *LockPrimitive) GetTim() *LockTim {
if x != nil {
if x, ok := x.Primitive.(*LockPrimitive_Tim); ok {
return x.Tim
}
}
return nil
}
func (x *LockPrimitive) GetHax() *HaxLock {
if x != nil {
if x, ok := x.Primitive.(*LockPrimitive_Hax); ok {
return x.Hax
}
}
return nil
}
func (x *LockPrimitive) GetBurn() *BurnLock {
if x != nil {
if x, ok := x.Primitive.(*LockPrimitive_Burn); ok {
return x.Burn
}
}
return nil
}
type isLockPrimitive_Primitive interface {
isLockPrimitive_Primitive()
}
type LockPrimitive_Pkh struct {
Pkh *PkhLock `protobuf:"bytes,1,opt,name=pkh,proto3,oneof"`
}
type LockPrimitive_Tim struct {
Tim *LockTim `protobuf:"bytes,2,opt,name=tim,proto3,oneof"`
}
type LockPrimitive_Hax struct {
Hax *HaxLock `protobuf:"bytes,3,opt,name=hax,proto3,oneof"`
}
type LockPrimitive_Burn struct {
Burn *BurnLock `protobuf:"bytes,4,opt,name=burn,proto3,oneof"`
}
func (*LockPrimitive_Pkh) isLockPrimitive_Primitive() {}
func (*LockPrimitive_Tim) isLockPrimitive_Primitive() {}
func (*LockPrimitive_Hax) isLockPrimitive_Primitive() {}
func (*LockPrimitive_Burn) isLockPrimitive_Primitive() {}
type PkhLock struct {
state protoimpl.MessageState `protogen:"open.v1"`
M uint64 `protobuf:"varint,1,opt,name=m,proto3" json:"m,omitempty"`
Hashes []*Hash `protobuf:"bytes,2,rep,name=hashes,proto3" json:"hashes,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *PkhLock) Reset() {
*x = PkhLock{}
mi := &file_blockchain_proto_msgTypes[15]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *PkhLock) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PkhLock) ProtoMessage() {}
func (x *PkhLock) ProtoReflect() protoreflect.Message {
mi := &file_blockchain_proto_msgTypes[15]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use PkhLock.ProtoReflect.Descriptor instead.
func (*PkhLock) Descriptor() ([]byte, []int) {
return file_blockchain_proto_rawDescGZIP(), []int{15}
}
func (x *PkhLock) GetM() uint64 {
if x != nil {
return x.M
}
return 0
}
func (x *PkhLock) GetHashes() []*Hash {
if x != nil {
return x.Hashes
}
return nil
}
type LockTim struct {
state protoimpl.MessageState `protogen:"open.v1"`
Rel *TimeLockRangeRelative `protobuf:"bytes,1,opt,name=rel,proto3" json:"rel,omitempty"`
Abs *TimeLockRangeAbsolute `protobuf:"bytes,2,opt,name=abs,proto3" json:"abs,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *LockTim) Reset() {
*x = LockTim{}
mi := &file_blockchain_proto_msgTypes[16]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *LockTim) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LockTim) ProtoMessage() {}
func (x *LockTim) ProtoReflect() protoreflect.Message {
mi := &file_blockchain_proto_msgTypes[16]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use LockTim.ProtoReflect.Descriptor instead.
func (*LockTim) Descriptor() ([]byte, []int) {
return file_blockchain_proto_rawDescGZIP(), []int{16}
}
func (x *LockTim) GetRel() *TimeLockRangeRelative {
if x != nil {
return x.Rel
}
return nil
}
func (x *LockTim) GetAbs() *TimeLockRangeAbsolute {
if x != nil {
return x.Abs
}
return nil
}
type HaxLock struct {
state protoimpl.MessageState `protogen:"open.v1"`
Hashes []*Hash `protobuf:"bytes,1,rep,name=hashes,proto3" json:"hashes,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *HaxLock) Reset() {
*x = HaxLock{}
mi := &file_blockchain_proto_msgTypes[17]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *HaxLock) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*HaxLock) ProtoMessage() {}
func (x *HaxLock) ProtoReflect() protoreflect.Message {
mi := &file_blockchain_proto_msgTypes[17]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use HaxLock.ProtoReflect.Descriptor instead.
func (*HaxLock) Descriptor() ([]byte, []int) {
return file_blockchain_proto_rawDescGZIP(), []int{17}
}
func (x *HaxLock) GetHashes() []*Hash {
if x != nil {
return x.Hashes
}
return nil
}
type BurnLock struct {
state protoimpl.MessageState `protogen:"open.v1"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *BurnLock) Reset() {
*x = BurnLock{}
mi := &file_blockchain_proto_msgTypes[18]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *BurnLock) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*BurnLock) ProtoMessage() {}
func (x *BurnLock) ProtoReflect() protoreflect.Message {
mi := &file_blockchain_proto_msgTypes[18]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use BurnLock.ProtoReflect.Descriptor instead.
func (*BurnLock) Descriptor() ([]byte, []int) {
return file_blockchain_proto_rawDescGZIP(), []int{18}
}
type MerkleProof struct {
state protoimpl.MessageState `protogen:"open.v1"`
Root *Hash `protobuf:"bytes,1,opt,name=root,proto3" json:"root,omitempty"`
Path []*Hash `protobuf:"bytes,2,rep,name=path,proto3" json:"path,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
2025-10-06 13:38:53 +07:00
}
2025-11-04 10:38:31 +07:00
func (x *MerkleProof) Reset() {
*x = MerkleProof{}
mi := &file_blockchain_proto_msgTypes[19]
2025-10-06 13:38:53 +07:00
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
2025-11-04 10:38:31 +07:00
func (x *MerkleProof) String() string {
2025-10-06 13:38:53 +07:00
return protoimpl.X.MessageStringOf(x)
}
2025-11-04 10:38:31 +07:00
func (*MerkleProof) ProtoMessage() {}
2025-10-06 13:38:53 +07:00
2025-11-04 10:38:31 +07:00
func (x *MerkleProof) ProtoReflect() protoreflect.Message {
mi := &file_blockchain_proto_msgTypes[19]
2025-10-06 13:38:53 +07:00
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
2025-11-04 10:38:31 +07:00
// Deprecated: Use MerkleProof.ProtoReflect.Descriptor instead.
func (*MerkleProof) Descriptor() ([]byte, []int) {
return file_blockchain_proto_rawDescGZIP(), []int{19}
2025-10-06 13:38:53 +07:00
}
2025-11-04 10:38:31 +07:00
func (x *MerkleProof) GetRoot() *Hash {
2025-10-06 13:38:53 +07:00
if x != nil {
2025-11-04 10:38:31 +07:00
return x.Root
2025-10-06 13:38:53 +07:00
}
return nil
}
2025-11-04 10:38:31 +07:00
func (x *MerkleProof) GetPath() []*Hash {
2025-10-06 13:38:53 +07:00
if x != nil {
2025-11-04 10:38:31 +07:00
return x.Path
2025-10-06 13:38:53 +07:00
}
return nil
}
type OutputSource struct {
state protoimpl.MessageState `protogen:"open.v1"`
Source *Source `protobuf:"bytes,1,opt,name=source,proto3,oneof" json:"source,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *OutputSource) Reset() {
*x = OutputSource{}
2025-11-04 10:38:31 +07:00
mi := &file_blockchain_proto_msgTypes[20]
2025-10-06 13:38:53 +07:00
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *OutputSource) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*OutputSource) ProtoMessage() {}
func (x *OutputSource) ProtoReflect() protoreflect.Message {
2025-11-04 10:38:31 +07:00
mi := &file_blockchain_proto_msgTypes[20]
2025-10-06 13:38:53 +07:00
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use OutputSource.ProtoReflect.Descriptor instead.
func (*OutputSource) Descriptor() ([]byte, []int) {
2025-11-04 10:38:31 +07:00
return file_blockchain_proto_rawDescGZIP(), []int{20}
2025-10-06 13:38:53 +07:00
}
func (x *OutputSource) GetSource() *Source {
if x != nil {
return x.Source
}
return nil
}
type Source struct {
state protoimpl.MessageState `protogen:"open.v1"`
Hash *Hash `protobuf:"bytes,1,opt,name=hash,proto3" json:"hash,omitempty"`
Coinbase bool `protobuf:"varint,2,opt,name=coinbase,proto3" json:"coinbase,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *Source) Reset() {
*x = Source{}
2025-11-04 10:38:31 +07:00
mi := &file_blockchain_proto_msgTypes[21]
2025-10-06 13:38:53 +07:00
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *Source) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Source) ProtoMessage() {}
func (x *Source) ProtoReflect() protoreflect.Message {
2025-11-04 10:38:31 +07:00
mi := &file_blockchain_proto_msgTypes[21]
2025-10-06 13:38:53 +07:00
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Source.ProtoReflect.Descriptor instead.
func (*Source) Descriptor() ([]byte, []int) {
2025-11-04 10:38:31 +07:00
return file_blockchain_proto_rawDescGZIP(), []int{21}
2025-10-06 13:38:53 +07:00
}
func (x *Source) GetHash() *Hash {
if x != nil {
return x.Hash
}
return nil
}
func (x *Source) GetCoinbase() bool {
if x != nil {
return x.Coinbase
}
return false
}
type TimeLockIntent struct {
state protoimpl.MessageState `protogen:"open.v1"`
// Types that are valid to be assigned to Value:
//
// *TimeLockIntent_Absolute
// *TimeLockIntent_Relative
// *TimeLockIntent_AbsoluteAndRelative
Value isTimeLockIntent_Value `protobuf_oneof:"value"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *TimeLockIntent) Reset() {
*x = TimeLockIntent{}
2025-11-04 10:38:31 +07:00
mi := &file_blockchain_proto_msgTypes[22]
2025-10-06 13:38:53 +07:00
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *TimeLockIntent) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*TimeLockIntent) ProtoMessage() {}
func (x *TimeLockIntent) ProtoReflect() protoreflect.Message {
2025-11-04 10:38:31 +07:00
mi := &file_blockchain_proto_msgTypes[22]
2025-10-06 13:38:53 +07:00
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use TimeLockIntent.ProtoReflect.Descriptor instead.
func (*TimeLockIntent) Descriptor() ([]byte, []int) {
2025-11-04 10:38:31 +07:00
return file_blockchain_proto_rawDescGZIP(), []int{22}
2025-10-06 13:38:53 +07:00
}
func (x *TimeLockIntent) GetValue() isTimeLockIntent_Value {
if x != nil {
return x.Value
}
return nil
}
func (x *TimeLockIntent) GetAbsolute() *TimeLockRangeAbsolute {
if x != nil {
if x, ok := x.Value.(*TimeLockIntent_Absolute); ok {
return x.Absolute
}
}
return nil
}
func (x *TimeLockIntent) GetRelative() *TimeLockRangeRelative {
if x != nil {
if x, ok := x.Value.(*TimeLockIntent_Relative); ok {
return x.Relative
}
}
return nil
}
func (x *TimeLockIntent) GetAbsoluteAndRelative() *TimeLockRangeAbsoluteAndRelative {
if x != nil {
if x, ok := x.Value.(*TimeLockIntent_AbsoluteAndRelative); ok {
return x.AbsoluteAndRelative
}
}
return nil
}
type isTimeLockIntent_Value interface {
isTimeLockIntent_Value()
}
type TimeLockIntent_Absolute struct {
Absolute *TimeLockRangeAbsolute `protobuf:"bytes,1,opt,name=absolute,proto3,oneof"`
}
type TimeLockIntent_Relative struct {
Relative *TimeLockRangeRelative `protobuf:"bytes,2,opt,name=relative,proto3,oneof"`
}
type TimeLockIntent_AbsoluteAndRelative struct {
AbsoluteAndRelative *TimeLockRangeAbsoluteAndRelative `protobuf:"bytes,3,opt,name=absolute_and_relative,json=absoluteAndRelative,proto3,oneof"`
}
func (*TimeLockIntent_Absolute) isTimeLockIntent_Value() {}
func (*TimeLockIntent_Relative) isTimeLockIntent_Value() {}
func (*TimeLockIntent_AbsoluteAndRelative) isTimeLockIntent_Value() {}
type TimeLockRangeAbsoluteAndRelative struct {
state protoimpl.MessageState `protogen:"open.v1"`
Absolute *TimeLockRangeAbsolute `protobuf:"bytes,1,opt,name=absolute,proto3,oneof" json:"absolute,omitempty"`
Relative *TimeLockRangeRelative `protobuf:"bytes,2,opt,name=relative,proto3,oneof" json:"relative,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *TimeLockRangeAbsoluteAndRelative) Reset() {
*x = TimeLockRangeAbsoluteAndRelative{}
2025-11-04 10:38:31 +07:00
mi := &file_blockchain_proto_msgTypes[23]
2025-10-06 13:38:53 +07:00
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *TimeLockRangeAbsoluteAndRelative) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*TimeLockRangeAbsoluteAndRelative) ProtoMessage() {}
func (x *TimeLockRangeAbsoluteAndRelative) ProtoReflect() protoreflect.Message {
2025-11-04 10:38:31 +07:00
mi := &file_blockchain_proto_msgTypes[23]
2025-10-06 13:38:53 +07:00
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use TimeLockRangeAbsoluteAndRelative.ProtoReflect.Descriptor instead.
func (*TimeLockRangeAbsoluteAndRelative) Descriptor() ([]byte, []int) {
2025-11-04 10:38:31 +07:00
return file_blockchain_proto_rawDescGZIP(), []int{23}
2025-10-06 13:38:53 +07:00
}
func (x *TimeLockRangeAbsoluteAndRelative) GetAbsolute() *TimeLockRangeAbsolute {
if x != nil {
return x.Absolute
}
return nil
}
func (x *TimeLockRangeAbsoluteAndRelative) GetRelative() *TimeLockRangeRelative {
if x != nil {
return x.Relative
}
return nil
}
// min and max are absolute origin page numbers
type TimeLockRangeAbsolute struct {
state protoimpl.MessageState `protogen:"open.v1"`
Min *BlockHeight `protobuf:"bytes,1,opt,name=min,proto3,oneof" json:"min,omitempty"`
Max *BlockHeight `protobuf:"bytes,2,opt,name=max,proto3,oneof" json:"max,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *TimeLockRangeAbsolute) Reset() {
*x = TimeLockRangeAbsolute{}
2025-11-04 10:38:31 +07:00
mi := &file_blockchain_proto_msgTypes[24]
2025-10-06 13:38:53 +07:00
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *TimeLockRangeAbsolute) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*TimeLockRangeAbsolute) ProtoMessage() {}
func (x *TimeLockRangeAbsolute) ProtoReflect() protoreflect.Message {
2025-11-04 10:38:31 +07:00
mi := &file_blockchain_proto_msgTypes[24]
2025-10-06 13:38:53 +07:00
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use TimeLockRangeAbsolute.ProtoReflect.Descriptor instead.
func (*TimeLockRangeAbsolute) Descriptor() ([]byte, []int) {
2025-11-04 10:38:31 +07:00
return file_blockchain_proto_rawDescGZIP(), []int{24}
2025-10-06 13:38:53 +07:00
}
func (x *TimeLockRangeAbsolute) GetMin() *BlockHeight {
if x != nil {
return x.Min
}
return nil
}
func (x *TimeLockRangeAbsolute) GetMax() *BlockHeight {
if x != nil {
return x.Max
}
return nil
}
// min and max are relative to the note's creation page
type TimeLockRangeRelative struct {
state protoimpl.MessageState `protogen:"open.v1"`
Min *BlockHeightDelta `protobuf:"bytes,1,opt,name=min,proto3,oneof" json:"min,omitempty"`
Max *BlockHeightDelta `protobuf:"bytes,2,opt,name=max,proto3,oneof" json:"max,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *TimeLockRangeRelative) Reset() {
*x = TimeLockRangeRelative{}
2025-11-04 10:38:31 +07:00
mi := &file_blockchain_proto_msgTypes[25]
2025-10-06 13:38:53 +07:00
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *TimeLockRangeRelative) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*TimeLockRangeRelative) ProtoMessage() {}
func (x *TimeLockRangeRelative) ProtoReflect() protoreflect.Message {
2025-11-04 10:38:31 +07:00
mi := &file_blockchain_proto_msgTypes[25]
2025-10-06 13:38:53 +07:00
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use TimeLockRangeRelative.ProtoReflect.Descriptor instead.
func (*TimeLockRangeRelative) Descriptor() ([]byte, []int) {
2025-11-04 10:38:31 +07:00
return file_blockchain_proto_rawDescGZIP(), []int{25}
2025-10-06 13:38:53 +07:00
}
func (x *TimeLockRangeRelative) GetMin() *BlockHeightDelta {
if x != nil {
return x.Min
}
return nil
}
func (x *TimeLockRangeRelative) GetMax() *BlockHeightDelta {
if x != nil {
return x.Max
}
return nil
}
type Lock struct {
state protoimpl.MessageState `protogen:"open.v1"`
KeysRequired uint32 `protobuf:"varint,1,opt,name=keys_required,json=keysRequired,proto3" json:"keys_required,omitempty"` // threshold of keys required to spend the note
// DEPRECATED: repeated string schnorr_pubkeys_b58 = 2;
SchnorrPubkeys []*SchnorrPubkey `protobuf:"bytes,2,rep,name=schnorr_pubkeys,json=schnorrPubkeys,proto3" json:"schnorr_pubkeys,omitempty"` // schnorr pubkeys (curve: cheetah)
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *Lock) Reset() {
*x = Lock{}
2025-11-04 10:38:31 +07:00
mi := &file_blockchain_proto_msgTypes[26]
2025-10-06 13:38:53 +07:00
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *Lock) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Lock) ProtoMessage() {}
func (x *Lock) ProtoReflect() protoreflect.Message {
2025-11-04 10:38:31 +07:00
mi := &file_blockchain_proto_msgTypes[26]
2025-10-06 13:38:53 +07:00
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Lock.ProtoReflect.Descriptor instead.
func (*Lock) Descriptor() ([]byte, []int) {
2025-11-04 10:38:31 +07:00
return file_blockchain_proto_rawDescGZIP(), []int{26}
2025-10-06 13:38:53 +07:00
}
func (x *Lock) GetKeysRequired() uint32 {
if x != nil {
return x.KeysRequired
}
return 0
}
func (x *Lock) GetSchnorrPubkeys() []*SchnorrPubkey {
if x != nil {
return x.SchnorrPubkeys
}
return nil
}
type Name struct {
state protoimpl.MessageState `protogen:"open.v1"`
// First is the hash of whether the note has a timelock and the lock
First *Hash `protobuf:"bytes,1,opt,name=first,proto3" json:"first,omitempty"`
// Last is the hash of the actual timelock and the source
Last *Hash `protobuf:"bytes,2,opt,name=last,proto3" json:"last,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *Name) Reset() {
*x = Name{}
2025-11-04 10:38:31 +07:00
mi := &file_blockchain_proto_msgTypes[27]
2025-10-06 13:38:53 +07:00
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *Name) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Name) ProtoMessage() {}
func (x *Name) ProtoReflect() protoreflect.Message {
2025-11-04 10:38:31 +07:00
mi := &file_blockchain_proto_msgTypes[27]
2025-10-06 13:38:53 +07:00
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Name.ProtoReflect.Descriptor instead.
func (*Name) Descriptor() ([]byte, []int) {
2025-11-04 10:38:31 +07:00
return file_blockchain_proto_rawDescGZIP(), []int{27}
2025-10-06 13:38:53 +07:00
}
func (x *Name) GetFirst() *Hash {
if x != nil {
return x.First
}
return nil
}
func (x *Name) GetLast() *Hash {
if x != nil {
return x.Last
}
return nil
}
type Note struct {
2025-11-04 10:38:31 +07:00
state protoimpl.MessageState `protogen:"open.v1"`
// Types that are valid to be assigned to NoteVersion:
//
// *Note_Legacy
// *Note_V1
NoteVersion isNote_NoteVersion `protobuf_oneof:"note_version"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *Note) Reset() {
*x = Note{}
mi := &file_blockchain_proto_msgTypes[28]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *Note) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Note) ProtoMessage() {}
func (x *Note) ProtoReflect() protoreflect.Message {
mi := &file_blockchain_proto_msgTypes[28]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Note.ProtoReflect.Descriptor instead.
func (*Note) Descriptor() ([]byte, []int) {
return file_blockchain_proto_rawDescGZIP(), []int{28}
}
func (x *Note) GetNoteVersion() isNote_NoteVersion {
if x != nil {
return x.NoteVersion
}
return nil
}
func (x *Note) GetLegacy() *NoteV0 {
if x != nil {
if x, ok := x.NoteVersion.(*Note_Legacy); ok {
return x.Legacy
}
}
return nil
}
func (x *Note) GetV1() *NoteV1 {
if x != nil {
if x, ok := x.NoteVersion.(*Note_V1); ok {
return x.V1
}
}
return nil
}
type isNote_NoteVersion interface {
isNote_NoteVersion()
}
type Note_Legacy struct {
Legacy *NoteV0 `protobuf:"bytes,1,opt,name=legacy,proto3,oneof"`
}
type Note_V1 struct {
V1 *NoteV1 `protobuf:"bytes,2,opt,name=v1,proto3,oneof"`
}
func (*Note_Legacy) isNote_NoteVersion() {}
func (*Note_V1) isNote_NoteVersion() {}
type NoteV0 struct {
2025-10-06 13:38:53 +07:00
state protoimpl.MessageState `protogen:"open.v1"`
OriginPage *BlockHeight `protobuf:"bytes,1,opt,name=origin_page,json=originPage,proto3" json:"origin_page,omitempty"` // page-number when added to balance
Timelock *TimeLockIntent `protobuf:"bytes,2,opt,name=timelock,proto3,oneof" json:"timelock,omitempty"` // enforced timelock
Name *Name `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"` // nname (human/name label)
Lock *Lock `protobuf:"bytes,4,opt,name=lock,proto3" json:"lock,omitempty"` // spending condition
Source *Source `protobuf:"bytes,5,opt,name=source,proto3" json:"source,omitempty"` // provenance commitment
Assets *Nicks `protobuf:"bytes,6,opt,name=assets,proto3" json:"assets,omitempty"` // coin amount (nicks)
Version *NoteVersion `protobuf:"bytes,7,opt,name=version,proto3" json:"version,omitempty"` // note version (currently 0)
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
2025-11-04 10:38:31 +07:00
func (x *NoteV0) Reset() {
*x = NoteV0{}
mi := &file_blockchain_proto_msgTypes[29]
2025-10-06 13:38:53 +07:00
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
2025-11-04 10:38:31 +07:00
func (x *NoteV0) String() string {
2025-10-06 13:38:53 +07:00
return protoimpl.X.MessageStringOf(x)
}
2025-11-04 10:38:31 +07:00
func (*NoteV0) ProtoMessage() {}
2025-10-06 13:38:53 +07:00
2025-11-04 10:38:31 +07:00
func (x *NoteV0) ProtoReflect() protoreflect.Message {
mi := &file_blockchain_proto_msgTypes[29]
2025-10-06 13:38:53 +07:00
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
2025-11-04 10:38:31 +07:00
// Deprecated: Use NoteV0.ProtoReflect.Descriptor instead.
func (*NoteV0) Descriptor() ([]byte, []int) {
return file_blockchain_proto_rawDescGZIP(), []int{29}
2025-10-06 13:38:53 +07:00
}
2025-11-04 10:38:31 +07:00
func (x *NoteV0) GetOriginPage() *BlockHeight {
2025-10-06 13:38:53 +07:00
if x != nil {
return x.OriginPage
}
return nil
}
2025-11-04 10:38:31 +07:00
func (x *NoteV0) GetTimelock() *TimeLockIntent {
2025-10-06 13:38:53 +07:00
if x != nil {
return x.Timelock
}
return nil
}
2025-11-04 10:38:31 +07:00
func (x *NoteV0) GetName() *Name {
2025-10-06 13:38:53 +07:00
if x != nil {
return x.Name
}
return nil
}
2025-11-04 10:38:31 +07:00
func (x *NoteV0) GetLock() *Lock {
2025-10-06 13:38:53 +07:00
if x != nil {
return x.Lock
}
return nil
}
2025-11-04 10:38:31 +07:00
func (x *NoteV0) GetSource() *Source {
2025-10-06 13:38:53 +07:00
if x != nil {
return x.Source
}
return nil
}
2025-11-04 10:38:31 +07:00
func (x *NoteV0) GetAssets() *Nicks {
2025-10-06 13:38:53 +07:00
if x != nil {
return x.Assets
}
return nil
}
2025-11-04 10:38:31 +07:00
func (x *NoteV0) GetVersion() *NoteVersion {
if x != nil {
return x.Version
}
return nil
}
type NoteV1 struct {
state protoimpl.MessageState `protogen:"open.v1"`
Version *NoteVersion `protobuf:"bytes,1,opt,name=version,proto3" json:"version,omitempty"`
OriginPage *BlockHeight `protobuf:"bytes,2,opt,name=origin_page,json=originPage,proto3" json:"origin_page,omitempty"`
Name *Name `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"`
NoteData *NoteData `protobuf:"bytes,4,opt,name=note_data,json=noteData,proto3" json:"note_data,omitempty"`
Assets *Nicks `protobuf:"bytes,5,opt,name=assets,proto3" json:"assets,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *NoteV1) Reset() {
*x = NoteV1{}
mi := &file_blockchain_proto_msgTypes[30]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *NoteV1) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*NoteV1) ProtoMessage() {}
func (x *NoteV1) ProtoReflect() protoreflect.Message {
mi := &file_blockchain_proto_msgTypes[30]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use NoteV1.ProtoReflect.Descriptor instead.
func (*NoteV1) Descriptor() ([]byte, []int) {
return file_blockchain_proto_rawDescGZIP(), []int{30}
}
func (x *NoteV1) GetVersion() *NoteVersion {
2025-10-06 13:38:53 +07:00
if x != nil {
return x.Version
}
return nil
}
2025-11-04 10:38:31 +07:00
func (x *NoteV1) GetOriginPage() *BlockHeight {
if x != nil {
return x.OriginPage
}
return nil
}
func (x *NoteV1) GetName() *Name {
if x != nil {
return x.Name
}
return nil
}
func (x *NoteV1) GetNoteData() *NoteData {
if x != nil {
return x.NoteData
}
return nil
}
func (x *NoteV1) GetAssets() *Nicks {
if x != nil {
return x.Assets
}
return nil
}
type NoteData struct {
state protoimpl.MessageState `protogen:"open.v1"`
Entries []*NoteDataEntry `protobuf:"bytes,1,rep,name=entries,proto3" json:"entries,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *NoteData) Reset() {
*x = NoteData{}
mi := &file_blockchain_proto_msgTypes[31]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *NoteData) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*NoteData) ProtoMessage() {}
func (x *NoteData) ProtoReflect() protoreflect.Message {
mi := &file_blockchain_proto_msgTypes[31]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use NoteData.ProtoReflect.Descriptor instead.
func (*NoteData) Descriptor() ([]byte, []int) {
return file_blockchain_proto_rawDescGZIP(), []int{31}
}
func (x *NoteData) GetEntries() []*NoteDataEntry {
if x != nil {
return x.Entries
}
return nil
}
type NoteDataEntry struct {
state protoimpl.MessageState `protogen:"open.v1"`
Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
Blob []byte `protobuf:"bytes,2,opt,name=blob,proto3" json:"blob,omitempty"` // jammed noun bytes
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *NoteDataEntry) Reset() {
*x = NoteDataEntry{}
mi := &file_blockchain_proto_msgTypes[32]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *NoteDataEntry) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*NoteDataEntry) ProtoMessage() {}
func (x *NoteDataEntry) ProtoReflect() protoreflect.Message {
mi := &file_blockchain_proto_msgTypes[32]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use NoteDataEntry.ProtoReflect.Descriptor instead.
func (*NoteDataEntry) Descriptor() ([]byte, []int) {
return file_blockchain_proto_rawDescGZIP(), []int{32}
}
func (x *NoteDataEntry) GetKey() string {
if x != nil {
return x.Key
}
return ""
}
func (x *NoteDataEntry) GetBlob() []byte {
if x != nil {
return x.Blob
}
return nil
}
2025-10-06 13:38:53 +07:00
type Signature struct {
state protoimpl.MessageState `protogen:"open.v1"`
Entries []*SignatureEntry `protobuf:"bytes,1,rep,name=entries,proto3" json:"entries,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *Signature) Reset() {
*x = Signature{}
2025-11-04 10:38:31 +07:00
mi := &file_blockchain_proto_msgTypes[33]
2025-10-06 13:38:53 +07:00
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *Signature) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Signature) ProtoMessage() {}
func (x *Signature) ProtoReflect() protoreflect.Message {
2025-11-04 10:38:31 +07:00
mi := &file_blockchain_proto_msgTypes[33]
2025-10-06 13:38:53 +07:00
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Signature.ProtoReflect.Descriptor instead.
func (*Signature) Descriptor() ([]byte, []int) {
2025-11-04 10:38:31 +07:00
return file_blockchain_proto_rawDescGZIP(), []int{33}
2025-10-06 13:38:53 +07:00
}
func (x *Signature) GetEntries() []*SignatureEntry {
if x != nil {
return x.Entries
}
return nil
}
type SignatureEntry struct {
state protoimpl.MessageState `protogen:"open.v1"`
SchnorrPubkey *SchnorrPubkey `protobuf:"bytes,1,opt,name=schnorr_pubkey,json=schnorrPubkey,proto3" json:"schnorr_pubkey,omitempty"` // serialized pubkey corresponding to the signer
Signature *SchnorrSignature `protobuf:"bytes,2,opt,name=signature,proto3" json:"signature,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *SignatureEntry) Reset() {
*x = SignatureEntry{}
2025-11-04 10:38:31 +07:00
mi := &file_blockchain_proto_msgTypes[34]
2025-10-06 13:38:53 +07:00
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *SignatureEntry) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SignatureEntry) ProtoMessage() {}
func (x *SignatureEntry) ProtoReflect() protoreflect.Message {
2025-11-04 10:38:31 +07:00
mi := &file_blockchain_proto_msgTypes[34]
2025-10-06 13:38:53 +07:00
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use SignatureEntry.ProtoReflect.Descriptor instead.
func (*SignatureEntry) Descriptor() ([]byte, []int) {
2025-11-04 10:38:31 +07:00
return file_blockchain_proto_rawDescGZIP(), []int{34}
2025-10-06 13:38:53 +07:00
}
func (x *SignatureEntry) GetSchnorrPubkey() *SchnorrPubkey {
if x != nil {
return x.SchnorrPubkey
}
return nil
}
func (x *SignatureEntry) GetSignature() *SchnorrSignature {
if x != nil {
return x.Signature
}
return nil
}
type SchnorrSignature struct {
state protoimpl.MessageState `protogen:"open.v1"`
Chal *EightBelt `protobuf:"bytes,1,opt,name=chal,proto3" json:"chal,omitempty"`
Sig *EightBelt `protobuf:"bytes,2,opt,name=sig,proto3" json:"sig,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *SchnorrSignature) Reset() {
*x = SchnorrSignature{}
2025-11-04 10:38:31 +07:00
mi := &file_blockchain_proto_msgTypes[35]
2025-10-06 13:38:53 +07:00
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *SchnorrSignature) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SchnorrSignature) ProtoMessage() {}
func (x *SchnorrSignature) ProtoReflect() protoreflect.Message {
2025-11-04 10:38:31 +07:00
mi := &file_blockchain_proto_msgTypes[35]
2025-10-06 13:38:53 +07:00
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use SchnorrSignature.ProtoReflect.Descriptor instead.
func (*SchnorrSignature) Descriptor() ([]byte, []int) {
2025-11-04 10:38:31 +07:00
return file_blockchain_proto_rawDescGZIP(), []int{35}
2025-10-06 13:38:53 +07:00
}
func (x *SchnorrSignature) GetChal() *EightBelt {
if x != nil {
return x.Chal
}
return nil
}
func (x *SchnorrSignature) GetSig() *EightBelt {
if x != nil {
return x.Sig
}
return nil
}
var File_blockchain_proto protoreflect.FileDescriptor
const file_blockchain_proto_rawDesc = "" +
"\n" +
2025-11-04 10:38:31 +07:00
"\x10blockchain.proto\x12\x13nockchain.public.v2\x1a\x10primitives.proto\x1a\x10pagination.proto\"\xfb\x01\n" +
"\aBalance\x127\n" +
"\x05notes\x18\x01 \x03(\v2!.nockchain.public.v2.BalanceEntryR\x05notes\x128\n" +
"\x06height\x18\x02 \x01(\v2 .nockchain.public.v2.BlockHeightR\x06height\x129\n" +
"\bblock_id\x18\x03 \x01(\v2\x19.nockchain.public.v2.HashH\x00R\ablockId\x88\x01\x01\x125\n" +
"\x04page\x18\x04 \x01(\v2!.nockchain.public.v2.PageResponseR\x04pageB\v\n" +
2025-10-06 13:38:53 +07:00
"\t_block_id\"l\n" +
"\fBalanceEntry\x12-\n" +
2025-11-04 10:38:31 +07:00
"\x04name\x18\x01 \x01(\v2\x19.nockchain.public.v2.NameR\x04name\x12-\n" +
"\x04note\x18\x02 \x01(\v2\x19.nockchain.public.v2.NoteR\x04note\"\xb0\x01\n" +
"\x0eRawTransaction\x12:\n" +
"\aversion\x18\x01 \x01(\v2 .nockchain.public.v2.NoteVersionR\aversion\x12)\n" +
"\x02id\x18\x02 \x01(\v2\x19.nockchain.public.v2.HashR\x02id\x127\n" +
"\x06spends\x18\x03 \x03(\v2\x1f.nockchain.public.v2.SpendEntryR\x06spends\"m\n" +
"\n" +
"SpendEntry\x12-\n" +
"\x04name\x18\x01 \x01(\v2\x19.nockchain.public.v2.NameR\x04name\x120\n" +
"\x05spend\x18\x02 \x01(\v2\x1a.nockchain.public.v2.SpendR\x05spend\"\x90\x01\n" +
"\x05Spend\x12:\n" +
"\x06legacy\x18\x01 \x01(\v2 .nockchain.public.v2.LegacySpendH\x00R\x06legacy\x12=\n" +
"\awitness\x18\x02 \x01(\v2!.nockchain.public.v2.WitnessSpendH\x00R\awitnessB\f\n" +
2025-10-06 13:38:53 +07:00
"\n" +
2025-11-04 10:38:31 +07:00
"spend_kind\"\xc0\x01\n" +
"\vLegacySpend\x12<\n" +
"\tsignature\x18\x01 \x01(\v2\x1e.nockchain.public.v2.SignatureR\tsignature\x12/\n" +
"\x05seeds\x18\x02 \x03(\v2\x19.nockchain.public.v2.SeedR\x05seeds\x12B\n" +
"\x0fminer_fee_nicks\x18\x03 \x01(\v2\x1a.nockchain.public.v2.NicksR\rminerFeeNicks\"\xa5\x01\n" +
"\fWitnessSpend\x126\n" +
"\awitness\x18\x01 \x01(\v2\x1c.nockchain.public.v2.WitnessR\awitness\x12/\n" +
"\x05seeds\x18\x02 \x03(\v2\x19.nockchain.public.v2.SeedR\x05seeds\x12,\n" +
"\x03fee\x18\x03 \x01(\v2\x1a.nockchain.public.v2.NicksR\x03fee\"\xa8\x02\n" +
"\x04Seed\x12@\n" +
"\routput_source\x18\x01 \x01(\v2\x1b.nockchain.public.v2.SourceR\foutputSource\x126\n" +
"\tlock_root\x18\x02 \x01(\v2\x19.nockchain.public.v2.HashR\blockRoot\x12:\n" +
"\tnote_data\x18\x03 \x01(\v2\x1d.nockchain.public.v2.NoteDataR\bnoteData\x12.\n" +
"\x04gift\x18\x04 \x01(\v2\x1a.nockchain.public.v2.NicksR\x04gift\x12:\n" +
"\vparent_hash\x18\x05 \x01(\v2\x19.nockchain.public.v2.HashR\n" +
"parentHash\"\xd7\x01\n" +
"\aWitness\x12P\n" +
"\x11lock_merkle_proof\x18\x01 \x01(\v2$.nockchain.public.v2.LockMerkleProofR\x0flockMerkleProof\x12F\n" +
"\rpkh_signature\x18\x02 \x01(\v2!.nockchain.public.v2.PkhSignatureR\fpkhSignature\x122\n" +
"\x03hax\x18\x03 \x03(\v2 .nockchain.public.v2.HaxPreimageR\x03hax\"R\n" +
"\vHaxPreimage\x12-\n" +
"\x04hash\x18\x01 \x01(\v2\x19.nockchain.public.v2.HashR\x04hash\x12\x14\n" +
"\x05value\x18\x02 \x01(\fR\x05value\"P\n" +
"\fPkhSignature\x12@\n" +
"\aentries\x18\x01 \x03(\v2&.nockchain.public.v2.PkhSignatureEntryR\aentries\"\xc3\x01\n" +
"\x11PkhSignatureEntry\x12-\n" +
"\x04hash\x18\x01 \x01(\v2\x19.nockchain.public.v2.HashR\x04hash\x12:\n" +
"\x06pubkey\x18\x02 \x01(\v2\".nockchain.public.v2.SchnorrPubkeyR\x06pubkey\x12C\n" +
"\tsignature\x18\x03 \x01(\v2%.nockchain.public.v2.SchnorrSignatureR\tsignature\"\xab\x01\n" +
"\x0fLockMerkleProof\x12L\n" +
"\x0fspend_condition\x18\x01 \x01(\v2#.nockchain.public.v2.SpendConditionR\x0espendCondition\x12\x12\n" +
"\x04axis\x18\x02 \x01(\x04R\x04axis\x126\n" +
"\x05proof\x18\x03 \x01(\v2 .nockchain.public.v2.MerkleProofR\x05proof\"T\n" +
"\x0eSpendCondition\x12B\n" +
2025-10-06 13:38:53 +07:00
"\n" +
2025-11-04 10:38:31 +07:00
"primitives\x18\x01 \x03(\v2\".nockchain.public.v2.LockPrimitiveR\n" +
"primitives\"\xe7\x01\n" +
"\rLockPrimitive\x120\n" +
"\x03pkh\x18\x01 \x01(\v2\x1c.nockchain.public.v2.PkhLockH\x00R\x03pkh\x120\n" +
"\x03tim\x18\x02 \x01(\v2\x1c.nockchain.public.v2.LockTimH\x00R\x03tim\x120\n" +
"\x03hax\x18\x03 \x01(\v2\x1c.nockchain.public.v2.HaxLockH\x00R\x03hax\x123\n" +
"\x04burn\x18\x04 \x01(\v2\x1d.nockchain.public.v2.BurnLockH\x00R\x04burnB\v\n" +
"\tprimitive\"J\n" +
"\aPkhLock\x12\f\n" +
"\x01m\x18\x01 \x01(\x04R\x01m\x121\n" +
"\x06hashes\x18\x02 \x03(\v2\x19.nockchain.public.v2.HashR\x06hashes\"\x85\x01\n" +
"\aLockTim\x12<\n" +
"\x03rel\x18\x01 \x01(\v2*.nockchain.public.v2.TimeLockRangeRelativeR\x03rel\x12<\n" +
"\x03abs\x18\x02 \x01(\v2*.nockchain.public.v2.TimeLockRangeAbsoluteR\x03abs\"<\n" +
"\aHaxLock\x121\n" +
"\x06hashes\x18\x01 \x03(\v2\x19.nockchain.public.v2.HashR\x06hashes\"\n" +
"\n" +
"\bBurnLock\"k\n" +
"\vMerkleProof\x12-\n" +
"\x04root\x18\x01 \x01(\v2\x19.nockchain.public.v2.HashR\x04root\x12-\n" +
"\x04path\x18\x02 \x03(\v2\x19.nockchain.public.v2.HashR\x04path\"S\n" +
2025-10-06 13:38:53 +07:00
"\fOutputSource\x128\n" +
2025-11-04 10:38:31 +07:00
"\x06source\x18\x01 \x01(\v2\x1b.nockchain.public.v2.SourceH\x00R\x06source\x88\x01\x01B\t\n" +
2025-10-06 13:38:53 +07:00
"\a_source\"S\n" +
"\x06Source\x12-\n" +
2025-11-04 10:38:31 +07:00
"\x04hash\x18\x01 \x01(\v2\x19.nockchain.public.v2.HashR\x04hash\x12\x1a\n" +
2025-10-06 13:38:53 +07:00
"\bcoinbase\x18\x02 \x01(\bR\bcoinbase\"\x9a\x02\n" +
"\x0eTimeLockIntent\x12H\n" +
2025-11-04 10:38:31 +07:00
"\babsolute\x18\x01 \x01(\v2*.nockchain.public.v2.TimeLockRangeAbsoluteH\x00R\babsolute\x12H\n" +
"\brelative\x18\x02 \x01(\v2*.nockchain.public.v2.TimeLockRangeRelativeH\x00R\brelative\x12k\n" +
"\x15absolute_and_relative\x18\x03 \x01(\v25.nockchain.public.v2.TimeLockRangeAbsoluteAndRelativeH\x00R\x13absoluteAndRelativeB\a\n" +
2025-10-06 13:38:53 +07:00
"\x05value\"\xd6\x01\n" +
" TimeLockRangeAbsoluteAndRelative\x12K\n" +
2025-11-04 10:38:31 +07:00
"\babsolute\x18\x01 \x01(\v2*.nockchain.public.v2.TimeLockRangeAbsoluteH\x00R\babsolute\x88\x01\x01\x12K\n" +
"\brelative\x18\x02 \x01(\v2*.nockchain.public.v2.TimeLockRangeRelativeH\x01R\brelative\x88\x01\x01B\v\n" +
2025-10-06 13:38:53 +07:00
"\t_absoluteB\v\n" +
"\t_relative\"\x99\x01\n" +
"\x15TimeLockRangeAbsolute\x127\n" +
2025-11-04 10:38:31 +07:00
"\x03min\x18\x01 \x01(\v2 .nockchain.public.v2.BlockHeightH\x00R\x03min\x88\x01\x01\x127\n" +
"\x03max\x18\x02 \x01(\v2 .nockchain.public.v2.BlockHeightH\x01R\x03max\x88\x01\x01B\x06\n" +
2025-10-06 13:38:53 +07:00
"\x04_minB\x06\n" +
"\x04_max\"\xa3\x01\n" +
"\x15TimeLockRangeRelative\x12<\n" +
2025-11-04 10:38:31 +07:00
"\x03min\x18\x01 \x01(\v2%.nockchain.public.v2.BlockHeightDeltaH\x00R\x03min\x88\x01\x01\x12<\n" +
"\x03max\x18\x02 \x01(\v2%.nockchain.public.v2.BlockHeightDeltaH\x01R\x03max\x88\x01\x01B\x06\n" +
2025-10-06 13:38:53 +07:00
"\x04_minB\x06\n" +
"\x04_max\"x\n" +
"\x04Lock\x12#\n" +
"\rkeys_required\x18\x01 \x01(\rR\fkeysRequired\x12K\n" +
2025-11-04 10:38:31 +07:00
"\x0fschnorr_pubkeys\x18\x02 \x03(\v2\".nockchain.public.v2.SchnorrPubkeyR\x0eschnorrPubkeys\"f\n" +
2025-10-06 13:38:53 +07:00
"\x04Name\x12/\n" +
2025-11-04 10:38:31 +07:00
"\x05first\x18\x01 \x01(\v2\x19.nockchain.public.v2.HashR\x05first\x12-\n" +
"\x04last\x18\x02 \x01(\v2\x19.nockchain.public.v2.HashR\x04last\"|\n" +
"\x04Note\x125\n" +
"\x06legacy\x18\x01 \x01(\v2\x1b.nockchain.public.v2.NoteV0H\x00R\x06legacy\x12-\n" +
"\x02v1\x18\x02 \x01(\v2\x1b.nockchain.public.v2.NoteV1H\x00R\x02v1B\x0e\n" +
"\fnote_version\"\xa1\x03\n" +
"\x06NoteV0\x12A\n" +
"\vorigin_page\x18\x01 \x01(\v2 .nockchain.public.v2.BlockHeightR\n" +
2025-10-06 13:38:53 +07:00
"originPage\x12D\n" +
2025-11-04 10:38:31 +07:00
"\btimelock\x18\x02 \x01(\v2#.nockchain.public.v2.TimeLockIntentH\x00R\btimelock\x88\x01\x01\x12-\n" +
"\x04name\x18\x03 \x01(\v2\x19.nockchain.public.v2.NameR\x04name\x12-\n" +
"\x04lock\x18\x04 \x01(\v2\x19.nockchain.public.v2.LockR\x04lock\x123\n" +
"\x06source\x18\x05 \x01(\v2\x1b.nockchain.public.v2.SourceR\x06source\x122\n" +
"\x06assets\x18\x06 \x01(\v2\x1a.nockchain.public.v2.NicksR\x06assets\x12:\n" +
"\aversion\x18\a \x01(\v2 .nockchain.public.v2.NoteVersionR\aversionB\v\n" +
"\t_timelock\"\xa6\x02\n" +
"\x06NoteV1\x12:\n" +
"\aversion\x18\x01 \x01(\v2 .nockchain.public.v2.NoteVersionR\aversion\x12A\n" +
"\vorigin_page\x18\x02 \x01(\v2 .nockchain.public.v2.BlockHeightR\n" +
"originPage\x12-\n" +
"\x04name\x18\x03 \x01(\v2\x19.nockchain.public.v2.NameR\x04name\x12:\n" +
"\tnote_data\x18\x04 \x01(\v2\x1d.nockchain.public.v2.NoteDataR\bnoteData\x122\n" +
"\x06assets\x18\x05 \x01(\v2\x1a.nockchain.public.v2.NicksR\x06assets\"H\n" +
"\bNoteData\x12<\n" +
"\aentries\x18\x01 \x03(\v2\".nockchain.public.v2.NoteDataEntryR\aentries\"5\n" +
"\rNoteDataEntry\x12\x10\n" +
"\x03key\x18\x01 \x01(\tR\x03key\x12\x12\n" +
"\x04blob\x18\x02 \x01(\fR\x04blob\"J\n" +
2025-10-06 13:38:53 +07:00
"\tSignature\x12=\n" +
2025-11-04 10:38:31 +07:00
"\aentries\x18\x01 \x03(\v2#.nockchain.public.v2.SignatureEntryR\aentries\"\xa0\x01\n" +
2025-10-06 13:38:53 +07:00
"\x0eSignatureEntry\x12I\n" +
2025-11-04 10:38:31 +07:00
"\x0eschnorr_pubkey\x18\x01 \x01(\v2\".nockchain.public.v2.SchnorrPubkeyR\rschnorrPubkey\x12C\n" +
"\tsignature\x18\x02 \x01(\v2%.nockchain.public.v2.SchnorrSignatureR\tsignature\"x\n" +
2025-10-06 13:38:53 +07:00
"\x10SchnorrSignature\x122\n" +
2025-11-04 10:38:31 +07:00
"\x04chal\x18\x01 \x01(\v2\x1e.nockchain.public.v2.EightBeltR\x04chal\x120\n" +
"\x03sig\x18\x02 \x01(\v2\x1e.nockchain.public.v2.EightBeltR\x03sigB\x0eZ\f./;nockchainb\x06proto3"
2025-10-06 13:38:53 +07:00
var (
file_blockchain_proto_rawDescOnce sync.Once
file_blockchain_proto_rawDescData []byte
)
func file_blockchain_proto_rawDescGZIP() []byte {
file_blockchain_proto_rawDescOnce.Do(func() {
file_blockchain_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_blockchain_proto_rawDesc), len(file_blockchain_proto_rawDesc)))
})
return file_blockchain_proto_rawDescData
}
2025-11-04 10:38:31 +07:00
var file_blockchain_proto_msgTypes = make([]protoimpl.MessageInfo, 36)
2025-10-06 13:38:53 +07:00
var file_blockchain_proto_goTypes = []any{
2025-11-04 10:38:31 +07:00
(*Balance)(nil), // 0: nockchain.public.v2.Balance
(*BalanceEntry)(nil), // 1: nockchain.public.v2.BalanceEntry
(*RawTransaction)(nil), // 2: nockchain.public.v2.RawTransaction
(*SpendEntry)(nil), // 3: nockchain.public.v2.SpendEntry
(*Spend)(nil), // 4: nockchain.public.v2.Spend
(*LegacySpend)(nil), // 5: nockchain.public.v2.LegacySpend
(*WitnessSpend)(nil), // 6: nockchain.public.v2.WitnessSpend
(*Seed)(nil), // 7: nockchain.public.v2.Seed
(*Witness)(nil), // 8: nockchain.public.v2.Witness
(*HaxPreimage)(nil), // 9: nockchain.public.v2.HaxPreimage
(*PkhSignature)(nil), // 10: nockchain.public.v2.PkhSignature
(*PkhSignatureEntry)(nil), // 11: nockchain.public.v2.PkhSignatureEntry
(*LockMerkleProof)(nil), // 12: nockchain.public.v2.LockMerkleProof
(*SpendCondition)(nil), // 13: nockchain.public.v2.SpendCondition
(*LockPrimitive)(nil), // 14: nockchain.public.v2.LockPrimitive
(*PkhLock)(nil), // 15: nockchain.public.v2.PkhLock
(*LockTim)(nil), // 16: nockchain.public.v2.LockTim
(*HaxLock)(nil), // 17: nockchain.public.v2.HaxLock
(*BurnLock)(nil), // 18: nockchain.public.v2.BurnLock
(*MerkleProof)(nil), // 19: nockchain.public.v2.MerkleProof
(*OutputSource)(nil), // 20: nockchain.public.v2.OutputSource
(*Source)(nil), // 21: nockchain.public.v2.Source
(*TimeLockIntent)(nil), // 22: nockchain.public.v2.TimeLockIntent
(*TimeLockRangeAbsoluteAndRelative)(nil), // 23: nockchain.public.v2.TimeLockRangeAbsoluteAndRelative
(*TimeLockRangeAbsolute)(nil), // 24: nockchain.public.v2.TimeLockRangeAbsolute
(*TimeLockRangeRelative)(nil), // 25: nockchain.public.v2.TimeLockRangeRelative
(*Lock)(nil), // 26: nockchain.public.v2.Lock
(*Name)(nil), // 27: nockchain.public.v2.Name
(*Note)(nil), // 28: nockchain.public.v2.Note
(*NoteV0)(nil), // 29: nockchain.public.v2.NoteV0
(*NoteV1)(nil), // 30: nockchain.public.v2.NoteV1
(*NoteData)(nil), // 31: nockchain.public.v2.NoteData
(*NoteDataEntry)(nil), // 32: nockchain.public.v2.NoteDataEntry
(*Signature)(nil), // 33: nockchain.public.v2.Signature
(*SignatureEntry)(nil), // 34: nockchain.public.v2.SignatureEntry
(*SchnorrSignature)(nil), // 35: nockchain.public.v2.SchnorrSignature
(*BlockHeight)(nil), // 36: nockchain.public.v2.BlockHeight
(*Hash)(nil), // 37: nockchain.public.v2.Hash
(*PageResponse)(nil), // 38: nockchain.public.v2.PageResponse
(*NoteVersion)(nil), // 39: nockchain.public.v2.NoteVersion
(*Nicks)(nil), // 40: nockchain.public.v2.Nicks
(*SchnorrPubkey)(nil), // 41: nockchain.public.v2.SchnorrPubkey
(*BlockHeightDelta)(nil), // 42: nockchain.public.v2.BlockHeightDelta
(*EightBelt)(nil), // 43: nockchain.public.v2.EightBelt
2025-10-06 13:38:53 +07:00
}
var file_blockchain_proto_depIdxs = []int32{
2025-11-04 10:38:31 +07:00
1, // 0: nockchain.public.v2.Balance.notes:type_name -> nockchain.public.v2.BalanceEntry
36, // 1: nockchain.public.v2.Balance.height:type_name -> nockchain.public.v2.BlockHeight
37, // 2: nockchain.public.v2.Balance.block_id:type_name -> nockchain.public.v2.Hash
38, // 3: nockchain.public.v2.Balance.page:type_name -> nockchain.public.v2.PageResponse
27, // 4: nockchain.public.v2.BalanceEntry.name:type_name -> nockchain.public.v2.Name
28, // 5: nockchain.public.v2.BalanceEntry.note:type_name -> nockchain.public.v2.Note
39, // 6: nockchain.public.v2.RawTransaction.version:type_name -> nockchain.public.v2.NoteVersion
37, // 7: nockchain.public.v2.RawTransaction.id:type_name -> nockchain.public.v2.Hash
3, // 8: nockchain.public.v2.RawTransaction.spends:type_name -> nockchain.public.v2.SpendEntry
27, // 9: nockchain.public.v2.SpendEntry.name:type_name -> nockchain.public.v2.Name
4, // 10: nockchain.public.v2.SpendEntry.spend:type_name -> nockchain.public.v2.Spend
5, // 11: nockchain.public.v2.Spend.legacy:type_name -> nockchain.public.v2.LegacySpend
6, // 12: nockchain.public.v2.Spend.witness:type_name -> nockchain.public.v2.WitnessSpend
33, // 13: nockchain.public.v2.LegacySpend.signature:type_name -> nockchain.public.v2.Signature
7, // 14: nockchain.public.v2.LegacySpend.seeds:type_name -> nockchain.public.v2.Seed
40, // 15: nockchain.public.v2.LegacySpend.miner_fee_nicks:type_name -> nockchain.public.v2.Nicks
8, // 16: nockchain.public.v2.WitnessSpend.witness:type_name -> nockchain.public.v2.Witness
7, // 17: nockchain.public.v2.WitnessSpend.seeds:type_name -> nockchain.public.v2.Seed
40, // 18: nockchain.public.v2.WitnessSpend.fee:type_name -> nockchain.public.v2.Nicks
21, // 19: nockchain.public.v2.Seed.output_source:type_name -> nockchain.public.v2.Source
37, // 20: nockchain.public.v2.Seed.lock_root:type_name -> nockchain.public.v2.Hash
31, // 21: nockchain.public.v2.Seed.note_data:type_name -> nockchain.public.v2.NoteData
40, // 22: nockchain.public.v2.Seed.gift:type_name -> nockchain.public.v2.Nicks
37, // 23: nockchain.public.v2.Seed.parent_hash:type_name -> nockchain.public.v2.Hash
12, // 24: nockchain.public.v2.Witness.lock_merkle_proof:type_name -> nockchain.public.v2.LockMerkleProof
10, // 25: nockchain.public.v2.Witness.pkh_signature:type_name -> nockchain.public.v2.PkhSignature
9, // 26: nockchain.public.v2.Witness.hax:type_name -> nockchain.public.v2.HaxPreimage
37, // 27: nockchain.public.v2.HaxPreimage.hash:type_name -> nockchain.public.v2.Hash
11, // 28: nockchain.public.v2.PkhSignature.entries:type_name -> nockchain.public.v2.PkhSignatureEntry
37, // 29: nockchain.public.v2.PkhSignatureEntry.hash:type_name -> nockchain.public.v2.Hash
41, // 30: nockchain.public.v2.PkhSignatureEntry.pubkey:type_name -> nockchain.public.v2.SchnorrPubkey
35, // 31: nockchain.public.v2.PkhSignatureEntry.signature:type_name -> nockchain.public.v2.SchnorrSignature
13, // 32: nockchain.public.v2.LockMerkleProof.spend_condition:type_name -> nockchain.public.v2.SpendCondition
19, // 33: nockchain.public.v2.LockMerkleProof.proof:type_name -> nockchain.public.v2.MerkleProof
14, // 34: nockchain.public.v2.SpendCondition.primitives:type_name -> nockchain.public.v2.LockPrimitive
15, // 35: nockchain.public.v2.LockPrimitive.pkh:type_name -> nockchain.public.v2.PkhLock
16, // 36: nockchain.public.v2.LockPrimitive.tim:type_name -> nockchain.public.v2.LockTim
17, // 37: nockchain.public.v2.LockPrimitive.hax:type_name -> nockchain.public.v2.HaxLock
18, // 38: nockchain.public.v2.LockPrimitive.burn:type_name -> nockchain.public.v2.BurnLock
37, // 39: nockchain.public.v2.PkhLock.hashes:type_name -> nockchain.public.v2.Hash
25, // 40: nockchain.public.v2.LockTim.rel:type_name -> nockchain.public.v2.TimeLockRangeRelative
24, // 41: nockchain.public.v2.LockTim.abs:type_name -> nockchain.public.v2.TimeLockRangeAbsolute
37, // 42: nockchain.public.v2.HaxLock.hashes:type_name -> nockchain.public.v2.Hash
37, // 43: nockchain.public.v2.MerkleProof.root:type_name -> nockchain.public.v2.Hash
37, // 44: nockchain.public.v2.MerkleProof.path:type_name -> nockchain.public.v2.Hash
21, // 45: nockchain.public.v2.OutputSource.source:type_name -> nockchain.public.v2.Source
37, // 46: nockchain.public.v2.Source.hash:type_name -> nockchain.public.v2.Hash
24, // 47: nockchain.public.v2.TimeLockIntent.absolute:type_name -> nockchain.public.v2.TimeLockRangeAbsolute
25, // 48: nockchain.public.v2.TimeLockIntent.relative:type_name -> nockchain.public.v2.TimeLockRangeRelative
23, // 49: nockchain.public.v2.TimeLockIntent.absolute_and_relative:type_name -> nockchain.public.v2.TimeLockRangeAbsoluteAndRelative
24, // 50: nockchain.public.v2.TimeLockRangeAbsoluteAndRelative.absolute:type_name -> nockchain.public.v2.TimeLockRangeAbsolute
25, // 51: nockchain.public.v2.TimeLockRangeAbsoluteAndRelative.relative:type_name -> nockchain.public.v2.TimeLockRangeRelative
36, // 52: nockchain.public.v2.TimeLockRangeAbsolute.min:type_name -> nockchain.public.v2.BlockHeight
36, // 53: nockchain.public.v2.TimeLockRangeAbsolute.max:type_name -> nockchain.public.v2.BlockHeight
42, // 54: nockchain.public.v2.TimeLockRangeRelative.min:type_name -> nockchain.public.v2.BlockHeightDelta
42, // 55: nockchain.public.v2.TimeLockRangeRelative.max:type_name -> nockchain.public.v2.BlockHeightDelta
41, // 56: nockchain.public.v2.Lock.schnorr_pubkeys:type_name -> nockchain.public.v2.SchnorrPubkey
37, // 57: nockchain.public.v2.Name.first:type_name -> nockchain.public.v2.Hash
37, // 58: nockchain.public.v2.Name.last:type_name -> nockchain.public.v2.Hash
29, // 59: nockchain.public.v2.Note.legacy:type_name -> nockchain.public.v2.NoteV0
30, // 60: nockchain.public.v2.Note.v1:type_name -> nockchain.public.v2.NoteV1
36, // 61: nockchain.public.v2.NoteV0.origin_page:type_name -> nockchain.public.v2.BlockHeight
22, // 62: nockchain.public.v2.NoteV0.timelock:type_name -> nockchain.public.v2.TimeLockIntent
27, // 63: nockchain.public.v2.NoteV0.name:type_name -> nockchain.public.v2.Name
26, // 64: nockchain.public.v2.NoteV0.lock:type_name -> nockchain.public.v2.Lock
21, // 65: nockchain.public.v2.NoteV0.source:type_name -> nockchain.public.v2.Source
40, // 66: nockchain.public.v2.NoteV0.assets:type_name -> nockchain.public.v2.Nicks
39, // 67: nockchain.public.v2.NoteV0.version:type_name -> nockchain.public.v2.NoteVersion
39, // 68: nockchain.public.v2.NoteV1.version:type_name -> nockchain.public.v2.NoteVersion
36, // 69: nockchain.public.v2.NoteV1.origin_page:type_name -> nockchain.public.v2.BlockHeight
27, // 70: nockchain.public.v2.NoteV1.name:type_name -> nockchain.public.v2.Name
31, // 71: nockchain.public.v2.NoteV1.note_data:type_name -> nockchain.public.v2.NoteData
40, // 72: nockchain.public.v2.NoteV1.assets:type_name -> nockchain.public.v2.Nicks
32, // 73: nockchain.public.v2.NoteData.entries:type_name -> nockchain.public.v2.NoteDataEntry
34, // 74: nockchain.public.v2.Signature.entries:type_name -> nockchain.public.v2.SignatureEntry
41, // 75: nockchain.public.v2.SignatureEntry.schnorr_pubkey:type_name -> nockchain.public.v2.SchnorrPubkey
35, // 76: nockchain.public.v2.SignatureEntry.signature:type_name -> nockchain.public.v2.SchnorrSignature
43, // 77: nockchain.public.v2.SchnorrSignature.chal:type_name -> nockchain.public.v2.EightBelt
43, // 78: nockchain.public.v2.SchnorrSignature.sig:type_name -> nockchain.public.v2.EightBelt
79, // [79:79] is the sub-list for method output_type
79, // [79:79] is the sub-list for method input_type
79, // [79:79] is the sub-list for extension type_name
79, // [79:79] is the sub-list for extension extendee
0, // [0:79] is the sub-list for field type_name
2025-10-06 13:38:53 +07:00
}
func init() { file_blockchain_proto_init() }
func file_blockchain_proto_init() {
if File_blockchain_proto != nil {
return
}
file_primitives_proto_init()
file_pagination_proto_init()
file_blockchain_proto_msgTypes[0].OneofWrappers = []any{}
2025-11-04 10:38:31 +07:00
file_blockchain_proto_msgTypes[4].OneofWrappers = []any{
(*Spend_Legacy)(nil),
(*Spend_Witness)(nil),
}
file_blockchain_proto_msgTypes[14].OneofWrappers = []any{
(*LockPrimitive_Pkh)(nil),
(*LockPrimitive_Tim)(nil),
(*LockPrimitive_Hax)(nil),
(*LockPrimitive_Burn)(nil),
}
file_blockchain_proto_msgTypes[20].OneofWrappers = []any{}
file_blockchain_proto_msgTypes[22].OneofWrappers = []any{
2025-10-06 13:38:53 +07:00
(*TimeLockIntent_Absolute)(nil),
(*TimeLockIntent_Relative)(nil),
(*TimeLockIntent_AbsoluteAndRelative)(nil),
}
2025-11-04 10:38:31 +07:00
file_blockchain_proto_msgTypes[23].OneofWrappers = []any{}
file_blockchain_proto_msgTypes[24].OneofWrappers = []any{}
file_blockchain_proto_msgTypes[25].OneofWrappers = []any{}
file_blockchain_proto_msgTypes[28].OneofWrappers = []any{
(*Note_Legacy)(nil),
(*Note_V1)(nil),
}
file_blockchain_proto_msgTypes[29].OneofWrappers = []any{}
2025-10-06 13:38:53 +07:00
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: unsafe.Slice(unsafe.StringData(file_blockchain_proto_rawDesc), len(file_blockchain_proto_rawDesc)),
NumEnums: 0,
2025-11-04 10:38:31 +07:00
NumMessages: 36,
2025-10-06 13:38:53 +07:00
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_blockchain_proto_goTypes,
DependencyIndexes: file_blockchain_proto_depIdxs,
MessageInfos: file_blockchain_proto_msgTypes,
}.Build()
File_blockchain_proto = out.File
file_blockchain_proto_goTypes = nil
file_blockchain_proto_depIdxs = nil
}