api_entities_DividendDistribution.DividendDistribution

@polymeshassociation/polymesh-sdk / Modules / api/entities/DividendDistribution / DividendDistribution

Class: DividendDistribution

api/entities/DividendDistribution.DividendDistribution

Represents a Corporate Action via which an Asset issuer wishes to distribute dividends between a subset of the Asset Holders (targets)

Hierarchy

Table of contents

Properties

Methods

Properties

asset

asset: Asset

Asset affected by this Corporate Action

Inherited from

CorporateActionBase.asset

Defined in

api/entities/CorporateActionBase/index.ts:77


currency

currency: string

ticker of the currency in which dividends are being distributed

Defined in

api/entities/DividendDistribution/index.ts:100


declarationDate

declarationDate: Date

date at which the Corporate Action was created

Inherited from

CorporateActionBase.declarationDate

Defined in

api/entities/CorporateActionBase/index.ts:82


defaultTaxWithholding

defaultTaxWithholding: BigNumber

default percentage (0-100) of tax withholding for this Corporate Action

Inherited from

CorporateActionBase.defaultTaxWithholding

Defined in

api/entities/CorporateActionBase/index.ts:98


description

description: string

brief text description of the Corporate Action

Inherited from

CorporateActionBase.description

Defined in

api/entities/CorporateActionBase/index.ts:87


expiryDate

expiryDate: null | Date

date after which dividends can no longer be paid/reclaimed. A null value means the distribution never expires

Defined in

api/entities/DividendDistribution/index.ts:116


id

id: BigNumber

internal Corporate Action ID

Inherited from

CorporateActionBase.id

Defined in

api/entities/CorporateActionBase/index.ts:72


maxAmount

maxAmount: BigNumber

maximum amount of currency to be distributed. Distributions are "first come, first served", so funds can be depleted before every Asset Holder receives their corresponding amount

Defined in

api/entities/DividendDistribution/index.ts:111


origin

origin: NumberedPortfolio | DefaultPortfolio

Portfolio from which the dividends will be distributed

Defined in

api/entities/DividendDistribution/index.ts:95


paymentDate

paymentDate: Date

date starting from which dividends can be paid/reclaimed

Defined in

api/entities/DividendDistribution/index.ts:121


perShare

perShare: BigNumber

amount of currency to pay for each share held by the Asset Holders

Defined in

api/entities/DividendDistribution/index.ts:105


targets

targets: CorporateActionTargets

Asset Holder Identities related to this Corporate action. If the treatment is Exclude, the Identities in the array will not be targeted by the Action, Identities not in the array will be targeted, and vice versa

Inherited from

CorporateActionBase.targets

Defined in

api/entities/CorporateActionBase/index.ts:93


taxWithholdings

taxWithholdings: TaxWithholding[]

percentage (0-100) of tax withholding per Identity. Any Identity not present in this array uses the default tax withholding percentage

Inherited from

CorporateActionBase.taxWithholdings

Defined in

api/entities/CorporateActionBase/index.ts:104


uuid

uuid: string

Inherited from

CorporateActionBase.uuid

Defined in

api/entities/Entity.ts:46

Methods

checkpoint

checkpoint(): Promise<CheckpointSchedule | Checkpoint>

Retrieve the Checkpoint associated with this Dividend Distribution. If the Checkpoint is scheduled and has not been created yet, the corresponding CheckpointSchedule is returned instead

Returns

Promise<CheckpointSchedule | Checkpoint>

Overrides

CorporateActionBase.checkpoint

Defined in

api/entities/DividendDistribution/index.ts:246


claim

claim(opts?): Promise<TransactionQueue<void, void, unknown[][]>>

Claim the Dividends corresponding to the signing Identity

note if currency is indivisible, the Identity's share will be rounded down to the nearest integer (after taxes are withheld)

note this method is of type NoArgsProcedureMethod, which means you can call claim.checkAuthorization on it to see whether the signing Account and Identity have the required roles and permissions to run it

Parameters

Name
Type

Returns

Promise<TransactionQueue<void, void, unknown[][]>>

Defined in

api/entities/DividendDistribution/index.ts:195


details

details(): Promise<DividendDistributionDetails>

Retrieve details associated with this Dividend Distribution

Returns

Promise<DividendDistributionDetails>

Defined in

api/entities/DividendDistribution/index.ts:274


exists

exists(): Promise<boolean>

Retrieve whether the Distribution exists

Returns

Promise<boolean>

Overrides

CorporateActionBase.exists

Defined in

api/entities/DividendDistribution/index.ts:265


getParticipant

getParticipant(args?): Promise<null | DistributionParticipant>

