// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.26.0
// 	protoc        v3.9.1
// source: ticket.proto

package types

import (
	context "context"
	reflect "reflect"
	sync "sync"

	types "github.com/33cn/chain33/types"
	grpc "google.golang.org/grpc"
	codes "google.golang.org/grpc/codes"
	status "google.golang.org/grpc/status"
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
)

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)
)

type Ticket struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	TicketId string `protobuf:"bytes,1,opt,name=ticketId,proto3" json:"ticketId,omitempty"`
	// 0 -> 未成熟 1 -> 可挖矿 2 -> 已挖成功 3-> 已关闭
	Status int32 `protobuf:"varint,2,opt,name=status,proto3" json:"status,omitempty"`
	// genesis 创建的私钥比较特殊
	IsGenesis bool `protobuf:"varint,3,opt,name=isGenesis,proto3" json:"isGenesis,omitempty"`
	//创建时间
	CreateTime int64 `protobuf:"varint,4,opt,name=createTime,proto3" json:"createTime,omitempty"`
	//挖矿时间
	MinerTime int64 `protobuf:"varint,5,opt,name=minerTime,proto3" json:"minerTime,omitempty"`
	//挖到的币的数目
	MinerValue   int64  `protobuf:"varint,8,opt,name=minerValue,proto3" json:"minerValue,omitempty"`
	MinerAddress string `protobuf:"bytes,6,opt,name=minerAddress,proto3" json:"minerAddress,omitempty"`
	// return wallet
	ReturnAddress string `protobuf:"bytes,7,opt,name=returnAddress,proto3" json:"returnAddress,omitempty"`
	// miner Price
	Price int64 `protobuf:"varint,9,opt,name=price,proto3" json:"price,omitempty"`
}

func (x *Ticket) Reset() {
	*x = Ticket{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ticket_proto_msgTypes[0]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *Ticket) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*Ticket) ProtoMessage() {}

func (x *Ticket) ProtoReflect() protoreflect.Message {
	mi := &file_ticket_proto_msgTypes[0]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use Ticket.ProtoReflect.Descriptor instead.
func (*Ticket) Descriptor() ([]byte, []int) {
	return file_ticket_proto_rawDescGZIP(), []int{0}
}

func (x *Ticket) GetTicketId() string {
	if x != nil {
		return x.TicketId
	}
	return ""
}

func (x *Ticket) GetStatus() int32 {
	if x != nil {
		return x.Status
	}
	return 0
}

func (x *Ticket) GetIsGenesis() bool {
	if x != nil {
		return x.IsGenesis
	}
	return false
}

func (x *Ticket) GetCreateTime() int64 {
	if x != nil {
		return x.CreateTime
	}
	return 0
}

func (x *Ticket) GetMinerTime() int64 {
	if x != nil {
		return x.MinerTime
	}
	return 0
}

func (x *Ticket) GetMinerValue() int64 {
	if x != nil {
		return x.MinerValue
	}
	return 0
}

func (x *Ticket) GetMinerAddress() string {
	if x != nil {
		return x.MinerAddress
	}
	return ""
}

func (x *Ticket) GetReturnAddress() string {
	if x != nil {
		return x.ReturnAddress
	}
	return ""
}

func (x *Ticket) GetPrice() int64 {
	if x != nil {
		return x.Price
	}
	return 0
}

// message for execs.ticket
type TicketAction struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// Types that are assignable to Value:
	//	*TicketAction_Tbind
	//	*TicketAction_Topen
	//	*TicketAction_Genesis
	//	*TicketAction_Tclose
	//	*TicketAction_Miner
	Value isTicketAction_Value `protobuf_oneof:"value"`
	Ty    int32                `protobuf:"varint,10,opt,name=ty,proto3" json:"ty,omitempty"`
}

func (x *TicketAction) Reset() {
	*x = TicketAction{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ticket_proto_msgTypes[1]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *TicketAction) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*TicketAction) ProtoMessage() {}

func (x *TicketAction) ProtoReflect() protoreflect.Message {
	mi := &file_ticket_proto_msgTypes[1]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use TicketAction.ProtoReflect.Descriptor instead.
func (*TicketAction) Descriptor() ([]byte, []int) {
	return file_ticket_proto_rawDescGZIP(), []int{1}
}

func (m *TicketAction) GetValue() isTicketAction_Value {
	if m != nil {
		return m.Value
	}
	return nil
}

func (x *TicketAction) GetTbind() *TicketBind {
	if x, ok := x.GetValue().(*TicketAction_Tbind); ok {
		return x.Tbind
	}
	return nil
}

func (x *TicketAction) GetTopen() *TicketOpen {
	if x, ok := x.GetValue().(*TicketAction_Topen); ok {
		return x.Topen
	}
	return nil
}

func (x *TicketAction) GetGenesis() *TicketGenesis {
	if x, ok := x.GetValue().(*TicketAction_Genesis); ok {
		return x.Genesis
	}
	return nil
}

func (x *TicketAction) GetTclose() *TicketClose {
	if x, ok := x.GetValue().(*TicketAction_Tclose); ok {
		return x.Tclose
	}
	return nil
}

func (x *TicketAction) GetMiner() *TicketMiner {
	if x, ok := x.GetValue().(*TicketAction_Miner); ok {
		return x.Miner
	}
	return nil
}

func (x *TicketAction) GetTy() int32 {
	if x != nil {
		return x.Ty
	}
	return 0
}

type isTicketAction_Value interface {
	isTicketAction_Value()
}

type TicketAction_Tbind struct {
	Tbind *TicketBind `protobuf:"bytes,5,opt,name=tbind,proto3,oneof"`
}

type TicketAction_Topen struct {
	Topen *TicketOpen `protobuf:"bytes,1,opt,name=topen,proto3,oneof"`
}

type TicketAction_Genesis struct {
	Genesis *TicketGenesis `protobuf:"bytes,2,opt,name=genesis,proto3,oneof"`
}

type TicketAction_Tclose struct {
	Tclose *TicketClose `protobuf:"bytes,3,opt,name=tclose,proto3,oneof"`
}

type TicketAction_Miner struct {
	Miner *TicketMiner `protobuf:"bytes,4,opt,name=miner,proto3,oneof"`
}

func (*TicketAction_Tbind) isTicketAction_Value() {}

func (*TicketAction_Topen) isTicketAction_Value() {}

func (*TicketAction_Genesis) isTicketAction_Value() {}

func (*TicketAction_Tclose) isTicketAction_Value() {}

func (*TicketAction_Miner) isTicketAction_Value() {}

type TicketMiner struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Bits     uint32 `protobuf:"varint,1,opt,name=bits,proto3" json:"bits,omitempty"`
	Reward   int64  `protobuf:"varint,2,opt,name=reward,proto3" json:"reward,omitempty"`
	TicketId string `protobuf:"bytes,3,opt,name=ticketId,proto3" json:"ticketId,omitempty"`
	Modify   []byte `protobuf:"bytes,4,opt,name=modify,proto3" json:"modify,omitempty"`
	//挖到区块时公开
	PrivHash []byte `protobuf:"bytes,5,opt,name=privHash,proto3" json:"privHash,omitempty"`
	// VRF计算得到的hash
	VrfHash []byte `protobuf:"bytes,6,opt,name=vrfHash,proto3" json:"vrfHash,omitempty"`
	// VRF计算得到的proof
	VrfProof []byte `protobuf:"bytes,7,opt,name=vrfProof,proto3" json:"vrfProof,omitempty"`
}

