import { NearChain, NttTokenDef } from '@galacticcouncil/xc-core'; import { NearCall } from './types'; export declare class NearClaim { #private; constructor(chain: NearChain); /** * Redeem NTT transfer on NEAR. * * - Anyone may submit it, the tokens go to the account the vaa names * - The vaa names that account by its sha256 only, so it is passed in plain * and checked against the hash here * - A first time recipient is registered on the token out of the deposit, * the rest is refunded * * @param from - payer * @param vaaRaw - base64 encoded signed VAA (wormholescan raw format) * @param ntt - NTT token deployment on NEAR * @param recipient - account the vaa pays out to, the payer by default * @returns claim (complete) call */ redeem(from: string, vaaRaw: string, ntt: NttTokenDef, recipient?: string): NearCall; /** * Complete an inbound transfer queued by the contract rate limit. * * Callable by anyone once 24h passed since the transfer was redeemed * while the inbound limit was exhausted. * * @param from - claimer address * @param digest - queued transfer message digest * @param ntt - NTT token deployment on NEAR * @returns release inbound call */ completeInboundQueuedTransfer(from: string, digest: string, ntt: NttTokenDef): NearCall; /** * Pay out what failed pay outs credited the signer - an unlock or a refund * whose ft_transfer failed. * * @param from - account to pay out * @param ntt - NTT token deployment on NEAR * @returns claim call */ claim(from: string, ntt: NttTokenDef): NearCall; /** * Whether the contract already executed the transfer. * * - Replay is keyed by the ntt message digest, not the vaa hash * - A transfer queued by the rate limit reads as executed * * @param vaaRaw - base64 encoded signed VAA (wormholescan raw format) * @param ntt - NTT token deployment on NEAR */ isRedeemed(vaaRaw: string, ntt: NttTokenDef): Promise; }