// Code generated by protoc-gen-go. DO NOT EDIT.
// source: rule.proto

package types

import proto "github.com/golang/protobuf/proto"
import fmt "fmt"
import math "math"

// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf

type AutonomyProposalRule struct {
	PropRule *ProposalRule `protobuf:"bytes,1,opt,name=propRule" json:"propRule,omitempty"`
	Rule     *RuleConfig   `protobuf:"bytes,2,opt,name=rule" json:"rule,omitempty"`
	// 全体持票人投票结果
	VoteResult *VoteResult `protobuf:"bytes,3,opt,name=voteResult" json:"voteResult,omitempty"`
	// 状态
	Status  int32  `protobuf:"varint,4,opt,name=status" json:"status,omitempty"`
	Address string `protobuf:"bytes,5,opt,name=address" json:"address,omitempty"`
	Height  int64  `protobuf:"varint,6,opt,name=height" json:"height,omitempty"`
	Index   int32  `protobuf:"varint,7,opt,name=index" json:"index,omitempty"`
}

func (m *AutonomyProposalRule) Reset()                    { *m = AutonomyProposalRule{} }
func (m *AutonomyProposalRule) String() string            { return proto.CompactTextString(m) }
func (*AutonomyProposalRule) ProtoMessage()               {}
func (*AutonomyProposalRule) Descriptor() ([]byte, []int) { return fileDescriptor4, []int{0} }

func (m *AutonomyProposalRule) GetPropRule() *ProposalRule {
	if m != nil {
		return m.PropRule
	}
	return nil
}

func (m *AutonomyProposalRule) GetRule() *RuleConfig {
	if m != nil {
		return m.Rule
	}
	return nil
}

func (m *AutonomyProposalRule) GetVoteResult() *VoteResult {
	if m != nil {
		return m.VoteResult
	}
	return nil
}

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

func (m *AutonomyProposalRule) GetAddress() string {
	if m != nil {
		return m.Address
	}
	return ""
}

func (m *AutonomyProposalRule) GetHeight() int64 {
	if m != nil {
		return m.Height
	}
	return 0
}

func (m *AutonomyProposalRule) GetIndex() int32 {
	if m != nil {
		return m.Index
	}
	return 0
}

type ProposalRule struct {
	// 提案时间
	Year  int32 `protobuf:"varint,1,opt,name=year" json:"year,omitempty"`
	Month int32 `protobuf:"varint,2,opt,name=month" json:"month,omitempty"`
	Day   int32 `protobuf:"varint,3,opt,name=day" json:"day,omitempty"`
	// 规则可修改项,如果某项不修改则置为-1
	RuleCfg *RuleConfig `protobuf:"bytes,4,opt,name=ruleCfg" json:"ruleCfg,omitempty"`
	// 投票相关
	StartBlockHeight   int64 `protobuf:"varint,5,opt,name=startBlockHeight" json:"startBlockHeight,omitempty"`
	EndBlockHeight     int64 `protobuf:"varint,6,opt,name=endBlockHeight" json:"endBlockHeight,omitempty"`
	RealEndBlockHeight int64 `protobuf:"varint,7,opt,name=realEndBlockHeight" json:"realEndBlockHeight,omitempty"`
}

func (m *ProposalRule) Reset()                    { *m = ProposalRule{} }
func (m *ProposalRule) String() string            { return proto.CompactTextString(m) }
func (*ProposalRule) ProtoMessage()               {}
func (*ProposalRule) Descriptor() ([]byte, []int) { return fileDescriptor4, []int{1} }

func (m *ProposalRule) GetYear() int32 {
	if m != nil {
		return m.Year
	}
	return 0
}

func (m *ProposalRule) GetMonth() int32 {
	if m != nil {
		return m.Month
	}
	return 0
}

func (m *ProposalRule) GetDay() int32 {
	if m != nil {
		return m.Day
	}
	return 0
}

func (m *ProposalRule) GetRuleCfg() *RuleConfig {
	if m != nil {
		return m.RuleCfg
	}
	return nil
}

func (m *ProposalRule) GetStartBlockHeight() int64 {
	if m != nil {
		return m.StartBlockHeight
	}
	return 0
}

func (m *ProposalRule) GetEndBlockHeight() int64 {
	if m != nil {
		return m.EndBlockHeight
	}
	return 0
}

func (m *ProposalRule) GetRealEndBlockHeight() int64 {
	if m != nil {
		return m.RealEndBlockHeight
	}
	return 0
}

type RevokeProposalRule struct {
	ProposalID string `protobuf:"bytes,1,opt,name=proposalID" json:"proposalID,omitempty"`
}

