import { PublicKey } from "@solana/web3.js"; import BN from "bn.js"; export { u8, s8 as i8, u16, s16 as i16, u32, s32 as i32, f32, f64, struct, } from "buffer-layout"; export interface Layout { span: number; property?: string; decode(b: Buffer, offset?: number): T; encode(src: T, b: Buffer, offset?: number): number; getSpan(b: Buffer, offset?: number): number; replicate(name: string): this; } export declare function u64(property?: string): Layout; export declare function i64(property?: string): Layout; export declare function u128(property?: string): Layout; export declare function i128(property?: string): Layout; export declare function u256(property?: string): Layout; export declare function i256(property?: string): Layout; export declare function publicKey(property?: string): Layout; export declare function option(layout: Layout, property?: string): Layout; export declare function bool(property?: string): Layout; export declare function vec(elementLayout: Layout, property?: string): Layout; export declare function tagged(tag: BN, layout: Layout, property?: string): Layout; export declare function vecU8(property?: string): Layout; export declare function str(property?: string): Layout; export interface EnumLayout extends Layout { registry: Record>; } export declare function rustEnum(variants: Layout[], property?: string, discriminant?: Layout): EnumLayout; export declare function array(elementLayout: Layout, length: number, property?: string): Layout; export declare function map(keyLayout: Layout, valueLayout: Layout, property?: string): Layout>; //# sourceMappingURL=index.d.ts.map