@wormhole-foundation/sdk-definitions-ntt 0.1.0-beta.3 → 0.2.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -82,7 +82,245 @@ export declare const nttNamedPayloads: readonly [readonly ["WormholeTransfer", r
82
82
  }]>]>, import("@wormhole-foundation/sdk-base/dist/cjs").CustomizableBytesReturn<{
83
83
  readonly name: "transceiverPayload";
84
84
  readonly lengthSize: 2;
85
- }, Uint8Array>]], readonly ["TransceiverInfo", readonly [{
85
+ }, Uint8Array>]], readonly ["WormholeTransferStandardRelayer", readonly [{
86
+ readonly name: "payloadId";
87
+ readonly binary: "uint";
88
+ readonly size: 1;
89
+ readonly custom: 1;
90
+ readonly omit: true;
91
+ }, {
92
+ readonly binary: "bytes";
93
+ readonly layout: readonly [{
94
+ readonly custom: {
95
+ to: (val: number) => "Solana" | "Ethereum" | "Terra" | "Bsc" | "Polygon" | "Avalanche" | "Oasis" | "Algorand" | "Aurora" | "Fantom" | "Karura" | "Acala" | "Klaytn" | "Celo" | "Near" | "Moonbeam" | "Neon" | "Terra2" | "Injective" | "Osmosis" | "Sui" | "Aptos" | "Arbitrum" | "Optimism" | "Gnosis" | "Pythnet" | "Xpla" | "Btc" | "Base" | "Sei" | "Rootstock" | "Scroll" | "Mantle" | "Blast" | "Xlayer" | "Linea" | "Berachain" | "Seievm" | "Wormchain" | "Cosmoshub" | "Evmos" | "Kujira" | "Neutron" | "Celestia" | "Stargaze" | "Seda" | "Dymension" | "Provenance" | "Sepolia" | "ArbitrumSepolia" | "BaseSepolia" | "OptimismSepolia" | "Holesky" | "PolygonSepolia";
96
+ from: (val: "Solana" | "Ethereum" | "Terra" | "Bsc" | "Polygon" | "Avalanche" | "Oasis" | "Algorand" | "Aurora" | "Fantom" | "Karura" | "Acala" | "Klaytn" | "Celo" | "Near" | "Moonbeam" | "Neon" | "Terra2" | "Injective" | "Osmosis" | "Sui" | "Aptos" | "Arbitrum" | "Optimism" | "Gnosis" | "Pythnet" | "Xpla" | "Btc" | "Base" | "Sei" | "Rootstock" | "Scroll" | "Mantle" | "Blast" | "Xlayer" | "Linea" | "Berachain" | "Seievm" | "Wormchain" | "Cosmoshub" | "Evmos" | "Kujira" | "Neutron" | "Celestia" | "Stargaze" | "Seda" | "Dymension" | "Provenance" | "Sepolia" | "ArbitrumSepolia" | "BaseSepolia" | "OptimismSepolia" | "Holesky" | "PolygonSepolia") => number;
97
+ };
98
+ readonly binary: "uint";
99
+ readonly size: 2;
100
+ readonly name: "chain";
101
+ }, {
102
+ readonly binary: "bytes";
103
+ readonly size: 32;
104
+ readonly custom: {
105
+ to: (val: Uint8Array) => import("@wormhole-foundation/sdk-definitions").UniversalAddress;
106
+ from: (val: import("@wormhole-foundation/sdk-definitions").UniversalAddress) => Uint8Array;
107
+ };
108
+ readonly name: "address";
109
+ }];
110
+ readonly name: "target";
111
+ }, import("@wormhole-foundation/sdk-base/dist/cjs").CustomizableBytesReturn<{
112
+ readonly name: "payload";
113
+ readonly lengthSize: 4;
114
+ }, readonly [{
115
+ readonly name: "prefix";
116
+ readonly binary: "bytes";
117
+ readonly custom: Uint8Array;
118
+ readonly omit: true;
119
+ }, {
120
+ readonly binary: "bytes";
121
+ readonly size: 32;
122
+ readonly custom: {
123
+ to: (val: Uint8Array) => import("@wormhole-foundation/sdk-definitions").UniversalAddress;
124
+ from: (val: import("@wormhole-foundation/sdk-definitions").UniversalAddress) => Uint8Array;
125
+ };
126
+ readonly name: "sourceNttManager";
127
+ }, {
128
+ readonly binary: "bytes";
129
+ readonly size: 32;
130
+ readonly custom: {
131
+ to: (val: Uint8Array) => import("@wormhole-foundation/sdk-definitions").UniversalAddress;
132
+ from: (val: import("@wormhole-foundation/sdk-definitions").UniversalAddress) => Uint8Array;
133
+ };
134
+ readonly name: "recipientNttManager";
135
+ }, import("@wormhole-foundation/sdk-base/dist/cjs").CustomizableBytesReturn<{
136
+ readonly name: "nttManagerPayload";
137
+ readonly lengthSize: 2;
138
+ }, readonly [{
139
+ readonly name: "id";
140
+ readonly binary: "bytes";
141
+ readonly size: 32;
142
+ }, {
143
+ readonly binary: "bytes";
144
+ readonly size: 32;
145
+ readonly custom: {
146
+ to: (val: Uint8Array) => import("@wormhole-foundation/sdk-definitions").UniversalAddress;
147
+ from: (val: import("@wormhole-foundation/sdk-definitions").UniversalAddress) => Uint8Array;
148
+ };
149
+ readonly name: "sender";
150
+ }, import("@wormhole-foundation/sdk-base/dist/cjs").CustomizableBytesReturn<{
151
+ readonly name: "payload";
152
+ readonly lengthSize: 2;
153
+ }, readonly [{
154
+ readonly name: "prefix";
155
+ readonly binary: "bytes";
156
+ readonly custom: Uint8Array;
157
+ readonly omit: true;
158
+ }, {
159
+ readonly binary: "bytes";
160
+ readonly layout: readonly [{
161
+ readonly name: "decimals";
162
+ readonly binary: "uint";
163
+ readonly size: 1;
164
+ }, {
165
+ readonly name: "amount";
166
+ readonly binary: "uint";
167
+ readonly size: 8;
168
+ }];
169
+ readonly name: "trimmedAmount";
170
+ }, {
171
+ readonly binary: "bytes";
172
+ readonly size: 32;
173
+ readonly custom: {
174
+ to: (val: Uint8Array) => import("@wormhole-foundation/sdk-definitions").UniversalAddress;
175
+ from: (val: import("@wormhole-foundation/sdk-definitions").UniversalAddress) => Uint8Array;
176
+ };
177
+ readonly name: "sourceToken";
178
+ }, {
179
+ readonly binary: "bytes";
180
+ readonly size: 32;
181
+ readonly custom: {
182
+ to: (val: Uint8Array) => import("@wormhole-foundation/sdk-definitions").UniversalAddress;
183
+ from: (val: import("@wormhole-foundation/sdk-definitions").UniversalAddress) => Uint8Array;
184
+ };
185
+ readonly name: "recipientAddress";
186
+ }, {
187
+ readonly custom: {
188
+ to: (val: number) => "Solana" | "Ethereum" | "Terra" | "Bsc" | "Polygon" | "Avalanche" | "Oasis" | "Algorand" | "Aurora" | "Fantom" | "Karura" | "Acala" | "Klaytn" | "Celo" | "Near" | "Moonbeam" | "Neon" | "Terra2" | "Injective" | "Osmosis" | "Sui" | "Aptos" | "Arbitrum" | "Optimism" | "Gnosis" | "Pythnet" | "Xpla" | "Btc" | "Base" | "Sei" | "Rootstock" | "Scroll" | "Mantle" | "Blast" | "Xlayer" | "Linea" | "Berachain" | "Seievm" | "Wormchain" | "Cosmoshub" | "Evmos" | "Kujira" | "Neutron" | "Celestia" | "Stargaze" | "Seda" | "Dymension" | "Provenance" | "Sepolia" | "ArbitrumSepolia" | "BaseSepolia" | "OptimismSepolia" | "Holesky" | "PolygonSepolia";
189
+ from: (val: "Solana" | "Ethereum" | "Terra" | "Bsc" | "Polygon" | "Avalanche" | "Oasis" | "Algorand" | "Aurora" | "Fantom" | "Karura" | "Acala" | "Klaytn" | "Celo" | "Near" | "Moonbeam" | "Neon" | "Terra2" | "Injective" | "Osmosis" | "Sui" | "Aptos" | "Arbitrum" | "Optimism" | "Gnosis" | "Pythnet" | "Xpla" | "Btc" | "Base" | "Sei" | "Rootstock" | "Scroll" | "Mantle" | "Blast" | "Xlayer" | "Linea" | "Berachain" | "Seievm" | "Wormchain" | "Cosmoshub" | "Evmos" | "Kujira" | "Neutron" | "Celestia" | "Stargaze" | "Seda" | "Dymension" | "Provenance" | "Sepolia" | "ArbitrumSepolia" | "BaseSepolia" | "OptimismSepolia" | "Holesky" | "PolygonSepolia") => number;
190
+ };
191
+ readonly binary: "uint";
192
+ readonly size: 2;
193
+ readonly name: "recipientChain";
194
+ }]>]>, import("@wormhole-foundation/sdk-base/dist/cjs").CustomizableBytesReturn<{
195
+ readonly name: "transceiverPayload";
196
+ readonly lengthSize: 2;
197
+ }, Uint8Array>]>, {
198
+ readonly binary: "uint";
199
+ readonly size: 32;
200
+ readonly name: "requestedReceiverValue";
201
+ }, {
202
+ readonly binary: "uint";
203
+ readonly size: 32;
204
+ readonly name: "extraReceiverValue";
205
+ }, {
206
+ readonly binary: "bytes";
207
+ readonly layout: readonly [{
208
+ readonly name: "size";
209
+ readonly binary: "uint";
210
+ readonly size: 4;
211
+ readonly custom: number;
212
+ readonly omit: true;
213
+ }, {
214
+ readonly name: "waste";
215
+ readonly binary: "uint";
216
+ readonly size: 31;
217
+ readonly custom: 0n;
218
+ readonly omit: true;
219
+ }, {
220
+ readonly name: "version";
221
+ readonly binary: "uint";
222
+ readonly size: 1;
223
+ readonly custom: 0;
224
+ readonly omit: true;
225
+ }, {
226
+ readonly binary: "uint";
227
+ readonly size: 32;
228
+ readonly name: "gasLimit";
229
+ }, {
230
+ readonly binary: "uint";
231
+ readonly size: 32;
232
+ readonly name: "targetChainRefundPerGasUnused";
233
+ }];
234
+ readonly name: "executionInfo";
235
+ }, {
236
+ readonly binary: "bytes";
237
+ readonly layout: readonly [{
238
+ readonly custom: {
239
+ to: (val: number) => "Solana" | "Ethereum" | "Terra" | "Bsc" | "Polygon" | "Avalanche" | "Oasis" | "Algorand" | "Aurora" | "Fantom" | "Karura" | "Acala" | "Klaytn" | "Celo" | "Near" | "Moonbeam" | "Neon" | "Terra2" | "Injective" | "Osmosis" | "Sui" | "Aptos" | "Arbitrum" | "Optimism" | "Gnosis" | "Pythnet" | "Xpla" | "Btc" | "Base" | "Sei" | "Rootstock" | "Scroll" | "Mantle" | "Blast" | "Xlayer" | "Linea" | "Berachain" | "Seievm" | "Wormchain" | "Cosmoshub" | "Evmos" | "Kujira" | "Neutron" | "Celestia" | "Stargaze" | "Seda" | "Dymension" | "Provenance" | "Sepolia" | "ArbitrumSepolia" | "BaseSepolia" | "OptimismSepolia" | "Holesky" | "PolygonSepolia";
240
+ from: (val: "Solana" | "Ethereum" | "Terra" | "Bsc" | "Polygon" | "Avalanche" | "Oasis" | "Algorand" | "Aurora" | "Fantom" | "Karura" | "Acala" | "Klaytn" | "Celo" | "Near" | "Moonbeam" | "Neon" | "Terra2" | "Injective" | "Osmosis" | "Sui" | "Aptos" | "Arbitrum" | "Optimism" | "Gnosis" | "Pythnet" | "Xpla" | "Btc" | "Base" | "Sei" | "Rootstock" | "Scroll" | "Mantle" | "Blast" | "Xlayer" | "Linea" | "Berachain" | "Seievm" | "Wormchain" | "Cosmoshub" | "Evmos" | "Kujira" | "Neutron" | "Celestia" | "Stargaze" | "Seda" | "Dymension" | "Provenance" | "Sepolia" | "ArbitrumSepolia" | "BaseSepolia" | "OptimismSepolia" | "Holesky" | "PolygonSepolia") => number;
241
+ };
242
+ readonly binary: "uint";
243
+ readonly size: 2;
244
+ readonly name: "chain";
245
+ }, {
246
+ readonly binary: "bytes";
247
+ readonly size: 32;
248
+ readonly custom: {
249
+ to: (val: Uint8Array) => import("@wormhole-foundation/sdk-definitions").UniversalAddress;
250
+ from: (val: import("@wormhole-foundation/sdk-definitions").UniversalAddress) => Uint8Array;
251
+ };
252
+ readonly name: "address";
253
+ }];
254
+ readonly name: "refund";
255
+ }, {
256
+ readonly binary: "bytes";
257
+ readonly size: 32;
258
+ readonly custom: {
259
+ to: (val: Uint8Array) => import("@wormhole-foundation/sdk-definitions").UniversalAddress;
260
+ from: (val: import("@wormhole-foundation/sdk-definitions").UniversalAddress) => Uint8Array;
261
+ };
262
+ readonly name: "refundDeliveryProvider";
263
+ }, {
264
+ readonly binary: "bytes";
265
+ readonly size: 32;
266
+ readonly custom: {
267
+ to: (val: Uint8Array) => import("@wormhole-foundation/sdk-definitions").UniversalAddress;
268
+ from: (val: import("@wormhole-foundation/sdk-definitions").UniversalAddress) => Uint8Array;
269
+ };
270
+ readonly name: "sourceDeliveryProvider";
271
+ }, {
272
+ readonly binary: "bytes";
273
+ readonly size: 32;
274
+ readonly custom: {
275
+ to: (val: Uint8Array) => import("@wormhole-foundation/sdk-definitions").UniversalAddress;
276
+ from: (val: import("@wormhole-foundation/sdk-definitions").UniversalAddress) => Uint8Array;
277
+ };
278
+ readonly name: "senderAddress";
279
+ }, {
280
+ readonly name: "messageKeys";
281
+ readonly binary: "array";
282
+ readonly lengthSize: 1;
283
+ readonly layout: {
284
+ readonly binary: "switch";
285
+ readonly idSize: 1;
286
+ readonly idTag: "keyType";
287
+ readonly layouts: readonly [readonly [readonly [1, "VAA"], readonly [{
288
+ readonly custom: {
289
+ to: (val: number) => "Solana" | "Ethereum" | "Terra" | "Bsc" | "Polygon" | "Avalanche" | "Oasis" | "Algorand" | "Aurora" | "Fantom" | "Karura" | "Acala" | "Klaytn" | "Celo" | "Near" | "Moonbeam" | "Neon" | "Terra2" | "Injective" | "Osmosis" | "Sui" | "Aptos" | "Arbitrum" | "Optimism" | "Gnosis" | "Pythnet" | "Xpla" | "Btc" | "Base" | "Sei" | "Rootstock" | "Scroll" | "Mantle" | "Blast" | "Xlayer" | "Linea" | "Berachain" | "Seievm" | "Wormchain" | "Cosmoshub" | "Evmos" | "Kujira" | "Neutron" | "Celestia" | "Stargaze" | "Seda" | "Dymension" | "Provenance" | "Sepolia" | "ArbitrumSepolia" | "BaseSepolia" | "OptimismSepolia" | "Holesky" | "PolygonSepolia";
290
+ from: (val: "Solana" | "Ethereum" | "Terra" | "Bsc" | "Polygon" | "Avalanche" | "Oasis" | "Algorand" | "Aurora" | "Fantom" | "Karura" | "Acala" | "Klaytn" | "Celo" | "Near" | "Moonbeam" | "Neon" | "Terra2" | "Injective" | "Osmosis" | "Sui" | "Aptos" | "Arbitrum" | "Optimism" | "Gnosis" | "Pythnet" | "Xpla" | "Btc" | "Base" | "Sei" | "Rootstock" | "Scroll" | "Mantle" | "Blast" | "Xlayer" | "Linea" | "Berachain" | "Seievm" | "Wormchain" | "Cosmoshub" | "Evmos" | "Kujira" | "Neutron" | "Celestia" | "Stargaze" | "Seda" | "Dymension" | "Provenance" | "Sepolia" | "ArbitrumSepolia" | "BaseSepolia" | "OptimismSepolia" | "Holesky" | "PolygonSepolia") => number;
291
+ };
292
+ readonly binary: "uint";
293
+ readonly size: 2;
294
+ readonly name: "chain";
295
+ }, {
296
+ readonly binary: "bytes";
297
+ readonly size: 32;
298
+ readonly custom: {
299
+ to: (val: Uint8Array) => import("@wormhole-foundation/sdk-definitions").UniversalAddress;
300
+ from: (val: import("@wormhole-foundation/sdk-definitions").UniversalAddress) => Uint8Array;
301
+ };
302
+ readonly name: "emitterAddress";
303
+ }, {
304
+ readonly binary: "uint";
305
+ readonly size: 8;
306
+ readonly name: "sequence";
307
+ }]], readonly [readonly [2, "CCTP"], readonly [{
308
+ readonly name: "size";
309
+ readonly binary: "uint";
310
+ readonly size: 4;
311
+ readonly custom: 12;
312
+ readonly omit: true;
313
+ }, {
314
+ readonly binary: "uint";
315
+ readonly size: 4;
316
+ readonly name: "domain";
317
+ }, {
318
+ readonly binary: "uint";
319
+ readonly size: 8;
320
+ readonly name: "nonce";
321
+ }]]];
322
+ };
323
+ }]], readonly ["TransceiverInfo", readonly [{
86
324
  readonly name: "prefix";
87
325
  readonly binary: "bytes";
88
326
  readonly custom: Uint8Array;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/layouts/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,oBAAoB,EACrB,MAAM,sCAAsC,CAAC;AAM9C,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IASK,CAAC;AAGnC,OAAO,QAAQ,sCAAsC,CAAC;IACpD,UAAiB,gBAAgB,CAAC;QAChC,UAAU,6BACR,SAAQ,oBAAoB,CAAC,KAAK,EAAE,OAAO,gBAAgB,CAAC;SAAG;KAClE;CACF;AAED,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAE9B,mBAAmB,aAAa,CAAC;AACjC,mBAAmB,cAAc,CAAC;AAClC,mBAAmB,aAAa,CAAC;AACjC,mBAAmB,kBAAkB,CAAC;AACtC,mBAAmB,8BAA8B,CAAC;AAClD,mBAAmB,eAAe,CAAC;AACnC,mBAAmB,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/layouts/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,oBAAoB,EAErB,MAAM,sCAAsC,CAAC;AAM9C,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAiBK,CAAC;AAGnC,OAAO,QAAQ,sCAAsC,CAAC;IACpD,UAAiB,gBAAgB,CAAC;QAChC,UAAU,6BACR,SAAQ,oBAAoB,CAAC,KAAK,EAAE,OAAO,gBAAgB,CAAC;SAAG;KAClE;CACF;AAED,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAE9B,mBAAmB,aAAa,CAAC;AACjC,mBAAmB,cAAc,CAAC;AAClC,mBAAmB,aAAa,CAAC;AACjC,mBAAmB,kBAAkB,CAAC;AACtC,mBAAmB,8BAA8B,CAAC;AAClD,mBAAmB,eAAe,CAAC;AACnC,mBAAmB,eAAe,CAAC"}
@@ -15,6 +15,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  exports.nttNamedPayloads = void 0;
18
+ const sdk_definitions_1 = require("@wormhole-foundation/sdk-definitions");
18
19
  const manager_js_1 = require("./manager.js");
19
20
  const transceiver_js_1 = require("./transceiver.js");
20
21
  const transfer_js_1 = require("./transfer.js");
@@ -24,6 +25,10 @@ exports.nttNamedPayloads = [
24
25
  "WormholeTransfer",
25
26
  (0, wormhole_js_1.wormholeTransceiverMessageLayout)((0, manager_js_1.nttManagerMessageLayout)(transfer_js_1.nativeTokenTransferLayout)),
26
27
  ],
28
+ [
29
+ "WormholeTransferStandardRelayer",
30
+ (0, sdk_definitions_1.deliveryInstructionLayout)((0, wormhole_js_1.wormholeTransceiverMessageLayout)((0, manager_js_1.nttManagerMessageLayout)(transfer_js_1.nativeTokenTransferLayout))),
31
+ ],
27
32
  ["TransceiverInfo", transceiver_js_1.transceiverInfo],
28
33
  ["TransceiverRegistration", transceiver_js_1.transceiverRegistration],
29
34
  ];
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/layouts/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAIA,6CAAuD;AACvD,qDAA4E;AAC5E,+CAA0D;AAC1D,+CAAiE;AAEpD,QAAA,gBAAgB,GAAG;IAC9B;QACE,kBAAkB;QAClB,IAAA,8CAAgC,EAC9B,IAAA,oCAAuB,EAAC,uCAAyB,CAAC,CACnD;KACF;IACD,CAAC,iBAAiB,EAAE,gCAAe,CAAC;IACpC,CAAC,yBAAyB,EAAE,wCAAuB,CAAC;CACpB,CAAC;AAUnC,8CAA4B;AAC5B,+CAA6B;AAC7B,8CAA4B;AAC5B,mDAAiC;AACjC,+DAA6C;AAC7C,gDAA8B;AAC9B,gDAA8B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/layouts/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,0EAI8C;AAC9C,6CAAuD;AACvD,qDAA4E;AAC5E,+CAA0D;AAC1D,+CAAiE;AAEpD,QAAA,gBAAgB,GAAG;IAC9B;QACE,kBAAkB;QAClB,IAAA,8CAAgC,EAC9B,IAAA,oCAAuB,EAAC,uCAAyB,CAAC,CACnD;KACF;IACD;QACE,iCAAiC;QACjC,IAAA,2CAAyB,EACvB,IAAA,8CAAgC,EAC9B,IAAA,oCAAuB,EAAC,uCAAyB,CAAC,CACnD,CACF;KACF;IACD,CAAC,iBAAiB,EAAE,gCAAe,CAAC;IACpC,CAAC,yBAAyB,EAAE,wCAAuB,CAAC;CACpB,CAAC;AAUnC,8CAA4B;AAC5B,+CAA6B;AAC7B,8CAA4B;AAC5B,mDAAiC;AACjC,+DAA6C;AAC7C,gDAA8B;AAC9B,gDAA8B"}
package/dist/cjs/ntt.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { type Chain, type Network } from "@wormhole-foundation/sdk-base";
2
- import { AccountAddress, ChainAddress, EmptyPlatformMap, ProtocolPayload, ProtocolVAA, TokenAddress, UnsignedTransaction } from "@wormhole-foundation/sdk-definitions";
2
+ import { AccountAddress, ChainAddress, EmptyPlatformMap, ProtocolPayload, ProtocolVAA, UnsignedTransaction, VAA } from "@wormhole-foundation/sdk-definitions";
3
3
  import { NttManagerMessage, nativeTokenTransferLayout, transceiverInfo, transceiverRegistration } from "./layouts/index.js";
4
4
  /**
5
5
  * @namespace Ntt
@@ -27,7 +27,7 @@ export declare namespace Ntt {
27
27
  /** How much native gas on the destination to send along with the transfer */
28
28
  gasDropoff?: bigint;
29
29
  };
30
- export type Attestation = any;
30
+ export type Attestation = VAA<"Ntt:WormholeTransfer"> | VAA<"Ntt:WormholeTransferStandardRelayer">;
31
31
  /**
32
32
  * InboundQueuedTransfer is a queued transfer from another chain
33
33
  * @property recipient the recipient of the transfer
@@ -57,6 +57,7 @@ export declare namespace Ntt {
57
57
  * @returns a 32 byte digest of the message
58
58
  */
59
59
  export function messageDigest(chain: Chain, message: Message): Uint8Array;
60
+ export function abiVersionMatches(targetVersion: string, abiVersion: string): boolean;
60
61
  export {};
61
62
  }
