hermes-v2-sdk
Version:
⚒️ An SDK for building applications on top of Hermes V2
55 lines (54 loc) • 2.54 kB
TypeScript
import { Interface } from '@ethersproject/abi';
import { MethodParameters } from 'maia-core-sdk';
import { AddLiquidityOptions, CollectOptions, RemoveLiquidityOptions, SafeTransferOptions } from '../../types/nonfungiblePositionManager';
import { Pool } from '../pool';
import { Position } from '../position';
export declare abstract class NonfungiblePositionManager {
static readonly INTERFACE: Interface;
/**
* Encodes the parameters for the creation of a new uni v3 pool.
* @param pool pool to create
* @returns the calldata for the tx
* // TODO improve function naming
*/
private static encodeCreate;
/**
* Creates the necessary params to execute the creation of a new uni v3 pool
* @param pool pool details to create
* @returns calldata & value for the tx execution
* // TODO improve function naming
*/
static createCallParameters(pool: Pool): MethodParameters;
/**
* Creates the native add liquidity call parameters for adding liquidity to a uni v3 position
* @param position holds the position details we want to create/add to
* @param options holds the options for the add liquidity call
* // TODO improve function naming
* @returns
*/
static addCallParameters(position: Position, options: AddLiquidityOptions): MethodParameters;
/**
* Creates the native collect calldata for collection fees from a uni v3 position
* @param options holds the options for the collect call
* @returns
*/
private static encodeCollect;
/**
* Produces the on chain calldata to perform a collect operation
* @param options holds the options for the collect liquidity call
* @returns
* // TODO improve function naming
*/
static collectCallParameters(options: CollectOptions): MethodParameters;
/**
* Produces the native uni v3 calldata for completely or partially exiting a position
* @param position The position to exit
* @param options Additional information necessary for generating the calldata
* @returns The call parameters
* // TODO improve function naming
*/
static removeCallParameters(position: Position, options: RemoveLiquidityOptions): MethodParameters;
private static encodeSafeTransferFrom;
static safeTransferFromParameters(options: SafeTransferOptions): MethodParameters;
static safeTransferFromMultipleParameters(options: SafeTransferOptions[]): MethodParameters;
}