package wallet

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

var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf

type Status int32

const (
	Status_INVALID Status = 0
	Status_VALID   Status = 1
	Status_ISSUED  Status = 2
)

var Status_name = map[int32]string{
	0: "INVALID",
	1: "VALID",
	2: "ISSUED",
}
var Status_value = map[string]int32{
	"INVALID": 0,
	"VALID":   1,
	"ISSUED":  2,
}

func (x Status) String() string {
	return proto.EnumName(Status_name, int32(x))
}
func (Status) EnumDescriptor() ([]byte, []int) { return fileDescriptor1, []int{0} }

type TransactionType int32

const (
	TransactionType_CreateTx     TransactionType = 0
	TransactionType_CreateDID    TransactionType = 1
	TransactionType_UpdateDID    TransactionType = 2
	TransactionType_CreateVC     TransactionType = 3
	TransactionType_UpdateVC     TransactionType = 4
	TransactionType_CreateCToken TransactionType = 5
	TransactionType_UpdateCToken TransactionType = 6
	TransactionType_CreateIndex  TransactionType = 7
)

var TransactionType_name = map[int32]string{
	0: "CreateTx",
	1: "CreateDID",
	2: "UpdateDID",
	3: "CreateVC",
	4: "UpdateVC",
	5: "CreateCToken",
	6: "UpdateCToken",
	7: "CreateIndex",
}
var TransactionType_value = map[string]int32{
	"CreateTx":     0,
	"CreateDID":    1,
	"UpdateDID":    2,
	"CreateVC":     3,
	"UpdateVC":     4,
	"CreateCToken": 5,
	"UpdateCToken": 6,
	"CreateIndex":  7,
}

func (x TransactionType) String() string {
	return proto.EnumName(TransactionType_name, int32(x))
}
func (TransactionType) EnumDescriptor() ([]byte, []int) { return fileDescriptor1, []int{1} }

type Metadata struct {
	Hash string `protobuf:"bytes,1,opt,name=hash" json:"hash,omitempty"`
	Data []byte `protobuf:"bytes,2,opt,name=data,proto3" json:"data,omitempty"`
}

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

func (m *Metadata) GetHash() string {
	if m != nil {
		return m.Hash
	}
	return ""
}

func (m *Metadata) GetData() []byte {
	if m != nil {
		return m.Data
	}
	return nil
}

type UniformPayload struct {
	Version int32           `protobuf:"varint,1,opt,name=version" json:"version,omitempty"`
	Type    TransactionType `protobuf:"varint,2,opt,name=type,enum=wallet.TransactionType" json:"type,omitempty"`
	Founder string          `protobuf:"bytes,3,opt,name=founder" json:"founder,omitempty"`
	Payload []byte          `protobuf:"bytes,4,opt,name=payload,proto3" json:"payload,omitempty"`
}

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

func (m *UniformPayload) GetVersion() int32 {
	if m != nil {
		return m.Version
	}
	return 0
}

func (m *UniformPayload) GetType() TransactionType {
	if m != nil {
		return m.Type
	}
	return TransactionType_CreateTx
}

func (m *UniformPayload) GetFounder() string {
	if m != nil {
		return m.Founder
	}
	return ""
}

func (m *UniformPayload) GetPayload() []byte {
	if m != nil {
		return m.Payload
	}
	return nil
}

func init() {
	proto.RegisterType((*Metadata)(nil), "wallet.Metadata")
	proto.RegisterType((*UniformPayload)(nil), "wallet.UniformPayload")
	proto.RegisterEnum("wallet.Status", Status_name, Status_value)
	proto.RegisterEnum("wallet.TransactionType", TransactionType_name, TransactionType_value)
}

func init() { proto.RegisterFile("wallet/common.proto", fileDescriptor1) }

