Class: MultiSig
api/entities/Account/MultiSig.MultiSig
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
Hierarchy
-
↳
MultiSig
Properties
address
• address: string
Polymesh-specific address of the Account. Serves as an identifier
Inherited from
Defined in
api/entities/Account/index.ts:88
authorizations
• authorizations: Authorizations
<Account
>
Inherited from
Defined in
api/entities/Account/index.ts:97
key
• key: string
A hex representation of the cryptographic public key of the Account. This is consistent across Substrate chains, while the address depends on the chain as well.
Inherited from
Defined in
api/entities/Account/index.ts:94
subsidies
• subsidies: Subsidies
Inherited from
Defined in
api/entities/Account/index.ts:98
uuid
• uuid: string
Inherited from
Defined in
Methods
checkPermissions
▸ checkPermissions(permissions
): Promise
<CheckPermissionsResult
<Account
>>
Check if this Account possesses certain Permissions to act on behalf of its corresponding Identity
Parameters
Name | Type |
---|---|
permissions | SimplePermissions |
Returns
Promise
<CheckPermissionsResult
<Account
>>
which permissions the Account is missing (if any) and the final result
Inherited from
Defined in
api/entities/Account/index.ts:367
details
▸ details(): Promise
<MultiSigDetails
>
Return details about this MultiSig such as the signing Accounts and the required number of signatures to execute a MultiSigProposal
Returns
Promise
<MultiSigDetails
>
Defined in
api/entities/Account/MultiSig/index.ts:79
exists
▸ exists(): Promise
<boolean
>
Determine whether this Account exists on chain
Returns
Promise
<boolean
>
Inherited from
Defined in
api/entities/Account/index.ts:450
getAdmin
▸ getAdmin(): Promise
<null
| Identity
>
Returns the Identity of the MultiSig admin. This Identity can add or remove signers directly without creating a MultiSigProposal first.
Returns
Promise
<null
| Identity
>
Defined in
api/entities/Account/MultiSig/index.ts:254
getBalance
▸ getBalance(): Promise
<Balance
>
Get the free/locked POLYX balance of the Account
Returns
Promise
<Balance
>
Note
can be subscribed to, if connected to node using a web socket
Inherited from
Defined in
api/entities/Account/index.ts:121
▸ getBalance(callback
): Promise
<UnsubCallback
>
Parameters
Name | Type |
---|---|
callback | SubCallback <Balance > |
Returns
Promise
<UnsubCallback
>
Inherited from
Defined in
api/entities/Account/index.ts:122
getCurrentNonce
▸ getCurrentNonce(): Promise
<BigNumber
>
Retrieve the current nonce for this Account
Returns
Promise
<BigNumber
>
Inherited from
Defined in
api/entities/Account/index.ts:464
getHistoricalProposals
▸ getHistoricalProposals(opts?
): Promise
<ResultSet
<HistoricalMultiSigProposal
>>
Return a set of MultiSigProposal for this MultiSig Account
Parameters
Name | Type |
---|---|
opts? | Object |
opts.size? | BigNumber |
opts.start? | BigNumber |
Returns
Promise
<ResultSet
<HistoricalMultiSigProposal
>>
Note
uses the middlewareV2
Defined in
api/entities/Account/MultiSig/index.ts:188
getIdentity
▸ getIdentity(): Promise
<null
| Identity
>
Retrieve the Identity associated to this Account (null if there is none)
Returns
Promise
<null
| Identity
>
Inherited from
Defined in
api/entities/Account/index.ts:141
getMultiSig
▸ getMultiSig(): Promise
<null
| MultiSig
>
Fetch the MultiSig this Account is part of. If this Account is not a signer on any MultiSig, return null
Returns
Promise
<null
| MultiSig
>
Inherited from
Defined in
api/entities/Account/index.ts:422
getNextAssetId
▸ getNextAssetId(): Promise
<string
>
Returns next assetID that will be generated for this Identity
Returns
Promise
<string
>
Inherited from
Defined in
api/entities/Account/index.ts:609
getOffChainReceipts
▸ getOffChainReceipts(): Promise
<BigNumber
[]>
Returns all off chain receipts used by this Account
Returns
Promise
<BigNumber
[]>
Inherited from
Defined in
api/entities/Account/index.ts:582
getPayer
▸ getPayer(): Promise
<null
| Identity
>
Returns the payer for the MultiSig, if set the primary account of the identity will pay for any fees the MultiSig may incur
Returns
Promise
<null
| Identity
>
Defined in
api/entities/Account/MultiSig/index.ts:280
getPendingProposals
▸ getPendingProposals(): Promise
<MultiSigProposal
[]>
Returns pending MultiSig proposals for this Account
Returns
Promise
<MultiSigProposal
[]>
Note
uses the middleware
Throws
if the Account is not a signer on any MultiSig
Inherited from
Defined in
api/entities/Account/index.ts:566
getPermissions
▸ getPermissions(): Promise
<Permissions
>
Retrieve the Permissions this Account has as a Permissioned Account for its corresponding Identity
Returns
Promise
<Permissions
>
Throws
if there is no Identity associated with the Account
Inherited from
Defined in
api/entities/Account/index.ts:314
getPolyxTransactions
▸ getPolyxTransactions(filters
): Promise
<ResultSet
<HistoricPolyxTransaction
>>
Returns POLYX transactions associated with this account
Parameters
Name | Type | Description |
---|---|---|
filters | Object | - |
filters.size? | BigNumber | page size |
filters.start? | BigNumber | page offset |
Returns
Promise
<ResultSet
<HistoricPolyxTransaction
>>
Note
uses the middleware
Inherited from
Defined in
api/entities/Account/index.ts:548
getProposal
▸ getProposal(args
): Promise
<MultiSigProposal
>
Given an ID, fetch a MultiSigProposal for this MultiSig
Parameters
Name | Type |
---|---|
args | Object |
args.id | BigNumber |
Returns
Promise
<MultiSigProposal
>
Throws
if the MultiSigProposal is not found
Defined in
api/entities/Account/MultiSig/index.ts:115
getProposals
▸ getProposals(): Promise
<MultiSigProposal
[]>
Return all active MultiSigProposal for this MultiSig Account
Returns
Promise
<MultiSigProposal
[]>
Defined in
api/entities/Account/MultiSig/index.ts:135
getTransactionHistory
▸ getTransactionHistory(filters?
): Promise
<ResultSet
<ExtrinsicData
>>
Retrieve a list of transactions signed by this Account. Can be filtered using parameters
Parameters
Name | Type | Description |
---|---|---|
filters | Object | - |
filters.blockHash? | string | - |
filters.blockNumber? | BigNumber | - |
filters.orderBy? | ExtrinsicsOrderBy | - |
filters.size? | BigNumber | page size |
filters.start? | BigNumber | page offset |
filters.success? | boolean | whether the transaction was successful or not |
filters.tag? | TxTag | tag associated with the transaction |
Returns
Promise
<ResultSet
<ExtrinsicData
>>
Note
if both blockNumber
and blockHash
are passed, only blockNumber
is taken into account.
Also, for ordering by block_id, one should pass ExtrinsicsOrderBy.CreatedAtAsc
or ExtrinsicsOrderBy.CreatedAtDesc
in order of their choice (since block ID is a string field in middleware v2)
Note
uses the middleware v2
Inherited from
Defined in
api/entities/Account/index.ts:177
getTypeInfo
▸ getTypeInfo(): Promise
<AccountTypeInfo
>
Retrieve the type of Account, and its relation to an Identity, if applicable
Returns
Promise
<AccountTypeInfo
>
Inherited from
Defined in
api/entities/Account/index.ts:485
isEqual
▸ isEqual(entity
): boolean
Determine whether this Entity is the same as another one
Parameters
Name | Type |
---|---|
entity | Entity <unknown , unknown > |
Returns
boolean
Inherited from
Defined in
isFrozen
▸ isFrozen(): Promise
<boolean
>
Check whether this Account is frozen. If frozen, it cannot perform any Identity related action until the primary Account of the Identity unfreezes all secondary Accounts
Returns
Promise
<boolean
>
Note
returns false if the Account isn't associated to any Identity
Inherited from
Defined in
api/entities/Account/index.ts:293
modify
▸ modify(args
, opts?
): Promise
<GenericPolymeshTransaction
<void
, void
>>
Modify the signers for the MultiSig. The signing Account must belong to the Identity of the creator of the MultiSig
Parameters
Name | Type |
---|---|
args | Pick <ModifyMultiSigParams , "signers" | "requiredSignatures" > |
opts? | ProcedureOpts |
Returns
Promise
<GenericPolymeshTransaction
<void
, void
>>
Note
this method is of type ProcedureMethod, which means you can call modify.checkAuthorization on it to see whether the signing Account and Identity have the required roles and permissions to run it
Defined in
api/entities/Account/MultiSig/index.ts:308
removePayer
▸ removePayer(opts?
): Promise
<GenericPolymeshTransaction
<void
, void
>>
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.
Parameters
Name | Type |
---|---|
opts? | ProcedureOpts |
Returns
Promise
<GenericPolymeshTransaction
<void
, void
>>
Note
This method must be called by one of the MultiSig signer's or by the paying identity.
Note
this method is of type NoArgsProcedureMethod, which means you can call removePayer.checkAuthorization on it to see whether the signing Account and Identity have the required roles and permissions to run it
Defined in
api/entities/Account/MultiSig/index.ts:332
setAdmin
▸ setAdmin(args
, opts?
): Promise
<GenericPolymeshTransaction
<void
, 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
Parameters
Name | Type |
---|---|
args | SetMultiSigAdminParams |
opts? | ProcedureOpts |
Returns
Promise
<GenericPolymeshTransaction
<void
, void
>>
Note
this method is of type ProcedureMethod, which means you can call setAdmin.checkAuthorization on it to see whether the signing Account and Identity have the required roles and permissions to run it
Defined in
api/entities/Account/MultiSig/index.ts:319
toHuman
▸ toHuman(): string
Return the Account's address
Returns
string
Inherited from
Defined in
api/entities/Account/index.ts:457
generateUuid
▸ Static
generateUuid<Identifiers
>(identifiers
): string
Generate the Entity's UUID from its identifying properties
Type parameters
Name |
---|
Identifiers |
Parameters
Name | Type |
---|---|
identifiers | Identifiers |
Returns
string
Inherited from
Defined in
unserialize
▸ Static
unserialize<Identifiers
>(serialized
): Identifiers
Unserialize a UUID into its Unique Identifiers
Type parameters
Name |
---|
Identifiers |
Parameters
Name | Type | Description |
---|---|---|
serialized | string | UUID to unserialize |
Returns
Identifiers