@astonic-io/astonic-router-ts
Version:
167 lines (166 loc) • 6.19 kB
TypeScript
import { Signer } from "ethers";
import type { Provider } from "@ethersproject/providers";
import type { IAstonicRouter, IAstonicRouterInterface } from "../IAstonicRouter";
export declare class IAstonicRouter__factory {
static readonly abi: readonly [{
readonly type: "function";
readonly name: "drain";
readonly inputs: readonly [{
readonly name: "asset";
readonly type: "address";
readonly internalType: "address";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "getAmountIn";
readonly inputs: readonly [{
readonly name: "amountOut";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "path";
readonly type: "tuple[]";
readonly internalType: "struct IAstonicRouter.Step[]";
readonly components: readonly [{
readonly name: "exchangeProvider";
readonly type: "address";
readonly internalType: "address";
}, {
readonly name: "exchangeId";
readonly type: "bytes32";
readonly internalType: "bytes32";
}, {
readonly name: "assetIn";
readonly type: "address";
readonly internalType: "address";
}, {
readonly name: "assetOut";
readonly type: "address";
readonly internalType: "address";
}];
}];
readonly outputs: readonly [{
readonly name: "amountIn";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "getAmountOut";
readonly inputs: readonly [{
readonly name: "amountIn";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "path";
readonly type: "tuple[]";
readonly internalType: "struct IAstonicRouter.Step[]";
readonly components: readonly [{
readonly name: "exchangeProvider";
readonly type: "address";
readonly internalType: "address";
}, {
readonly name: "exchangeId";
readonly type: "bytes32";
readonly internalType: "bytes32";
}, {
readonly name: "assetIn";
readonly type: "address";
readonly internalType: "address";
}, {
readonly name: "assetOut";
readonly type: "address";
readonly internalType: "address";
}];
}];
readonly outputs: readonly [{
readonly name: "amountOut";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "swapExactTokensForTokens";
readonly inputs: readonly [{
readonly name: "amountIn";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "amountOutMin";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "path";
readonly type: "tuple[]";
readonly internalType: "struct IAstonicRouter.Step[]";
readonly components: readonly [{
readonly name: "exchangeProvider";
readonly type: "address";
readonly internalType: "address";
}, {
readonly name: "exchangeId";
readonly type: "bytes32";
readonly internalType: "bytes32";
}, {
readonly name: "assetIn";
readonly type: "address";
readonly internalType: "address";
}, {
readonly name: "assetOut";
readonly type: "address";
readonly internalType: "address";
}];
}];
readonly outputs: readonly [{
readonly name: "amounts";
readonly type: "uint256[]";
readonly internalType: "uint256[]";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "swapTokensForExactTokens";
readonly inputs: readonly [{
readonly name: "amountOut";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "amountInMax";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "path";
readonly type: "tuple[]";
readonly internalType: "struct IAstonicRouter.Step[]";
readonly components: readonly [{
readonly name: "exchangeProvider";
readonly type: "address";
readonly internalType: "address";
}, {
readonly name: "exchangeId";
readonly type: "bytes32";
readonly internalType: "bytes32";
}, {
readonly name: "assetIn";
readonly type: "address";
readonly internalType: "address";
}, {
readonly name: "assetOut";
readonly type: "address";
readonly internalType: "address";
}];
}];
readonly outputs: readonly [{
readonly name: "amounts";
readonly type: "uint256[]";
readonly internalType: "uint256[]";
}];
readonly stateMutability: "nonpayable";
}];
static createInterface(): IAstonicRouterInterface;
static connect(address: string, signerOrProvider: Signer | Provider): IAstonicRouter;
}