var fileDescriptor1 = []byte{

	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x5c, 0x91, 0xcf, 0x4e, 0xc2, 0x40,
	0x10, 0xc6, 0x29, 0x94, 0x42, 0x87, 0x7f, 0x9b, 0xf5, 0x60, 0x8f, 0x84, 0x13, 0x41, 0x69, 0x23,
	0x3c, 0x81, 0x16, 0x0f, 0x4d, 0xd4, 0x98, 0x52, 0x38, 0x78, 0x5b, 0xda, 0x85, 0x36, 0xd0, 0xdd,
	0x66, 0xbb, 0x28, 0x3c, 0x83, 0x89, 0xcf, 0x6c, 0xba, 0x0b, 0x31, 0xf1, 0x36, 0xbf, 0xef, 0x9b,
	0x9d, 0x6f, 0xb2, 0x03, 0x37, 0x5f, 0xe4, 0x70, 0xa0, 0xd2, 0x8b, 0x79, 0x9e, 0x73, 0xe6, 0x16,
	0x82, 0x4b, 0x8e, 0x2d, 0x2d, 0x8e, 0x66, 0xd0, 0x7e, 0xa5, 0x92, 0x24, 0x44, 0x12, 0x8c, 0xc1,
	0x4c, 0x49, 0x99, 0x3a, 0xc6, 0xd0, 0x18, 0xdb, 0xa1, 0xaa, 0x2b, 0xad, 0xf2, 0x9c, 0xfa, 0xd0,
	0x18, 0x77, 0x43, 0x55, 0x8f, 0xbe, 0x0d, 0xe8, 0xaf, 0x58, 0xb6, 0xe5, 0x22, 0x7f, 0x27, 0xe7,
	0x03, 0x27, 0x09, 0x76, 0xa0, 0xf5, 0x49, 0x45, 0x99, 0x71, 0xa6, 0x5e, 0x37, 0xc3, 0x2b, 0xe2,
	0x3b, 0x30, 0xe5, 0xb9, 0xa0, 0x6a, 0x40, 0x7f, 0x76, 0xeb, 0xea, 0x5c, 0x37, 0x12, 0x84, 0x95,
	0x24, 0x96, 0x19, 0x67, 0xd1, 0xb9, 0xa0, 0xa1, 0x6a, 0xaa, 0xc6, 0x6c, 0xf9, 0x91, 0x25, 0x54,
	0x38, 0x0d, 0xb5, 0xc4, 0x15, 0x2b, 0xa7, 0xd0, 0x59, 0x8e, 0xa9, 0x56, 0xb9, 0xe2, 0xe4, 0x1e,
	0xac, 0xa5, 0x24, 0xf2, 0x58, 0xe2, 0x0e, 0xb4, 0x82, 0xb7, 0xf5, 0xe3, 0x4b, 0xb0, 0x40, 0x35,
	0x6c, 0x43, 0x53, 0x97, 0x06, 0x06, 0xb0, 0x82, 0xe5, 0x72, 0xf5, 0xbc, 0x40, 0xf5, 0xc9, 0x8f,
	0x01, 0x83, 0x7f, 0xd9, 0xb8, 0x0b, 0x6d, 0x5f, 0x50, 0x22, 0x69, 0x74, 0x42, 0x35, 0xdc, 0x03,
	0x5b, 0xd3, 0x42, 0x3d, 0xee, 0x81, 0xbd, 0x2a, 0x92, 0x0b, 0xd6, 0xff, 0x7a, 0xd7, 0x3e, 0x6a,
	0x54, 0xa4, 0xcd, 0xb5, 0x8f, 0x4c, 0x8c, 0xa0, 0xab, 0x3d, 0x3f, 0xe2, 0x7b, 0xca, 0x50, 0xb3,
	0x52, 0xb4, 0x7f, 0x51, 0x2c, 0x3c, 0x80, 0x8e, 0xee, 0x09, 0x58, 0x42, 0x4f, 0xa8, 0xf5, 0x34,
	0xff, 0x78, 0xd8, 0x65, 0x32, 0x3d, 0x6e, 0xdc, 0x98, 0xe7, 0x1e, 0x11, 0x27, 0xc2, 0xe2, 0x94,
	0x64, 0xcc, 0x2b, 0x93, 0xfd, 0x74, 0xc7, 0xa7, 0xfa, 0x6a, 0x9e, 0xba, 0x5a, 0xe9, 0xe9, 0xdf,
	0xdb, 0x58, 0x0a, 0xe7, 0xbf, 0x01, 0x00, 0x00, 0xff, 0xff, 0x4e, 0xbc, 0x6d, 0xf5, 0xdb, 0x01,
	0x00, 0x00,
}
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: wallet/common.proto

package wallet

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 Status int32

