import Arweave from 'arweave'; import { Warp } from 'warp-contracts'; import { ArweaveSigner } from 'warp-arbundles'; import { InjectedArweaveSigner } from 'warp-contracts-plugin-deploy'; import { ArtByCityConfig } from '../config'; import { ArtByCityFollowing, FollowingCreationOptions } from './'; export default class AuthenticatedArtByCityFollowing extends ArtByCityFollowing { protected readonly arweave: Arweave; protected readonly warp: Warp; protected readonly config: ArtByCityConfig; private readonly signer; constructor(arweave: Arweave, warp: Warp, config: ArtByCityConfig, signer: ArweaveSigner | InjectedArweaveSigner); getOrCreate(): Promise; create(opts?: FollowingCreationOptions): Promise; follow(address: string): Promise; unfollow(address: string): Promise; }