Initial dract of the common structs

This commit is contained in:
a_bennassar
2020-07-24 13:04:17 +02:00
parent ecf731982e
commit b9936f8564
16 changed files with 310 additions and 5 deletions

36
common/fee.go Normal file
View File

@@ -0,0 +1,36 @@
package common
// Fee is a type that represents the percentage of tokens that will be payed in a transaction
// to incentivaise the materialization of it
type Fee float64
// RecommendedFee is the recommended fee to pay in USD per transaction set by the coordinator
// according to the tx type (if the tx requires to create an account and register, only register or he account already esists)
type RecommendedFee struct {
ExistingAccount float64
CreatesAccount float64
CreatesAccountAndRegister float64
}
// FeeSelector is used to select a percentage from the FeePlan. Max value is 16
type FeeSelector uint8
// FeePlan represents the fee model, a position in the array indicates the percentage of tokens paid in concept of fee for a transaction
var FeePlan = [16]float64{
0,
.001,
.002,
.005,
.01,
.02,
.05,
.1,
.2,
.5,
1,
2,
5,
10,
20,
50,
}