func (m *RevokeProposalRule) Reset()                    { *m = RevokeProposalRule{} }
func (m *RevokeProposalRule) String() string            { return proto.CompactTextString(m) }
func (*RevokeProposalRule) ProtoMessage()               {}
func (*RevokeProposalRule) Descriptor() ([]byte, []int) { return fileDescriptor4, []int{2} }

func (m *RevokeProposalRule) GetProposalID() string {
	if m != nil {
		return m.ProposalID
	}
	return ""
}

type VoteProposalRule struct {
	ProposalID string `protobuf:"bytes,1,opt,name=proposalID" json:"proposalID,omitempty"`
	Approve    bool   `protobuf:"varint,2,opt,name=approve" json:"approve,omitempty"`
}

func (m *VoteProposalRule) Reset()                    { *m = VoteProposalRule{} }
func (m *VoteProposalRule) String() string            { return proto.CompactTextString(m) }
func (*VoteProposalRule) ProtoMessage()               {}
func (*VoteProposalRule) Descriptor() ([]byte, []int) { return fileDescriptor4, []int{3} }

func (m *VoteProposalRule) GetProposalID() string {
	if m != nil {
		return m.ProposalID
	}
	return ""
}

func (m *VoteProposalRule) GetApprove() bool {
	if m != nil {
		return m.Approve
	}
	return false
}

type TerminateProposalRule struct {
	ProposalID string `protobuf:"bytes,1,opt,name=proposalID" json:"proposalID,omitempty"`
}

func (m *TerminateProposalRule) Reset()                    { *m = TerminateProposalRule{} }
func (m *TerminateProposalRule) String() string            { return proto.CompactTextString(m) }
func (*TerminateProposalRule) ProtoMessage()               {}
func (*TerminateProposalRule) Descriptor() ([]byte, []int) { return fileDescriptor4, []int{4} }

func (m *TerminateProposalRule) GetProposalID() string {
	if m != nil {
		return m.ProposalID
	}
	return ""
}

// receipt
type ReceiptProposalRule struct {
	Prev    *AutonomyProposalRule `protobuf:"bytes,1,opt,name=prev" json:"prev,omitempty"`
	Current *AutonomyProposalRule `protobuf:"bytes,2,opt,name=current" json:"current,omitempty"`
}

func (m *ReceiptProposalRule) Reset()                    { *m = ReceiptProposalRule{} }
func (m *ReceiptProposalRule) String() string            { return proto.CompactTextString(m) }
func (*ReceiptProposalRule) ProtoMessage()               {}
func (*ReceiptProposalRule) Descriptor() ([]byte, []int) { return fileDescriptor4, []int{5} }

func (m *ReceiptProposalRule) GetPrev() *AutonomyProposalRule {
	if m != nil {
		return m.Prev
	}
	return nil
}

func (m *ReceiptProposalRule) GetCurrent() *AutonomyProposalRule {
	if m != nil {
		return m.Current
	}
	return nil
}

type LocalProposalRule struct {
	PropRule *AutonomyProposalRule `protobuf:"bytes,1,opt,name=propRule" json:"propRule,omitempty"`
	Comments []string              `protobuf:"bytes,2,rep,name=comments" json:"comments,omitempty"`
}

func (m *LocalProposalRule) Reset()                    { *m = LocalProposalRule{} }
func (m *LocalProposalRule) String() string            { return proto.CompactTextString(m) }
func (*LocalProposalRule) ProtoMessage()               {}
func (*LocalProposalRule) Descriptor() ([]byte, []int) { return fileDescriptor4, []int{6} }

func (m *LocalProposalRule) GetPropRule() *AutonomyProposalRule {
	if m != nil {
		return m.PropRule
	}
	return nil
}

func (m *LocalProposalRule) GetComments() []string {
	if m != nil {
		return m.Comments
	}
	return nil
}

// query
type ReqQueryProposalRule struct {
	// 优先根据status查询
	Status    int32 `protobuf:"varint,1,opt,name=status" json:"status,omitempty"`
	Count     int32 `protobuf:"varint,2,opt,name=count" json:"count,omitempty"`
	Direction int32 `protobuf:"varint,3,opt,name=direction" json:"direction,omitempty"`
	Index     int64 `protobuf:"varint,4,opt,name=index" json:"index,omitempty"`
}

func (m *ReqQueryProposalRule) Reset()                    { *m = ReqQueryProposalRule{} }
func (m *ReqQueryProposalRule) String() string            { return proto.CompactTextString(m) }
func (*ReqQueryProposalRule) ProtoMessage()               {}
func (*ReqQueryProposalRule) Descriptor() ([]byte, []int) { return fileDescriptor4, []int{7} }

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

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

