import '@irys/upload-core/hack'; import { Irys, type CreateAndUploadOptions, type IrysConfig, type Network, type UploadResponse } from '@irys/upload-core'; import type { NodeToken } from './types'; import NodeUploader from './upload'; import { Resolvable } from './builder'; export declare class BaseNodeIrys extends Irys { uploader: NodeUploader; tokenConfig: NodeToken; getTokenConfig: (irys: BaseNodeIrys) => Resolvable; /** * Constructs a new Irys instance, as well as supporting subclasses * @param url - URL to the bundler * @param key - private key (in whatever form required) */ constructor({ url, config, getTokenConfig, }: { url?: string | Network; config?: IrysConfig; getTokenConfig: (irys: BaseNodeIrys) => Resolvable; }); build({ wallet, config, }: { wallet?: any; config?: IrysConfig; }): Promise; /** * Upload a file at the specified path to the bundler * @param path path to the file to upload * @returns bundler response */ uploadFile(path: string, opts?: CreateAndUploadOptions): Promise; /** * @param path - path to the folder to be uploaded * @param indexFile - path to the index file (i.e index.html) * @param batchSize - number of items to upload concurrently * @param interactivePreflight - whether to interactively prompt the user for confirmation of upload (CLI ONLY) * @param keepDeleted - Whether to keep previously uploaded (but now deleted) files in the manifest * @param logFunction - for handling logging from the uploader for UX * @param manifestTags - For allowing the caller to pass tags that will be added to the manifest transaction. * @returns */ uploadFolder(path: string, { batchSize, keepDeleted, indexFile, interactivePreflight, logFunction, manifestTags, itemOptions, }?: { batchSize?: number; keepDeleted?: boolean; indexFile?: string; interactivePreflight?: boolean; logFunction?: (log: string) => Promise; manifestTags?: { name: string; value: string; }[]; itemOptions?: CreateAndUploadOptions; }): Promise; } export default BaseNodeIrys;