func (x *TicketMiner) Reset() {
	*x = TicketMiner{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ticket_proto_msgTypes[2]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *TicketMiner) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*TicketMiner) ProtoMessage() {}

func (x *TicketMiner) ProtoReflect() protoreflect.Message {
	mi := &file_ticket_proto_msgTypes[2]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use TicketMiner.ProtoReflect.Descriptor instead.
func (*TicketMiner) Descriptor() ([]byte, []int) {
	return file_ticket_proto_rawDescGZIP(), []int{2}
}

func (x *TicketMiner) GetBits() uint32 {
	if x != nil {
		return x.Bits
	}
	return 0
}

func (x *TicketMiner) GetReward() int64 {
	if x != nil {
		return x.Reward
	}
	return 0
}

func (x *TicketMiner) GetTicketId() string {
	if x != nil {
		return x.TicketId
	}
	return ""
}

func (x *TicketMiner) GetModify() []byte {
	if x != nil {
		return x.Modify
	}
	return nil
}

func (x *TicketMiner) GetPrivHash() []byte {
	if x != nil {
		return x.PrivHash
	}
	return nil
}

func (x *TicketMiner) GetVrfHash() []byte {
	if x != nil {
		return x.VrfHash
	}
	return nil
}

func (x *TicketMiner) GetVrfProof() []byte {
	if x != nil {
		return x.VrfProof
	}
	return nil
}

type TicketMinerOld struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Bits     uint32 `protobuf:"varint,1,opt,name=bits,proto3" json:"bits,omitempty"`
	Reward   int64  `protobuf:"varint,2,opt,name=reward,proto3" json:"reward,omitempty"`
	TicketId string `protobuf:"bytes,3,opt,name=ticketId,proto3" json:"ticketId,omitempty"`
	Modify   []byte `protobuf:"bytes,4,opt,name=modify,proto3" json:"modify,omitempty"`
}

func (x *TicketMinerOld) Reset() {
	*x = TicketMinerOld{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ticket_proto_msgTypes[3]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *TicketMinerOld) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*TicketMinerOld) ProtoMessage() {}

func (x *TicketMinerOld) ProtoReflect() protoreflect.Message {
	mi := &file_ticket_proto_msgTypes[3]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use TicketMinerOld.ProtoReflect.Descriptor instead.
func (*TicketMinerOld) Descriptor() ([]byte, []int) {
	return file_ticket_proto_rawDescGZIP(), []int{3}
}

func (x *TicketMinerOld) GetBits() uint32 {
	if x != nil {
		return x.Bits
	}
	return 0
}

func (x *TicketMinerOld) GetReward() int64 {
	if x != nil {
		return x.Reward
	}
	return 0
}

func (x *TicketMinerOld) GetTicketId() string {
	if x != nil {
		return x.TicketId
	}
	return ""
}

func (x *TicketMinerOld) GetModify() []byte {
	if x != nil {
		return x.Modify
	}
	return nil
}

type MinerFlag struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Flag    int32 `protobuf:"varint,1,opt,name=flag,proto3" json:"flag,omitempty"`
	Reserve int64 `protobuf:"varint,2,opt,name=reserve,proto3" json:"reserve,omitempty"`
}

func (x *MinerFlag) Reset() {
	*x = MinerFlag{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ticket_proto_msgTypes[4]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *MinerFlag) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*MinerFlag) ProtoMessage() {}

func (x *MinerFlag) ProtoReflect() protoreflect.Message {
	mi := &file_ticket_proto_msgTypes[4]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use MinerFlag.ProtoReflect.Descriptor instead.
func (*MinerFlag) Descriptor() ([]byte, []int) {
	return file_ticket_proto_rawDescGZIP(), []int{4}
}

func (x *MinerFlag) GetFlag() int32 {
	if x != nil {
		return x.Flag
	}
	return 0
}

func (x *MinerFlag) GetReserve() int64 {
	if x != nil {
		return x.Reserve
	}
	return 0
}

type TicketBind struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	MinerAddress  string `protobuf:"bytes,1,opt,name=minerAddress,proto3" json:"minerAddress,omitempty"`
	ReturnAddress string `protobuf:"bytes,2,opt,name=returnAddress,proto3" json:"returnAddress,omitempty"`
}

func (x *TicketBind) Reset() {
	*x = TicketBind{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ticket_proto_msgTypes[5]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *TicketBind) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*TicketBind) ProtoMessage() {}

