@aptos-labs/cross-chain-core 5.4.13 → 5.4.14

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.
@@ -0,0 +1,82 @@
1
+ import { Chain } from "./CrossChainCore";
2
+ import { Network } from "@aptos-labs/ts-sdk";
3
+ import { WormholeTransferResponse } from "./providers/wormhole/types";
4
+ import { AdapterWallet } from "@aptos-labs/wallet-adapter-core";
5
+ export interface UIComponents {
6
+ Button: React.ComponentType<{
7
+ onClick?: () => void;
8
+ disabled?: boolean;
9
+ children: React.ReactNode;
10
+ className?: string;
11
+ }>;
12
+ Card: React.ComponentType<{
13
+ children: React.ReactNode;
14
+ className?: string;
15
+ }>;
16
+ CardHeader: React.ComponentType<{
17
+ children: React.ReactNode;
18
+ }>;
19
+ CardTitle: React.ComponentType<{
20
+ children: React.ReactNode;
21
+ }>;
22
+ CardDescription: React.ComponentType<{
23
+ children: React.ReactNode;
24
+ }>;
25
+ CardContent: React.ComponentType<{
26
+ children: React.ReactNode;
27
+ className?: string;
28
+ }>;
29
+ Input: React.ComponentType<{
30
+ value: string;
31
+ onChange: (e: React.ChangeEvent<HTMLInputElement>) => void;
32
+ className?: string;
33
+ }>;
34
+ LoaderIcon?: React.ComponentType<{
35
+ className?: string;
36
+ }>;
37
+ MoveDownIcon?: React.ComponentType<{
38
+ className?: string;
39
+ }>;
40
+ }
41
+ export interface BalanceManager {
42
+ originBalance: string | undefined;
43
+ fetchOriginBalance: (address: string, chain: Chain) => Promise<void>;
44
+ refetchBalancesWithDelay: (delayMs?: number) => Promise<void>;
45
+ globalTransactionInProgress: boolean;
46
+ setGlobalTransactionInProgress: (inProgress: boolean) => void;
47
+ }
48
+ export interface WalletUtils {
49
+ isSolanaDerivedWallet: (wallet: AdapterWallet) => boolean;
50
+ isEIP1193DerivedWallet: (wallet: AdapterWallet) => boolean;
51
+ }
52
+ export interface OriginWalletDetails {
53
+ address: {
54
+ toString: () => string;
55
+ } | string;
56
+ publicKey?: any;
57
+ }
58
+ export interface ChainIconProvider {
59
+ getChainIcon: (chain: string) => string;
60
+ getUSDCIcon: () => React.ComponentType;
61
+ }
62
+ export interface BridgeConnectorConfig {
63
+ network: Network.MAINNET | Network.TESTNET;
64
+ mainSignerPrivateKey: string;
65
+ sponsorPrivateKey: string;
66
+ title?: string;
67
+ description?: string;
68
+ }
69
+ export interface BridgeConnectorProps {
70
+ wallet: AdapterWallet | null;
71
+ originWalletDetails: OriginWalletDetails | undefined;
72
+ uiComponents: UIComponents;
73
+ balanceManager: BalanceManager;
74
+ walletUtils: WalletUtils;
75
+ chainIconProvider: ChainIconProvider;
76
+ config: BridgeConnectorConfig;
77
+ className?: string;
78
+ onTransferComplete?: (response: WormholeTransferResponse) => void;
79
+ onTransferError?: (error: Error) => void;
80
+ }
81
+ export declare function BridgeConnector({ wallet, originWalletDetails, uiComponents, balanceManager, walletUtils, chainIconProvider, config, className, onTransferComplete, onTransferError, }: BridgeConnectorProps): import("react/jsx-runtime").JSX.Element;
82
+ //# sourceMappingURL=BridgeConnector.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BridgeConnector.d.ts","sourceRoot":"","sources":["../src/BridgeConnector.tsx"],"names":[],"mappings":"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"}
@@ -16,7 +16,7 @@ export interface CrossChainDappConfig {
16
16
  export type { AccountAddressInput } from "@aptos-labs/ts-sdk";
17
17
  export { NetworkToChainId, NetworkToNodeAPI } from "@aptos-labs/ts-sdk";
18
18
  export type AptosAccount = Account;
19
- export type Chain = "Solana" | "Ethereum" | "Sepolia" | "Aptos" | "BaseSepolia" | "ArbitrumSepolia" | "Avalanche" | "Base" | "Arbitrum" | "PolygonSepolia" | "Polygon";
19
+ export type Chain = "Solana" | "Ethereum" | "Sepolia" | "Aptos" | "BaseSepolia" | "ArbitrumSepolia" | "Avalanche" | "Base" | "Arbitrum" | "PolygonSepolia" | "Polygon" | "HyperEVM";
20
20
  export declare const EthereumChainIdToTestnetChain: Record<string, ChainConfig>;
21
21
  export declare const EthereumChainIdToMainnetChain: Record<string, ChainConfig>;
22
22
  export type CCTPProviders = "Wormhole";
@@ -1 +1 @@
1
- {"version":3,"file":"CrossChainCore.d.ts","sourceRoot":"","sources":["../src/CrossChainCore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAYtD,OAAO,EACL,YAAY,EAKZ,WAAW,EACX,WAAW,EACZ,MAAM,UAAU,CAAC;AAOlB,MAAM,WAAW,oBAAoB;IACnC,YAAY,EAAE,OAAO,CAAC;IACtB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,YAAY,CAAC,EAAE;QACb,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,iBAAiB,CAAC,EAAE;YAClB,UAAU,CAAC,EAAE,MAAM,CAAC;YACpB,kBAAkB,CAAC,EAAE,MAAM,CAAC;YAC5B,GAAG,CAAC,EAAE,MAAM,CAAC;YACb,GAAG,CAAC,EAAE,MAAM,CAAC;SACd,CAAC;KACH,CAAC;CACH;AACD,YAAY,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACxE,MAAM,MAAM,YAAY,GAAG,OAAO,CAAC;AAGnC,MAAM,MAAM,KAAK,GACb,QAAQ,GACR,UAAU,GACV,SAAS,GACT,OAAO,GACP,aAAa,GACb,iBAAiB,GACjB,WAAW,GACX,MAAM,GACN,UAAU,GACV,gBAAgB,GAChB,SAAS,CAAC;AAGd,eAAO,MAAM,6BAA6B,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAMrE,CAAC;AAGF,eAAO,MAAM,6BAA6B,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAMrE,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,UAAU,CAAC;AAEvC,MAAM,WAAW,kBAAkB,CACjC,aAAa,GAAG,GAAG,EACnB,cAAc,GAAG,GAAG,EACpB,gBAAgB,GAAG,GAAG,EACtB,iBAAiB,GAAG,GAAG,EACvB,gBAAgB,GAAG,GAAG,EACtB,iBAAiB,GAAG,GAAG;IAEvB,QAAQ,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IACzD,QAAQ,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAC/D,QAAQ,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;CAChE;AAED,qBAAa,cAAc;IACzB,QAAQ,CAAC,WAAW,EAAE,oBAAoB,CAExC;IAEF,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAiB;IAC9C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAiB;gBAEjD,IAAI,EAAE;QAAE,UAAU,EAAE,oBAAoB,CAAA;KAAE;IAWtD,WAAW,CAAC,YAAY,EAAE,aAAa,GAAG,kBAAkB;IAgBtD,oBAAoB,CACxB,aAAa,EAAE,MAAM,EACrB,WAAW,EAAE,KAAK,GACjB,OAAO,CAAC,MAAM,CAAC;CAsCnB"}
1
+ {"version":3,"file":"CrossChainCore.d.ts","sourceRoot":"","sources":["../src/CrossChainCore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAYtD,OAAO,EACL,YAAY,EAKZ,WAAW,EACX,WAAW,EACZ,MAAM,UAAU,CAAC;AAOlB,MAAM,WAAW,oBAAoB;IACnC,YAAY,EAAE,OAAO,CAAC;IACtB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,YAAY,CAAC,EAAE;QACb,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,iBAAiB,CAAC,EAAE;YAClB,UAAU,CAAC,EAAE,MAAM,CAAC;YACpB,kBAAkB,CAAC,EAAE,MAAM,CAAC;YAC5B,GAAG,CAAC,EAAE,MAAM,CAAC;YACb,GAAG,CAAC,EAAE,MAAM,CAAC;SACd,CAAC;KACH,CAAC;CACH;AACD,YAAY,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACxE,MAAM,MAAM,YAAY,GAAG,OAAO,CAAC;AAGnC,MAAM,MAAM,KAAK,GACb,QAAQ,GACR,UAAU,GACV,SAAS,GACT,OAAO,GACP,aAAa,GACb,iBAAiB,GACjB,WAAW,GACX,MAAM,GACN,UAAU,GACV,gBAAgB,GAChB,SAAS,GACT,UAAU,CAAC;AAGf,eAAO,MAAM,6BAA6B,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAOrE,CAAC;AAGF,eAAO,MAAM,6BAA6B,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAOrE,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,UAAU,CAAC;AAEvC,MAAM,WAAW,kBAAkB,CACjC,aAAa,GAAG,GAAG,EACnB,cAAc,GAAG,GAAG,EACpB,gBAAgB,GAAG,GAAG,EACtB,iBAAiB,GAAG,GAAG,EACvB,gBAAgB,GAAG,GAAG,EACtB,iBAAiB,GAAG,GAAG;IAEvB,QAAQ,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IACzD,QAAQ,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAC/D,QAAQ,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;CAChE;AAED,qBAAa,cAAc;IACzB,QAAQ,CAAC,WAAW,EAAE,oBAAoB,CAExC;IAEF,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAiB;IAC9C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAiB;gBAEjD,IAAI,EAAE;QAAE,UAAU,EAAE,oBAAoB,CAAA;KAAE;IAWtD,WAAW,CAAC,YAAY,EAAE,aAAa,GAAG,kBAAkB;IAgBtD,oBAAoB,CACxB,aAAa,EAAE,MAAM,EACrB,WAAW,EAAE,KAAK,GACjB,OAAO,CAAC,MAAM,CAAC;CAuCnB"}
@@ -1 +1 @@
1
- {"version":3,"file":"chains.d.ts","sourceRoot":"","sources":["../../../src/config/mainnet/chains.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,YAAY,EAAE,MAAM,UAAU,CAAC;AAEjD,eAAO,MAAM,aAAa,EAAE,YA6F3B,CAAC"}
1
+ {"version":3,"file":"chains.d.ts","sourceRoot":"","sources":["../../../src/config/mainnet/chains.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,YAAY,EAAE,MAAM,UAAU,CAAC;AAEjD,eAAO,MAAM,aAAa,EAAE,YAwG3B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../../../src/config/mainnet/tokens.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAEvC,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CA2ErD,CAAC"}
1
+ {"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../../../src/config/mainnet/tokens.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAEvC,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAoFrD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"chains.d.ts","sourceRoot":"","sources":["../../../src/config/testnet/chains.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,YAAY,EAAE,MAAM,UAAU,CAAC;AAEjD,eAAO,MAAM,aAAa,EAAE,YA8F3B,CAAC"}
1
+ {"version":3,"file":"chains.d.ts","sourceRoot":"","sources":["../../../src/config/testnet/chains.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,YAAY,EAAE,MAAM,UAAU,CAAC;AAEjD,eAAO,MAAM,aAAa,EAAE,YAyG3B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../../../src/config/testnet/tokens.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAEvC,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CA2ErD,CAAC"}
1
+ {"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../../../src/config/testnet/tokens.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAEvC,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAoFrD,CAAC"}
package/dist/index.d.mts CHANGED
@@ -62,7 +62,7 @@ interface CrossChainDappConfig {
62
62
  }
63
63
 
64
64
  type AptosAccount = Account;
65
- type Chain = "Solana" | "Ethereum" | "Sepolia" | "Aptos" | "BaseSepolia" | "ArbitrumSepolia" | "Avalanche" | "Base" | "Arbitrum" | "PolygonSepolia" | "Polygon";
65
+ type Chain = "Solana" | "Ethereum" | "Sepolia" | "Aptos" | "BaseSepolia" | "ArbitrumSepolia" | "Avalanche" | "Base" | "Arbitrum" | "PolygonSepolia" | "Polygon" | "HyperEVM";
66
66
  declare const EthereumChainIdToTestnetChain: Record<string, ChainConfig>;
67
67
  declare const EthereumChainIdToMainnetChain: Record<string, ChainConfig>;
68
68
  type CCTPProviders = "Wormhole";
package/dist/index.d.ts CHANGED
@@ -1,6 +1,174 @@
1
- export * from "./CrossChainCore";
2
- export * from "./config";
3
- export * from "./providers/wormhole/index";
4
- export * from "./providers/wormhole/types";
5
- export { Network } from "@aptos-labs/ts-sdk";
6
- //# sourceMappingURL=index.d.ts.map
1
+ import { Network, Account, AccountAddressInput } from '@aptos-labs/ts-sdk';
2
+ export { AccountAddressInput, Network, NetworkToChainId, NetworkToNodeAPI } from '@aptos-labs/ts-sdk';
3
+ import { Wormhole, TokenId, Network as Network$1, Chain as Chain$1, SignAndSendSigner, UnsignedTransaction, TxHash } from '@wormhole-foundation/sdk';
4
+ import { AdapterWallet } from '@aptos-labs/wallet-adapter-core';
5
+ import { routes, AttestationReceipt } from '@wormhole-foundation/sdk/dist/cjs';
6
+ import { AptosChains } from '@wormhole-foundation/sdk-aptos';
7
+
8
+ declare enum Context {
9
+ ETH = "Ethereum",
10
+ SOLANA = "Solana",
11
+ APTOS = "Aptos"
12
+ }
13
+ type BaseChainConfig = {
14
+ key: Chain;
15
+ context: Context;
16
+ disabledAsSource?: boolean;
17
+ disabledAsDestination?: boolean;
18
+ };
19
+ interface ChainConfig extends BaseChainConfig {
20
+ defaultRpc: string;
21
+ displayName: string;
22
+ explorerUrl: string;
23
+ explorerName: string;
24
+ chainId: number | string;
25
+ icon: Chain;
26
+ symbol?: string;
27
+ }
28
+ type ChainsConfig = {
29
+ [chain in Chain]?: ChainConfig;
30
+ };
31
+ type TokenConfig = {
32
+ symbol: string;
33
+ name?: string;
34
+ decimals: number;
35
+ icon: string;
36
+ tokenId: {
37
+ chain: Chain;
38
+ address: string;
39
+ };
40
+ };
41
+
42
+ declare const testnetChains: ChainsConfig;
43
+
44
+ declare const testnetTokens: Record<string, TokenConfig>;
45
+
46
+ declare const mainnetChains: ChainsConfig;
47
+
48
+ declare const mainnetTokens: Record<string, TokenConfig>;
49
+
50
+ interface CrossChainDappConfig {
51
+ aptosNetwork: Network;
52
+ disableTelemetry?: boolean;
53
+ solanaConfig?: {
54
+ rpc?: string;
55
+ priorityFeeConfig?: {
56
+ percentile?: number;
57
+ percentileMultiple?: number;
58
+ min?: number;
59
+ max?: number;
60
+ };
61
+ };
62
+ }
63
+
64
+ type AptosAccount = Account;
65
+ type Chain = "Solana" | "Ethereum" | "Sepolia" | "Aptos" | "BaseSepolia" | "ArbitrumSepolia" | "Avalanche" | "Base" | "Arbitrum" | "PolygonSepolia" | "Polygon" | "HyperEVM";
66
+ declare const EthereumChainIdToTestnetChain: Record<string, ChainConfig>;
67
+ declare const EthereumChainIdToMainnetChain: Record<string, ChainConfig>;
68
+ type CCTPProviders = "Wormhole";
69
+ interface CrossChainProvider<TQuoteRequest = any, TQuoteResponse = any, TTransferRequest = any, TTransferResponse = any, TWithdrawRequest = any, TWithdrawResponse = any> {
70
+ getQuote(params: TQuoteRequest): Promise<TQuoteResponse>;
71
+ transfer(params: TTransferRequest): Promise<TTransferResponse>;
72
+ withdraw(params: TWithdrawRequest): Promise<TWithdrawResponse>;
73
+ }
74
+ declare class CrossChainCore {
75
+ readonly _dappConfig: CrossChainDappConfig;
76
+ readonly CHAINS: ChainsConfig;
77
+ readonly TOKENS: Record<string, TokenConfig>;
78
+ constructor(args: {
79
+ dappConfig: CrossChainDappConfig;
80
+ });
81
+ getProvider(providerType: CCTPProviders): CrossChainProvider;
82
+ getWalletUSDCBalance(walletAddress: string, sourceChain: Chain): Promise<string>;
83
+ }
84
+
85
+ type WormholeRouteResponse = routes.Route<"Mainnet" | "Testnet", routes.Options, routes.ValidatedTransferParams<routes.Options>, routes.Receipt>;
86
+ type WormholeRequest = routes.RouteTransferRequest<"Mainnet" | "Testnet">;
87
+ type WormholeQuoteResponse = routes.Quote<routes.Options, routes.ValidatedTransferParams<routes.Options>, any>;
88
+ interface WormholeQuoteRequest {
89
+ amount: string;
90
+ originChain: Chain;
91
+ type: "transfer" | "withdraw";
92
+ }
93
+ type GasStationApiKey = string;
94
+ interface WormholeTransferRequest {
95
+ sourceChain: Chain;
96
+ wallet: AdapterWallet;
97
+ destinationAddress: AccountAddressInput;
98
+ mainSigner: Account;
99
+ amount?: string;
100
+ sponsorAccount?: Account | GasStationApiKey;
101
+ }
102
+ interface WormholeWithdrawRequest {
103
+ sourceChain: Chain;
104
+ wallet: AdapterWallet;
105
+ destinationAddress: AccountAddressInput;
106
+ sponsorAccount?: Account | GasStationApiKey;
107
+ }
108
+ interface WormholeSubmitTransferRequest {
109
+ sourceChain: Chain;
110
+ wallet: AdapterWallet;
111
+ destinationAddress: AccountAddressInput;
112
+ }
113
+ interface WormholeClaimTransferRequest {
114
+ receipt: routes.Receipt<AttestationReceipt>;
115
+ mainSigner: AptosAccount;
116
+ sponsorAccount?: AptosAccount | GasStationApiKey;
117
+ }
118
+ interface WormholeTransferResponse {
119
+ destinationChainTxnId: string;
120
+ originChainTxnId: string;
121
+ }
122
+ interface WormholeWithdrawResponse {
123
+ destinationChainTxnId: string;
124
+ originChainTxnId: string;
125
+ }
126
+ interface WormholeStartTransferResponse {
127
+ originChainTxnId: string;
128
+ receipt: routes.Receipt<AttestationReceipt>;
129
+ }
130
+
131
+ declare class WormholeProvider implements CrossChainProvider<WormholeQuoteRequest, WormholeQuoteResponse, WormholeTransferRequest, WormholeTransferResponse, WormholeWithdrawRequest, WormholeWithdrawResponse> {
132
+ private crossChainCore;
133
+ private _wormholeContext;
134
+ private wormholeRoute;
135
+ private wormholeRequest;
136
+ private wormholeQuote;
137
+ constructor(core: CrossChainCore);
138
+ get wormholeContext(): Wormhole<"Mainnet" | "Testnet"> | undefined;
139
+ private setWormholeContext;
140
+ private getRoute;
141
+ getQuote(input: WormholeQuoteRequest): Promise<WormholeQuoteResponse>;
142
+ submitCCTPTransfer(input: WormholeSubmitTransferRequest): Promise<WormholeStartTransferResponse>;
143
+ claimCCTPTransfer(input: WormholeClaimTransferRequest): Promise<{
144
+ destinationChainTxnId: string;
145
+ }>;
146
+ /**
147
+ * Initiates a transfer of USDC funds from the source chain wallet to the destination chain wallet
148
+ * @param args
149
+ * @returns
150
+ */
151
+ transfer(input: WormholeTransferRequest): Promise<WormholeTransferResponse>;
152
+ withdraw(input: WormholeWithdrawRequest): Promise<WormholeWithdrawResponse>;
153
+ getChainConfig(chain: Chain): ChainConfig;
154
+ getTokenInfo(sourceChain: Chain, destinationChain: Chain): {
155
+ sourceToken: TokenId;
156
+ destToken: TokenId;
157
+ };
158
+ }
159
+
160
+ declare class AptosLocalSigner<N extends Network$1, C extends Chain$1> implements SignAndSendSigner<N, C> {
161
+ _chain: C;
162
+ _options: any;
163
+ _wallet: Account;
164
+ _sponsorAccount: Account | GasStationApiKey | undefined;
165
+ _claimedTransactionHashes: string;
166
+ constructor(chain: C, options: any, wallet: Account, feePayerAccount: Account | GasStationApiKey | undefined);
167
+ chain(): C;
168
+ address(): string;
169
+ claimedTransactionHashes(): string;
170
+ signAndSend(txs: UnsignedTransaction<N, C>[]): Promise<TxHash[]>;
171
+ }
172
+ declare function signAndSendTransaction(request: UnsignedTransaction<Network$1, AptosChains>, wallet: Account, sponsorAccount: Account | GasStationApiKey | undefined): Promise<string>;
173
+
174
+ export { type AptosAccount, AptosLocalSigner, type BaseChainConfig, type CCTPProviders, type Chain, type ChainConfig, type ChainsConfig, Context, CrossChainCore, type CrossChainDappConfig, type CrossChainProvider, EthereumChainIdToMainnetChain, EthereumChainIdToTestnetChain, type GasStationApiKey, type TokenConfig, type WormholeClaimTransferRequest, WormholeProvider, type WormholeQuoteRequest, type WormholeQuoteResponse, type WormholeRequest, type WormholeRouteResponse, type WormholeStartTransferResponse, type WormholeSubmitTransferRequest, type WormholeTransferRequest, type WormholeTransferResponse, type WormholeWithdrawRequest, type WormholeWithdrawResponse, mainnetChains, mainnetTokens, signAndSendTransaction, testnetChains, testnetTokens };
package/dist/index.js CHANGED
@@ -606,6 +606,14 @@ var WormholeProvider = class {
606
606
  }
607
607
  const isMainnet = dappNetwork === import_ts_sdk3.Network.MAINNET;
608
608
  const platforms = [import_aptos.default, import_solana.default, import_evm.default];
609
+ const rpcOverrides = isMainnet ? {} : {
610
+ chains: {
611
+ // Wormhole SDK has wrong testnet RPC for HyperEVM (uses api. instead of rpc.)
612
+ HyperEVM: {
613
+ rpc: "https://rpc.hyperliquid-testnet.xyz/evm"
614
+ }
615
+ }
616
+ };
609
617
  const wh = await (0, import_sdk.wormhole)(isMainnet ? "Mainnet" : "Testnet", platforms);
610
618
  this._wormholeContext = wh;
611
619
  }
@@ -632,10 +640,12 @@ var WormholeProvider = class {
632
640
  sourceContext,
633
641
  destContext
634
642
  );
643
+ logger.log("request", request);
635
644
  const resolver = this._wormholeContext.resolver([
636
645
  import_sdk.routes.CCTPRoute
637
646
  // manual CCTP
638
647
  ]);
648
+ logger.log("resolver", resolver);
639
649
  const route = await resolver.findRoutes(request);
640
650
  const cctpRoute = route[0];
641
651
  this.wormholeRoute = cctpRoute;
@@ -910,8 +920,8 @@ var testnetChains = {
910
920
  explorerUrl: "https://sepolia.etherscan.io/",
911
921
  explorerName: "Etherscan",
912
922
  icon: "Ethereum",
913
- symbol: "ETH",
914
- defaultRpc: "https://eth-sepolia.public.blastapi.io"
923
+ symbol: "SepoliaETH",
924
+ defaultRpc: "https://ethereum-sepolia-rpc.publicnode.com"
915
925
  },
916
926
  BaseSepolia: {
917
927
  key: "BaseSepolia",
@@ -957,6 +967,17 @@ var testnetChains = {
957
967
  symbol: "MATIC",
958
968
  defaultRpc: "https://rpc-amoy.polygon.technology/"
959
969
  },
970
+ HyperEVM: {
971
+ key: "HyperEVM",
972
+ context: "Ethereum" /* ETH */,
973
+ chainId: 998,
974
+ displayName: "HyperEVM",
975
+ explorerUrl: "https://testnet.purrsec.com",
976
+ explorerName: "Purrsec testnet",
977
+ icon: "HyperEVM",
978
+ symbol: "HYPE",
979
+ defaultRpc: "https://rpc.hyperliquid-testnet.xyz/evm"
980
+ },
960
981
  Solana: {
961
982
  key: "Solana",
962
983
  context: "Solana" /* SOLANA */,
@@ -1060,6 +1081,15 @@ var testnetTokens = {
1060
1081
  chain: "PolygonSepolia",
1061
1082
  address: "0x41E94Eb019C0762f9Bfcf9Fb1E58725BfB0e7582"
1062
1083
  }
1084
+ },
1085
+ HyperEVM: {
1086
+ symbol: "USDC",
1087
+ icon: "USDC",
1088
+ tokenId: {
1089
+ chain: "HyperEVM",
1090
+ address: "0x2B3370eE501B4a559b57D449569354196457D8Ab"
1091
+ },
1092
+ decimals: 6
1063
1093
  }
1064
1094
  // Sui: {
1065
1095
  // symbol: "USDC",
@@ -1130,6 +1160,17 @@ var mainnetChains = {
1130
1160
  symbol: "BASE",
1131
1161
  defaultRpc: "https://mainnet.base.org"
1132
1162
  },
1163
+ HyperEVM: {
1164
+ key: "HyperEVM",
1165
+ context: "Ethereum" /* ETH */,
1166
+ chainId: 999,
1167
+ displayName: "HyperEVM",
1168
+ explorerUrl: "https://hyperevmscan.io/",
1169
+ explorerName: "HyperEVMScan",
1170
+ icon: "HyperEVM",
1171
+ symbol: "HYPE",
1172
+ defaultRpc: "https://rpc.hyperliquid.xyz/evm"
1173
+ },
1133
1174
  Arbitrum: {
1134
1175
  key: "Arbitrum",
1135
1176
  context: "Ethereum" /* ETH */,
@@ -1233,6 +1274,15 @@ var mainnetTokens = {
1233
1274
  chain: "Polygon",
1234
1275
  address: "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359"
1235
1276
  }
1277
+ },
1278
+ HyperEVM: {
1279
+ symbol: "USDC",
1280
+ icon: "USDC",
1281
+ tokenId: {
1282
+ chain: "HyperEVM",
1283
+ address: "0xb88339CB7199b77E23DB6E890353E22632Ba630f"
1284
+ },
1285
+ decimals: 6
1236
1286
  }
1237
1287
  // Sui: {
1238
1288
  // symbol: "USDC",
@@ -1262,6 +1312,7 @@ var getSolanaWalletUSDCBalance = async (walletAddress, aptosNetwork, rpc) => {
1262
1312
  return balance.value.uiAmountString ?? (Number(balance.value.amount) / 10 ** balance.value.decimals).toString();
1263
1313
  };
1264
1314
  var getEthereumWalletUSDCBalance = async (walletAddress, aptosNetwork, chain, rpc) => {
1315
+ console.log("chain", chain);
1265
1316
  const token = aptosNetwork === import_ts_sdk4.Network.MAINNET ? mainnetTokens[chain] : testnetTokens[chain];
1266
1317
  const tokenAddress = token.tokenId.address;
1267
1318
  const connection = new import_ethers2.JsonRpcProvider(rpc);
@@ -1297,14 +1348,16 @@ var EthereumChainIdToTestnetChain = {
1297
1348
  84532: testnetChains.BaseSepolia,
1298
1349
  421614: testnetChains.ArbitrumSepolia,
1299
1350
  43113: testnetChains.Avalanche,
1300
- 80002: testnetChains.PolygonSepolia
1351
+ 80002: testnetChains.PolygonSepolia,
1352
+ 998: testnetChains.HyperEVM
1301
1353
  };
1302
1354
  var EthereumChainIdToMainnetChain = {
1303
1355
  1: mainnetChains.Ethereum,
1304
1356
  8453: mainnetChains.Base,
1305
1357
  42161: mainnetChains.Arbitrum,
1306
1358
  43114: mainnetChains.Avalanche,
1307
- 137: mainnetChains.Polygon
1359
+ 137: mainnetChains.Polygon,
1360
+ 999: mainnetChains.HyperEVM
1308
1361
  };
1309
1362
  var CrossChainCore = class {
1310
1363
  constructor(args) {
@@ -1356,6 +1409,7 @@ var CrossChainCore = class {
1356
1409
  case "Base":
1357
1410
  case "PolygonSepolia":
1358
1411
  case "Polygon":
1412
+ case "HyperEVM":
1359
1413
  return await getEthereumWalletUSDCBalance(
1360
1414
  walletAddress,
1361
1415
  this._dappConfig.aptosNetwork,
@@ -1388,4 +1442,3 @@ var import_ts_sdk7 = require("@aptos-labs/ts-sdk");
1388
1442
  testnetChains,
1389
1443
  testnetTokens
1390
1444
  });
1391
- //# sourceMappingURL=index.js.map