import { molecule, number } from "@ckb-lumos/codec"; import { ProtocolVersionType } from "./constants"; /** * Molecule definitions for CKBFS data structures. */ export declare const Indexes: molecule.ArrayLayoutCodec>; export declare const BackLinkV1: molecule.ObjectLayoutCodec<{ index: import("@ckb-lumos/codec/lib/base").FixedBytesCodec; checksum: import("@ckb-lumos/codec/lib/base").FixedBytesCodec; txHash: import("@ckb-lumos/codec/lib/base").FixedBytesCodec; }>; export declare const BackLinkV2: molecule.ObjectLayoutCodec<{ indexes: molecule.ArrayLayoutCodec>; checksum: import("@ckb-lumos/codec/lib/base").FixedBytesCodec; txHash: import("@ckb-lumos/codec/lib/base").FixedBytesCodec; }>; export declare const BackLinksV1: molecule.ArrayLayoutCodec; checksum: import("@ckb-lumos/codec/lib/base").FixedBytesCodec; txHash: import("@ckb-lumos/codec/lib/base").FixedBytesCodec; }>>; export declare const BackLinksV2: molecule.ArrayLayoutCodec>; checksum: import("@ckb-lumos/codec/lib/base").FixedBytesCodec; txHash: import("@ckb-lumos/codec/lib/base").FixedBytesCodec; }>>; export declare const CKBFSDataV1: molecule.ObjectLayoutCodec<{ index: import("@ckb-lumos/codec/lib/base").FixedBytesCodec; checksum: import("@ckb-lumos/codec/lib/base").FixedBytesCodec; contentType: import("@ckb-lumos/codec/lib/base").BytesCodec; filename: import("@ckb-lumos/codec/lib/base").BytesCodec; backLinks: molecule.ArrayLayoutCodec; checksum: import("@ckb-lumos/codec/lib/base").FixedBytesCodec; txHash: import("@ckb-lumos/codec/lib/base").FixedBytesCodec; }>>; }>; export declare const CKBFSDataV2: molecule.ObjectLayoutCodec<{ indexes: molecule.ArrayLayoutCodec>; checksum: import("@ckb-lumos/codec/lib/base").FixedBytesCodec; contentType: import("@ckb-lumos/codec/lib/base").BytesCodec; filename: import("@ckb-lumos/codec/lib/base").BytesCodec; backLinks: molecule.ArrayLayoutCodec>; checksum: import("@ckb-lumos/codec/lib/base").FixedBytesCodec; txHash: import("@ckb-lumos/codec/lib/base").FixedBytesCodec; }>>; }>; export declare const CKBFSDataV3: molecule.ObjectLayoutCodec<{ index: import("@ckb-lumos/codec/lib/base").FixedBytesCodec; checksum: import("@ckb-lumos/codec/lib/base").FixedBytesCodec; contentType: import("@ckb-lumos/codec/lib/base").BytesCodec; filename: import("@ckb-lumos/codec/lib/base").BytesCodec; }>; export type BackLinkTypeV1 = { index: number; checksum: number; txHash: string; }; export type BackLinkTypeV2 = { indexes: number[]; checksum: number; txHash: string; }; export type BackLinkType = { index?: number; indexes?: number[]; checksum: number; txHash: string; }; export type CKBFSDataTypeV3 = { index: number; checksum: number; contentType: string; filename: string; }; export type CKBFSDataType = { index?: number; indexes?: number[]; checksum: number; contentType: string; filename: string; backLinks?: BackLinkType[]; }; export declare const CKBFSData: { pack: (data: CKBFSDataType, version?: ProtocolVersionType) => Uint8Array; unpack: (buf: Uint8Array, version?: ProtocolVersionType) => CKBFSDataType; }; export declare const CKBFS_HEADER: Uint8Array; export declare const CKBFS_HEADER_STRING = "CKBFS";