UNPKG

@cowprotocol/cow-sdk

Version:

## 📚 [Docs website](https://docs.cow.fi/)

45 lines (44 loc) • 2.55 kB
import { latest as latestAppData } from '@cowprotocol/app-data'; import { BridgeDeposit, BridgeHook, BridgeProvider, BridgeProviderInfo, BridgeQuoteResult, BridgeStatusResult, BridgingDepositParams, BuyTokensParams, QuoteBridgeRequest } from '../../types'; import { ChainId, ChainInfo, SupportedChainId } from '../../../chains'; import { EvmCall, TokenInfo } from '../../../common'; import { BungeeApi, BungeeApiOptions } from './BungeeApi'; import { CowShedSdk, CowShedSdkOptions } from '../../../cow-shed'; import { BungeeBuildTx, BungeeQuote } from './types'; import type { JsonRpcProvider } from '@ethersproject/providers'; import type { Signer } from 'ethers'; export declare const BUNGEE_HOOK_DAPP_ID = "cow-sdk://bridging/providers/bungee"; export declare const BUNGEE_SUPPORTED_NETWORKS: ChainInfo[]; export interface BungeeBridgeProviderOptions { getRpcProvider(chainId: SupportedChainId): JsonRpcProvider; apiOptions?: BungeeApiOptions; cowShedOptions?: CowShedSdkOptions; } export interface BungeeQuoteResult extends BridgeQuoteResult { bungeeQuote: BungeeQuote; buildTx: BungeeBuildTx; } export declare class BungeeBridgeProvider implements BridgeProvider<BungeeQuoteResult> { private options; protected api: BungeeApi; protected cowShedSdk: CowShedSdk; getRpcProvider: (chainId: SupportedChainId) => JsonRpcProvider; constructor(options: BungeeBridgeProviderOptions); info: BridgeProviderInfo; getNetworks(): Promise<ChainInfo[]>; getBuyTokens(params: BuyTokensParams): Promise<TokenInfo[]>; getIntermediateTokens(request: QuoteBridgeRequest): Promise<TokenInfo[]>; getQuote(request: QuoteBridgeRequest): Promise<BungeeQuoteResult>; getUnsignedBridgeCall(request: QuoteBridgeRequest, quote: BungeeQuoteResult): Promise<EvmCall>; getGasLimitEstimationForHook(request: QuoteBridgeRequest): Promise<number>; getSignedHook(chainId: SupportedChainId, unsignedCall: EvmCall, signer: Signer, bridgeHookNonce: string, deadline: bigint, hookGasLimit: number): Promise<BridgeHook>; getBridgingParams(_chainId: ChainId, orderId: string, _txHash: string): Promise<{ params: BridgingDepositParams; status: BridgeStatusResult; } | null>; decodeBridgeHook(_hook: latestAppData.CoWHook): Promise<BridgeDeposit>; getExplorerUrl(bridgingId: string): string; getStatus(_bridgingId: string): Promise<BridgeStatusResult>; getCancelBridgingTx(_bridgingId: string): Promise<EvmCall>; getRefundBridgingTx(_bridgingId: string): Promise<EvmCall>; }