func (x *TicketBind) ProtoReflect() protoreflect.Message {
	mi := &file_ticket_proto_msgTypes[5]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use TicketBind.ProtoReflect.Descriptor instead.
func (*TicketBind) Descriptor() ([]byte, []int) {
	return file_ticket_proto_rawDescGZIP(), []int{5}
}

func (x *TicketBind) GetMinerAddress() string {
	if x != nil {
		return x.MinerAddress
	}
	return ""
}

func (x *TicketBind) GetReturnAddress() string {
	if x != nil {
		return x.ReturnAddress
	}
	return ""
}

type TicketOpen struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	//用户挖矿的ticket 地址
	MinerAddress string `protobuf:"bytes,1,opt,name=minerAddress,proto3" json:"minerAddress,omitempty"`
	//购买ticket的数目
	Count int32 `protobuf:"varint,2,opt,name=count,proto3" json:"count,omitempty"`
	//币实际存储的地址
	ReturnAddress string `protobuf:"bytes,3,opt,name=returnAddress,proto3" json:"returnAddress,omitempty"`
	//随机种子
	RandSeed int64 `protobuf:"varint,4,opt,name=randSeed,proto3" json:"randSeed,omitempty"`
	//购买ticket时公开
	PubHashes [][]byte `protobuf:"bytes,5,rep,name=pubHashes,proto3" json:"pubHashes,omitempty"`
}

func (x *TicketOpen) Reset() {
	*x = TicketOpen{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ticket_proto_msgTypes[6]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *TicketOpen) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*TicketOpen) ProtoMessage() {}

func (x *TicketOpen) ProtoReflect() protoreflect.Message {
	mi := &file_ticket_proto_msgTypes[6]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use TicketOpen.ProtoReflect.Descriptor instead.
func (*TicketOpen) Descriptor() ([]byte, []int) {
	return file_ticket_proto_rawDescGZIP(), []int{6}
}

func (x *TicketOpen) GetMinerAddress() string {
	if x != nil {
		return x.MinerAddress
	}
	return ""
}

func (x *TicketOpen) GetCount() int32 {
	if x != nil {
		return x.Count
	}
	return 0
}

func (x *TicketOpen) GetReturnAddress() string {
	if x != nil {
		return x.ReturnAddress
	}
	return ""
}

func (x *TicketOpen) GetRandSeed() int64 {
	if x != nil {
		return x.RandSeed
	}
	return 0
}

func (x *TicketOpen) GetPubHashes() [][]byte {
	if x != nil {
		return x.PubHashes
	}
	return nil
}

type TicketGenesis struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	MinerAddress  string `protobuf:"bytes,1,opt,name=minerAddress,proto3" json:"minerAddress,omitempty"`
	ReturnAddress string `protobuf:"bytes,2,opt,name=returnAddress,proto3" json:"returnAddress,omitempty"`
	Count         int32  `protobuf:"varint,3,opt,name=count,proto3" json:"count,omitempty"`
}

func (x *TicketGenesis) Reset() {
	*x = TicketGenesis{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ticket_proto_msgTypes[7]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *TicketGenesis) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*TicketGenesis) ProtoMessage() {}

func (x *TicketGenesis) ProtoReflect() protoreflect.Message {
	mi := &file_ticket_proto_msgTypes[7]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use TicketGenesis.ProtoReflect.Descriptor instead.
func (*TicketGenesis) Descriptor() ([]byte, []int) {
	return file_ticket_proto_rawDescGZIP(), []int{7}
}

func (x *TicketGenesis) GetMinerAddress() string {
	if x != nil {
		return x.MinerAddress
	}
	return ""
}

func (x *TicketGenesis) GetReturnAddress() string {
	if x != nil {
		return x.ReturnAddress
	}
	return ""
}

func (x *TicketGenesis) GetCount() int32 {
	if x != nil {
		return x.Count
	}
	return 0
}

type TicketClose struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	TicketId     []string `protobuf:"bytes,1,rep,name=ticketId,proto3" json:"ticketId,omitempty"`
	MinerAddress string   `protobuf:"bytes,2,opt,name=minerAddress,proto3" json:"minerAddress,omitempty"`
}

func (x *TicketClose) Reset() {
	*x = TicketClose{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ticket_proto_msgTypes[8]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *TicketClose) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*TicketClose) ProtoMessage() {}

func (x *TicketClose) ProtoReflect() protoreflect.Message {
	mi := &file_ticket_proto_msgTypes[8]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use TicketClose.ProtoReflect.Descriptor instead.
func (*TicketClose) Descriptor() ([]byte, []int) {
	return file_ticket_proto_rawDescGZIP(), []int{8}
}

func (x *TicketClose) GetTicketId() []string {
	if x != nil {
		return x.TicketId
	}
	return nil
}

func (x *TicketClose) GetMinerAddress() string {
	if x != nil {
		return x.MinerAddress
	}
	return ""
}

type TicketList struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Addr   string `protobuf:"bytes,1,opt,name=addr,proto3" json:"addr,omitempty"`
	Status int32  `protobuf:"varint,3,opt,name=status,proto3" json:"status,omitempty"`
}

func (x *TicketList) Reset() {
	*x = TicketList{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ticket_proto_msgTypes[9]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *TicketList) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*TicketList) ProtoMessage() {}

func (x *TicketList) ProtoReflect() protoreflect.Message {
	mi := &file_ticket_proto_msgTypes[9]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use TicketList.ProtoReflect.Descriptor instead.
func (*TicketList) Descriptor() ([]byte, []int) {
	return file_ticket_proto_rawDescGZIP(), []int{9}
}

func (x *TicketList) GetAddr() string {
	if x != nil {
		return x.Addr
	}
	return ""
}

func (x *TicketList) GetStatus() int32 {
	if x != nil {
		return x.Status
	}
	return 0
}

type TicketInfos struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	TicketIds []string `protobuf:"bytes,1,rep,name=ticketIds,proto3" json:"ticketIds,omitempty"`
}

func (x *TicketInfos) Reset() {
	*x = TicketInfos{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ticket_proto_msgTypes[10]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *TicketInfos) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*TicketInfos) ProtoMessage() {}