func (m *ReqQueryProposalRule) GetDirection() int32 {
	if m != nil {
		return m.Direction
	}
	return 0
}

func (m *ReqQueryProposalRule) GetIndex() int64 {
	if m != nil {
		return m.Index
	}
	return 0
}

type ReplyQueryProposalRule struct {
	PropRules []*AutonomyProposalRule `protobuf:"bytes,1,rep,name=propRules" json:"propRules,omitempty"`
}

func (m *ReplyQueryProposalRule) Reset()                    { *m = ReplyQueryProposalRule{} }
func (m *ReplyQueryProposalRule) String() string            { return proto.CompactTextString(m) }
func (*ReplyQueryProposalRule) ProtoMessage()               {}
func (*ReplyQueryProposalRule) Descriptor() ([]byte, []int) { return fileDescriptor4, []int{8} }

func (m *ReplyQueryProposalRule) GetPropRules() []*AutonomyProposalRule {
	if m != nil {
		return m.PropRules
	}
	return nil
}

func init() {
	proto.RegisterType((*AutonomyProposalRule)(nil), "types.AutonomyProposalRule")
	proto.RegisterType((*ProposalRule)(nil), "types.ProposalRule")
	proto.RegisterType((*RevokeProposalRule)(nil), "types.RevokeProposalRule")
	proto.RegisterType((*VoteProposalRule)(nil), "types.VoteProposalRule")
	proto.RegisterType((*TerminateProposalRule)(nil), "types.TerminateProposalRule")
	proto.RegisterType((*ReceiptProposalRule)(nil), "types.ReceiptProposalRule")
	proto.RegisterType((*LocalProposalRule)(nil), "types.LocalProposalRule")
	proto.RegisterType((*ReqQueryProposalRule)(nil), "types.ReqQueryProposalRule")
	proto.RegisterType((*ReplyQueryProposalRule)(nil), "types.ReplyQueryProposalRule")
}

func init() { proto.RegisterFile("rule.proto", fileDescriptor4) }

