import { Blockhash } from '@solana/web3.js'; import { Optional } from './message'; export interface NotNestedObject { [x: string]: number | boolean | string | Date | null | undefined; } export declare type StrPubkey = string; export declare type BufferJSON = { type: 'Buffer'; data: number[]; }; export declare type SerializedTransactionInstruction = { data: BufferJSON; programId: StrPubkey; keys: { pubkey: StrPubkey; isSigner: boolean; isWritable: boolean; }[]; }; export declare type PublicKeyStr = string; export interface SerializedAccountMeta { pubkey: PublicKeyStr; isSigner: boolean; isWritable: boolean; } export interface SerializedTransaction { signatures: Array<{ signature: BufferJSON | null; publicKey: PublicKeyStr; }>; feePayer?: PublicKeyStr; instructions: Array; recentBlockhash?: Blockhash; lastValidBlockHeight?: number; nonceInfo: Optional<{ nonce: Blockhash; nonceInstruction: SerializedTransactionInstruction; }>; } export interface SerializedSigner { publicKey: PublicKeyStr; secretKey: BufferJSON; }