62
63
  /**
@@ -108,6 +109,10 @@ export interface Ntt<N extends Network, C extends Chain> {
108
109
  * @param fromChain the chain to check the inbound capacity for
109
110
  */
110
111
  getCurrentInboundCapacity(fromChain: Chain): Promise<bigint>;
112
+ /**
113
+ * getRateLimitDuration returns the duration of the rate limit for queued transfers in seconds
114
+ */
115
+ getRateLimitDuration(): Promise<bigint>;
111
116
  /**
112
117
  * getIsApproved returns whether an attestation is approved
113
118
  * an attestation is approved when it has been validated but has not necessarily
@@ -123,6 +128,11 @@ export interface Ntt<N extends Network, C extends Chain> {
123
128
  * @param attestation the attestation to check
124
129
  */
125
130
  getIsExecuted(attestation: Ntt.Attestation): Promise<boolean>;
131
+ /**
132
+ * getIsTransferInboundQueued returns whether the transfer is inbound queued
133
+ * @param attestation the attestation to check
134
+ */
135
+ getIsTransferInboundQueued(attestation: Ntt.Attestation): Promise<boolean>;
126
136
  /**
127
137
  * getInboundQueuedTransfer returns the details of an inbound queued transfer
128
138
  * @param transceiverMessage the transceiver message
@@ -131,12 +141,11 @@ export interface Ntt<N extends Network, C extends Chain> {
131
141
  getInboundQueuedTransfer(fromChain: Chain, transceiverMessage: Ntt.Message): Promise<Ntt.InboundQueuedTransfer<C> | null>;
132
142
  /**
133
143
  * completeInboundQueuedTransfer completes an inbound queued transfer
134
- * @param transceiverMessage the transceiver message
135
- * @param token the token to transfer
136
144
  * @param fromChain the chain the transfer is from
145
+ * @param transceiverMessage the transceiver message
137
146
  * @param payer the address to pay for the transfer
138
147
  */
