import { type Cell } from '@ton/core'; import { type BytesLike } from 'ethers'; import { type EVMExtraArgsV2, type ExtraArgs, type SVMExtraArgsV1, type SuiExtraArgsV1 } from '../extra-args.ts'; /** * Encodes extraArgs as a Cell. * * Supports three formats based on the destination chain: * - GenericExtraArgsV2 (EVMExtraArgsV2) for EVM/TON/Aptos destinations * - SVMExtraArgsV1 for Solana destinations * - SuiExtraArgsV1 for Sui destinations * * @param extraArgs - Extra arguments for CCIP message * @returns Cell encoding the extra arguments * @throws {@link CCIPExtraArgsInvalidError} if extraArgs format is invalid */ export declare function encodeExtraArgsCell(extraArgs: ExtraArgs): Cell; /** * Decodes extraArgs from a BytesLike value in the legacy EVM/TON format (EVMExtraArgsV2). * Returns undefined if the format is invalid or does not match EVMExtraArgsV2. */ export declare function decodeLegacyEVMTONExtraArgs(extraArgs: BytesLike): (EVMExtraArgsV2 & { _tag: 'EVMExtraArgsV2'; }) | undefined; /** * Decodes extraArgs from a TON Cell. * Returns undefined if the format is invalid or does not match any known extraArgs format. */ export declare function decodeTONExtraArgsCell(cell: Cell): (EVMExtraArgsV2 & { _tag: 'EVMExtraArgsV2'; }) | (SVMExtraArgsV1 & { _tag: 'SVMExtraArgsV1'; }) | (SuiExtraArgsV1 & { _tag: 'SuiExtraArgsV1'; }) | undefined; //# sourceMappingURL=extra-args.d.ts.map