const (
	Status_INVALID Status = 0
	Status_VALID   Status = 1
	Status_ISSUED  Status = 2
)

var Status_name = map[int32]string{
	0: "INVALID",
	1: "VALID",
	2: "ISSUED",
}
var Status_value = map[string]int32{
	"INVALID": 0,
	"VALID":   1,
	"ISSUED":  2,
}

func (x Status) String() string {
	return proto.EnumName(Status_name, int32(x))
}
func (Status) EnumDescriptor() ([]byte, []int) { return fileDescriptor1, []int{0} }

// Marmot transaction type
type TransactionType int32

const (
	TransactionType_CreateTx     TransactionType = 0
	TransactionType_CreateDID    TransactionType = 1
	TransactionType_UpdateDID    TransactionType = 2
	TransactionType_CreateVC     TransactionType = 3
	TransactionType_UpdateVC     TransactionType = 4
	TransactionType_CreateCToken TransactionType = 5
	TransactionType_UpdateCToken TransactionType = 6
	TransactionType_CreateIndex  TransactionType = 7
)

var TransactionType_name = map[int32]string{
	0: "CreateTx",
	1: "CreateDID",
	2: "UpdateDID",
	3: "CreateVC",
	4: "UpdateVC",
	5: "CreateCToken",
	6: "UpdateCToken",
	7: "CreateIndex",
}
var TransactionType_value = map[string]int32{
	"CreateTx":     0,
	"CreateDID":    1,
	"UpdateDID":    2,
	"CreateVC":     3,
	"UpdateVC":     4,
	"CreateCToken": 5,
	"UpdateCToken": 6,
	"CreateIndex":  7,
}

func (x TransactionType) String() string {
	return proto.EnumName(TransactionType_name, int32(x))
}
func (TransactionType) EnumDescriptor() ([]byte, []int) { return fileDescriptor1, []int{1} }

// Metadata defines on chain metadata of decentralized identity
type Metadata struct {
	Hash string `protobuf:"bytes,1,opt,name=hash" json:"hash,omitempty"`
	Data []byte `protobuf:"bytes,2,opt,name=data,proto3" json:"data,omitempty"`
}

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

func (m *Metadata) GetHash() string {
	if m != nil {
		return m.Hash
	}
	return ""
}

func (m *Metadata) GetData() []byte {
	if m != nil {
		return m.Data
	}
	return nil
}

type UniformPayload struct {
	Version int32           `protobuf:"varint,1,opt,name=version" json:"version,omitempty"`
	Type    TransactionType `protobuf:"varint,2,opt,name=type,enum=wallet.TransactionType" json:"type,omitempty"`
	Founder string          `protobuf:"bytes,3,opt,name=founder" json:"founder,omitempty"`
	Payload []byte          `protobuf:"bytes,4,opt,name=payload,proto3" json:"payload,omitempty"`
}

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

func (m *UniformPayload) GetVersion() int32 {
	if m != nil {
		return m.Version
	}
	return 0
}

func (m *UniformPayload) GetType() TransactionType {
	if m != nil {
		return m.Type
	}
	return TransactionType_CreateTx
}

func (m *UniformPayload) GetFounder() string {
	if m != nil {
		return m.Founder
	}
	return ""
}

func (m *UniformPayload) GetPayload() []byte {
	if m != nil {
		return m.Payload
	}
	return nil
}

func init() {
	proto.RegisterType((*Metadata)(nil), "wallet.Metadata")
	proto.RegisterType((*UniformPayload)(nil), "wallet.UniformPayload")
	proto.RegisterEnum("wallet.Status", Status_name, Status_value)
	proto.RegisterEnum("wallet.TransactionType", TransactionType_name, TransactionType_value)
}

func init() { proto.RegisterFile("wallet/common.proto", fileDescriptor1) }

