Skip to main content

TransferPolicyTransaction

@iota/kiosk


@iota/kiosk / TransferPolicyTransaction

Class: TransferPolicyTransaction

Defined in: client/tp-transaction.ts:35

Constructors​

Constructor​

new TransferPolicyTransaction(__namedParameters): TransferPolicyTransaction

Defined in: client/tp-transaction.ts:42

Parameters​

__namedParameters​

TransferPolicyTransactionParams

Returns​

TransferPolicyTransaction

Properties​

kioskClient​

kioskClient: KioskClient

Defined in: client/tp-transaction.ts:37


policy?​

optional policy?: ObjectArgument

Defined in: client/tp-transaction.ts:38


policyCap?​

optional policyCap?: ObjectArgument

Defined in: client/tp-transaction.ts:39


transaction​

transaction: Transaction

Defined in: client/tp-transaction.ts:36


type?​

optional type?: string

Defined in: client/tp-transaction.ts:40

Methods​

addFloorPriceRule()​

addFloorPriceRule(minPrice): TransferPolicyTransaction

Defined in: client/tp-transaction.ts:222

A function to add the floor price rule to a transfer policy.

Parameters​

minPrice​

string | bigint

The minimum price in NANOS.

Returns​

TransferPolicyTransaction


addLockRule()​

addLockRule(): TransferPolicyTransaction

Defined in: client/tp-transaction.ts:189

Adds the Kiosk Lock Rule to the Transfer Policy. This Rule forces buyer to lock the item in the kiosk, preserving strong royalties.

Returns​

TransferPolicyTransaction


addPersonalKioskRule()​

addPersonalKioskRule(): TransferPolicyTransaction

Defined in: client/tp-transaction.ts:205

Attaches the Personal Kiosk Rule, making a purchase valid only for SoulBound kiosks.

Returns​

TransferPolicyTransaction


addRoyaltyRule()​

addRoyaltyRule(percentageBps, minAmount): TransferPolicyTransaction

Defined in: client/tp-transaction.ts:164

Adds the Kiosk Royalty rule to the Transfer Policy. You can pass the percentage, as well as a minimum amount. The royalty that will be paid is the MAX(percentage, minAmount). You can pass 0 in either value if you want only percentage royalty, or a fixed amount fee. (but you should define at least one of them for the rule to make sense).

Parameters​

percentageBps​

string | number

The royalty percentage in basis points. Use percentageToBasisPoints helper to convert from percentage [0,100].

minAmount​

string | number

The minimum royalty amount per request in NANOS.

Returns​

TransferPolicyTransaction


create()​

create(type): Promise<TransferPolicyTransaction>

Defined in: client/tp-transaction.ts:85

A convenient function to create a Transfer Policy and attach some rules before sharing it (so you can prepare it in a single PTB)

Parameters​

type​

TransferPolicyBaseParams

The Type (T) for which we're creating the transfer policy.

Returns​

Promise<TransferPolicyTransaction>


createAndShare()​

createAndShare(type): Promise<void>

Defined in: client/tp-transaction.ts:60

A function to create a new transfer policy. Checks if there's already an existing transfer policy to prevent double transfer policy mistakes. There's an optional skipCheck flag that will just create the policy without checking

Parameters​

type​

TransferPolicyBaseParams & object

The Type (T) for which we're creating the transfer policy.

Returns​

Promise<void>


getPolicy()​

getPolicy(): ObjectArgument

Defined in: client/tp-transaction.ts:324

Returns​

ObjectArgument


getPolicyCap()​

getPolicyCap(): ObjectArgument

Defined in: client/tp-transaction.ts:329

Returns​

ObjectArgument


removeFloorPriceRule()​

removeFloorPriceRule(): TransferPolicyTransaction

Defined in: client/tp-transaction.ts:308

Returns​

TransferPolicyTransaction


removeLockRule()​

removeLockRule(): TransferPolicyTransaction

Defined in: client/tp-transaction.ts:257

Removes the lock rule.

Returns​

TransferPolicyTransaction


removePersonalKioskRule()​

removePersonalKioskRule(): TransferPolicyTransaction

Defined in: client/tp-transaction.ts:292

Returns​

TransferPolicyTransaction


removeRoyaltyRule()​

removeRoyaltyRule(): TransferPolicyTransaction

Defined in: client/tp-transaction.ts:276

Removes the Royalty rule

Returns​

TransferPolicyTransaction


removeRule()​

removeRule(ruleType): void

Defined in: client/tp-transaction.ts:241

Generic helper to remove a rule, not from the SDK's base ruleset.

Parameters​

ruleType​

The Rule Type

configType​

string

ruleType​

string

Returns​

void


setCap()​

setCap(policyCapId): TransferPolicyTransaction

Defined in: client/tp-transaction.ts:129

Setup the TransferPolicy by passing a cap returned from kioskClient.getOwnedTransferPolicies or kioskClient.getOwnedTransferPoliciesByType.

Parameters​

policyCapId​

TransferPolicyCap

The TransferPolicyCap

Returns​

TransferPolicyTransaction


shareAndTransferCap()​

shareAndTransferCap(address): void

Defined in: client/tp-transaction.ts:111

This can be called after calling the create function to share the TransferPolicy, and transfer the TransferPolicyCap to the specified address

Parameters​

address​

string

The address to transfer the TransferPolicyCap

Returns​

void


withdraw()​

withdraw(address, amount?): TransferPolicyTransaction

Defined in: client/tp-transaction.ts:138

Withdraw from the transfer policy's profits.

Parameters​

address​

string

Address to transfer the profits to.

amount?​

string | bigint

(Optional) amount parameter. Will withdraw all profits if the amount is not specified.

Returns​

TransferPolicyTransaction