import { Chain, Network, Platform, PlatformToChains } from "@wormhole-foundation/sdk-base";
import { GatewayTransferMsg, GatewayTransferWithPayloadMsg, IbcBridge, IbcMessageId, IbcTransferInfo, TokenBridge, TransactionId, TxHash } from "@wormhole-foundation/sdk-definitions";
export type Task<T> = () => Promise<T | null>;
export declare function retry<T>(task: Task<T>, interval: number, timeout?: number, title?: string): Promise<T | null>;
export declare function isTokenBridgeVaaRedeemed<N extends Network, P extends Platform, C extends Chain>(tb: TokenBridge<N, C>, vaa: TokenBridge.TransferVAA): Promise<boolean | null>;
export declare function fetchIbcXfer<N extends Network, C extends PlatformToChains<"Cosmwasm">>(wcIbc: IbcBridge<N, C>, msg: TxHash | TransactionId | IbcMessageId | GatewayTransferMsg | GatewayTransferWithPayloadMsg): Promise<IbcTransferInfo | null>;
//# sourceMappingURL=tasks.d.ts.map