139
- completeInboundQueuedTransfer(fromChain: Chain, transceiverMessage: Ntt.Message, token: TokenAddress<C>, payer?: AccountAddress<C>): AsyncGenerator<UnsignedTransaction<N, C>>;
148
+ completeInboundQueuedTransfer(fromChain: Chain, transceiverMessage: Ntt.Message, payer?: AccountAddress<C>): AsyncGenerator<UnsignedTransaction<N, C>>;
140
149
  }
141
150
  export interface NttTransceiver<N extends Network, C extends Chain, A extends Ntt.Attestation> {
142
151
  /** setPeer sets a peer address for a given chain
@@ -152,7 +161,7 @@ export interface NttTransceiver<N extends Network, C extends Chain, A extends Nt
152
161
  receive(attestation: A, sender?: AccountAddress<C>): AsyncGenerator<UnsignedTransaction<N, C>>;
153
162
  }
154
163
  export declare namespace WormholeNttTransceiver {
155
- const _payloads: readonly ["WormholeTransfer"];
164
+ const _payloads: readonly ["WormholeTransfer", "WormholeTransferStandardRelayer"];
156
165
  export type PayloadNames = (typeof _payloads)[number];
157
166
  export type VAA<PayloadName extends PayloadNames = PayloadNames> = ProtocolVAA<Ntt.ProtocolName, PayloadName>;
158
167
  export type Payload<PayloadName extends PayloadNames = PayloadNames> = ProtocolPayload<Ntt.ProtocolName, PayloadName>;
@@ -1 +1 @@
1
- {"version":3,"file":"ntt.d.ts","sourceRoot":"","sources":["../../src/ntt.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ntt.d.ts","sourceRoot":"","sources":["../../src/ntt.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,KAAK,EACV,KAAK,OAAO,EACb,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EACL,cAAc,EACd,YAAY,EACZ,gBAAgB,EAChB,eAAe,EACf,WAAW,EACX,mBAAmB,EACnB,GAAG,EAEJ,MAAM,sCAAsC,CAAC;AAE9C,OAAO,EACL,iBAAiB,EACjB,yBAAyB,EAEzB,eAAe,EAEf,uBAAuB,EACxB,MAAM,oBAAoB,CAAC;AAE5B;;GAEG;AACH,yBAAiB,GAAG,CAAC;IACnB,MAAM,SAAS,QAAQ,CAAC;IACxB,MAAM,MAAM,YAAY,GAAG,OAAO,SAAS,CAAC;IAE5C,MAAM,MAAM,IAAI,GAAG,SAAS,GAAG,SAAS,CAAC;IACzC,MAAM,MAAM,SAAS,GAAG;QACtB,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,CAAC;QAChB,WAAW,EAAE;YACX,QAAQ,EAAE,MAAM,CAAC;SAClB,CAAC;QACF,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;IAEF,MAAM,MAAM,OAAO,GAAG,iBAAiB,CAAC,OAAO,yBAAyB,CAAC,CAAC;IAE1E,MAAM,MAAM,eAAe,GAAG,iBAAiB,CAAC,OAAO,eAAe,CAAC,CAAC;IACxE,MAAM,MAAM,uBAAuB,GAAG,iBAAiB,CACrD,OAAO,uBAAuB,CAC/B,CAAC;IAEF,MAAM,MAAM,eAAe,GAAG;QAC5B,gFAAgF;QAChF,KAAK,EAAE,OAAO,CAAC;QACf,yGAAyG;QACzG,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,6EAA6E;QAC7E,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,CAAC;IAKF,MAAM,MAAM,WAAW,GACnB,GAAG,CAAC,sBAAsB,CAAC,GAC3B,GAAG,CAAC,qCAAqC,CAAC,CAAC;IAE/C;;;;;OAKG;IACH,MAAM,MAAM,qBAAqB,CAAC,CAAC,SAAS,KAAK,IAAI;QACnD,SAAS,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC;QAC7B,MAAM,EAAE,MAAM,CAAC;QACf,wBAAwB,EAAE,MAAM,CAAC;KAClC,CAAC;IACF;;;;OAIG;IACH,MAAM,MAAM,sBAAsB,GAAG;QACnC,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,UAAU,CAAC;KACrB,CAAC;IAIF,MAAM,UAAU,6BAA6B,CAAC,GAAG,EAAE,sBAAsB,EAAE,cAO1E;IAED;;;;;;OAMG;IACH,MAAM,UAAU,aAAa,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,GAAG,UAAU,CAUxE;IAOD,MAAM,UAAU,iBAAiB,CAC/B,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,MAAM,GACjB,OAAO,CAeT;;CACF;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,GAAG,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC,SAAS,KAAK;IACrD,OAAO,CACL,IAAI,EAAE,YAAY,EAClB,aAAa,EAAE,MAAM,EACrB,YAAY,EAAE,MAAM,EACpB,KAAK,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,GACxB,cAAc,CAAC,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC7C,0BAA0B,CACxB,IAAI,EAAE,YAAY,EAClB,KAAK,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,GACxB,cAAc,CAAC,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAE7C,4EAA4E;IAC5E,mBAAmB,CAAC,WAAW,EAAE,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAE1D;;;;;;OAMG;IACH,kBAAkB,CAChB,WAAW,EAAE,KAAK,EAClB,OAAO,EAAE,GAAG,CAAC,eAAe,GAC3B,OAAO,CAAC,MAAM,CAAC,CAAC;IAEnB;;;;;;;OAOG;IACH,QAAQ,CACN,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC,EACzB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,YAAY,EACzB,OAAO,EAAE,GAAG,CAAC,eAAe,GAC3B,cAAc,CAAC,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAE7C;;;OAGG;IACH,MAAM,CACJ,YAAY,EAAE,GAAG,CAAC,WAAW,EAAE,EAC/B,KAAK,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,GACxB,cAAc,CAAC,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAE7C,oEAAoE;IACpE,iBAAiB,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAErC,4EAA4E;IAC5E,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAEpC;;OAEG;IACH,0BAA0B,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9C;;;OAGG;IACH,yBAAyB,CAAC,SAAS,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAE7D;;OAEG;IACH,oBAAoB,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAExC;;;;;;OAMG;IACH,aAAa,CAAC,WAAW,EAAE,GAAG,CAAC,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAE9D;;;;;OAKG;IACH,aAAa,CAAC,WAAW,EAAE,GAAG,CAAC,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAE9D;;;OAGG;IACH,0BAA0B,CAAC,WAAW,EAAE,GAAG,CAAC,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAE3E;;;;OAIG;IACH,wBAAwB,CACtB,SAAS,EAAE,KAAK,EAChB,kBAAkB,EAAE,GAAG,CAAC,OAAO,GAC9B,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;IAChD;;;;;OAKG;IACH,6BAA6B,CAC3B,SAAS,EAAE,KAAK,EAChB,kBAAkB,EAAE,GAAG,CAAC,OAAO,EAC/B,KAAK,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,GACxB,cAAc,CAAC,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;CAC9C;AAED,MAAM,WAAW,cAAc,CAC7B,CAAC,SAAS,OAAO,EACjB,CAAC,SAAS,KAAK,EACf,CAAC,SAAS,GAAG,CAAC,WAAW;IAEzB;;OAEG;IACH,OAAO,CAAC,IAAI,EAAE,YAAY,CAAC,KAAK,CAAC,GAAG,cAAc,CAAC,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAE9E;;;;;OAKG;IACH,OAAO,CACL,WAAW,EAAE,CAAC,EACd,MAAM,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,GACzB,cAAc,CAAC,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;CAC9C;AAED,yBAAiB,sBAAsB,CAAC;IACtC,MAAM,SAAS,kEAGL,CAAC;IACX,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC;IACtD,MAAM,MAAM,GAAG,CAAC,WAAW,SAAS,YAAY,GAAG,YAAY,IAC7D,WAAW,CAAC,GAAG,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;IAC7C,MAAM,MAAM,OAAO,CAAC,WAAW,SAAS,YAAY,GAAG,YAAY,IACjE,eAAe,CAAC,GAAG,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;;CAClD;AAED;;;;;GAKG;AACH,MAAM,WAAW,sBAAsB,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC,SAAS,KAAK,CACxE,SAAQ,cAAc,CAAC,CAAC,EAAE,CAAC,EAAE,sBAAsB,CAAC,GAAG,CAAC;CAAG;AAE7D,OAAO,QAAQ,sCAAsC,CAAC;IACpD,UAAiB,gBAAgB,CAAC;QAChC,UAAU,0BAA0B,CAAC,CAAC,EAAE,CAAC;YACvC,GAAG,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;SAChB;QACD,UAAU,yBAAyB;YACjC,GAAG,EAAE,gBAAgB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;SACzC;KACF;CACF"}
package/dist/cjs/ntt.js CHANGED
@@ -29,9 +29,33 @@ var Ntt;
29
29
  return (0, sdk_definitions_1.keccak256)(sdk_base_1.encoding.bytes.concat(sdk_base_1.encoding.bignum.toBytes((0, sdk_base_1.toChainId)(chain), 2), (0, sdk_base_1.serializeLayout)((0, index_js_1.nttManagerMessageLayout)(index_js_1.nativeTokenTransferLayout), message)));
30
30
  }
31
31
  Ntt.messageDigest = messageDigest;
32
+ // Checks for compatibility between the Contract version in use on chain,
33
+ // and the ABI version the SDK has. Major version must match, minor version on chain
34
+ // should be gte SDK's ABI version.
35
+ //
36
+ // For example, if the contract is using 1.1.0, we would use 1.0.0 but not 1.2.0.
37
+ function abiVersionMatches(targetVersion, abiVersion) {
38
+ const parseVersion = (version) => {
39
+ // allow optional tag on patch version
40
+ const versionRegex = /^(\d+)\.(\d+)\.(.*)$/;
41
+ const match = version.match(versionRegex);
42
+ if (!match) {
43
+ throw new Error(`Invalid version format: ${version}`);
44
+ }
45
+ const [, major, minor, patchAndTag] = match;
46
+ return { major: Number(major), minor: Number(minor), patchAndTag };
47
+ };
48
+ const { major: majorTarget, minor: minorTarget } = parseVersion(targetVersion);
49
+ const { major: majorAbi, minor: minorAbi } = parseVersion(abiVersion);
50
+ return majorTarget === majorAbi && minorTarget >= minorAbi;
51
+ }
52
+ Ntt.abiVersionMatches = abiVersionMatches;
32
53
  })(Ntt || (exports.Ntt = Ntt = {}));
33
54
  var WormholeNttTransceiver;
34
55
  (function (WormholeNttTransceiver) {
35
- const _payloads = ["WormholeTransfer"];
56
+ const _payloads = [
57
+ "WormholeTransfer",
58
+ "WormholeTransferStandardRelayer",
59
+ ];
36
60
  })(WormholeNttTransceiver || (exports.WormholeNttTransceiver = WormholeNttTransceiver = {}));
37
61
  //# sourceMappingURL=ntt.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ntt.js","sourceRoot":"","sources":["../../src/ntt.ts"],"names":[],"mappings":";;;AAAA,4DAMuC;AAEvC,0EAS8C;AAE9C,iDAO4B;AAE5B;;GAEG;AACH,IAAiB,GAAG,CAqFnB;AArFD,WAAiB,GAAG;IAClB,MAAM,SAAS,GAAG,KAAK,CAAC;IAuDxB,wEAAwE;IACxE,sDAAsD;IACtD,SAAgB,6BAA6B,CAAC,GAA6B;QACzE,IAAI,GAAG,CAAC,MAAM,GAAG,GAAG;YAClB,MAAM,IAAI,KAAK,CAAC,0BAA0B,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC;QAC3D,OAAO,mBAAQ,CAAC,KAAK,CAAC,MAAM,CAC1B,IAAI,UAAU,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAC5B,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAA,0BAAe,EAAC,IAAA,uCAA4B,GAAE,EAAE,EAAE,CAAC,CAAC,CACxE,CAAC;IACJ,CAAC;IAPe,iCAA6B,gCAO5C,CAAA;IAED;;;;;;OAMG;IACH,SAAgB,aAAa,CAAC,KAAY,EAAE,OAAgB;QAC1D,OAAO,IAAA,2BAAS,EACd,mBAAQ,CAAC,KAAK,CAAC,MAAM,CACnB,mBAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,IAAA,oBAAS,EAAC,KAAK,CAAC,EAAE,CAAC,CAAC,EAC5C,IAAA,0BAAe,EACb,IAAA,kCAAuB,EAAC,oCAAyB,CAAC,EAClD,OAAO,CACR,CACF,CACF,CAAC;IACJ,CAAC;IAVe,iBAAa,gBAU5B,CAAA;AACH,CAAC,EArFgB,GAAG,mBAAH,GAAG,QAqFnB;AA6ID,IAAiB,sBAAsB,CAOtC;AAPD,WAAiB,sBAAsB;IACrC,MAAM,SAAS,GAAG,CAAC,kBAAkB,CAAU,CAAC;AAMlD,CAAC,EAPgB,sBAAsB,sCAAtB,sBAAsB,QAOtC"}
1
+ {"version":3,"file":"ntt.js","sourceRoot":"","sources":["../../src/ntt.ts"],"names":[],"mappings":";;;AAAA,4DAMuC;AAEvC,0EAS8C;AAE9C,iDAO4B;AAE5B;;GAEG;AACH,IAAiB,GAAG,CAgHnB;AAhHD,WAAiB,GAAG;IAClB,MAAM,SAAS,GAAG,KAAK,CAAC;IAyDxB,wEAAwE;IACxE,sDAAsD;IACtD,SAAgB,6BAA6B,CAAC,GAA6B;QACzE,IAAI,GAAG,CAAC,MAAM,GAAG,GAAG;YAClB,MAAM,IAAI,KAAK,CAAC,0BAA0B,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC;QAC3D,OAAO,mBAAQ,CAAC,KAAK,CAAC,MAAM,CAC1B,IAAI,UAAU,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAC5B,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAA,0BAAe,EAAC,IAAA,uCAA4B,GAAE,EAAE,EAAE,CAAC,CAAC,CACxE,CAAC;IACJ,CAAC;IAPe,iCAA6B,gCAO5C,CAAA;IAED;;;;;;OAMG;IACH,SAAgB,aAAa,CAAC,KAAY,EAAE,OAAgB;QAC1D,OAAO,IAAA,2BAAS,EACd,mBAAQ,CAAC,KAAK,CAAC,MAAM,CACnB,mBAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,IAAA,oBAAS,EAAC,KAAK,CAAC,EAAE,CAAC,CAAC,EAC5C,IAAA,0BAAe,EACb,IAAA,kCAAuB,EAAC,oCAAyB,CAAC,EAClD,OAAO,CACR,CACF,CACF,CAAC;IACJ,CAAC;IAVe,iBAAa,gBAU5B,CAAA;IAED,yEAAyE;IACzE,oFAAoF;IACpF,mCAAmC;IACnC,EAAE;IACF,iFAAiF;IACjF,SAAgB,iBAAiB,CAC/B,aAAqB,EACrB,UAAkB;QAElB,MAAM,YAAY,GAAG,CAAC,OAAe,EAAE,EAAE;YACvC,sCAAsC;YACtC,MAAM,YAAY,GAAG,sBAAsB,CAAC;YAC5C,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;YAC1C,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,MAAM,IAAI,KAAK,CAAC,2BAA2B,OAAO,EAAE,CAAC,CAAC;YACxD,CAAC;YACD,MAAM,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,CAAC,GAAG,KAAK,CAAC;YAC5C,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,WAAW,EAAE,CAAC;QACrE,CAAC,CAAC;QACF,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,EAAE,GAC9C,YAAY,CAAC,aAAa,CAAC,CAAC;QAC9B,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;QACtE,OAAO,WAAW,KAAK,QAAQ,IAAI,WAAW,IAAI,QAAQ,CAAC;IAC7D,CAAC;IAlBe,qBAAiB,oBAkBhC,CAAA;AACH,CAAC,EAhHgB,GAAG,mBAAH,GAAG,QAgHnB;AAsJD,IAAiB,sBAAsB,CAUtC;AAVD,WAAiB,sBAAsB;IACrC,MAAM,SAAS,GAAG;QAChB,kBAAkB;QAClB,iCAAiC;KACzB,CAAC;AAMb,CAAC,EAVgB,sBAAsB,sCAAtB,sBAAsB,QAUtC"}
@@ -82,7 +82,245 @@ export declare const nttNamedPayloads: readonly [readonly ["WormholeTransfer", r
82
82
  }]>]>, import("@wormhole-foundation/sdk-base").CustomizableBytesReturn<{
83
83
  readonly name: "transceiverPayload";
84
84
  readonly lengthSize: 2;
85
- }, Uint8Array>]], readonly ["TransceiverInfo", readonly [{
85
+ }, Uint8Array>]], readonly ["WormholeTransferStandardRelayer", readonly [{
86
+ readonly name: "payloadId";
87
+ readonly binary: "uint";
88
+ readonly size: 1;
89
+ readonly custom: 1;
90
+ readonly omit: true;
91
+ }, {
92
+ readonly binary: "bytes";
93
+ readonly layout: readonly [{
94
+ readonly custom: {
95
+ to: (val: number) => "Solana" | "Ethereum" | "Terra" | "Bsc" | "Polygon" | "Avalanche" | "Oasis" | "Algorand" | "Aurora" | "Fantom" | "Karura" | "Acala" | "Klaytn" | "Celo" | "Near" | "Moonbeam" | "Neon" | "Terra2" | "Injective" | "Osmosis" | "Sui" | "Aptos" | "Arbitrum" | "Optimism" | "Gnosis" | "Pythnet" | "Xpla" | "Btc" | "Base" | "Sei" | "Rootstock" | "Scroll" | "Mantle" | "Blast" | "Xlayer" | "Linea" | "Berachain" | "Seievm" | "Wormchain" | "Cosmoshub" | "Evmos" | "Kujira" | "Neutron" | "Celestia" | "Stargaze" | "Seda" | "Dymension" | "Provenance" | "Sepolia" | "ArbitrumSepolia" | "BaseSepolia" | "OptimismSepolia" | "Holesky" | "PolygonSepolia";
96
+ from: (val: "Solana" | "Ethereum" | "Terra" | "Bsc" | "Polygon" | "Avalanche" | "Oasis" | "Algorand" | "Aurora" | "Fantom" | "Karura" | "Acala" | "Klaytn" | "Celo" | "Near" | "Moonbeam" | "Neon" | "Terra2" | "Injective" | "Osmosis" | "Sui" | "Aptos" | "Arbitrum" | "Optimism" | "Gnosis" | "Pythnet" | "Xpla" | "Btc" | "Base" | "Sei" | "Rootstock" | "Scroll" | "Mantle" | "Blast" | "Xlayer" | "Linea" | "Berachain" | "Seievm" | "Wormchain" | "Cosmoshub" | "Evmos" | "Kujira" | "Neutron" | "Celestia" | "Stargaze" | "Seda" | "Dymension" | "Provenance" | "Sepolia" | "ArbitrumSepolia" | "BaseSepolia" | "OptimismSepolia" | "Holesky" | "PolygonSepolia") => number;
97
+ };
98
+ readonly binary: "uint";
99
+ readonly size: 2;
100
+ readonly name: "chain";
101
+ }, {
102
+ readonly binary: "bytes";
103
+ readonly size: 32;
104
+ readonly custom: {
105
+ to: (val: Uint8Array) => import("@wormhole-foundation/sdk-definitions").UniversalAddress;
106
+ from: (val: import("@wormhole-foundation/sdk-definitions").UniversalAddress) => Uint8Array;
107
+ };
108
+ readonly name: "address";
109
+ }];
110
+ readonly name: "target";
111
+ }, import("@wormhole-foundation/sdk-base").CustomizableBytesReturn<{
112
+ readonly name: "payload";
113
+ readonly lengthSize: 4;
114
+ }, readonly [{
115
+ readonly name: "prefix";
116
+ readonly binary: "bytes";
117
+ readonly custom: Uint8Array;
118
+ readonly omit: true;
119
+ }, {
120
+ readonly binary: "bytes";
121
+ readonly size: 32;
122
+ readonly custom: {
123
+ to: (val: Uint8Array) => import("@wormhole-foundation/sdk-definitions").UniversalAddress;
124
+ from: (val: import("@wormhole-foundation/sdk-definitions").UniversalAddress) => Uint8Array;
125
+ };
126
+ readonly name: "sourceNttManager";
127
+ }, {
128
+ readonly binary: "bytes";
129
+ readonly size: 32;
130
+ readonly custom: {
131
+ to: (val: Uint8Array) => import("@wormhole-foundation/sdk-definitions").UniversalAddress;
132
+ from: (val: import("@wormhole-foundation/sdk-definitions").UniversalAddress) => Uint8Array;
133
+ };
134
+ readonly name: "recipientNttManager";
135
+ }, import("@wormhole-foundation/sdk-base").CustomizableBytesReturn<{
136
+ readonly name: "nttManagerPayload";
137
+ readonly lengthSize: 2;
138
+ }, readonly [{
139
+ readonly name: "id";
140
+ readonly binary: "bytes";
141
+ readonly size: 32;
142
+ }, {
143
+ readonly binary: "bytes";
144
+ readonly size: 32;
145
+ readonly custom: {
146
+ to: (val: Uint8Array) => import("@wormhole-foundation/sdk-definitions").UniversalAddress;
147
+ from: (val: import("@wormhole-foundation/sdk-definitions").UniversalAddress) => Uint8Array;
148
+ };
149
+ readonly name: "sender";
150
+ }, import("@wormhole-foundation/sdk-base").CustomizableBytesReturn<{
151
+ readonly name: "payload";
152
+ readonly lengthSize: 2;
153
+ }, readonly [{
154
+ readonly name: "prefix";
155
+ readonly binary: "bytes";
156
+ readonly custom: Uint8Array;
157
+ readonly omit: true;
158
+ }, {
159
+ readonly binary: "bytes";
160
+ readonly layout: readonly [{
161
+ readonly name: "decimals";
162
+ readonly binary: "uint";
163
+ readonly size: 1;
164
+ }, {
165
+ readonly name: "amount";
166
+ readonly binary: "uint";
167
+ readonly size: 8;
168
+ }];
169
+ readonly name: "trimmedAmount";
170
+ }, {
171
+ readonly binary: "bytes";
172
+ readonly size: 32;
173
+ readonly custom: {
174
+ to: (val: Uint8Array) => import("@wormhole-foundation/sdk-definitions").UniversalAddress;
175
+ from: (val: import("@wormhole-foundation/sdk-definitions").UniversalAddress) => Uint8Array;
176
+ };
177
+ readonly name: "sourceToken";
178
+ }, {
179
+ readonly binary: "bytes";
180
+ readonly size: 32;
181
+ readonly custom: {
182
+ to: (val: Uint8Array) => import("@wormhole-foundation/sdk-definitions").UniversalAddress;
183
+ from: (val: import("@wormhole-foundation/sdk-definitions").UniversalAddress) => Uint8Array;
184
+ };
185
+ readonly name: "recipientAddress";
186
+ }, {
187
+ readonly custom: {
188
+ to: (val: number) => "Solana" | "Ethereum" | "Terra" | "Bsc" | "Polygon" | "Avalanche" | "Oasis" | "Algorand" | "Aurora" | "Fantom" | "Karura" | "Acala" | "Klaytn" | "Celo" | "Near" | "Moonbeam" | "Neon" | "Terra2" | "Injective" | "Osmosis" | "Sui" | "Aptos" | "Arbitrum" | "Optimism" | "Gnosis" | "Pythnet" | "Xpla" | "Btc" | "Base" | "Sei" | "Rootstock" | "Scroll" | "Mantle" | "Blast" | "Xlayer" | "Linea" | "Berachain" | "Seievm" | "Wormchain" | "Cosmoshub" | "Evmos" | "Kujira" | "Neutron" | "Celestia" | "Stargaze" | "Seda" | "Dymension" | "Provenance" | "Sepolia" | "ArbitrumSepolia" | "BaseSepolia" | "OptimismSepolia" | "Holesky" | "PolygonSepolia";
189
+ from: (val: "Solana" | "Ethereum" | "Terra" | "Bsc" | "Polygon" | "Avalanche" | "Oasis" | "Algorand" | "Aurora" | "Fantom" | "Karura" | "Acala" | "Klaytn" | "Celo" | "Near" | "Moonbeam" | "Neon" | "Terra2" | "Injective" | "Osmosis" | "Sui" | "Aptos" | "Arbitrum" | "Optimism" | "Gnosis" | "Pythnet" | "Xpla" | "Btc" | "Base" | "Sei" | "Rootstock" | "Scroll" | "Mantle" | "Blast" | "Xlayer" | "Linea" | "Berachain" | "Seievm" | "Wormchain" | "Cosmoshub" | "Evmos" | "Kujira" | "Neutron" | "Celestia" | "Stargaze" | "Seda" | "Dymension" | "Provenance" | "Sepolia" | "ArbitrumSepolia" | "BaseSepolia" | "OptimismSepolia" | "Holesky" | "PolygonSepolia") => number;
190
+ };
191
+ readonly binary: "uint";
192
+ readonly size: 2;
193
+ readonly name: "recipientChain";
194
+ }]>]>, import("@wormhole-foundation/sdk-base").CustomizableBytesReturn<{
195
+ readonly name: "transceiverPayload";
196
+ readonly lengthSize: 2;
197
+ }, Uint8Array>]>, {
198
+ readonly binary: "uint";
199
+ readonly size: 32;
200
+ readonly name: "requestedReceiverValue";
201
+ }, {
202
+ readonly binary: "uint";
203
+ readonly size: 32;
204
+ readonly name: "extraReceiverValue";
205
+ }, {
206
+ readonly binary: "bytes";
207
+ readonly layout: readonly [{
208
+ readonly name: "size";
209
+ readonly binary: "uint";
210
+ readonly size: 4;
211
+ readonly custom: number;
212
+ readonly omit: true;
213
+ }, {
214
+ readonly name: "waste";
215
+ readonly binary: "uint";
216
+ readonly size: 31;
217
+ readonly custom: 0n;
218
+ readonly omit: true;
219
+ }, {
220
+ readonly name: "version";
221
+ readonly binary: "uint";
222
+ readonly size: 1;
223
+ readonly custom: 0;
224
+ readonly omit: true;
225
+ }, {
226
+ readonly binary: "uint";
227
+ readonly size: 32;
228
+ readonly name: "gasLimit";
229
+ }, {
230
+ readonly binary: "uint";
231
+ readonly size: 32;
232
+ readonly name: "targetChainRefundPerGasUnused";
233
+ }];
234
+ readonly name: "executionInfo";
235
+ }, {
236
+ readonly binary: "bytes";
237
+ readonly layout: readonly [{
238
+ readonly custom: {
239
+ to: (val: number) => "Solana" | "Ethereum" | "Terra" | "Bsc" | "Polygon" | "Avalanche" | "Oasis" | "Algorand" | "Aurora" | "Fantom" | "Karura" | "Acala" | "Klaytn" | "Celo" | "Near" | "Moonbeam" | "Neon" | "Terra2" | "Injective" | "Osmosis" | "Sui" | "Aptos" | "Arbitrum" | "Optimism" | "Gnosis" | "Pythnet" | "Xpla" | "Btc" | "Base" | "Sei" | "Rootstock" | "Scroll" | "Mantle" | "Blast" | "Xlayer" | "Linea" | "Berachain" | "Seievm" | "Wormchain" | "Cosmoshub" | "Evmos" | "Kujira" | "Neutron" | "Celestia" | "Stargaze" | "Seda" | "Dymension" | "Provenance" | "Sepolia" | "ArbitrumSepolia" | "BaseSepolia" | "OptimismSepolia" | "Holesky" | "PolygonSepolia";
240
+ from: (val: "Solana" | "Ethereum" | "Terra" | "Bsc" | "Polygon" | "Avalanche" | "Oasis" | "Algorand" | "Aurora" | "Fantom" | "Karura" | "Acala" | "Klaytn" | "Celo" | "Near" | "Moonbeam" | "Neon" | "Terra2" | "Injective" | "Osmosis" | "Sui" | "Aptos" | "Arbitrum" | "Optimism" | "Gnosis" | "Pythnet" | "Xpla" | "Btc" | "Base" | "Sei" | "Rootstock" | "Scroll" | "Mantle" | "Blast" | "Xlayer" | "Linea" | "Berachain" | "Seievm" | "Wormchain" | "Cosmoshub" | "Evmos" | "Kujira" | "Neutron" | "Celestia" | "Stargaze" | "Seda" | "Dymension" | "Provenance" | "Sepolia" | "ArbitrumSepolia" | "BaseSepolia" | "OptimismSepolia" | "Holesky" | "PolygonSepolia") => number;
241
+ };
242
+ readonly binary: "uint";
243
+ readonly size: 2;
244
+ readonly name: "chain";
245
+ }, {
246
+ readonly binary: "bytes";
247
+ readonly size: 32;
248
+ readonly custom: {
249
+ to: (val: Uint8Array) => import("@wormhole-foundation/sdk-definitions").UniversalAddress;
250
+ from: (val: import("@wormhole-foundation/sdk-definitions").UniversalAddress) => Uint8Array;
251
+ };
252
+ readonly name: "address";
253
+ }];
254
+ readonly name: "refund";
255
+ }, {
256
+ readonly binary: "bytes";
257
+ readonly size: 32;
258
+ readonly custom: {
259
+ to: (val: Uint8Array) => import("@wormhole-foundation/sdk-definitions").UniversalAddress;
260
+ from: (val: import("@wormhole-foundation/sdk-definitions").UniversalAddress) => Uint8Array;
261
+ };
262
+ readonly name: "refundDeliveryProvider";
263
+ }, {
264
+ readonly binary: "bytes";
265
+ readonly size: 32;
266
+ readonly custom: {
267
+ to: (val: Uint8Array) => import("@wormhole-foundation/sdk-definitions").UniversalAddress;
268
+ from: (val: import("@wormhole-foundation/sdk-definitions").UniversalAddress) => Uint8Array;
269
+ };
270
+ readonly name: "sourceDeliveryProvider";
271
+ }, {
272
+ readonly binary: "bytes";
273
+ readonly size: 32;
274
+ readonly custom: {
275
+ to: (val: Uint8Array) => import("@wormhole-foundation/sdk-definitions").UniversalAddress;
276
+ from: (val: import("@wormhole-foundation/sdk-definitions").UniversalAddress) => Uint8Array;
277
+ };
278
+ readonly name: "senderAddress";
279
+ }, {
280
+ readonly name: "messageKeys";
281
+ readonly binary: "array";
282
+ readonly lengthSize: 1;
283
+ readonly layout: {
284
+ readonly binary: "switch";
285
+ readonly idSize: 1;
286
+ readonly idTag: "keyType";
287
+ readonly layouts: readonly [readonly [readonly [1, "VAA"], readonly [{
288
+ readonly custom: {
289
+ to: (val: number) => "Solana" | "Ethereum" | "Terra" | "Bsc" | "Polygon" | "Avalanche" | "Oasis" | "Algorand" | "Aurora" | "Fantom" | "Karura" | "Acala" | "Klaytn" | "Celo" | "Near" | "Moonbeam" | "Neon" | "Terra2" | "Injective" | "Osmosis" | "Sui" | "Aptos" | "Arbitrum" | "Optimism" | "Gnosis" | "Pythnet" | "Xpla" | "Btc" | "Base" | "Sei" | "Rootstock" | "Scroll" | "Mantle" | "Blast" | "Xlayer" | "Linea" | "Berachain" | "Seievm" | "Wormchain" | "Cosmoshub" | "Evmos" | "Kujira" | "Neutron" | "Celestia" | "Stargaze" | "Seda" | "Dymension" | "Provenance" | "Sepolia" | "ArbitrumSepolia" | "BaseSepolia" | "OptimismSepolia" | "Holesky" | "PolygonSepolia";
290
+ from: (val: "Solana" | "Ethereum" | "Terra" | "Bsc" | "Polygon" | "Avalanche" | "Oasis" | "Algorand" | "Aurora" | "Fantom" | "Karura" | "Acala" | "Klaytn" | "Celo" | "Near" | "Moonbeam" | "Neon" | "Terra2" | "Injective" | "Osmosis" | "Sui" | "Aptos" | "Arbitrum" | "Optimism" | "Gnosis" | "Pythnet" | "Xpla" | "Btc" | "Base" | "Sei" | "Rootstock" | "Scroll" | "Mantle" | "Blast" | "Xlayer" | "Linea" | "Berachain" | "Seievm" | "Wormchain" | "Cosmoshub" | "Evmos" | "Kujira" | "Neutron" | "Celestia" | "Stargaze" | "Seda" | "Dymension" | "Provenance" | "Sepolia" | "ArbitrumSepolia" | "BaseSepolia" | "OptimismSepolia" | "Holesky" | "PolygonSepolia") => number;
291
+ };
292
+ readonly binary: "uint";
293
+ readonly size: 2;
294
+ readonly name: "chain";
295
+ }, {
296
+ readonly binary: "bytes";
297
+ readonly size: 32;
298
+ readonly custom: {
299
+ to: (val: Uint8Array) => import("@wormhole-foundation/sdk-definitions").UniversalAddress;
300
+ from: (val: import("@wormhole-foundation/sdk-definitions").UniversalAddress) => Uint8Array;
301
+ };
302
+ readonly name: "emitterAddress";
303
+ }, {
304
+ readonly binary: "uint";
305
+ readonly size: 8;
306
+ readonly name: "sequence";
307
+ }]], readonly [readonly [2, "CCTP"], readonly [{
308
+ readonly name: "size";
309
+ readonly binary: "uint";
310
+ readonly size: 4;
311
+ readonly custom: 12;
312
+ readonly omit: true;
313
+ }, {
314
+ readonly binary: "uint";
315
+ readonly size: 4;
316
+ readonly name: "domain";
317
+ }, {
318
+ readonly binary: "uint";
319
+ readonly size: 8;
320
+ readonly name: "nonce";
321
+ }]]];
322
+ };
323
+ }]], readonly ["TransceiverInfo", readonly [{
86
324
  readonly name: "prefix";
87
325
  readonly binary: "bytes";
88
326
  readonly custom: Uint8Array;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/layouts/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,oBAAoB,EACrB,MAAM,sCAAsC,CAAC;AAM9C,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IASK,CAAC;AAGnC,OAAO,QAAQ,sCAAsC,CAAC;IACpD,UAAiB,gBAAgB,CAAC;QAChC,UAAU,6BACR,SAAQ,oBAAoB,CAAC,KAAK,EAAE,OAAO,gBAAgB,CAAC;SAAG;KAClE;CACF;AAED,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAE9B,mBAAmB,aAAa,CAAC;AACjC,mBAAmB,cAAc,CAAC;AAClC,mBAAmB,aAAa,CAAC;AACjC,mBAAmB,kBAAkB,CAAC;AACtC,mBAAmB,8BAA8B,CAAC;AAClD,mBAAmB,eAAe,CAAC;AACnC,mBAAmB,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/layouts/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,oBAAoB,EAErB,MAAM,sCAAsC,CAAC;AAM9C,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAiBK,CAAC;AAGnC,OAAO,QAAQ,sCAAsC,CAAC;IACpD,UAAiB,gBAAgB,CAAC;QAChC,UAAU,6BACR,SAAQ,oBAAoB,CAAC,KAAK,EAAE,OAAO,gBAAgB,CAAC;SAAG;KAClE;CACF;AAED,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAE9B,mBAAmB,aAAa,CAAC;AACjC,mBAAmB,cAAc,CAAC;AAClC,mBAAmB,aAAa,CAAC;AACjC,mBAAmB,kBAAkB,CAAC;AACtC,mBAAmB,8BAA8B,CAAC;AAClD,mBAAmB,eAAe,CAAC;AACnC,mBAAmB,eAAe,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { deliveryInstructionLayout, } from "@wormhole-foundation/sdk-definitions";
1
2
  import { nttManagerMessageLayout } from "./manager.js";
2
3
  import { transceiverInfo, transceiverRegistration } from "./transceiver.js";
3
4
  import { nativeTokenTransferLayout } from "./transfer.js";
@@ -7,6 +8,10 @@ export const nttNamedPayloads = [
7
8
  "WormholeTransfer",
8
9
  wormholeTransceiverMessageLayout(nttManagerMessageLayout(nativeTokenTransferLayout)),
9
10
  ],
11
+ [
12
+ "WormholeTransferStandardRelayer",
13
+ deliveryInstructionLayout(wormholeTransceiverMessageLayout(nttManagerMessageLayout(nativeTokenTransferLayout))),
14
+ ],
10
15
  ["TransceiverInfo", transceiverInfo],
11
16
  ["TransceiverRegistration", transceiverRegistration],
12
17
  ];
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/layouts/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAC5E,OAAO,EAAE,yBAAyB,EAAE,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,gCAAgC,EAAE,MAAM,eAAe,CAAC;AAEjE,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B;QACE,kBAAkB;QAClB,gCAAgC,CAC9B,uBAAuB,CAAC,yBAAyB,CAAC,CACnD;KACF;IACD,CAAC,iBAAiB,EAAE,eAAe,CAAC;IACpC,CAAC,yBAAyB,EAAE,uBAAuB,CAAC;CACpB,CAAC;AAUnC,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/layouts/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,yBAAyB,GAC1B,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAC5E,OAAO,EAAE,yBAAyB,EAAE,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,gCAAgC,EAAE,MAAM,eAAe,CAAC;AAEjE,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B;QACE,kBAAkB;QAClB,gCAAgC,CAC9B,uBAAuB,CAAC,yBAAyB,CAAC,CACnD;KACF;IACD;QACE,iCAAiC;QACjC,yBAAyB,CACvB,gCAAgC,CAC9B,uBAAuB,CAAC,yBAAyB,CAAC,CACnD,CACF;KACF;IACD,CAAC,iBAAiB,EAAE,eAAe,CAAC;IACpC,CAAC,yBAAyB,EAAE,uBAAuB,CAAC;CACpB,CAAC;AAUnC,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC"}
package/dist/esm/ntt.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { type Chain, type Network } from "@wormhole-foundation/sdk-base";
2
- import { AccountAddress, ChainAddress, EmptyPlatformMap, ProtocolPayload, ProtocolVAA, TokenAddress, UnsignedTransaction } from "@wormhole-foundation/sdk-definitions";
2
+ import { AccountAddress, ChainAddress, EmptyPlatformMap, ProtocolPayload, ProtocolVAA, UnsignedTransaction, VAA } from "@wormhole-foundation/sdk-definitions";
3
3
  import { NttManagerMessage, nativeTokenTransferLayout, transceiverInfo, transceiverRegistration } from "./layouts/index.js";
4
4
  /**
5
5
  * @namespace Ntt
@@ -27,7 +27,7 @@ export declare namespace Ntt {
27
27
  /** How much native gas on the destination to send along with the transfer */
28
28
  gasDropoff?: bigint;
29
29
  };
