models/offer library

Models bridging ZeroSettleKit's Offer namespace (Sources/ZeroSettleKit/Models/Offer.swift).

Offer on iOS is a public enum used purely as a namespace for the nested types: FlowType, UpgradeType, CheckoutPresentation, State, Display, PerProductOffer, and OfferData. Dart names keep the Offer prefix to mirror that nesting (e.g. OfferOfferData matches Swift's Offer.OfferData).

Classes

OfferDisplay
Server-configurable display copy for every tip-card state. Empty strings mean "use SDK default". Mirrors Offer.Display.
OfferManagerState
Coherent snapshot of ZSOfferManager's 5 published properties. Emitted on every state-property change via the manager's stream.
OfferOfferData
Server-resolved offer payload. Mirrors Offer.OfferData.
OfferPerProductOffer
Per-product offer override. Mirrors Offer.PerProductOffer.

Enums

OfferCheckoutPresentation
How the tip view presents checkout when the CTA is tapped. Mirrors Offer.CheckoutPresentation. When null, the SDK uses the global checkoutType setting.
OfferFlowType
The type of offer flow, determined by the server. Mirrors Offer.FlowType.
OfferState
Lifecycle state of the offer flow. Mirrors Offer.State.
OfferUpgradeType
The upgrade-path type (only relevant for upgrade flows). Mirrors Offer.UpgradeType.