func (x *TicketInfos) ProtoReflect() protoreflect.Message {
	mi := &file_ticket_proto_msgTypes[10]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use TicketInfos.ProtoReflect.Descriptor instead.
func (*TicketInfos) Descriptor() ([]byte, []int) {
	return file_ticket_proto_rawDescGZIP(), []int{10}
}

func (x *TicketInfos) GetTicketIds() []string {
	if x != nil {
		return x.TicketIds
	}
	return nil
}

type ReplyTicketList struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Tickets []*Ticket `protobuf:"bytes,1,rep,name=tickets,proto3" json:"tickets,omitempty"`
}

func (x *ReplyTicketList) Reset() {
	*x = ReplyTicketList{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ticket_proto_msgTypes[11]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ReplyTicketList) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ReplyTicketList) ProtoMessage() {}

func (x *ReplyTicketList) ProtoReflect() protoreflect.Message {
	mi := &file_ticket_proto_msgTypes[11]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ReplyTicketList.ProtoReflect.Descriptor instead.
func (*ReplyTicketList) Descriptor() ([]byte, []int) {
	return file_ticket_proto_rawDescGZIP(), []int{11}
}

func (x *ReplyTicketList) GetTickets() []*Ticket {
	if x != nil {
		return x.Tickets
	}
	return nil
}

type ReplyWalletTickets struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Tickets  []*Ticket `protobuf:"bytes,1,rep,name=tickets,proto3" json:"tickets,omitempty"`
	Privkeys [][]byte  `protobuf:"bytes,2,rep,name=privkeys,proto3" json:"privkeys,omitempty"`
}

func (x *ReplyWalletTickets) Reset() {
	*x = ReplyWalletTickets{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ticket_proto_msgTypes[12]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ReplyWalletTickets) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ReplyWalletTickets) ProtoMessage() {}

func (x *ReplyWalletTickets) ProtoReflect() protoreflect.Message {
	mi := &file_ticket_proto_msgTypes[12]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ReplyWalletTickets.ProtoReflect.Descriptor instead.
func (*ReplyWalletTickets) Descriptor() ([]byte, []int) {
	return file_ticket_proto_rawDescGZIP(), []int{12}
}

func (x *ReplyWalletTickets) GetTickets() []*Ticket {
	if x != nil {
		return x.Tickets
	}
	return nil
}

func (x *ReplyWalletTickets) GetPrivkeys() [][]byte {
	if x != nil {
		return x.Privkeys
	}
	return nil
}

type ReceiptTicket struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	TicketId   string `protobuf:"bytes,1,opt,name=ticketId,proto3" json:"ticketId,omitempty"`
	Status     int32  `protobuf:"varint,2,opt,name=status,proto3" json:"status,omitempty"`
	PrevStatus int32  `protobuf:"varint,3,opt,name=prevStatus,proto3" json:"prevStatus,omitempty"`
	Addr       string `protobuf:"bytes,4,opt,name=addr,proto3" json:"addr,omitempty"`
}

func (x *ReceiptTicket) Reset() {
	*x = ReceiptTicket{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ticket_proto_msgTypes[13]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ReceiptTicket) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ReceiptTicket) ProtoMessage() {}

func (x *ReceiptTicket) ProtoReflect() protoreflect.Message {
	mi := &file_ticket_proto_msgTypes[13]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ReceiptTicket.ProtoReflect.Descriptor instead.
func (*ReceiptTicket) Descriptor() ([]byte, []int) {
	return file_ticket_proto_rawDescGZIP(), []int{13}
}

func (x *ReceiptTicket) GetTicketId() string {
	if x != nil {
		return x.TicketId
	}
	return ""
}

func (x *ReceiptTicket) GetStatus() int32 {
	if x != nil {
		return x.Status
	}
	return 0
}

func (x *ReceiptTicket) GetPrevStatus() int32 {
	if x != nil {
		return x.PrevStatus
	}
	return 0
}

func (x *ReceiptTicket) GetAddr() string {
	if x != nil {
		return x.Addr
	}
	return ""
}

type ReceiptTicketBind struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	OldMinerAddress string `protobuf:"bytes,1,opt,name=oldMinerAddress,proto3" json:"oldMinerAddress,omitempty"`
	NewMinerAddress string `protobuf:"bytes,2,opt,name=newMinerAddress,proto3" json:"newMinerAddress,omitempty"`
	ReturnAddress   string `protobuf:"bytes,3,opt,name=returnAddress,proto3" json:"returnAddress,omitempty"`
}

func (x *ReceiptTicketBind) Reset() {
	*x = ReceiptTicketBind{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ticket_proto_msgTypes[14]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ReceiptTicketBind) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ReceiptTicketBind) ProtoMessage() {}

func (x *ReceiptTicketBind) ProtoReflect() protoreflect.Message {
	mi := &file_ticket_proto_msgTypes[14]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ReceiptTicketBind.ProtoReflect.Descriptor instead.
func (*ReceiptTicketBind) Descriptor() ([]byte, []int) {
	return file_ticket_proto_rawDescGZIP(), []int{14}
}

func (x *ReceiptTicketBind) GetOldMinerAddress() string {
	if x != nil {
		return x.OldMinerAddress
	}
	return ""
}

func (x *ReceiptTicketBind) GetNewMinerAddress() string {
	if x != nil {
		return x.NewMinerAddress
	}
	return ""
}

func (x *ReceiptTicketBind) GetReturnAddress() string {
	if x != nil {
		return x.ReturnAddress
	}
	return ""
}

type ReqBindMiner struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	BindAddr     string `protobuf:"bytes,1,opt,name=bindAddr,proto3" json:"bindAddr,omitempty"`
	OriginAddr   string `protobuf:"bytes,2,opt,name=originAddr,proto3" json:"originAddr,omitempty"`
	Amount       int64  `protobuf:"varint,3,opt,name=amount,proto3" json:"amount,omitempty"`
	CheckBalance bool   `protobuf:"varint,4,opt,name=checkBalance,proto3" json:"checkBalance,omitempty"`
}

func (x *ReqBindMiner) Reset() {
	*x = ReqBindMiner{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ticket_proto_msgTypes[15]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ReqBindMiner) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ReqBindMiner) ProtoMessage() {}

