import { Buffer } from 'buffer'; import { Instruction } from './instruction.js'; import { BaseProgram } from './base-program.js'; import { EscrowAddressParams, ParsedCreateDstEscrowInstructionData } from './types.js'; import { Immutables, SolanaAddress } from '../../domains/index.js'; export declare class SvmDstEscrowFactory extends BaseProgram { static DEFAULT: SvmDstEscrowFactory; private static readonly coder; constructor(programId: SolanaAddress); static parseCreateEscrowInstruction(ix: Instruction): ParsedCreateDstEscrowInstructionData; static parsePrivateWithdrawInstruction(ix: Instruction): { secret: string; }; static parsePublicWithdrawInstruction(ix: Instruction): { secret: string; }; getEscrowAddress(params: EscrowAddressParams): SolanaAddress; createEscrow(params: Immutables, extra: { /** * TokenProgram or TokenProgram 2022 */ tokenProgramId: SolanaAddress; srcCancellationTimestamp: bigint; }): Instruction; withdrawPrivate(params: Immutables, secret: Buffer, extra: { /** * TokenProgram or TokenProgram 2022 */ tokenProgramId: SolanaAddress; }): Instruction; withdrawPublic(params: Immutables, secret: Buffer, payer: SolanaAddress, extra: { /** * If not passed, than `WhitelistContract.DEFAULT` will be used * @see WhitelistContract.DEFAULT */ whitelistProgramId?: SolanaAddress; /** * TokenProgram or TokenProgram 2022 */ tokenProgramId: SolanaAddress; }): Instruction; cancelPrivate(params: Immutables, extra: { /** * TokenProgram or TokenProgram 2022 */ tokenProgramId: SolanaAddress; }): Instruction; }