var fileDescriptor1 = []byte{
	// 338 bytes of a gzipped FileDescriptorProto
	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x5c, 0x91, 0xcf, 0x4e, 0xc2, 0x40,
	0x10, 0xc6, 0x29, 0x94, 0x42, 0x87, 0x7f, 0x9b, 0xf5, 0x60, 0x8f, 0x84, 0x13, 0x41, 0x69, 0x23,
	0x3c, 0x81, 0x16, 0x0f, 0x4d, 0xd4, 0x98, 0x52, 0x38, 0x78, 0x5b, 0xda, 0x85, 0x36, 0xd0, 0xdd,
	0x66, 0xbb, 0x28, 0x3c, 0x83, 0x89, 0xcf, 0x6c, 0xba, 0x0b, 0x31, 0xf1, 0x36, 0xbf, 0xef, 0x9b,
	0x9d, 0x6f, 0xb2, 0x03, 0x37, 0x5f, 0xe4, 0x70, 0xa0, 0xd2, 0x8b, 0x79, 0x9e, 0x73, 0xe6, 0x16,
	0x82, 0x4b, 0x8e, 0x2d, 0x2d, 0x8e, 0x66, 0xd0, 0x7e, 0xa5, 0x92, 0x24, 0x44, 0x12, 0x8c, 0xc1,
	0x4c, 0x49, 0x99, 0x3a, 0xc6, 0xd0, 0x18, 0xdb, 0xa1, 0xaa, 0x2b, 0xad, 0xf2, 0x9c, 0xfa, 0xd0,
	0x18, 0x77, 0x43, 0x55, 0x8f, 0xbe, 0x0d, 0xe8, 0xaf, 0x58, 0xb6, 0xe5, 0x22, 0x7f, 0x27, 0xe7,
	0x03, 0x27, 0x09, 0x76, 0xa0, 0xf5, 0x49, 0x45, 0x99, 0x71, 0xa6, 0x5e, 0x37, 0xc3, 0x2b, 0xe2,
	0x3b, 0x30, 0xe5, 0xb9, 0xa0, 0x6a, 0x40, 0x7f, 0x76, 0xeb, 0xea, 0x5c, 0x37, 0x12, 0x84, 0x95,
	0x24, 0x96, 0x19, 0x67, 0xd1, 0xb9, 0xa0, 0xa1, 0x6a, 0xaa, 0xc6, 0x6c, 0xf9, 0x91, 0x25, 0x54,
	0x38, 0x0d, 0xb5, 0xc4, 0x15, 0x2b, 0xa7, 0xd0, 0x59, 0x8e, 0xa9, 0x56, 0xb9, 0xe2, 0xe4, 0x1e,
	0xac, 0xa5, 0x24, 0xf2, 0x58, 0xe2, 0x0e, 0xb4, 0x82, 0xb7, 0xf5, 0xe3, 0x4b, 0xb0, 0x40, 0x35,
	0x6c, 0x43, 0x53, 0x97, 0x06, 0x06, 0xb0, 0x82, 0xe5, 0x72, 0xf5, 0xbc, 0x40, 0xf5, 0xc9, 0x8f,
	0x01, 0x83, 0x7f, 0xd9, 0xb8, 0x0b, 0x6d, 0x5f, 0x50, 0x22, 0x69, 0x74, 0x42, 0x35, 0xdc, 0x03,
	0x5b, 0xd3, 0x42, 0x3d, 0xee, 0x81, 0xbd, 0x2a, 0x92, 0x0b, 0xd6, 0xff, 0x7a, 0xd7, 0x3e, 0x6a,
	0x54, 0xa4, 0xcd, 0xb5, 0x8f, 0x4c, 0x8c, 0xa0, 0xab, 0x3d, 0x3f, 0xe2, 0x7b, 0xca, 0x50, 0xb3,
	0x52, 0xb4, 0x7f, 0x51, 0x2c, 0x3c, 0x80, 0x8e, 0xee, 0x09, 0x58, 0x42, 0x4f, 0xa8, 0xf5, 0x34,
	0xff, 0x78, 0xd8, 0x65, 0x32, 0x3d, 0x6e, 0xdc, 0x98, 0xe7, 0x1e, 0x11, 0x27, 0xc2, 0xe2, 0x94,
	0x64, 0xcc, 0x2b, 0x93, 0xfd, 0x74, 0xc7, 0xa7, 0xfa, 0x6a, 0x9e, 0xba, 0x5a, 0xe9, 0xe9, 0xdf,
	0xdb, 0x58, 0x0a, 0xe7, 0xbf, 0x01, 0x00, 0x00, 0xff, 0xff, 0x4e, 0xbc, 0x6d, 0xf5, 0xdb, 0x01,
	0x00, 0x00,
}
