import Blocks from "./blocks"; import Chunks from "./chunks"; import type { ApiConfig } from "./lib/api"; import type { AugmentedCrypto } from "./lib/crypto/crypto-augment"; import type CryptoInterface from "./lib/crypto/crypto-interface"; import { DeepHash } from "./lib/deepHash"; import FallbackApi from "./lib/fallbackApi"; import Merkle from "./lib/merkle"; import type { Tag } from "./lib/transaction"; import Transaction from "./lib/transaction"; import * as ArweaveUtils from "./lib/utils"; import type { JWKInterface } from "./lib/wallet"; import Network from "./network"; import Transactions from "./transactions"; import Wallets from "./wallets"; export type CreateTransactionInterface = { format: number; last_tx: string; owner: string; tags: Tag[]; target: string; quantity: string; data: string | Uint8Array | ArrayBuffer; data_size: string; data_root: string; reward: string; }; export type AbstractConfig = { gateways?: URL | string | ApiConfig | ApiConfig[] | string[] | URL[]; crypto?: CryptoInterface; miners?: ApiConfig[] | string[] | URL[]; }; export declare abstract class Arweave { protected config: AbstractConfig; api: FallbackApi; wallets: Wallets; transactions: Transactions; network: Network; blocks: Blocks; chunks: Chunks; static init: (apiConfig: ApiConfig) => Arweave; static utils: typeof ArweaveUtils; crypto: AugmentedCrypto; protected deepHash: DeepHash; merkle: Merkle; static VERSION: string; constructor(config: AbstractConfig); get utils(): typeof ArweaveUtils; getConfig(): AbstractConfig; createTransaction(attributes: Partial, jwk?: JWKInterface | "use_wallet"): Promise; } export default Arweave;