import BigNumber from 'bignumber.js'; import { UniqueIdentifiers } from '../../../../api/entities/Account'; import { MultiSigProposal } from '../../../../api/entities/MultiSigProposal'; import { Account, Context, Identity } from '../../../../internal'; import { HistoricalMultiSigProposal, ModifyMultiSigParams, MultiSigDetails, NoArgsProcedureMethod, ProcedureMethod, ResultSet, SetMultiSigAdminParams } from '../../../../types'; /** * Represents a MultiSig Account. A MultiSig Account is composed of one or more signing Accounts. In order to submit a transaction, a specific amount of those signing Accounts must approve it first */ export declare class MultiSig extends Account { /** * @hidden */ constructor(identifiers: UniqueIdentifiers, context: Context); /** * Return details about this MultiSig such as the signing Accounts and the required number of signatures to execute a MultiSigProposal */ details(): Promise; /** * Given an ID, fetch a {@link MultiSigProposal} for this MultiSig * * @throws if the MultiSigProposal is not found */ getProposal(args: { id: BigNumber; }): Promise; /** * Return all active {@link MultiSigProposal | MultiSig Proposals} for this MultiSig Account */ getProposals(): Promise; /** * Return a set of {@link MultiSigProposal} for this MultiSig Account * * @note uses the middlewareV2 */ getHistoricalProposals(opts?: { size?: BigNumber; start?: BigNumber; }): Promise>; /** * Returns the Identity of the MultiSig admin. This Identity can add or remove signers directly without creating a MultiSigProposal first. */ getAdmin(): Promise; /** * Returns the payer for the MultiSig, if set the primary account of the identity will pay for any fees the MultiSig may incur */ getPayer(): Promise; /** * Modify the signers for the MultiSig. The signing Account must belong to the Identity of the creator of the MultiSig */ modify: ProcedureMethod, void>; /** * Set an admin for the MultiSig. When setting an admin it must be signed by one of the MultiSig signers and ran * as a proposal. When removing an admin it must be called by account belonging to the admin's identity */ setAdmin: ProcedureMethod; /** * A MultiSig's creator is initially responsible for any fees the MultiSig may incur. This method allows for the * MultiSig to pay for it's own fees. * * @note This method must be called by one of the MultiSig signer's or by the paying identity. */ removePayer: NoArgsProcedureMethod; } //# sourceMappingURL=index.d.ts.map