import { ccc, Transaction, Signer } from "@ckb-ccc/core"; import { BasePublishOptions, BaseAppendOptions, CKBFSCellOptions } from "./shared"; /** * V1 and V2 CKBFS transaction utilities */ /** * Options for publishing a file to CKBFS (V1/V2) */ export interface PublishOptions extends BasePublishOptions { } /** * Options for appending content to a CKBFS file (V1/V2) */ export interface AppendOptions extends BaseAppendOptions { } /** * Creates a CKBFS cell * @param options Options for creating the CKBFS cell * @returns The created cell output */ export declare function createCKBFSCell(options: CKBFSCellOptions): { lock: ccc.Script; type: ccc.Script; capacity: bigint; }; /** * Prepares a transaction for publishing a file to CKBFS without fee and change handling * You will need to manually set the typeID if you did not provide inputs, or just check is return value emptyTypeID is true * @param options Options for publishing the file * @returns Promise resolving to the prepared transaction and the output index of CKBFS Cell */ export declare function preparePublishTransaction(options: PublishOptions): Promise<{ tx: Transaction; outputIndex: number; emptyTypeID: boolean; }>; /** * Creates a transaction for publishing a file to CKBFS * @param signer The signer to use for the transaction * @param options Options for publishing the file * @returns Promise resolving to the created transaction */ export declare function createPublishTransaction(signer: Signer, options: PublishOptions): Promise; /** * Prepares a transaction for appending content to a CKBFS file without fee and change handling * @param options Options for appending content * @returns Promise resolving to the prepared transaction and the output index of CKBFS Cell */ export declare function prepareAppendTransaction(options: AppendOptions): Promise<{ tx: Transaction; outputIndex: number; }>; /** * Creates a transaction for appending content to a CKBFS file * @param signer The signer to use for the transaction * @param options Options for appending content * @returns Promise resolving to the created transaction */ export declare function createAppendTransaction(signer: Signer, options: AppendOptions): Promise; /** * Creates a complete transaction for publishing a file to CKBFS * @param signer The signer to use for the transaction * @param options Options for publishing the file * @returns Promise resolving to the signed transaction */ export declare function publishCKBFS(signer: Signer, options: PublishOptions): Promise; /** * Creates a transaction for appending content to a CKBFS file (dry run without fee completion) * @param signer The signer to use for the transaction * @param options Options for appending content * @returns Promise resolving to the created transaction */ export declare function createAppendTransactionDry(signer: Signer, options: AppendOptions): Promise; /** * Creates a complete transaction for appending content to a CKBFS file * @param signer The signer to use for the transaction * @param options Options for appending content * @returns Promise resolving to the signed transaction */ export declare function appendCKBFS(signer: Signer, options: AppendOptions): Promise;