UNPKG

irys-complete-toolkit

Version:

Complete Irys SDK toolkit supporting all chains, tokens, and features

98 lines (97 loc) 2.69 kB
/** * Irys Web SDK Toolkit * Comprehensive SDK for browser-based Irys operations */ import { WebSDKConfig, IrysReceipt, UploadOptions, CreateApprovalOptions, BalanceApproval, DataInput } from '../types'; export declare class IrysWebSDK { private uploader; private config; constructor(config: WebSDKConfig); private validateConfig; /** * Initialize the web uploader with the specified token and provider */ initialize(): Promise<void>; private initializeEVM; private initializeSolana; private initializeAptos; /** * Get the wallet address */ get address(): string; /** * Get current token */ get token(): string; /** * Get account balance */ getBalance(): Promise<string>; /** * Fund the account */ fund(amount: string | number): Promise<any>; /** * Get upload price for data size */ getPrice(bytes: number): Promise<string>; /** * Upload data to Irys */ upload(data: DataInput, options?: UploadOptions): Promise<IrysReceipt>; /** * Upload a file (browser File object) */ uploadFile(file: File, options?: UploadOptions): Promise<IrysReceipt>; /** * Upload multiple files */ uploadFiles(files: File[], options?: UploadOptions): Promise<IrysReceipt[]>; /** * Create a balance approval */ createApproval(options: CreateApprovalOptions): Promise<IrysReceipt>; /** * Revoke a balance approval */ revokeApproval(approvedAddress: string): Promise<IrysReceipt>; /** * Get balance approvals */ getApprovals(payingAddresses?: string[]): Promise<BalanceApproval[]>; /** * Get created approvals */ getCreatedApprovals(approvedAddresses?: string[]): Promise<BalanceApproval[]>; /** * Create a mutable reference */ createMutableReference(data: DataInput, options?: UploadOptions): Promise<{ receipt: IrysReceipt; url: string; }>; /** * Update a mutable reference */ updateMutableReference(rootTxId: string, data: DataInput, options?: UploadOptions): Promise<IrysReceipt>; /** * Upload NFT metadata */ uploadNFTMetadata(metadata: any, options?: UploadOptions): Promise<IrysReceipt>; /** * Utility function to get data size */ private getDataSize; /** * Check if provider is connected */ isConnected(): Promise<boolean>; /** * Request wallet connection (for applicable providers) */ connect(): Promise<void>; /** * Disconnect wallet (for applicable providers) */ disconnect(): Promise<void>; }