30
- export type Attestation = any;
30
+ export type Attestation = VAA<"Ntt:WormholeTransfer"> | VAA<"Ntt:WormholeTransferStandardRelayer">;
31
31
  /**
32
32
  * InboundQueuedTransfer is a queued transfer from another chain
33
33
  * @property recipient the recipient of the transfer
@@ -57,6 +57,7 @@ export declare namespace Ntt {
57
57
  * @returns a 32 byte digest of the message
58
58
  */
59
59
  export function messageDigest(chain: Chain, message: Message): Uint8Array;
60
+ export function abiVersionMatches(targetVersion: string, abiVersion: string): boolean;
60
61
  export {};
61
62
  }
62
63
  /**
@@ -108,6 +109,10 @@ export interface Ntt<N extends Network, C extends Chain> {
108
109
  * @param fromChain the chain to check the inbound capacity for
109
110
  */
110
111
  getCurrentInboundCapacity(fromChain: Chain): Promise<bigint>;
112
+ /**
113
+ * getRateLimitDuration returns the duration of the rate limit for queued transfers in seconds
114
+ */
115
+ getRateLimitDuration(): Promise<bigint>;
111
116
  /**
112
117
  * getIsApproved returns whether an attestation is approved
113
118
  * an attestation is approved when it has been validated but has not necessarily
@@ -123,6 +128,11 @@ export interface Ntt<N extends Network, C extends Chain> {
123
128
  * @param attestation the attestation to check
124
129
  */
