@arcana/ca-sdk
Version:
Arcana Network's chain abstraction SDK for unified balance in Web3 apps
25 lines (24 loc) • 982 B
TypeScript
import { Universe } from "@arcana/ca-common";
import Decimal from "decimal.js";
import Long from "long";
import { PublicClient, WebSocketTransport } from "viem";
import type { RequestHandlerInput, SimulateReturnType, UserAssets } from "../../typings";
import RequestBase from "../common/base";
declare class ERC20Transfer extends RequestBase {
readonly input: RequestHandlerInput;
destinationUniverse: Universe;
publicClient: PublicClient<WebSocketTransport>;
simulateTxRes: null | SimulateReturnType;
constructor(input: RequestHandlerInput);
parseSimulation({ assets, simulation, }: {
assets: UserAssets;
simulation: SimulateReturnType;
}): {
amount: Decimal;
gas: Decimal;
isIntentRequired: boolean;
};
simulateTx(): Promise<null | SimulateReturnType>;
waitForFill(requestHash: `0x${string}`, intentID: Long, waitForDoubleCheckTx: () => Promise<void>): Promise<void>;
}
export default ERC20Transfer;