func (x *ReqBindMiner) ProtoReflect() protoreflect.Message {
	mi := &file_ticket_proto_msgTypes[15]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ReqBindMiner.ProtoReflect.Descriptor instead.
func (*ReqBindMiner) Descriptor() ([]byte, []int) {
	return file_ticket_proto_rawDescGZIP(), []int{15}
}

func (x *ReqBindMiner) GetBindAddr() string {
	if x != nil {
		return x.BindAddr
	}
	return ""
}

func (x *ReqBindMiner) GetOriginAddr() string {
	if x != nil {
		return x.OriginAddr
	}
	return ""
}

func (x *ReqBindMiner) GetAmount() int64 {
	if x != nil {
		return x.Amount
	}
	return 0
}

func (x *ReqBindMiner) GetCheckBalance() bool {
	if x != nil {
		return x.CheckBalance
	}
	return false
}

type ReplyBindMiner struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	TxHex string `protobuf:"bytes,1,opt,name=txHex,proto3" json:"txHex,omitempty"`
}

func (x *ReplyBindMiner) Reset() {
	*x = ReplyBindMiner{}
	if protoimpl.UnsafeEnabled {
		mi := &file_ticket_proto_msgTypes[16]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ReplyBindMiner) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ReplyBindMiner) ProtoMessage() {}

