@proto-kit/libraryDocs


Documentation / @proto-kit/library / TransactionFeeHook

Class: TransactionFeeHook

Transaction hook for deducting transaction fees from the sender’s balance.

Extends

Constructors

new TransactionFeeHook()

new TransactionFeeHook(runtime, balances): TransactionFeeHook

Parameters

runtime: Runtime<RuntimeModulesRecord>

balances: Balances

Returns

TransactionFeeHook

Overrides

ProvableTransactionHook.constructor

Defined in

packages/library/src/hooks/TransactionFeeHook.ts:55

Properties

balances

balances: Balances

Defined in

packages/library/src/hooks/TransactionFeeHook.ts:58


currentConfig

protected currentConfig: undefined | TransactionFeeHookConfig

Store the config separately, so that we can apply additional checks when retrieving it via the getter

Inherited from

ProvableTransactionHook.currentConfig

Defined in

packages/common/dist/config/ConfigurableModule.d.ts:17


name?

optional name: string

Inherited from

ProvableTransactionHook.name

Defined in

packages/protocol/dist/protocol/TransitioningProtocolModule.d.ts:8


parent?

optional parent: ProtocolEnvironment

Inherited from

ProvableTransactionHook.parent

Defined in

packages/protocol/dist/protocol/ProtocolModule.d.ts:4


persistedFeeAnalyzer

protected persistedFeeAnalyzer: undefined | RuntimeFeeAnalyzerService = undefined

Defined in

packages/library/src/hooks/TransactionFeeHook.ts:63


runtime

runtime: Runtime<RuntimeModulesRecord>

Defined in

packages/library/src/hooks/TransactionFeeHook.ts:57

Accessors

areProofsEnabled

Get Signature

get areProofsEnabled(): undefined | AreProofsEnabled

Returns

undefined | AreProofsEnabled

Inherited from

ProvableTransactionHook.areProofsEnabled

Defined in

packages/protocol/dist/protocol/ProtocolModule.d.ts:5


config

Get Signature

get config(): TransactionFeeHookConfig

Returns

TransactionFeeHookConfig

Set Signature

set config(value): void

Parameters

value: TransactionFeeHookConfig

Returns

void

Overrides

ProvableTransactionHook.config

Defined in

packages/library/src/hooks/TransactionFeeHook.ts:108


feeAnalyzer

Get Signature

get feeAnalyzer(): RuntimeFeeAnalyzerService

Returns

RuntimeFeeAnalyzerService

Defined in

packages/library/src/hooks/TransactionFeeHook.ts:116

Methods

afterTransaction()

afterTransaction(): Promise<void>

Returns

Promise<void>

Overrides

ProvableTransactionHook.afterTransaction

Defined in

packages/library/src/hooks/TransactionFeeHook.ts:174


beforeTransaction()

beforeTransaction(executionData): Promise<void>

Determine the transaction fee for the given transaction, and transfer it from the transaction sender to the fee recipient.

Parameters

executionData: BeforeTransactionHookArguments

Returns

Promise<void>

Overrides

ProvableTransactionHook.beforeTransaction

Defined in

packages/library/src/hooks/TransactionFeeHook.ts:146


create()

create(childContainerProvider): void

Parameters

childContainerProvider: ChildContainerProvider

Returns

void

Inherited from

ProvableTransactionHook.create

Defined in

packages/protocol/dist/protocol/ProtocolModule.d.ts:6


getFee()

getFee(feeConfig): UInt<64>

Parameters

feeConfig: MethodFeeConfigData

Returns

UInt<64>

Defined in

packages/library/src/hooks/TransactionFeeHook.ts:132


removeTransactionWhen()

removeTransactionWhen(__namedParameters): Promise<boolean>

Parameters

__namedParameters: BeforeTransactionHookArguments

Returns

Promise<boolean>

Overrides

ProvableTransactionHook.removeTransactionWhen

Defined in

packages/library/src/hooks/TransactionFeeHook.ts:178


start()

start(): Promise<void>

Returns

Promise<void>

Overrides

ProvableTransactionHook.start

Defined in

packages/library/src/hooks/TransactionFeeHook.ts:101


transferFee()

transferFee(from, fee): Promise<void>

Parameters

from: PublicKeyOption

fee: UInt64

Returns

Promise<void>

Defined in

packages/library/src/hooks/TransactionFeeHook.ts:123


verifyConfig()

verifyConfig(): void

Returns

void

Defined in

packages/library/src/hooks/TransactionFeeHook.ts:68