#
Class Diagram
This document includes the class diagram of all activity types
classDiagram Subject -- Base Activity Activity Direction -- Base Activity Inclusion State -- Base Activity Async Data -- Base Activity Base Activity <|-- Transaction Activity Base Activity <|-- Nft Activity Base Activity <|-- Alias Activity Base Activity <|-- Foundry Activity Base Activity -- Activity Action class Base Activity { <<Interface>> - id: string - outputId: string - transactionId: string - metadata: string - tag: string - time: Date - inclusionState: InclusionState - inputs: IUTXOInput[] - isHidden: boolean - containsValue: boolean - isAssetHidden: boolean - direction: ActivityDirection - action: ActivityAction - isInternal: boolean - storageDeposit: number - giftedStorageDeposit: number - subject: Subject - asyncData: AsyncData } class Transaction Activity { - type: ActivityType.Basic - rawAmount: number - assetId: string - publicNote: string - isShimmerClaiming: boolean } class Nft Activity { - type: ActivityType.Nft - nftId: string } class Foundry Activity { - type: ActivityType.Foundry - rawAmount: number - assetId: string } class Alias Activity { - type: ActivityType.Alias - aliasId: string - governorAddress: string - stateControllerAddress: string } class Subject { - type: "address" | "account" - address?: string - account?: IAccountState } class Activity Direction { <<Enum>> - Incoming - Outgoing - SelfTransaction } class Activity Action { <<Enum>> - Send - Mint } class Async Data { - asyncStatus: ActivityAsyncStatus - timelockDate: Date - expirationDate: Date - isRejected: boolean - isClaiming: boolean - claimingTransactionId: string - claimedDate: Date } class Inclusion State { <<Enum>> - Pending - Confirmed - Conflicting - UnknownPruned }