Retrieve an Identity that is entitled to dividends in this Distribution (participant), the amount it is entitled to and whether it has been paid or not

note if the Distribution Checkpoint hasn't been created yet, the result will be null. This is because the Distribution participant's corresponding payment cannot be determined without a Checkpoint

Parameters

Name
Type
Description

args?

Object

-

args.identity

string | Identity

defaults to the signing Identity

Returns

Promise<null | DistributionParticipant>

Defined in

api/entities/DividendDistribution/index.ts:355


getParticipants

getParticipants(): Promise<DistributionParticipant[]>

Retrieve a comprehensive list of all Identities that are entitled to dividends in this Distribution (participants), the amount they are entitled to and whether they have been paid or not

note this request can take a lot of time with large amounts of Asset Holders

note if the Distribution Checkpoint hasn't been created yet, the result will be an empty array. This is because the Distribution participants cannot be determined without a Checkpoint

Returns

Promise<DistributionParticipant[]>

Defined in

api/entities/DividendDistribution/index.ts:300


getPaymentHistory

getPaymentHistory(opts?): Promise<ResultSet<DistributionPayment>>

Retrieve the payment history for this Distribution

note uses the middleware

note supports pagination

Parameters

Name
Type

opts

Object

opts.size?

BigNumber

opts.start?

BigNumber

Returns

Promise<ResultSet<DistributionPayment>>

Defined in

api/entities/DividendDistribution/index.ts:492


getWithheldTax

getWithheldTax(): Promise<BigNumber>

Retrieve the amount of taxes that have been withheld up to this point in this Distribution

note uses the middleware

Returns

Promise<BigNumber>

Defined in

api/entities/DividendDistribution/index.ts:457


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

CorporateActionBase.isEqual

Defined in

api/entities/Entity.ts:61


linkDocuments

linkDocuments(args, opts?): Promise<TransactionQueue<void, void, unknown[][]>>

Link a list of documents to this corporate action

note any previous links are removed in favor of the new list

note this method is of type ProcedureMethod, which means you can call linkDocuments.checkAuthorization on it to see whether the signing Account and Identity have the required roles and permissions to run it

Parameters

Returns

Promise<TransactionQueue<void, void, unknown[][]>>

Inherited from

CorporateActionBase.linkDocuments

Defined in

api/entities/CorporateActionBase/index.ts:152


modifyCheckpoint

modifyCheckpoint(args, opts?): Promise<TransactionQueue<void, void, unknown[][]>>

Modify the Distribution's Checkpoint

note this method is of type ProcedureMethod, which means you can call modifyCheckpoint.checkAuthorization on it to see whether the signing Account and Identity have the required roles and permissions to run it

Parameters

Name
Type

args

Modify<ModifyCaCheckpointParams, { checkpoint: InputCaCheckpoint }>

Returns

Promise<TransactionQueue<void, void, unknown[][]>>

Overrides

CorporateActionBase.modifyCheckpoint

Defined in

api/entities/DividendDistribution/index.ts:205


pay

pay(args, opts?): Promise<TransactionQueue<void, void, unknown[][]>>

Transfer the corresponding share of the dividends to a list of Identities

note due to performance issues, we do not validate that the distribution has enough remaining funds to pay the corresponding amount to the supplied Identities

note if currency is indivisible, the Identity's share will be rounded down to the nearest integer (after taxes are withheld)

note this method is of type ProcedureMethod, which means you can call pay.checkAuthorization on it to see whether the signing Account and Identity have the required roles and permissions to run it

Parameters

Returns

Promise<TransactionQueue<void, void, unknown[][]>>

Defined in

api/entities/DividendDistribution/index.ts:223


reclaimFunds

reclaimFunds(opts?): Promise<TransactionQueue<void, void, unknown[][]>>

Reclaim any remaining funds back to the origin Portfolio. This can only be done after the Distribution has expired

note withheld taxes are also reclaimed in the same transaction

note required roles:

  • Origin Portfolio Custodian

note this method is of type NoArgsProcedureMethod, which means you can call reclaimFunds.checkAuthorization on it to see whether the signing Account and Identity have the required roles and permissions to run it

Parameters

Name
Type

Returns

Promise<TransactionQueue<void, void, unknown[][]>>

Defined in

api/entities/DividendDistribution/index.ts:238


toHuman

toHuman(): HumanReadable

Return the Dividend Distribution's static data

Returns

HumanReadable

Overrides

CorporateActionBase.toHuman

Defined in

api/entities/DividendDistribution/index.ts:622


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

CorporateActionBase.generateUuid

Defined in

api/entities/Entity.ts:14


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

Inherited from

CorporateActionBase.unserialize

Defined in

api/entities/Entity.ts:23

Last updated