import Arweave from 'arweave'; import { ArweaveSigner } from 'warp-arbundles'; import { InjectedArweaveSigner } from 'warp-contracts-plugin-deploy'; import ArFSClient from './arfs'; import TransactionsModule from '../common/transactions'; export default class AuthenticatedArFSClient extends ArFSClient { private readonly signer; protected readonly transactions: TransactionsModule; constructor(arweave: Arweave, signer: ArweaveSigner | InjectedArweaveSigner); getOrCreatePublicationRoot(address: string): Promise<{ driveId: string; folderId: string; }>; createDrive(name: string, setAsPublicationRoot?: boolean): Promise<{ driveId: string; driveTxId: string; rootFolderId: string; rootFolderTxId: string; }>; }