var fileDescriptor4 = []byte{
	// 519 bytes of a gzipped FileDescriptorProto
	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x54, 0x5b, 0x6f, 0xd3, 0x30,
	0x14, 0x56, 0xda, 0xba, 0x97, 0xc3, 0x45, 0x9d, 0x57, 0xa6, 0x68, 0x20, 0x54, 0x45, 0x02, 0x55,
	0x20, 0x15, 0x71, 0xd3, 0xc4, 0x23, 0x0c, 0x24, 0x90, 0xf6, 0x00, 0x07, 0xc4, 0x7b, 0x48, 0xce,
	0xda, 0x68, 0xa9, 0x6d, 0x1c, 0xa7, 0x5a, 0x1f, 0x78, 0xe0, 0x77, 0xf3, 0x82, 0xec, 0xb8, 0x4d,
	0xb3, 0x56, 0x9b, 0xf6, 0x96, 0xef, 0xf8, 0x3b, 0x97, 0xcf, 0x3e, 0x5f, 0x00, 0x74, 0x99, 0xd3,
	0x54, 0x69, 0x69, 0x24, 0x67, 0x66, 0xa5, 0xa8, 0x38, 0xbe, 0x97, 0x27, 0x72, 0xb1, 0x90, 0xa2,
	0x8a, 0x46, 0x7f, 0x5b, 0x30, 0x7a, 0x5f, 0x1a, 0x29, 0xe4, 0x62, 0xf5, 0x55, 0x4b, 0x25, 0x8b,
	0x38, 0xc7, 0x32, 0x27, 0xfe, 0x02, 0xfa, 0x4a, 0x4b, 0x65, 0xbf, 0xc3, 0x60, 0x1c, 0x4c, 0xee,
	0xbc, 0x3a, 0x9c, 0xba, 0x0a, 0xd3, 0x6d, 0x1a, 0x6e, 0x48, 0xfc, 0x09, 0x74, 0x6c, 0xb7, 0xb0,
	0xe5, 0xc8, 0x07, 0x9e, 0x6c, 0x8f, 0x4e, 0xa5, 0x38, 0xcf, 0x66, 0xe8, 0x8e, 0xf9, 0x4b, 0x80,
	0xa5, 0x34, 0x84, 0x54, 0x94, 0xb9, 0x09, 0xdb, 0x0d, 0xf2, 0xcf, 0xcd, 0x01, 0x6e, 0x91, 0xf8,
	0x11, 0x74, 0x0b, 0x13, 0x9b, 0xb2, 0x08, 0x3b, 0xe3, 0x60, 0xc2, 0xd0, 0x23, 0x1e, 0x42, 0x2f,
	0x4e, 0x53, 0x4d, 0x45, 0x11, 0xb2, 0x71, 0x30, 0x19, 0xe0, 0x1a, 0xda, 0x8c, 0x39, 0x65, 0xb3,
	0xb9, 0x09, 0xbb, 0xe3, 0x60, 0xd2, 0x46, 0x8f, 0xf8, 0x08, 0x58, 0x26, 0x52, 0xba, 0x0c, 0x7b,
	0xae, 0x50, 0x05, 0xa2, 0x7f, 0x01, 0xdc, 0x6d, 0x68, 0xe7, 0xd0, 0x59, 0x51, 0xac, 0x9d, 0x6e,
	0x86, 0xee, 0xdb, 0xa6, 0x2e, 0xa4, 0x30, 0x73, 0xa7, 0x8f, 0x61, 0x05, 0xf8, 0x10, 0xda, 0x69,
	0xbc, 0x72, 0x32, 0x18, 0xda, 0x4f, 0xfe, 0x1c, 0x7a, 0x56, 0xe7, 0xe9, 0xf9, 0xcc, 0x4d, 0xbb,
	0xf7, 0x26, 0xd6, 0x0c, 0xfe, 0x0c, 0x86, 0x85, 0x89, 0xb5, 0xf9, 0x90, 0xcb, 0xe4, 0xe2, 0x73,
	0x35, 0x31, 0x73, 0x13, 0xef, 0xc4, 0xf9, 0x53, 0xb8, 0x4f, 0x22, 0xdd, 0x66, 0x56, 0xda, 0xae,
	0x44, 0xf9, 0x14, 0xb8, 0xa6, 0x38, 0xff, 0xd4, 0xe4, 0xf6, 0x1c, 0x77, 0xcf, 0x49, 0xf4, 0x06,
	0x38, 0xd2, 0x52, 0x5e, 0x50, 0xe3, 0x0a, 0x1e, 0x03, 0x28, 0x8f, 0xbf, 0x7c, 0x74, 0x17, 0x31,
	0xc0, 0xad, 0x48, 0x74, 0x06, 0x43, 0xfb, 0x5a, 0xb7, 0xc9, 0x71, 0xef, 0xa5, 0x94, 0x96, 0xcb,
	0x6a, 0x49, 0xfa, 0xb8, 0x86, 0xd1, 0x09, 0x3c, 0xf8, 0x41, 0x7a, 0x91, 0x89, 0xf8, 0x76, 0x25,
	0xa3, 0x3f, 0x70, 0x88, 0x94, 0x50, 0xa6, 0xcc, 0x95, 0xe5, 0xed, 0x28, 0x4d, 0x4b, 0xbf, 0xb8,
	0x0f, 0xfd, 0x0b, 0xec, 0xdb, 0x73, 0x74, 0x44, 0xfe, 0x16, 0x7a, 0x49, 0xa9, 0x35, 0x09, 0xe3,
	0xf7, 0xf7, 0xda, 0x9c, 0x35, 0x37, 0x9a, 0xc3, 0xc1, 0x99, 0x4c, 0xe2, 0xbc, 0xd1, 0xfc, 0x64,
	0xc7, 0x39, 0xd7, 0x16, 0xab, 0x1d, 0x74, 0x0c, 0x7d, 0xeb, 0x4d, 0x12, 0xa6, 0x08, 0x5b, 0xe3,
	0xf6, 0x64, 0x80, 0x1b, 0x1c, 0x5d, 0xc2, 0x08, 0xe9, 0xf7, 0xb7, 0x92, 0x74, 0xd3, 0xa6, 0xb5,
	0x37, 0x82, 0x86, 0x37, 0x46, 0xc0, 0x12, 0x59, 0x7a, 0x39, 0x0c, 0x2b, 0xc0, 0x1f, 0xc1, 0x20,
	0xcd, 0x34, 0x25, 0x26, 0x93, 0xc2, 0x2f, 0x6d, 0x1d, 0xa8, 0xdd, 0xd1, 0x71, 0xcb, 0xe2, 0xdd,
	0xf1, 0x1d, 0x8e, 0x90, 0x54, 0xbe, 0xda, 0xed, 0xfd, 0x0e, 0x06, 0xeb, 0xd9, 0x6d, 0xfb, 0xf6,
	0x4d, 0x4a, 0x6b, 0xf6, 0xaf, 0xae, 0xfb, 0xfb, 0xbc, 0xfe, 0x1f, 0x00, 0x00, 0xff, 0xff, 0x2c,
	0x38, 0xbe, 0x35, 0xa1, 0x04, 0x00, 0x00,
}
