/* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ import { AbiItem, Callback, CeloTxObject, Contract, EventLog, } from "@celo/connect"; import { EventEmitter } from "events"; import Web3 from "web3"; import { EventOptions } from "./types"; export interface PairUniswapV3 extends Contract { clone(): PairUniswapV3; methods: { swap( input: string, arg1: string, to: string, data: string | number[] ): CeloTxObject; uniswapV3SwapCallback( amount0Delta: number | string, amount1Delta: number | string, arg2: string | number[] ): CeloTxObject; getOutputAmount( input: string, output: string, amountIn: number | string, data: string | number[] ): CeloTxObject; getPoolTicks( pool: string, maxLoopN: number | string ): CeloTxObject<{ sqrtPriceX96: string; tick: string; liquidity: string; populatedTicks0: { tick: string; liquidityNet: string; liquidityGross: string; }[]; populatedTicks1: { tick: string; liquidityNet: string; liquidityGross: string; }[]; populatedTicks2: { tick: string; liquidityNet: string; liquidityGross: string; }[]; populatedTicks3: { tick: string; liquidityNet: string; liquidityGross: string; }[]; populatedTicks4: { tick: string; liquidityNet: string; liquidityGross: string; }[]; 0: string; 1: string; 2: string; 3: { tick: string; liquidityNet: string; liquidityGross: string }[]; 4: { tick: string; liquidityNet: string; liquidityGross: string }[]; 5: { tick: string; liquidityNet: string; liquidityGross: string }[]; 6: { tick: string; liquidityNet: string; liquidityGross: string }[]; 7: { tick: string; liquidityNet: string; liquidityGross: string }[]; }>; }; events: { allEvents: ( options?: EventOptions, cb?: Callback ) => EventEmitter; }; } export const ABI: AbiItem[] = [ { inputs: [ { internalType: "address", name: "input", type: "address" }, { internalType: "address", name: "", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "bytes", name: "data", type: "bytes" }, ], name: "swap", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "int256", name: "amount0Delta", type: "int256" }, { internalType: "int256", name: "amount1Delta", type: "int256" }, { internalType: "bytes", name: "", type: "bytes" }, ], name: "uniswapV3SwapCallback", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "address", name: "input", type: "address" }, { internalType: "address", name: "output", type: "address" }, { internalType: "uint256", name: "amountIn", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" }, ], name: "getOutputAmount", outputs: [{ internalType: "uint256", name: "amountOut", type: "uint256" }], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "contract IUniswapV3Pool", name: "pool", type: "address", }, { internalType: "int16", name: "maxLoopN", type: "int16" }, ], name: "getPoolTicks", outputs: [ { internalType: "uint160", name: "sqrtPriceX96", type: "uint160" }, { internalType: "int24", name: "tick", type: "int24" }, { internalType: "uint128", name: "liquidity", type: "uint128" }, { components: [ { internalType: "int24", name: "tick", type: "int24" }, { internalType: "int128", name: "liquidityNet", type: "int128" }, { internalType: "uint128", name: "liquidityGross", type: "uint128" }, ], internalType: "struct TickLens.PopulatedTick[]", name: "populatedTicks0", type: "tuple[]", }, { components: [ { internalType: "int24", name: "tick", type: "int24" }, { internalType: "int128", name: "liquidityNet", type: "int128" }, { internalType: "uint128", name: "liquidityGross", type: "uint128" }, ], internalType: "struct TickLens.PopulatedTick[]", name: "populatedTicks1", type: "tuple[]", }, { components: [ { internalType: "int24", name: "tick", type: "int24" }, { internalType: "int128", name: "liquidityNet", type: "int128" }, { internalType: "uint128", name: "liquidityGross", type: "uint128" }, ], internalType: "struct TickLens.PopulatedTick[]", name: "populatedTicks2", type: "tuple[]", }, { components: [ { internalType: "int24", name: "tick", type: "int24" }, { internalType: "int128", name: "liquidityNet", type: "int128" }, { internalType: "uint128", name: "liquidityGross", type: "uint128" }, ], internalType: "struct TickLens.PopulatedTick[]", name: "populatedTicks3", type: "tuple[]", }, { components: [ { internalType: "int24", name: "tick", type: "int24" }, { internalType: "int128", name: "liquidityNet", type: "int128" }, { internalType: "uint128", name: "liquidityGross", type: "uint128" }, ], internalType: "struct TickLens.PopulatedTick[]", name: "populatedTicks4", type: "tuple[]", }, ], stateMutability: "view", type: "function", }, ]; export function newPairUniswapV3(web3: Web3, address: string): PairUniswapV3 { return new web3.eth.Contract(ABI, address) as any; }