func (x *ReplyBindMiner) ProtoReflect() protoreflect.Message {
	mi := &file_ticket_proto_msgTypes[16]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ReplyBindMiner.ProtoReflect.Descriptor instead.
func (*ReplyBindMiner) Descriptor() ([]byte, []int) {
	return file_ticket_proto_rawDescGZIP(), []int{16}
}

func (x *ReplyBindMiner) GetTxHex() string {
	if x != nil {
		return x.TxHex
	}
	return ""
}

var File_ticket_proto protoreflect.FileDescriptor

var file_ticket_proto_rawDesc = []byte{
	0x0a, 0x0c, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x05,
	0x74, 0x79, 0x70, 0x65, 0x73, 0x1a, 0x0c, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x70, 0x72,
	0x6f, 0x74, 0x6f, 0x22, 0x98, 0x02, 0x0a, 0x06, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x1a,
	0x0a, 0x08, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x08, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74,
	0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74,
	0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x73, 0x47, 0x65, 0x6e, 0x65, 0x73, 0x69, 0x73, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x69, 0x73, 0x47, 0x65, 0x6e, 0x65, 0x73, 0x69, 0x73,
	0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x04,
	0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65,
	0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x69, 0x6e, 0x65, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20,
	0x01, 0x28, 0x03, 0x52, 0x09, 0x6d, 0x69, 0x6e, 0x65, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1e,
	0x0a, 0x0a, 0x6d, 0x69, 0x6e, 0x65, 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x08, 0x20, 0x01,
	0x28, 0x03, 0x52, 0x0a, 0x6d, 0x69, 0x6e, 0x65, 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x22,
	0x0a, 0x0c, 0x6d, 0x69, 0x6e, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x06,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6d, 0x69, 0x6e, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65,
	0x73, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x41, 0x64, 0x64, 0x72,
	0x65, 0x73, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x72, 0x65, 0x74, 0x75, 0x72,
	0x6e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x72, 0x69, 0x63,
	0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x70, 0x72, 0x69, 0x63, 0x65, 0x22, 0x89,
	0x02, 0x0a, 0x0c, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12,
	0x29, 0x0a, 0x05, 0x74, 0x62, 0x69, 0x6e, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11,
	0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x42, 0x69, 0x6e,
	0x64, 0x48, 0x00, 0x52, 0x05, 0x74, 0x62, 0x69, 0x6e, 0x64, 0x12, 0x29, 0x0a, 0x05, 0x74, 0x6f,
	0x70, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x74, 0x79, 0x70, 0x65,
	0x73, 0x2e, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x4f, 0x70, 0x65, 0x6e, 0x48, 0x00, 0x52, 0x05,
	0x74, 0x6f, 0x70, 0x65, 0x6e, 0x12, 0x30, 0x0a, 0x07, 0x67, 0x65, 0x6e, 0x65, 0x73, 0x69, 0x73,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x54,
	0x69, 0x63, 0x6b, 0x65, 0x74, 0x47, 0x65, 0x6e, 0x65, 0x73, 0x69, 0x73, 0x48, 0x00, 0x52, 0x07,
	0x67, 0x65, 0x6e, 0x65, 0x73, 0x69, 0x73, 0x12, 0x2c, 0x0a, 0x06, 0x74, 0x63, 0x6c, 0x6f, 0x73,
	0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e,
	0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x48, 0x00, 0x52, 0x06, 0x74,
	0x63, 0x6c, 0x6f, 0x73, 0x65, 0x12, 0x2a, 0x0a, 0x05, 0x6d, 0x69, 0x6e, 0x65, 0x72, 0x18, 0x04,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x54, 0x69, 0x63,
	0x6b, 0x65, 0x74, 0x4d, 0x69, 0x6e, 0x65, 0x72, 0x48, 0x00, 0x52, 0x05, 0x6d, 0x69, 0x6e, 0x65,
	0x72, 0x12, 0x0e, 0x0a, 0x02, 0x74, 0x79, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x74,
	0x79, 0x42, 0x07, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0xbf, 0x01, 0x0a, 0x0b, 0x54,
	0x69, 0x63, 0x6b, 0x65, 0x74, 0x4d, 0x69, 0x6e, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x69,
	0x74, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x62, 0x69, 0x74, 0x73, 0x12, 0x16,
	0x0a, 0x06, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06,
	0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x74,
	0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x74,
	0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x79, 0x18, 0x04, 0x20, 0x01,
	0x28, 0x0c, 0x52, 0x06, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72,
	0x69, 0x76, 0x48, 0x61, 0x73, 0x68, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x70, 0x72,
	0x69, 0x76, 0x48, 0x61, 0x73, 0x68, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x72, 0x66, 0x48, 0x61, 0x73,
	0x68, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x76, 0x72, 0x66, 0x48, 0x61, 0x73, 0x68,
	0x12, 0x1a, 0x0a, 0x08, 0x76, 0x72, 0x66, 0x50, 0x72, 0x6f, 0x6f, 0x66, 0x18, 0x07, 0x20, 0x01,
	0x28, 0x0c, 0x52, 0x08, 0x76, 0x72, 0x66, 0x50, 0x72, 0x6f, 0x6f, 0x66, 0x22, 0x70, 0x0a, 0x0e,
	0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x4d, 0x69, 0x6e, 0x65, 0x72, 0x4f, 0x6c, 0x64, 0x12, 0x12,
	0x0a, 0x04, 0x62, 0x69, 0x74, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x62, 0x69,
	0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x03, 0x52, 0x06, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x74, 0x69,
	0x63, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x69,
	0x63, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x79,
	0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x79, 0x22, 0x39,
	0x0a, 0x09, 0x4d, 0x69, 0x6e, 0x65, 0x72, 0x46, 0x6c, 0x61, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x66,
	0x6c, 0x61, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x66, 0x6c, 0x61, 0x67, 0x12,
	0x18, 0x0a, 0x07, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03,
	0x52, 0x07, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x22, 0x56, 0x0a, 0x0a, 0x54, 0x69, 0x63,
	0x6b, 0x65, 0x74, 0x42, 0x69, 0x6e, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x6d, 0x69, 0x6e, 0x65, 0x72,
	0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6d,
	0x69, 0x6e, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x72,
	0x65, 0x74, 0x75, 0x72, 0x6e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x0d, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73,
	0x73, 0x22, 0xa6, 0x01, 0x0a, 0x0a, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x4f, 0x70, 0x65, 0x6e,
	0x12, 0x22, 0x0a, 0x0c, 0x6d, 0x69, 0x6e, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6d, 0x69, 0x6e, 0x65, 0x72, 0x41, 0x64, 0x64,
	0x72, 0x65, 0x73, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x05, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x72, 0x65,
	0x74, 0x75, 0x72, 0x6e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x0d, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73,
	0x12, 0x1a, 0x0a, 0x08, 0x72, 0x61, 0x6e, 0x64, 0x53, 0x65, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01,
	0x28, 0x03, 0x52, 0x08, 0x72, 0x61, 0x6e, 0x64, 0x53, 0x65, 0x65, 0x64, 0x12, 0x1c, 0x0a, 0x09,
	0x70, 0x75, 0x62, 0x48, 0x61, 0x73, 0x68, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0c, 0x52,
	0x09, 0x70, 0x75, 0x62, 0x48, 0x61, 0x73, 0x68, 0x65, 0x73, 0x22, 0x6f, 0x0a, 0x0d, 0x54, 0x69,
	0x63, 0x6b, 0x65, 0x74, 0x47, 0x65, 0x6e, 0x65, 0x73, 0x69, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x6d,
	0x69, 0x6e, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x0c, 0x6d, 0x69, 0x6e, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12,
	0x24, 0x0a, 0x0d, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x41, 0x64,
	0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x4d, 0x0a, 0x0b, 0x54,
	0x69, 0x63, 0x6b, 0x65, 0x74, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x74, 0x69,
	0x63, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x74, 0x69,
	0x63, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x6d, 0x69, 0x6e, 0x65, 0x72, 0x41,
	0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6d, 0x69,
	0x6e, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x38, 0x0a, 0x0a, 0x54, 0x69,
	0x63, 0x6b, 0x65, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x61, 0x64, 0x64, 0x72,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x61, 0x64, 0x64, 0x72, 0x12, 0x16, 0x0a, 0x06,
	0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x73, 0x74,
	0x61, 0x74, 0x75, 0x73, 0x22, 0x2b, 0x0a, 0x0b, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x49, 0x6e,
	0x66, 0x6f, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x73,
	0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x49, 0x64,
	0x73, 0x22, 0x3a, 0x0a, 0x0f, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74,
	0x4c, 0x69, 0x73, 0x74, 0x12, 0x27, 0x0a, 0x07, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x18,
	0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x54, 0x69,
	0x63, 0x6b, 0x65, 0x74, 0x52, 0x07, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x22, 0x59, 0x0a,
	0x12, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x54, 0x69, 0x63, 0x6b,
	0x65, 0x74, 0x73, 0x12, 0x27, 0x0a, 0x07, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x18, 0x01,
	0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x54, 0x69, 0x63,
	0x6b, 0x65, 0x74, 0x52, 0x07, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x12, 0x1a, 0x0a, 0x08,
	0x70, 0x72, 0x69, 0x76, 0x6b, 0x65, 0x79, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x08,
	0x70, 0x72, 0x69, 0x76, 0x6b, 0x65, 0x79, 0x73, 0x22, 0x77, 0x0a, 0x0d, 0x52, 0x65, 0x63, 0x65,
	0x69, 0x70, 0x74, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x74, 0x69, 0x63,
	0x6b, 0x65, 0x74, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x69, 0x63,
	0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1e, 0x0a,
	0x0a, 0x70, 0x72, 0x65, 0x76, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28,
	0x05, 0x52, 0x0a, 0x70, 0x72, 0x65, 0x76, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a,
	0x04, 0x61, 0x64, 0x64, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x61, 0x64, 0x64,
	0x72, 0x22, 0x8d, 0x01, 0x0a, 0x11, 0x52, 0x65, 0x63, 0x65, 0x69, 0x70, 0x74, 0x54, 0x69, 0x63,
	0x6b, 0x65, 0x74, 0x42, 0x69, 0x6e, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x6f, 0x6c, 0x64, 0x4d, 0x69,
	0x6e, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x0f, 0x6f, 0x6c, 0x64, 0x4d, 0x69, 0x6e, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73,
	0x73, 0x12, 0x28, 0x0a, 0x0f, 0x6e, 0x65, 0x77, 0x4d, 0x69, 0x6e, 0x65, 0x72, 0x41, 0x64, 0x64,
	0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x6e, 0x65, 0x77, 0x4d,
	0x69, 0x6e, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x72,
	0x65, 0x74, 0x75, 0x72, 0x6e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x0d, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73,
	0x73, 0x22, 0x86, 0x01, 0x0a, 0x0c, 0x52, 0x65, 0x71, 0x42, 0x69, 0x6e, 0x64, 0x4d, 0x69, 0x6e,
	0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x69, 0x6e, 0x64, 0x41, 0x64, 0x64, 0x72, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x62, 0x69, 0x6e, 0x64, 0x41, 0x64, 0x64, 0x72, 0x12, 0x1e,
	0x0a, 0x0a, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x41, 0x64, 0x64, 0x72, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x0a, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x41, 0x64, 0x64, 0x72, 0x12, 0x16,
	0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06,
	0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x22, 0x0a, 0x0c, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x42,
	0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x63, 0x68,
	0x65, 0x63, 0x6b, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x22, 0x26, 0x0a, 0x0e, 0x52, 0x65,
	0x70, 0x6c, 0x79, 0x42, 0x69, 0x6e, 0x64, 0x4d, 0x69, 0x6e, 0x65, 0x72, 0x12, 0x14, 0x0a, 0x05,
	0x74, 0x78, 0x48, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x78, 0x48,
	0x65, 0x78, 0x32, 0xad, 0x01, 0x0a, 0x06, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x3f, 0x0a,
	0x0f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x42, 0x69, 0x6e, 0x64, 0x4d, 0x69, 0x6e, 0x65, 0x72,
	0x12, 0x13, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x52, 0x65, 0x71, 0x42, 0x69, 0x6e, 0x64,
	0x4d, 0x69, 0x6e, 0x65, 0x72, 0x1a, 0x15, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x52, 0x65,
	0x70, 0x6c, 0x79, 0x42, 0x69, 0x6e, 0x64, 0x4d, 0x69, 0x6e, 0x65, 0x72, 0x22, 0x00, 0x12, 0x2f,
	0x0a, 0x0e, 0x47, 0x65, 0x74, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74,
	0x12, 0x0d, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x52, 0x65, 0x71, 0x4e, 0x69, 0x6c, 0x1a,
	0x0c, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x22, 0x00, 0x12,
	0x31, 0x0a, 0x0d, 0x53, 0x65, 0x74, 0x41, 0x75, 0x74, 0x6f, 0x4d, 0x69, 0x6e, 0x69, 0x6e, 0x67,
	0x12, 0x10, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x4d, 0x69, 0x6e, 0x65, 0x72, 0x46, 0x6c,
	0x61, 0x67, 0x1a, 0x0c, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x52, 0x65, 0x70, 0x6c, 0x79,
	0x22, 0x00, 0x42, 0x0a, 0x5a, 0x08, 0x2e, 0x2e, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x62, 0x06,
	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}

var (
	file_ticket_proto_rawDescOnce sync.Once
	file_ticket_proto_rawDescData = file_ticket_proto_rawDesc
)

func file_ticket_proto_rawDescGZIP() []byte {
	file_ticket_proto_rawDescOnce.Do(func() {
		file_ticket_proto_rawDescData = protoimpl.X.CompressGZIP(file_ticket_proto_rawDescData)
	})
	return file_ticket_proto_rawDescData
}

var file_ticket_proto_msgTypes = make([]protoimpl.MessageInfo, 17)
var file_ticket_proto_goTypes = []interface{}{
	(*Ticket)(nil),             // 0: types.Ticket
	(*TicketAction)(nil),       // 1: types.TicketAction
	(*TicketMiner)(nil),        // 2: types.TicketMiner
	(*TicketMinerOld)(nil),     // 3: types.TicketMinerOld
	(*MinerFlag)(nil),          // 4: types.MinerFlag
	(*TicketBind)(nil),         // 5: types.TicketBind
	(*TicketOpen)(nil),         // 6: types.TicketOpen
	(*TicketGenesis)(nil),      // 7: types.TicketGenesis
	(*TicketClose)(nil),        // 8: types.TicketClose
	(*TicketList)(nil),         // 9: types.TicketList
	(*TicketInfos)(nil),        // 10: types.TicketInfos
	(*ReplyTicketList)(nil),    // 11: types.ReplyTicketList
	(*ReplyWalletTickets)(nil), // 12: types.ReplyWalletTickets
	(*ReceiptTicket)(nil),      // 13: types.ReceiptTicket
	(*ReceiptTicketBind)(nil),  // 14: types.ReceiptTicketBind
	(*ReqBindMiner)(nil),       // 15: types.ReqBindMiner
	(*ReplyBindMiner)(nil),     // 16: types.ReplyBindMiner
	(*types.ReqNil)(nil),       // 17: types.ReqNil
	(*types.Int64)(nil),        // 18: types.Int64
	(*types.Reply)(nil),        // 19: types.Reply
}
var file_ticket_proto_depIdxs = []int32{
	5,  // 0: types.TicketAction.tbind:type_name -> types.TicketBind
	6,  // 1: types.TicketAction.topen:type_name -> types.TicketOpen
	7,  // 2: types.TicketAction.genesis:type_name -> types.TicketGenesis
	8,  // 3: types.TicketAction.tclose:type_name -> types.TicketClose
	2,  // 4: types.TicketAction.miner:type_name -> types.TicketMiner
	0,  // 5: types.ReplyTicketList.tickets:type_name -> types.Ticket
	0,  // 6: types.ReplyWalletTickets.tickets:type_name -> types.Ticket
	15, // 7: types.ticket.CreateBindMiner:input_type -> types.ReqBindMiner
	17, // 8: types.ticket.GetTicketCount:input_type -> types.ReqNil
	4,  // 9: types.ticket.SetAutoMining:input_type -> types.MinerFlag
	16, // 10: types.ticket.CreateBindMiner:output_type -> types.ReplyBindMiner
	18, // 11: types.ticket.GetTicketCount:output_type -> types.Int64
	19, // 12: types.ticket.SetAutoMining:output_type -> types.Reply
	10, // [10:13] is the sub-list for method output_type
	7,  // [7:10] is the sub-list for method input_type
	7,  // [7:7] is the sub-list for extension type_name
	7,  // [7:7] is the sub-list for extension extendee
	0,  // [0:7] is the sub-list for field type_name
}

func init() { file_ticket_proto_init() }
func file_ticket_proto_init() {
	if File_ticket_proto != nil {
		return
	}
	if !protoimpl.UnsafeEnabled {
		file_ticket_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Ticket); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ticket_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*TicketAction); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ticket_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*TicketMiner); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ticket_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*TicketMinerOld); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ticket_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*MinerFlag); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ticket_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*TicketBind); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ticket_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*TicketOpen); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ticket_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*TicketGenesis); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ticket_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*TicketClose); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ticket_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*TicketList); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ticket_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*TicketInfos); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ticket_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ReplyTicketList); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ticket_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ReplyWalletTickets); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ticket_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ReceiptTicket); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ticket_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ReceiptTicketBind); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ticket_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ReqBindMiner); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_ticket_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ReplyBindMiner); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
	}
	file_ticket_proto_msgTypes[1].OneofWrappers = []interface{}{
		(*TicketAction_Tbind)(nil),
		(*TicketAction_Topen)(nil),
		(*TicketAction_Genesis)(nil),
		(*TicketAction_Tclose)(nil),
		(*TicketAction_Miner)(nil),
	}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: file_ticket_proto_rawDesc,
			NumEnums:      0,
			NumMessages:   17,
			NumExtensions: 0,
			NumServices:   1,
		},
		GoTypes:           file_ticket_proto_goTypes,
		DependencyIndexes: file_ticket_proto_depIdxs,
		MessageInfos:      file_ticket_proto_msgTypes,
	}.Build()
	File_ticket_proto = out.File
	file_ticket_proto_rawDesc = nil
	file_ticket_proto_goTypes = nil
	file_ticket_proto_depIdxs = nil
}

