/// import { PublicKey } from '@solana/web3.js'; import BN from 'bn.js'; import { blob, Layout, Structure as _Structure, UInt } from './buffer-layout'; export * from './buffer-layout'; export { blob }; export declare class BNLayout

extends Layout { blob: Layout; signed: boolean; constructor(span: number, signed: boolean, property?: P); /** @override */ decode(b: Buffer, offset?: number): BN; /** @override */ encode(src: BN, b: Buffer, offset?: number): number; } export declare function u8

(property?: P): UInt; export declare function u32

(property?: P): UInt; export declare function u64

(property?: P): BNLayout

; export declare function u128

(property?: P): BNLayout

; export declare class WrappedLayout extends Layout { layout: Layout; decoder: (data: T) => U; encoder: (src: U) => T; constructor(layout: Layout, decoder: (data: T) => U, encoder: (src: U) => T, property?: P); decode(b: Buffer, offset?: number): U; encode(src: U, b: Buffer, offset?: number): number; getSpan(b: Buffer, offset?: number): number; } export declare function publicKey

(property?: P): Layout; export declare class Structure extends _Structure { /** @override */ decode(b: Buffer, offset?: number): D; } export declare function struct(fields: T, property?: P, decodePrefixes?: boolean): T extends Layout[] ? Structure, ''>]: Extract> extends Layout ? V : any; }> : any;