github.com/stafiprotocol/go-substrate-rpc-client@v1.4.7/pkg/stafidecoder/metadata.go (about)

     1  package stafi_decoder
     2  
     3  type MetadataModules struct {
     4  	Name      string                `json:"name"`
     5  	Prefix    string                `json:"prefix"`
     6  	Storage   []MetadataStorage     `json:"storage"`
     7  	Calls     []MetadataCalls       `json:"calls"`
     8  	Events    []MetadataEvents      `json:"events"`
     9  	Constants []MetadataConstants   `json:"constants,omitempty"`
    10  	Errors    []MetadataModuleError `json:"errors"`
    11  	Index     int                   `json:"index"`
    12  }
    13  
    14  type MetadataStorage struct {
    15  	Name     string      `json:"name"`
    16  	Modifier string      `json:"modifier"`
    17  	Type     StorageType `json:"type"`
    18  	Fallback string      `json:"fallback"`
    19  	Docs     []string    `json:"docs"`
    20  	Hasher   string      `json:"hasher,omitempty"`
    21  }
    22  
    23  type StorageType struct {
    24  	Origin        string   `json:"origin"`
    25  	PlainType     *string  `json:"plain_type,omitempty"`
    26  	MapType       *MapType `json:"map_type,omitempty"`
    27  	DoubleMapType *MapType `json:"double_map_type,omitempty"`
    28  }
    29  
    30  type MapType struct {
    31  	Hasher     string `json:"hasher"`
    32  	Key        string `json:"key"`
    33  	Key2       string `json:"key2,omitempty"`
    34  	Key2Hasher string `json:"key2Hasher,omitempty"`
    35  	Value      string `json:"value"`
    36  	IsLinked   bool   `json:"isLinked"`
    37  }
    38  
    39  type MetadataCalls struct {
    40  	Lookup string                       `json:"lookup"`
    41  	Name   string                       `json:"name"`
    42  	Docs   []string                     `json:"docs"`
    43  	Args   []MetadataModuleCallArgument `json:"args"`
    44  }
    45  
    46  type MetadataEvents struct {
    47  	Lookup string   `json:"lookup"`
    48  	Name   string   `json:"name"`
    49  	Docs   []string `json:"docs"`
    50  	Args   []string `json:"args"`
    51  }
    52  
    53  type MetadataStruct struct {
    54  	MetadataVersion int                   `json:"metadata_version"`
    55  	Metadata        MetadataTag           `json:"metadata"`
    56  	CallIndex       map[string]CallIndex  `json:"call_index"`
    57  	EventIndex      map[string]EventIndex `json:"event_index"`
    58  	Extrinsic       *ExtrinsicMetadata    `json:"extrinsic"`
    59  }
    60  
    61  type CallIndex struct {
    62  	Module MetadataModules `json:"module"`
    63  	Call   MetadataCalls   `json:"call"`
    64  }
    65  
    66  type EventIndex struct {
    67  	Module MetadataModules `json:"module"`
    68  	Call   MetadataEvents  `json:"call"`
    69  }
    70  
    71  type MetadataTag struct {
    72  	Modules []MetadataModules `json:"modules"`
    73  }
    74  
    75  type MetadataConstants struct {
    76  	Name           string   `json:"name"`
    77  	Type           string   `json:"type"`
    78  	ConstantsValue string   `json:"constants_value"`
    79  	Docs           []string `json:"docs"`
    80  }