MoEngageCampaignState
@objc
public final class MoEngageCampaignState : NSObject, Codable, @unchecked Sendable
State of the card.
@unchecked Sendable: isClicked is mutated in place by the list UI when a
card is tapped. Card campaigns (and their state) are built on the SDK instance
actor and then handed to the main-actor list UI, after which isClicked is
only ever read and written on the main actor — it is never accessed concurrently
from more than one actor, so crossing the model between them is safe. This mirrors
MoEngageCardStatusData‘s single-domain confinement rationale.
-
Totol number of times card is shown across devices
Declaration
Swift
@objc public let showCountTotal: Int64 -
True if card is clicked else false
Declaration
Swift
@objc public internal(set) var isClicked: Bool { get } -
Date instance at which card is seen for the first time
Declaration
Swift
@objc public let firstSeenTime: Date? -
Date instance at which card is delivered
Declaration
Swift
@objc public let firstDeliveredTime: Date? -
Total number of times card is shown in current device
Declaration
Swift
@objc public let showCountCurrentDevice: Int64 -
Declaration
Swift
public func encode(to encoder: any Encoder) throws -
Declaration
Swift
required public init(from decoder: any Decoder) throws -
Declaration
Swift
public override var description: String { get }