package validate_service

import "encoding/json"

type Coin struct {
	Name      string          `json:"name" validate:"required"`
	Nickname  json.RawMessage `json:"nickname" validate:"required"`
	Icon      string          `json:"icon" validate:"omitempty"`	//
	Introduce json.RawMessage `json:"introduce" validate:"omitempty"`	//

	Official string `json:"official" validate:"omitempty"`	//
	Paper    string `json:"paper" validate:"omitempty"`	//
	Platform string `json:"platform" validate:"required"`
	Chain    string `json:"chain" validate:"required"`
	Release  string `json:"release" validate:"omitempty"`	//

	AreaSearch     string  `json:"area_search" validate:"omitempty"`	//
	PublishCount   float64 `json:"publish_count" validate:"omitempty"`	//
	CirculateCount float64 `json:"circulate_count" validate:"omitempty"`	//
	Decimals       int     `json:"decimals" validate:"required"`
	Address        string  `json:"address" validate:"omitempty"`	//

	Treaty     int `json:"treaty" validate:"required"`
	PlatformId int `json:"platform_id" validate:"required"`
}

type EditCoin struct {
	Coin
	Id int `json:"id" validate:"required"`
}
