25 lines
385 B
Go
25 lines
385 B
Go
|
package enums
|
||
|
|
||
|
type Enum interface {
|
||
|
Valid() bool
|
||
|
ValuesAny() []any
|
||
|
ValuesMeta() []EnumMetaValue
|
||
|
VarName() string
|
||
|
}
|
||
|
|
||
|
type StringEnum interface {
|
||
|
Enum
|
||
|
String() string
|
||
|
}
|
||
|
|
||
|
type DescriptionEnum interface {
|
||
|
Enum
|
||
|
Description() string
|
||
|
}
|
||
|
|
||
|
type EnumMetaValue struct {
|
||
|
VarName string `json:"varName"`
|
||
|
Value any `json:"value"`
|
||
|
Description *string `json:"description"`
|
||
|
}
|