-
Notifications
You must be signed in to change notification settings - Fork 42
/
Copy pathgenesis.ts
123 lines (123 loc) · 4.26 KB
/
genesis.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
import { DenomTrace, DenomTraceAmino, DenomTraceSDKType, Params, ParamsAmino, ParamsSDKType } from "./transfer";
import { BinaryReader, BinaryWriter } from "../../../../binary";
/** GenesisState defines the ibc-transfer genesis state */
export interface GenesisState {
portId: string;
denomTraces: DenomTrace[];
params: Params | undefined;
}
export interface GenesisStateProtoMsg {
typeUrl: "/ibc.applications.transfer.v1.GenesisState";
value: Uint8Array;
}
/** GenesisState defines the ibc-transfer genesis state */
export interface GenesisStateAmino {
port_id?: string;
denom_traces?: DenomTraceAmino[];
params?: ParamsAmino | undefined;
}
export interface GenesisStateAminoMsg {
type: "cosmos-sdk/GenesisState";
value: GenesisStateAmino;
}
/** GenesisState defines the ibc-transfer genesis state */
export interface GenesisStateSDKType {
port_id: string;
denom_traces: DenomTraceSDKType[];
params: ParamsSDKType | undefined;
}
function createBaseGenesisState(): GenesisState {
return {
portId: "",
denomTraces: [],
params: Params.fromPartial({})
};
}
export const GenesisState = {
typeUrl: "/ibc.applications.transfer.v1.GenesisState",
encode(message: GenesisState, writer: BinaryWriter = BinaryWriter.create()): BinaryWriter {
if (message.portId !== "") {
writer.uint32(10).string(message.portId);
}
for (const v of message.denomTraces) {
DenomTrace.encode(v!, writer.uint32(18).fork()).ldelim();
}
if (message.params !== undefined) {
Params.encode(message.params, writer.uint32(26).fork()).ldelim();
}
return writer;
},
decode(input: BinaryReader | Uint8Array, length?: number): GenesisState {
const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseGenesisState();
while (reader.pos < end) {
const tag = reader.uint32();
switch (tag >>> 3) {
case 1:
message.portId = reader.string();
break;
case 2:
message.denomTraces.push(DenomTrace.decode(reader, reader.uint32()));
break;
case 3:
message.params = Params.decode(reader, reader.uint32());
break;
default:
reader.skipType(tag & 7);
break;
}
}
return message;
},
fromPartial(object: Partial<GenesisState>): GenesisState {
const message = createBaseGenesisState();
message.portId = object.portId ?? "";
message.denomTraces = object.denomTraces?.map(e => DenomTrace.fromPartial(e)) || [];
message.params = object.params !== undefined && object.params !== null ? Params.fromPartial(object.params) : undefined;
return message;
},
fromAmino(object: GenesisStateAmino): GenesisState {
const message = createBaseGenesisState();
if (object.port_id !== undefined && object.port_id !== null) {
message.portId = object.port_id;
}
message.denomTraces = object.denom_traces?.map(e => DenomTrace.fromAmino(e)) || [];
if (object.params !== undefined && object.params !== null) {
message.params = Params.fromAmino(object.params);
}
return message;
},
toAmino(message: GenesisState): GenesisStateAmino {
const obj: any = {};
obj.port_id = message.portId === "" ? undefined : message.portId;
if (message.denomTraces) {
obj.denom_traces = message.denomTraces.map(e => e ? DenomTrace.toAmino(e) : undefined);
} else {
obj.denom_traces = message.denomTraces;
}
obj.params = message.params ? Params.toAmino(message.params) : undefined;
return obj;
},
fromAminoMsg(object: GenesisStateAminoMsg): GenesisState {
return GenesisState.fromAmino(object.value);
},
toAminoMsg(message: GenesisState): GenesisStateAminoMsg {
return {
type: "cosmos-sdk/GenesisState",
value: GenesisState.toAmino(message)
};
},
fromProtoMsg(message: GenesisStateProtoMsg): GenesisState {
return GenesisState.decode(message.value);
},
toProto(message: GenesisState): Uint8Array {
return GenesisState.encode(message).finish();
},
toProtoMsg(message: GenesisState): GenesisStateProtoMsg {
return {
typeUrl: "/ibc.applications.transfer.v1.GenesisState",
value: GenesisState.encode(message).finish()
};
}
};