// Reference imports to suppress errors if they are not otherwise used.
var _ context.Context
var _ grpc.ClientConnInterface

// This is a compile-time assertion to ensure that this generated file
// is compatible with the grpc package it is being compiled against.
const _ = grpc.SupportPackageIsVersion6

// TicketClient is the client API for Ticket service.
//
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
type TicketClient interface {
	//创建绑定挖矿
	CreateBindMiner(ctx context.Context, in *ReqBindMiner, opts ...grpc.CallOption) (*ReplyBindMiner, error)
	//查询钱包票数
	GetTicketCount(ctx context.Context, in *types.ReqNil, opts ...grpc.CallOption) (*types.Int64, error)
	// Miner
	//设置自动挖矿
	SetAutoMining(ctx context.Context, in *MinerFlag, opts ...grpc.CallOption) (*types.Reply, error)
}

type ticketClient struct {
	cc grpc.ClientConnInterface
}

func NewTicketClient(cc grpc.ClientConnInterface) TicketClient {
	return &ticketClient{cc}
}

func (c *ticketClient) CreateBindMiner(ctx context.Context, in *ReqBindMiner, opts ...grpc.CallOption) (*ReplyBindMiner, error) {
	out := new(ReplyBindMiner)
	err := c.cc.Invoke(ctx, "/types.ticket/CreateBindMiner", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ticketClient) GetTicketCount(ctx context.Context, in *types.ReqNil, opts ...grpc.CallOption) (*types.Int64, error) {
	out := new(types.Int64)
	err := c.cc.Invoke(ctx, "/types.ticket/GetTicketCount", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ticketClient) SetAutoMining(ctx context.Context, in *MinerFlag, opts ...grpc.CallOption) (*types.Reply, error) {
	out := new(types.Reply)
	err := c.cc.Invoke(ctx, "/types.ticket/SetAutoMining", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

// TicketServer is the server API for Ticket service.
type TicketServer interface {
	//创建绑定挖矿
	CreateBindMiner(context.Context, *ReqBindMiner) (*ReplyBindMiner, error)
	//查询钱包票数
	GetTicketCount(context.Context, *types.ReqNil) (*types.Int64, error)
	// Miner
	//设置自动挖矿
	SetAutoMining(context.Context, *MinerFlag) (*types.Reply, error)
}

// UnimplementedTicketServer can be embedded to have forward compatible implementations.
type UnimplementedTicketServer struct {
}

func (*UnimplementedTicketServer) CreateBindMiner(context.Context, *ReqBindMiner) (*ReplyBindMiner, error) {
	return nil, status.Errorf(codes.Unimplemented, "method CreateBindMiner not implemented")
}
func (*UnimplementedTicketServer) GetTicketCount(context.Context, *types.ReqNil) (*types.Int64, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetTicketCount not implemented")
}
func (*UnimplementedTicketServer) SetAutoMining(context.Context, *MinerFlag) (*types.Reply, error) {
	return nil, status.Errorf(codes.Unimplemented, "method SetAutoMining not implemented")
}

func RegisterTicketServer(s *grpc.Server, srv TicketServer) {
	s.RegisterService(&_Ticket_serviceDesc, srv)
}

func _Ticket_CreateBindMiner_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(ReqBindMiner)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(TicketServer).CreateBindMiner(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/types.ticket/CreateBindMiner",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(TicketServer).CreateBindMiner(ctx, req.(*ReqBindMiner))
	}
	return interceptor(ctx, in, info, handler)
}

func _Ticket_GetTicketCount_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(types.ReqNil)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(TicketServer).GetTicketCount(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/types.ticket/GetTicketCount",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(TicketServer).GetTicketCount(ctx, req.(*types.ReqNil))
	}
	return interceptor(ctx, in, info, handler)
}

func _Ticket_SetAutoMining_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(MinerFlag)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(TicketServer).SetAutoMining(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/types.ticket/SetAutoMining",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(TicketServer).SetAutoMining(ctx, req.(*MinerFlag))
	}
	return interceptor(ctx, in, info, handler)
}

var _Ticket_serviceDesc = grpc.ServiceDesc{
	ServiceName: "types.ticket",
	HandlerType: (*TicketServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "CreateBindMiner",
			Handler:    _Ticket_CreateBindMiner_Handler,
		},
		{
			MethodName: "GetTicketCount",
			Handler:    _Ticket_GetTicketCount_Handler,
		},
		{
			MethodName: "SetAutoMining",
			Handler:    _Ticket_SetAutoMining_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "ticket.proto",
}
