Skip to main content

Class: MetaTxCreator<C, M, E, MD>

An umbrella API for all kinds of transactions

The MetaTxCreator allows for a simple API to cover all the different cases of transactions within the Colony Network. The MetaTxCreator supports sending a standard transaction (MetaTxCreator.tx) as well as metatransactions (MetaTxCreator.metaTx).

Create a standard transaction ("force" in dApp)

Learn more about these functions in their individual documentation

Type parameters

NameType
Cextends MetaTxBaseContract
Mextends keyof C["functions"]
Eextends EventData
MDextends MetadataType

Hierarchy

Constructors

constructor

new MetaTxCreator<C, M, E, MD>(__namedParameters)

Type parameters

NameType
Cextends MetaTxBaseContract
Mextends string | number | symbol
Eextends EventData
MDextends MetadataType

Parameters

NameType
__namedParametersObject
__namedParameters.argsunknown[] | () => Promise<unknown[]>
__namedParameters.colonyNetworkColonyNetwork
__namedParameters.contractC
__namedParameters.eventData?(receipt: ContractReceipt) => Promise<E>
__namedParameters.metadataType?MD
__namedParameters.methodM
__namedParameters.txConfig?TxConfig<MD>

Inherited from

TxCreator.constructor

Methods

metaTx

metaTx(): Promise<[E, ParsedLogTransactionReceipt, () => Promise<ReturnType<{ None: () => void ; annotation: (res: string) => string = getAnnotationMsgFromResponse; colony: (res: string) => ColonyMetadata = getColonyMetadataFromResponse; decision: (res: string) => DecisionMetadata = getDecisionDetailsFromResponse; domain: (res: string) => DomainMetadata = getDomainMetadataFromResponse; misc: (res: string) => MiscMetadata = getMiscDataFromResponse }[MD]>>] | [E, ParsedLogTransactionReceipt]>

Forces an action using a gasless metatransaction

Remarks

The user sending this transaction has to have the appropriate permissions to do so. Learn more about permissions in Colony here.

Returns

Promise<[E, ParsedLogTransactionReceipt, () => Promise<ReturnType<{ None: () => void ; annotation: (res: string) => string = getAnnotationMsgFromResponse; colony: (res: string) => ColonyMetadata = getColonyMetadataFromResponse; decision: (res: string) => DecisionMetadata = getDecisionDetailsFromResponse; domain: (res: string) => DomainMetadata = getDomainMetadataFromResponse; misc: (res: string) => MiscMetadata = getMiscDataFromResponse }[MD]>>] | [E, ParsedLogTransactionReceipt]>

A tupel of event data and contract receipt (and a function to retrieve metadata if applicable)


tx

tx(): Promise<[E, ContractReceipt, () => Promise<ReturnType<{ None: () => void ; annotation: (res: string) => string = getAnnotationMsgFromResponse; colony: (res: string) => ColonyMetadata = getColonyMetadataFromResponse; decision: (res: string) => DecisionMetadata = getDecisionDetailsFromResponse; domain: (res: string) => DomainMetadata = getDomainMetadataFromResponse; misc: (res: string) => MiscMetadata = getMiscDataFromResponse }[MD]>>] | [E, ContractReceipt]>

Create a standard transaction ("force" in dApp)

Remarks

The user sending this transaction has to have the appropriate permissions to do so. Learn more about permissions in Colony here.

Returns

Promise<[E, ContractReceipt, () => Promise<ReturnType<{ None: () => void ; annotation: (res: string) => string = getAnnotationMsgFromResponse; colony: (res: string) => ColonyMetadata = getColonyMetadataFromResponse; decision: (res: string) => DecisionMetadata = getDecisionDetailsFromResponse; domain: (res: string) => DomainMetadata = getDomainMetadataFromResponse; misc: (res: string) => MiscMetadata = getMiscDataFromResponse }[MD]>>] | [E, ContractReceipt]>

A tupel of event data and contract receipt (and a function to retrieve metadata if applicable)

Inherited from

TxCreator.tx