125
130
  getIsExecuted(attestation: Ntt.Attestation): Promise<boolean>;
131
+ /**
132
+ * getIsTransferInboundQueued returns whether the transfer is inbound queued
133
+ * @param attestation the attestation to check
134
+ */
135
+ getIsTransferInboundQueued(attestation: Ntt.Attestation): Promise<boolean>;
126
136
  /**
127
137
  * getInboundQueuedTransfer returns the details of an inbound queued transfer
128
138
  * @param transceiverMessage the transceiver message
@@ -131,12 +141,11 @@ export interface Ntt<N extends Network, C extends Chain> {
131
141
  getInboundQueuedTransfer(fromChain: Chain, transceiverMessage: Ntt.Message): Promise<Ntt.InboundQueuedTransfer<C> | null>;
132
142
  /**
133
143
  * completeInboundQueuedTransfer completes an inbound queued transfer
134
- * @param transceiverMessage the transceiver message
135
- * @param token the token to transfer
136
144
  * @param fromChain the chain the transfer is from
145
+ * @param transceiverMessage the transceiver message
137
146
  * @param payer the address to pay for the transfer
138
147
  */
139
- completeInboundQueuedTransfer(fromChain: Chain, transceiverMessage: Ntt.Message, token: TokenAddress<C>, payer?: AccountAddress<C>): AsyncGenerator<UnsignedTransaction<N, C>>;
148
+ completeInboundQueuedTransfer(fromChain: Chain, transceiverMessage: Ntt.Message, payer?: AccountAddress<C>): AsyncGenerator<UnsignedTransaction<N, C>>;
140
149
  }
