API
Cross-chain Providers
A set of classes and utilities for handling cross-chain operations through various protocols.
Methods
-
createCrossChainProvider(protocolName: string, config?: ProviderConfig, dependencies?: Dependencies): CrossChainProvider
Creates a provider instance for a supported cross-chain protocol.
const provider = createCrossChainProvider("across");
CrossChainProvider Class
An abstract class that defines the interface for cross-chain protocol providers.
-
getProtocolName(): string
Returns the name of the protocol this provider implements.
const protocolName = provider.getProtocolName(); // e.g., "across" -
getQuote(action: CrossChainAction, params: QuoteParams): Promise<Quote>
Fetches a quote for a cross-chain operation.
const quote = await provider.getQuote("crossChainTransfer", {
fromChain: "1",
toChain: "10",
token: "0x...",
amount: "1000000000000000000",
}); -
simulateOpen(openParams: OpenParams): Promise<TransactionRequest[]>
Simulates the open transaction for a given quote.
const txs = await provider.simulateOpen(quote); -
validateOpenParams(openParams: OpenParams): Promise<boolean>
Validates the parameters for opening a cross-chain transaction.
const isValid = await provider.validateOpenParams(quote);
Provider Executor
A utility for managing multiple cross-chain providers and executing operations across them.
Methods
-
createProviderExecutor(providers: CrossChainProvider[], dependencies?: Dependencies): ProviderExecutor
Creates an executor instance for managing multiple providers.
const executor = createProviderExecutor([
acrossProvider,
layerZeroProvider,
// other providers
]);
ProviderExecutor Class
A class that manages multiple cross-chain providers and coordinates their operations.
-
getQuotes(action: CrossChainAction, params: QuoteParams): Promise<Quote[]>
Retrieves quotes from all available providers for a given operation.
const quotes = await executor.getQuotes("crossChainTransfer", {
fromChain: "1",
toChain: "10",
token: "0x...",
amount: "1000000000000000000",
}); -
execute(quote: Quote): Promise<TransactionRequest[]>
Executes a cross-chain operation using the specified quote.
const result = await executor.execute(selectedQuote);
Param Parsers
Utilities for parsing and validating parameters used in cross-chain operations.
InteropAddressParamsParser
A utility class for parsing interoperable addresses used in cross-chain operations.
const parser = new InteropAddressParamsParser();
const parsedAddress = parser.parse("alice.eth@eip155:1#ABCD1234");