import { TransactionConfig } from "web3-core"; import { BaseMultisigProxy, MultisigProxyTransaction } from "../../multisig/basemultisigproxy"; import { Contract as IContract } from "../../interfaces/contract"; import { EthApi } from "@joincivil/ethapi"; import { EthAddress } from "../../../types"; export declare class NewsroomMultisigProxy extends BaseMultisigProxy { /** * Creates a multisig wrapper around a contract * @param ethApi Web3 API * @param instance Contract we are wrapping * @param multisigAddress (optional) Address of multisig wallet - if not supplied, will check if contract is owned by a * multisig wallet and use that instead */ static create(ethApi: EthApi, instance: IContract, multisigAddress?: EthAddress): Promise; /** * Creates a wrapper around a contract with identical API to multisig wrapper, but all transactions are passed directly * to contract. Essentially just a helper for when we know multisig isn't needed and want a synchronous call. * @param ethApi Web3 API * @param instance Contract we are wrapping */ static createNonMultisig(ethApi: EthApi, instance: IContract): NewsroomMultisigProxy; renounceOwnership: { sendTransactionAsync(txData?: TransactionConfig): Promise; }; transferOwnership: { sendTransactionAsync(_newOwner: string, txData?: TransactionConfig): Promise; }; setName: { sendTransactionAsync(newName: string, txData?: TransactionConfig): Promise; }; addRole: { sendTransactionAsync(who: string, role: string, txData?: TransactionConfig): Promise; }; addEditor: { sendTransactionAsync(who: string, txData?: TransactionConfig): Promise; }; removeRole: { sendTransactionAsync(who: string, role: string, txData?: TransactionConfig): Promise; }; publishContent: { sendTransactionAsync(contentUri: string, contentHash: string, author: string, signature: string, txData?: TransactionConfig): Promise; }; updateRevision: { sendTransactionAsync(contentId: string, contentUri: string, contentHash: string, signature: string, txData?: TransactionConfig): Promise; }; signRevision: { sendTransactionAsync(contentId: string, revisionId: string, author: string, signature: string, txData?: TransactionConfig): Promise; }; private constructor(); }