141
150
  export interface NttTransceiver<N extends Network, C extends Chain, A extends Ntt.Attestation> {
142
151
  /** setPeer sets a peer address for a given chain
@@ -152,7 +161,7 @@ export interface NttTransceiver<N extends Network, C extends Chain, A extends Nt
152
161
  receive(attestation: A, sender?: AccountAddress<C>): AsyncGenerator<UnsignedTransaction<N, C>>;
153
162
  }
154
163
  export declare namespace WormholeNttTransceiver {
155
- const _payloads: readonly ["WormholeTransfer"];
164
+ const _payloads: readonly ["WormholeTransfer", "WormholeTransferStandardRelayer"];
156
165
  export type PayloadNames = (typeof _payloads)[number];
157
166
  export type VAA<PayloadName extends PayloadNames = PayloadNames> = ProtocolVAA<Ntt.ProtocolName, PayloadName>;
158
167
  export type Payload<PayloadName extends PayloadNames = PayloadNames> = ProtocolPayload<Ntt.ProtocolName, PayloadName>;
@@ -1 +1 @@
1
- {"version":3,"file":"ntt.d.ts","sourceRoot":"","sources":["../../src/ntt.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ntt.d.ts","sourceRoot":"","sources":["../../src/ntt.ts"],"names":[],"mappings":"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"}
package/dist/esm/ntt.js CHANGED
@@ -26,9 +26,33 @@ export var Ntt;
26
26
  return keccak256(encoding.bytes.concat(encoding.bignum.toBytes(toChainId(chain), 2), serializeLayout(nttManagerMessageLayout(nativeTokenTransferLayout), message)));
27
27
  }
28
28
  Ntt.messageDigest = messageDigest;
29
+ // Checks for compatibility between the Contract version in use on chain,
30
+ // and the ABI version the SDK has. Major version must match, minor version on chain
31
+ // should be gte SDK's ABI version.
32
+ //
33
+ // For example, if the contract is using 1.1.0, we would use 1.0.0 but not 1.2.0.
34
+ function abiVersionMatches(targetVersion, abiVersion) {
35
+ const parseVersion = (version) => {
36
+ // allow optional tag on patch version
37
+ const versionRegex = /^(\d+)\.(\d+)\.(.*)$/;
38
+ const match = version.match(versionRegex);
39
+ if (!match) {
40
+ throw new Error(`Invalid version format: ${version}`);
41
+ }
42
+ const [, major, minor, patchAndTag] = match;
43
+ return { major: Number(major), minor: Number(minor), patchAndTag };
44
+ };
45
+ const { major: majorTarget, minor: minorTarget } = parseVersion(targetVersion);
46
+ const { major: majorAbi, minor: minorAbi } = parseVersion(abiVersion);
47
+ return majorTarget === majorAbi && minorTarget >= minorAbi;
48
+ }
49
+ Ntt.abiVersionMatches = abiVersionMatches;
29
50
  })(Ntt || (Ntt = {}));
30
51
  export var WormholeNttTransceiver;
31
52
  (function (WormholeNttTransceiver) {
32
- const _payloads = ["WormholeTransfer"];
53
+ const _payloads = [
54
+ "WormholeTransfer",
55
+ "WormholeTransferStandardRelayer",
56
+ ];
33
57
  })(WormholeNttTransceiver || (WormholeNttTransceiver = {}));
34
58
  //# sourceMappingURL=ntt.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ntt.js","sourceRoot":"","sources":["../../src/ntt.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EACR,eAAe,EACf,SAAS,GAGV,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EAQL,SAAS,GACV,MAAM,sCAAsC,CAAC;AAE9C,OAAO,EAEL,yBAAyB,EACzB,uBAAuB,EAEvB,4BAA4B,GAE7B,MAAM,oBAAoB,CAAC;AAE5B;;GAEG;AACH,MAAM,KAAW,GAAG,CAqFnB;AArFD,WAAiB,GAAG;IAClB,MAAM,SAAS,GAAG,KAAK,CAAC;IAuDxB,wEAAwE;IACxE,sDAAsD;IACtD,SAAgB,6BAA6B,CAAC,GAA6B;QACzE,IAAI,GAAG,CAAC,MAAM,GAAG,GAAG;YAClB,MAAM,IAAI,KAAK,CAAC,0BAA0B,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC;QAC3D,OAAO,QAAQ,CAAC,KAAK,CAAC,MAAM,CAC1B,IAAI,UAAU,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAC5B,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,eAAe,CAAC,4BAA4B,EAAE,EAAE,EAAE,CAAC,CAAC,CACxE,CAAC;IACJ,CAAC;IAPe,iCAA6B,gCAO5C,CAAA;IAED;;;;;;OAMG;IACH,SAAgB,aAAa,CAAC,KAAY,EAAE,OAAgB;QAC1D,OAAO,SAAS,CACd,QAAQ,CAAC,KAAK,CAAC,MAAM,CACnB,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,EAC5C,eAAe,CACb,uBAAuB,CAAC,yBAAyB,CAAC,EAClD,OAAO,CACR,CACF,CACF,CAAC;IACJ,CAAC;IAVe,iBAAa,gBAU5B,CAAA;AACH,CAAC,EArFgB,GAAG,KAAH,GAAG,QAqFnB;AA6ID,MAAM,KAAW,sBAAsB,CAOtC;AAPD,WAAiB,sBAAsB;IACrC,MAAM,SAAS,GAAG,CAAC,kBAAkB,CAAU,CAAC;AAMlD,CAAC,EAPgB,sBAAsB,KAAtB,sBAAsB,QAOtC"}
1
+ {"version":3,"file":"ntt.js","sourceRoot":"","sources":["../../src/ntt.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EACR,eAAe,EACf,SAAS,GAGV,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EAQL,SAAS,GACV,MAAM,sCAAsC,CAAC;AAE9C,OAAO,EAEL,yBAAyB,EACzB,uBAAuB,EAEvB,4BAA4B,GAE7B,MAAM,oBAAoB,CAAC;AAE5B;;GAEG;AACH,MAAM,KAAW,GAAG,CAgHnB;AAhHD,WAAiB,GAAG;IAClB,MAAM,SAAS,GAAG,KAAK,CAAC;IAyDxB,wEAAwE;IACxE,sDAAsD;IACtD,SAAgB,6BAA6B,CAAC,GAA6B;QACzE,IAAI,GAAG,CAAC,MAAM,GAAG,GAAG;YAClB,MAAM,IAAI,KAAK,CAAC,0BAA0B,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC;QAC3D,OAAO,QAAQ,CAAC,KAAK,CAAC,MAAM,CAC1B,IAAI,UAAU,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAC5B,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,eAAe,CAAC,4BAA4B,EAAE,EAAE,EAAE,CAAC,CAAC,CACxE,CAAC;IACJ,CAAC;IAPe,iCAA6B,gCAO5C,CAAA;IAED;;;;;;OAMG;IACH,SAAgB,aAAa,CAAC,KAAY,EAAE,OAAgB;QAC1D,OAAO,SAAS,CACd,QAAQ,CAAC,KAAK,CAAC,MAAM,CACnB,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,EAC5C,eAAe,CACb,uBAAuB,CAAC,yBAAyB,CAAC,EAClD,OAAO,CACR,CACF,CACF,CAAC;IACJ,CAAC;IAVe,iBAAa,gBAU5B,CAAA;IAED,yEAAyE;IACzE,oFAAoF;IACpF,mCAAmC;IACnC,EAAE;IACF,iFAAiF;IACjF,SAAgB,iBAAiB,CAC/B,aAAqB,EACrB,UAAkB;QAElB,MAAM,YAAY,GAAG,CAAC,OAAe,EAAE,EAAE;YACvC,sCAAsC;YACtC,MAAM,YAAY,GAAG,sBAAsB,CAAC;YAC5C,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;YAC1C,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,MAAM,IAAI,KAAK,CAAC,2BAA2B,OAAO,EAAE,CAAC,CAAC;YACxD,CAAC;YACD,MAAM,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,CAAC,GAAG,KAAK,CAAC;YAC5C,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,WAAW,EAAE,CAAC;QACrE,CAAC,CAAC;QACF,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,EAAE,GAC9C,YAAY,CAAC,aAAa,CAAC,CAAC;QAC9B,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;QACtE,OAAO,WAAW,KAAK,QAAQ,IAAI,WAAW,IAAI,QAAQ,CAAC;IAC7D,CAAC;IAlBe,qBAAiB,oBAkBhC,CAAA;AACH,CAAC,EAhHgB,GAAG,KAAH,GAAG,QAgHnB;AAsJD,MAAM,KAAW,sBAAsB,CAUtC;AAVD,WAAiB,sBAAsB;IACrC,MAAM,SAAS,GAAG;QAChB,kBAAkB;QAClB,iCAAiC;KACzB,CAAC;AAMb,CAAC,EAVgB,sBAAsB,KAAtB,sBAAsB,QAUtC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wormhole-foundation/sdk-definitions-ntt",
3
- "version": "0.1.0-beta.3",
3
+ "version": "0.2.0-beta.0",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "git+https://github.com/wormhole-foundation/example-native-token-transfers.git"
@@ -49,12 +49,12 @@
49
49
  "test": "jest --config ./jest.config.ts"
50
50
  },
51
51
  "dependencies": {
52
- "@wormhole-foundation/sdk-base": "^0.7",
53
- "@wormhole-foundation/sdk-definitions": "^0.7"
52
+ "@wormhole-foundation/sdk-base": "^0.8",
53
+ "@wormhole-foundation/sdk-definitions": "^0.8"
54
54
  },
55
55
  "peerDependencies": {
56
- "@wormhole-foundation/sdk-base": "^0.7",
57
- "@wormhole-foundation/sdk-definitions": "^0.7"
56
+ "@wormhole-foundation/sdk-base": "^0.8",
57
+ "@wormhole-foundation/sdk-definitions": "^0.8"
58
58
  },
59
59
  "type": "module"
60
60
  }