import BigNumber from 'bignumber.js'; import { Asset, Checkpoint, CheckpointSchedule, Context, Entity, LinkCaDocsParams, ModifyCaCheckpointParams } from "../../../internal"; import { InputCaCheckpoint, ProcedureMethod } from "../../../types"; import { HumanReadableType, Modify } from "../../../types/utils"; import { CorporateActionKind, CorporateActionTargets, TaxWithholding } from './types'; export interface UniqueIdentifiers { id: BigNumber; ticker: string; } export interface HumanReadable { id: string; ticker: string; declarationDate: string; description: string; targets: HumanReadableType; defaultTaxWithholding: string; taxWithholdings: HumanReadableType; } export interface Params { kind: CorporateActionKind; declarationDate: Date; description: string; targets: CorporateActionTargets; defaultTaxWithholding: BigNumber; taxWithholdings: TaxWithholding[]; } /** * Represents an action initiated by the issuer of an Asset which may affect the positions of * the Asset Holders */ export declare abstract class CorporateActionBase extends Entity { /** * @hidden * Check if a value is of type {@link UniqueIdentifiers} */ static isUniqueIdentifiers(identifier: unknown): identifier is UniqueIdentifiers; /** * internal Corporate Action ID */ id: BigNumber; /** * Asset affected by this Corporate Action */ asset: Asset; /** * date at which the Corporate Action was created */ declarationDate: Date; /** * brief text description of the Corporate Action */ description: string; /** * 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 */ targets: CorporateActionTargets; /** * default percentage (0-100) of tax withholding for this Corporate Action */ defaultTaxWithholding: BigNumber; /** * percentage (0-100) of tax withholding per Identity. Any Identity not present * in this array uses the default tax withholding percentage */ taxWithholdings: TaxWithholding[]; /** * type of corporate action being represented */ protected kind: CorporateActionKind; /** * @hidden */ constructor(args: UniqueIdentifiers & Params, context: Context); /** * Link a list of documents to this corporate action * * @note any previous links are removed in favor of the new list */ linkDocuments: ProcedureMethod; /** * Modify the Corporate Action's Checkpoint */ abstract modifyCheckpoint: ProcedureMethod, void>; /** * Determine whether this Corporate Action exists on chain */ exists(): Promise; /** * Retrieve the Checkpoint associated with this Corporate Action. If the Checkpoint is scheduled and has * not been created yet, the corresponding CheckpointSchedule is returned instead. A null value means * the Corporate Action was created without an associated Checkpoint */ checkpoint(): Promise; /** * @hidden */ private fetchCorporateAction; /** * Return the Corporate Action's static data */ toJson(): HumanReadable; } //# sourceMappingURL=index.d.ts.map