UNPKG

@flaunch/sdk

Version:

Flaunch SDK to easily interact with the Flaunch protocol

53 lines 2.32 kB
import { Address, Hex } from "viem"; import { FlaunchVersion } from "../types"; /** * Backend class for interacting with Flaunch protocol for generating hookData with signature for swaps. * Doesn't require any publicClient or walletClient to be initialized. */ export declare class FlaunchBackend { signerPrivateKey: Hex; readonly chainId: number; constructor(signerPrivateKey: Hex, chainId: number); /** * Generates the hookData for swaps when TrustedSigner is enabled for a coin during fair launch * * @param userWallet - The wallet address to generate a signature for * @param coinAddress - The address of the coin to generate a signature for * @param deadlineFromNowInSeconds - The deadline from now in seconds * @param version - The version to get the position manager address for, defaults to the latest version if undefined * @param referrer - (optional) The referrer address for the swap * @return The hookData, deadline and signature */ generateHookDataWithSignature({ userWallet, coinAddress, deadlineFromNowInSeconds, version, referrer, }: { userWallet: Address; coinAddress: Address; deadlineFromNowInSeconds: number; version?: FlaunchVersion; referrer?: Address; }): Promise<{ hookData: Hex; deadline: number; signature: Hex; }>; /** * Gets the position manager address for a given version * @param version - The version to get the position manager address for, defaults to the latest version if undefined */ getPositionManagerAddress(version?: FlaunchVersion): `0x${string}`; } /** * Generates a signature for a given wallet, poolId, deadline and private key. * * @param userWallet The wallet address to generate a signature for * @param poolId The pool id that this signature is valid for (as hex string) * @param deadline The deadline for the signature * @param privateKey The private key to use to generate the signature (as hex string) * @return The encoded signature as hex string */ export declare const generateSignatureRaw: ({ userWallet, poolId, deadline, privateKey, }: { userWallet: Address; poolId: Hex; deadline: bigint; privateKey: Hex; }) => Promise<Hex>; //# sourceMappingURL=FlaunchBackend.d.ts.map