import { PublicKey } from "@solana/web3.js"; import BN from "bn.js"; import * as types from "../types"; export interface HeaderFields { sender: types.ForeignAddrFields; id: BN; inputTokens: Array; outputTokens: Array; operation: types.RaydiumOpCodeKind; recipient: PublicKey | null; } export interface HeaderJSON { sender: types.ForeignAddrJSON; id: string; inputTokens: Array; outputTokens: Array; operation: types.RaydiumOpCodeJSON; recipient: string | null; } export declare class Header { readonly sender: types.ForeignAddr; readonly id: BN; readonly inputTokens: Array; readonly outputTokens: Array; readonly operation: types.RaydiumOpCodeKind; readonly recipient: PublicKey | null; constructor(fields: HeaderFields); static layout(property?: string): any; static fromDecoded(obj: any): types.Header; static toEncodable(fields: HeaderFields): { sender: { inner: number[]; }; id: BN; inputTokens: { address: { inner: number[]; }; chainId: number; }[]; outputTokens: { address: { inner: number[]; }; chainId: number; }[]; operation: { Swap: { fields: { minAmtOut: BN; }; }; } | { Abort: {}; }; recipient: PublicKey | null; }; toJSON(): HeaderJSON; static fromJSON(obj: HeaderJSON): Header; toEncodable(): { sender: { inner: number[]; }; id: BN; inputTokens: { address: { inner: number[]; }; chainId: number; }[]; outputTokens: { address: { inner: number[]; }; chainId: number; }[]; operation: { Swap: { fields: { minAmtOut: BN; }; }; } | { Abort: {}; }; recipient: PublicKey | null; }; }