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:83
authorizations
• authorizations: Authorizations
<Account
>
Inherited from
Defined in
api/entities/Account/index.ts:92
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:89
subsidies
• subsidies: Subsidies
Inherited from
Defined in
api/entities/Account/index.ts:93
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:374
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:59
exists
▸ exists(): Promise
<boolean
>
Determine whether this Account exists on chain
Returns
Promise
<boolean
>
Inherited from
Defined in
api/entities/Account/index.ts:457
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:116
▸ getBalance(callback
): Promise
<UnsubCallback
>
Parameters
Name | Type |
---|---|
callback | SubCallback <Balance > |
Returns
Promise
<UnsubCallback
>
Inherited from
Defined in
api/entities/Account/index.ts:117
getCreator
▸ getCreator(): Promise
<Identity
>
Returns the Identity of the MultiSig creator. This Identity can add or remove signers directly without creating a MultiSigProposal first.
Returns
Promise
<Identity
>
Defined in
api/entities/Account/MultiSig/index.ts:199
getCurrentNonce
▸ getCurrentNonce(): Promise
<BigNumber
>
Retrieve the current nonce for this Account
Returns
Promise
<BigNumber
>
Inherited from
Defined in
api/entities/Account/index.ts:471
getHistoricalProposals
▸ getHistoricalProposals(opts?
): Promise
<ResultSet
<MultiSigProposal
>>
Return a set of MultiSigProposal for this MultiSig Account
Parameters
Name | Type |
---|---|
opts? | Object |
opts.size? | BigNumber |
opts.start? | BigNumber |
Returns
Promise
<ResultSet
<MultiSigProposal
>>
Note
uses the middlewareV2
Defined in
api/entities/Account/MultiSig/index.ts:165
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:161
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:429
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:589
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:573
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:334
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:555
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:94
getProposals
▸ getProposals(): Promise
<MultiSigProposal
[]>
Return all active MultiSigProposal for this MultiSig Account
Returns
Promise
<MultiSigProposal
[]>
Defined in
api/entities/Account/MultiSig/index.ts:114
getSubsidy
▸ getSubsidy(): Promise
<null
| SubsidyWithAllowance
>
Get the subsidized balance of this Account and the subsidizer Account. If this Account isn't being subsidized, return null
Returns
Promise
<null
| SubsidyWithAllowance
>
Note
can be subscribed to, if connected to node using a web socket
Deprecated
in favour of subsidies.getSubsidizer
Inherited from
Defined in
api/entities/Account/index.ts:141
▸ getSubsidy(callback
): Promise
<UnsubCallback
>
Parameters
Name | Type |
---|---|
callback | SubCallback <null | SubsidyWithAllowance > |
Returns
Promise
<UnsubCallback
>
Inherited from
Defined in
api/entities/Account/index.ts:142
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:197
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:492
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:313
joinCreator
▸ joinCreator(args?
, opts?
): Promise
<GenericPolymeshTransaction
<void
, void
>>
Attach a MultiSig directly to the creator's identity. This method bypasses the usual authorization step to join an identity
Parameters
Name | Type |
---|---|
args? | JoinCreatorParams |
opts? | ProcedureOpts |
Returns
Promise
<GenericPolymeshTransaction
<void
, void
>>
Note
the caller should be the MultiSig creator's primary key
Note
To attach the MultiSig to an identity other than the creator's, inviteAccount can be used instead. The MultiSig will then need to accept the created authorization
Note
this method is of type OptionalArgsProcedureMethod, which means you can call joinCreator.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:244
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:230
toHuman
▸ toHuman(): string
Return the Account's address
Returns
string
Inherited from
Defined in
api/entities/Account/index.ts:464
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