@stackedapp/types 2.6.0 → 2.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -411,10 +411,6 @@ interface IOfferListener extends IOfferHookEvent {
411
411
  }
412
412
  interface IOffer {
413
413
  _id: Stringable;
414
- /** for grouping offers together if they are assocaited with each othert for easy rendering in front-end */
415
- groupId?: string;
416
- /** if true, only one offer from this groupId can be active for a player at a time */
417
- oneOfferPerGroup?: boolean;
418
414
  name: string;
419
415
  /** Custom tab name for grouped offers - displays instead of name when set */
420
416
  tabName?: string;
@@ -426,10 +422,6 @@ interface IOffer {
426
422
  notes?: string;
427
423
  /** if this should be an offer that gets surfaced in real time */
428
424
  realTime?: boolean;
429
- /** if this offer is tied to other offers for a/b testing, this is the ID that ties
430
- * all of the offers together
431
- */
432
- campaign?: string;
433
425
  image?: string;
434
426
  /** game that this offer corresponds to */
435
427
  gameId: string;
@@ -525,7 +517,7 @@ interface IPlayerOffer {
525
517
  * tries to abuse and slam the fetchPlayerOffers endpoint
526
518
  */
527
519
  cooldownTimeframeMultiple?: number;
528
- /** denormalized from offer — set when offer.oneOfferPerGroup is true, used for unique partial index enforcement */
520
+ /** OfferGroup ID — set for exclusive groups to enforce one active offer per group via unique partial index */
529
521
  groupId?: string;
530
522
  /** offer id */
531
523
  offer_id: Stringable | IOffer;
@@ -804,12 +796,14 @@ interface StackedSnapshotProgress {
804
796
  }
805
797
  /** offer fields that define this offer's properties */
806
798
  interface StackedBaseOffer extends Pick<IOffer, OfferPickFields> {
799
+ /** @deprecated Use offerGroups instead */
800
+ groupId?: string;
807
801
  /** Siblings */
808
802
  siblings?: StackedSnapshotProgress[];
809
803
  /** Progress data for linked entity's offer (e.g., pet's progress on their task) */
810
804
  linked?: StackedSnapshotProgress[];
811
805
  }
812
- type OfferPickFields = 'groupId' | 'name' | 'description' | 'image' | 'gameId' | 'archived' | 'disabled' | 'labels' | 'completionConditions' | 'claimableConditions' | 'rewards' | 'maxClaimCount';
806
+ type OfferPickFields = 'name' | 'description' | 'image' | 'gameId' | 'archived' | 'disabled' | 'labels' | 'completionConditions' | 'claimableConditions' | 'rewards' | 'maxClaimCount';
813
807
  /** user-specific offer fields for this specific user's offer progress */
814
808
  interface StackedUserOffer extends Pick<IPlayerOffer, UserOfferPickFields> {
815
809
  }
@@ -858,6 +852,24 @@ type TeamProgress = {
858
852
  percentCompleted: number;
859
853
  isComplete: boolean;
860
854
  };
855
+ type StackedOfferGroupKind = 'normal' | 'exclusive' | 'milestone' | 'campaign';
856
+ interface StackedOfferGroup {
857
+ groupId: string;
858
+ name: string;
859
+ kind: StackedOfferGroupKind;
860
+ sortOrder?: number;
861
+ labels?: string[];
862
+ offers: StackedOffer[];
863
+ }
864
+ /** Wire format — API returns offerIds, SDK hydrates into StackedOfferGroup */
865
+ interface StackedOfferGroupResponse {
866
+ groupId: string;
867
+ name: string;
868
+ kind: StackedOfferGroupKind;
869
+ sortOrder?: number;
870
+ labels?: string[];
871
+ offerIds: string[];
872
+ }
861
873
 
862
874
  type StackedRewardKind = RewardKind;
863
875
  interface StackedReward extends IReward {
@@ -959,6 +971,8 @@ interface StackedAssets {
959
971
  interface StackedCampaignsBaseResponse extends StackedUserResponse {
960
972
  /** List of offers/campaigns for the player */
961
973
  offers: StackedOffer[];
974
+ /** Offers organized into groups (normal, exclusive, milestone) */
975
+ offerGroups?: StackedOfferGroupResponse[];
962
976
  /**
963
977
  * @deprecated
964
978
  * look at assets for currencies asset information name/image. The actually currencies on
@@ -1195,13 +1209,6 @@ interface IThirdPartyApp {
1195
1209
  }>;
1196
1210
  /** Name of the default offer preset to use for new offers */
1197
1211
  offerPresetDefault?: string;
1198
- /** map of groupID to name and offer order. For attaching names to offer groups */
1199
- offerGroups?: Record<string, {
1200
- name?: string;
1201
- order?: string[];
1202
- }>;
1203
- /** Ordered list of top-level group/offer IDs for page ordering */
1204
- activeOfferOrder?: string[];
1205
1212
  }
1206
1213
 
1207
1214
  /**
@@ -1531,7 +1538,382 @@ type StackedCurrency = Pick<ICurrency, 'id' | 'name' | 'image' | 'contractAddres
1531
1538
  };
1532
1539
  type StackedCurrencyPrice = ILibraryCurrencyPrice;
1533
1540
 
1541
+ /** these typings represent what is ingested into our data platform directly. */
1542
+ declare const reservedPixelsAnalyticsEvents: readonly ["sign_in", "sign_up", "identifier_link", "trust_score", "membership_tx", "currency_tx", "item_tx", "funnel_step", "level_up", "refer_user", "achievement_tx", "player_snapshot", "modify_tags", "blockchain_staking_staked_v2", "blockchain_staking_unstaked_v2", "call_context", "set_dynamic_field", "delete_dynamic_field", "link_user", "onchain_currency_tx", "onchain_item_tx"];
1543
+ type ReservedPixelsAnalyticsEvent = (typeof reservedPixelsAnalyticsEvents)[number];
1544
+ /** Custom onchain events are dynamically generated as `onchain_${snake_case(eventName)}` */
1545
+ type OnchainCustomEvent = `onchain_${string}`;
1546
+ type PixelsAnalyticsEvent = ReservedPixelsAnalyticsEvent | OnchainCustomEvent | (string & {});
1547
+ /** this is the actual payload sent to our data analytics ingestion api */
1548
+ interface PixelsEventPayload {
1549
+ user_id: string;
1550
+ /** int */
1551
+ event_timestamp?: number;
1552
+ version?: number;
1553
+ event_name: PixelsAnalyticsEvent;
1554
+ event_params?: any;
1555
+ env?: string;
1556
+ }
1557
+ interface PixelsCustomParams {
1558
+ [key: `${Lowercase<string>}`]: any;
1559
+ }
1560
+ interface PixelsCallContextParams {
1561
+ context: string;
1562
+ extra?: {
1563
+ [key: `${Lowercase<string>}`]: any;
1564
+ };
1565
+ }
1566
+ interface PixelsSetDynamicFieldParams {
1567
+ key: string;
1568
+ value: string | number | boolean;
1569
+ /** set by default */
1570
+ operation?: 'set' | 'increment' | 'min' | 'max';
1571
+ /** don't save this key into the asset library */
1572
+ noAssetLib?: boolean;
1573
+ /** scope this tracker update to a specific offer only */
1574
+ offerId?: string;
1575
+ }
1576
+ interface PixelsSnapshotParams {
1577
+ username?: string;
1578
+ /** the kind of entity that this user snapshot represents? leave empty for a regular user of your app */
1579
+ entity_kind?: string;
1580
+ linked_users?: Array<{
1581
+ user_id: string;
1582
+ kind?: string;
1583
+ }>;
1584
+ trust_score?: number;
1585
+ /** Timestamp when player first signed up */
1586
+ date_signed_up?: number;
1587
+ currencies?: Array<{
1588
+ id: string;
1589
+ balance: number;
1590
+ /** amount deposited */
1591
+ in?: number;
1592
+ /** amount withdrawn */
1593
+ out?: number;
1594
+ }>;
1595
+ memberships?: Array<{
1596
+ id: string;
1597
+ /** int */
1598
+ count?: number;
1599
+ expiresAt?: number;
1600
+ }>;
1601
+ crypto_wallets?: Array<{
1602
+ address: string;
1603
+ }>;
1604
+ quests?: Array<{
1605
+ id: string;
1606
+ /** int */
1607
+ completions?: number;
1608
+ }>;
1609
+ levels?: Array<{
1610
+ skill_id: string;
1611
+ /** int */
1612
+ level_value: number;
1613
+ }>;
1614
+ achievements?: Array<{
1615
+ id: string;
1616
+ /** int */
1617
+ count?: number;
1618
+ }>;
1619
+ extra?: {
1620
+ [key: `${Lowercase<string>}`]: any;
1621
+ };
1622
+ }
1623
+ interface PixelsModifyTagsParams {
1624
+ kind: 'add' | 'remove';
1625
+ player_ids: Array<string>;
1626
+ tags: Array<string>;
1627
+ }
1628
+ interface PixelsSignInParams {
1629
+ username?: string;
1630
+ extra?: {
1631
+ [key: `${Lowercase<string>}`]: any;
1632
+ };
1633
+ }
1634
+ interface PixelsSignUpParams {
1635
+ kind?: 'start' | 'complete';
1636
+ /** Kind of sign up flow. Defaults to completed */
1637
+ platform: 'wallet' | 'discord' | 'email' | 'sms' | 'x' | (string & {});
1638
+ /** Identifier value of the platform. For example, for emails, this could be hi@example.com */
1639
+ platform_identifier: string;
1640
+ username?: string;
1641
+ /** Timestamp when player first signed up */
1642
+ date_signed_up?: number;
1643
+ extra?: {
1644
+ [key: `${Lowercase<string>}`]: any;
1645
+ };
1646
+ }
1647
+ interface PixelsTrustScoreParams {
1648
+ score: number;
1649
+ extra?: {
1650
+ [key: `${Lowercase<string>}`]: any;
1651
+ };
1652
+ }
1653
+ interface PixelsIdentifierLinkParams {
1654
+ kind?: 'link' | 'unlink' | 'update' | 'verify' | 'revoke' | 'revalidate';
1655
+ platform: 'wallet' | 'discord' | 'email' | 'sms' | 'x' | (string & {});
1656
+ /** Identifier value of the platform. For example, for emails, this could be hi@example.com */
1657
+ platform_identifier: string;
1658
+ old_platform_identifier?: string;
1659
+ /** Kind of identify action. Defaults to linked */
1660
+ extra?: {
1661
+ [key: `${Lowercase<string>}`]: any;
1662
+ };
1663
+ }
1664
+ interface PixelsMembershipTxParams {
1665
+ membership_id: string;
1666
+ /** Defaults to gain */
1667
+ kind: 'gain' | 'renew' | 'revoke';
1668
+ /** int */
1669
+ count?: number;
1670
+ currency_id?: string;
1671
+ currency_amount?: number;
1672
+ /** int */
1673
+ duration_ms?: number;
1674
+ free_trial?: boolean;
1675
+ /** int */
1676
+ billing_grace_ms?: number;
1677
+ /** tx_id link if there was a tx associated with this membership purchase */
1678
+ tx_id?: string;
1679
+ extra?: {
1680
+ [key: `${Lowercase<string>}`]: any;
1681
+ };
1682
+ }
1683
+ type TxSourceTarget = 'player' | 'store' | 'marketplace' | 'auction' | (string & {});
1684
+ interface PixelsCurrencyTxParams {
1685
+ /** tx_id of this currency transaction. If left empty, will be auto-generated */
1686
+ tx_id?: string;
1687
+ kind: 'spend' | 'earn' | 'withdraw' | 'deposit';
1688
+ context?: string;
1689
+ currency_id: string;
1690
+ /** Amount of currency being spent */
1691
+ currency_amount: number;
1692
+ from_kind?: TxSourceTarget;
1693
+ from_id?: string;
1694
+ to_kind?: TxSourceTarget;
1695
+ to_id?: string;
1696
+ /** New in-game balance for this player after this transaction */
1697
+ in_game_balance?: number;
1698
+ bundle_id?: string;
1699
+ extra?: {
1700
+ [key: `${Lowercase<string>}`]: any;
1701
+ };
1702
+ }
1703
+ interface PixelsItemTxParams {
1704
+ /** tx_id link if there was a tx associated with this item transaction */
1705
+ tx_id?: string;
1706
+ kind: 'gain' | 'lose';
1707
+ context?: string;
1708
+ item_id: string;
1709
+ /** int */
1710
+ item_amount: number;
1711
+ currency_id?: string;
1712
+ /** amount of currency spent for this item tx */
1713
+ currency_amount?: number;
1714
+ from_kind?: TxSourceTarget;
1715
+ from_id?: string;
1716
+ to_kind?: TxSourceTarget;
1717
+ to_id?: string;
1718
+ in_game_balance?: number;
1719
+ bundle_id?: string;
1720
+ extra?: {
1721
+ [key: `${Lowercase<string>}`]: any;
1722
+ };
1723
+ }
1724
+ interface PixelsFunnelStepParams {
1725
+ funnel_id: string;
1726
+ /** int */
1727
+ step_number?: number;
1728
+ step_id?: string;
1729
+ /** Kind of funnel step event. Defaults to in_progress */
1730
+ kind?: 'start' | 'restart' | 'complete' | 'in_progress' | 'abort';
1731
+ extra?: {
1732
+ [key: `${Lowercase<string>}`]: any;
1733
+ };
1734
+ }
1735
+ interface PixelsLevelUpParams {
1736
+ skill_id: string;
1737
+ /** int */
1738
+ level_value: number;
1739
+ extra?: {
1740
+ [key: `${Lowercase<string>}`]: any;
1741
+ };
1742
+ }
1743
+ interface PixelsReferUserParams {
1744
+ /** Player who is doing the referral. Only required if NOT passing in code. */
1745
+ referrer_id?: string;
1746
+ /** Player who got referred */
1747
+ referee_id: string;
1748
+ /** If handling referral codes within your own system, pass in the referral_program_id
1749
+ * associated with this referral
1750
+ */
1751
+ offer_id?: string;
1752
+ /** If letting Pixels handle the whole referral flow including code generation, pass in the
1753
+ * code instead of the referral_program_id
1754
+ */
1755
+ code?: string;
1756
+ extra?: {
1757
+ [key: `${Lowercase<string>}`]: any;
1758
+ };
1759
+ }
1760
+ /** link the current user to another user or unlink the current user from another user */
1761
+ interface PixelsLinkUserTxParams {
1762
+ link_to_id: string;
1763
+ /** leave blank if linking to a default user kind entity */
1764
+ link_to_entity_kind?: string;
1765
+ kind: 'link' | 'unlink';
1766
+ extra?: {
1767
+ [key: `${Lowercase<string>}`]: any;
1768
+ };
1769
+ }
1770
+ interface PixelsAchievementTxParams {
1771
+ achievement_id: string;
1772
+ kind: 'gain' | 'lose';
1773
+ /** if achievement is tied to a count param when gaining, add it here */
1774
+ /** int */
1775
+ count?: number;
1776
+ extra?: {
1777
+ [key: `${Lowercase<string>}`]: any;
1778
+ };
1779
+ }
1780
+ interface PixelsOfferRewardWebhook {
1781
+ campaignId: string;
1782
+ campaignKind: 'offer' | 'referral';
1783
+ instanceId: string;
1784
+ dedupeId: string;
1785
+ entityKind?: string;
1786
+ name: string;
1787
+ description?: string;
1788
+ playerId: string;
1789
+ rewards: Array<{
1790
+ kind: 'coins' | 'item' | 'exp' | 'trust_points' | 'loyalty_currency';
1791
+ name?: string;
1792
+ /** int */
1793
+ amount: number;
1794
+ /** reward id for reward kind coins, item, exp and loyalty_currency */
1795
+ rewardId?: string;
1796
+ /** @deprecated in favour of rewardId */
1797
+ currencyId?: string;
1798
+ /** @deprecated in favour of rewardId */
1799
+ itemId?: string;
1800
+ /** @deprecated in favour of rewardId */
1801
+ skillId?: string;
1802
+ }>;
1803
+ }
1804
+ interface PixelsHeartbeatParams {
1805
+ /** The number of events successfully sent since the last heartbeat. */
1806
+ succeeded: number;
1807
+ /** The number of events that were dropped after all retries failed. */
1808
+ dropped: number;
1809
+ /** The number of events currently in the queue. */
1810
+ queue: number;
1811
+ /** The version of the SDK. */
1812
+ version: number;
1813
+ }
1814
+ interface PixelsOnchainCurrencyTxParams {
1815
+ kind: 'spend' | 'earn';
1816
+ /** Token symbol (e.g., 'PIXEL', 'RON') */
1817
+ currency_id: string;
1818
+ /** Amount in human-readable units (already divided by decimals) */
1819
+ currency_amount: number;
1820
+ /** Transaction hash */
1821
+ tx_id: string;
1822
+ /** For 'spend' events - destination type */
1823
+ to_kind?: 'player' | 'ZERO_ADDRESS';
1824
+ /** For 'spend' events - destination wallet address */
1825
+ to_id?: string;
1826
+ /** For 'earn' events - source type (e.g., 'contract' for mints) */
1827
+ from_kind?: 'contract';
1828
+ /** For 'earn' events - source contract address (for mints) */
1829
+ from_id?: string;
1830
+ extra: {
1831
+ block_number: number;
1832
+ /** e.g., 'ronin-mainnet' */
1833
+ network: string;
1834
+ /** Token contract address */
1835
+ contract_address: string;
1836
+ contract_name?: string;
1837
+ contract_kind?: 'ERC20' | 'native';
1838
+ /** Sender wallet address */
1839
+ from: string;
1840
+ /** Recipient wallet address */
1841
+ to: string;
1842
+ /** Amount in raw token units (before decimals) */
1843
+ raw_amount: string;
1844
+ decimals: number;
1845
+ /** true for native tokens (ETH, RON) */
1846
+ is_native?: boolean;
1847
+ };
1848
+ }
1849
+ interface PixelsOnchainEventMetadata {
1850
+ transactionHash: string;
1851
+ blockNumber: number;
1852
+ logIndex: number;
1853
+ /** Contract address that emitted the event */
1854
+ address: string;
1855
+ /** Whether the log was removed due to chain reorganization */
1856
+ removed: boolean;
1857
+ /** Raw event topics */
1858
+ topics: string[];
1859
+ }
1860
+ interface PixelsOnchainWalletBalance {
1861
+ walletAddress: string;
1862
+ native_balance: string;
1863
+ token_balances: Array<{
1864
+ token_address: string;
1865
+ symbol: string;
1866
+ balance: string;
1867
+ }>;
1868
+ }
1869
+ interface PixelsOnchainCustomEventParams {
1870
+ /** Transaction and log metadata */
1871
+ metadata: PixelsOnchainEventMetadata;
1872
+ /** Wallet balances fetched for involved addresses (may be empty) */
1873
+ walletBalances: PixelsOnchainWalletBalance[];
1874
+ /** Smart contract addresses involved in the event (may be empty) */
1875
+ smartContracts: string[];
1876
+ /** ABI-decoded event arguments - structure depends on contract event */
1877
+ [key: string]: any;
1878
+ }
1879
+ interface PixelsOnchainItemTxParams {
1880
+ kind: 'gain' | 'lose';
1881
+ /** Token ID */
1882
+ item_id: string;
1883
+ /** Amount (always 1 for ERC721, variable for ERC1155) */
1884
+ item_amount: number;
1885
+ /** For 'gain' events - source type */
1886
+ from_kind?: 'system';
1887
+ /** For 'gain' events - source identifier (e.g., 'mint') */
1888
+ from_id?: string;
1889
+ /** For 'lose' events - destination type */
1890
+ to_kind?: 'player' | 'ZERO_ADDRESS';
1891
+ /** For 'lose' events - destination wallet address */
1892
+ to_id?: string;
1893
+ context: 'blockchain_transfer';
1894
+ /** Transaction hash */
1895
+ tx_id: string;
1896
+ extra: {
1897
+ block_number: number;
1898
+ /** e.g., 'ronin-mainnet' */
1899
+ network: string;
1900
+ /** NFT contract address */
1901
+ contract_address: string;
1902
+ contract_name?: string;
1903
+ contract_kind?: 'ERC721' | 'ERC1155';
1904
+ /** Sender wallet address */
1905
+ from: string;
1906
+ /** Recipient wallet address */
1907
+ to: string;
1908
+ /** Token symbol */
1909
+ symbol?: string;
1910
+ /** For ERC1155 batch transfers */
1911
+ batch_index?: number;
1912
+ batch_total?: number;
1913
+ };
1914
+ }
1915
+
1534
1916
  type StackedEnv = IEnv;
1535
1917
 
1536
- export { DEFAULT_ENTITY_KIND };
1537
- export type { CompleteCryptoAuthResponse, CompleteOAuthResponse, CompleteOneTimeAuthResponse, CompletionConditionKind, ConditionDetail, ConditionResult, CurrencyUnit, DeleteAccountResponse, ExchangeOneTimeTokenForSessionTokenResponse, ExchangeStackedLinkTokenResponse, GenerateStackedLinkTokenResponse, GetOneTimeAuthTokenResponse, IAchievementCondition, IBaseCondition, IBuyItemCondition, IClaimableCondition, IClaimableTrackers, IClientPlayerData, ICompletionCondition, ICompletionContextCondition, ICompletionDynamicTracker, ICompletionTrackers, IContractInteractionCondition, ICurrencyCondition, IDaysInGameCondition, IDepositCurrencyCondition, IDynamicCondition, IDynamicConditionItem, IDynamicGroup, IDynamicTrackerCondition, IEntityLinkCondition, IIdentifiersCondition, ILevelCondition, ILinkedCompletionsCondition, ILoginCondition, ILoginStreakCondition, IMembershipCondition, INestedCompletionCondition, INestedSurfacingCondition, IQuestCondition, ISocialCondition, ISocialTrackerAccumulate, ISocialTrackerAttach, ISpendCurrencyCondition, IStackedAccountCondition, IStakedTokensCondition, ISurfacingCondition, ITokenBalanceCondition, ITrustScoreCondition, IUserSettingsCondition, InitializeUnifiedUserResponse, LinkExternalGameToUnifiedAccountResponse, RemoveAuthMethodResponse, RemoveOAuthProviderResponse, SignOutUnifiedUserResponse, StackedAppConnection, StackedAppState, StackedBaseOffer, StackedBaseUser, StackedBaseUserExtra, StackedCampaignsResponse, StackedCampaignsServerResponse, StackedContentItem, StackedContentResponse, StackedContentStats, StackedCurrency, StackedCurrencyPrice, StackedEntityCurrencies, StackedEntityData, StackedEnv, StackedOffer, StackedOfferHelpers, StackedOfferTrackers, StackedPlayerDelta, StackedReward, StackedRewardKind, StackedSnapshot, StackedSnapshotProgress, StackedSupportedNetwork, StackedThirdPartyApp, StackedUser, StackedUserComplete, StackedUserOffer, StackedUserResponse, StackedUserWithApps, StartCryptoAuthResponse, StartOAuthAttachResponse, StartOAuthResponse, StartOneTimeAuthResponse, TeamProgress, UnlinkExternalGameFromUnifiedAccountResponse, UserOfferStatus };
1918
+ export { DEFAULT_ENTITY_KIND, reservedPixelsAnalyticsEvents };
1919
+ export type { CompleteCryptoAuthResponse, CompleteOAuthResponse, CompleteOneTimeAuthResponse, CompletionConditionKind, ConditionDetail, ConditionResult, CurrencyUnit, DeleteAccountResponse, ExchangeOneTimeTokenForSessionTokenResponse, ExchangeStackedLinkTokenResponse, GenerateStackedLinkTokenResponse, GetOneTimeAuthTokenResponse, IAchievementCondition, IBaseCondition, IBuyItemCondition, IClaimableCondition, IClaimableTrackers, IClientPlayerData, ICompletionCondition, ICompletionContextCondition, ICompletionDynamicTracker, ICompletionTrackers, IContractInteractionCondition, ICurrencyCondition, IDaysInGameCondition, IDepositCurrencyCondition, IDynamicCondition, IDynamicConditionItem, IDynamicGroup, IDynamicTrackerCondition, IEntityLinkCondition, IIdentifiersCondition, ILevelCondition, ILinkedCompletionsCondition, ILoginCondition, ILoginStreakCondition, IMembershipCondition, INestedCompletionCondition, INestedSurfacingCondition, IQuestCondition, ISocialCondition, ISocialTrackerAccumulate, ISocialTrackerAttach, ISpendCurrencyCondition, IStackedAccountCondition, IStakedTokensCondition, ISurfacingCondition, ITokenBalanceCondition, ITrustScoreCondition, IUserSettingsCondition, InitializeUnifiedUserResponse, LinkExternalGameToUnifiedAccountResponse, OnchainCustomEvent, PixelsAchievementTxParams, PixelsAnalyticsEvent, PixelsCallContextParams, PixelsCurrencyTxParams, PixelsCustomParams, PixelsEventPayload, PixelsFunnelStepParams, PixelsHeartbeatParams, PixelsIdentifierLinkParams, PixelsItemTxParams, PixelsLevelUpParams, PixelsLinkUserTxParams, PixelsMembershipTxParams, PixelsModifyTagsParams, PixelsOfferRewardWebhook, PixelsOnchainCurrencyTxParams, PixelsOnchainCustomEventParams, PixelsOnchainEventMetadata, PixelsOnchainItemTxParams, PixelsOnchainWalletBalance, PixelsReferUserParams, PixelsSetDynamicFieldParams, PixelsSignInParams, PixelsSignUpParams, PixelsSnapshotParams, PixelsTrustScoreParams, RemoveAuthMethodResponse, RemoveOAuthProviderResponse, ReservedPixelsAnalyticsEvent, SignOutUnifiedUserResponse, StackedAppConnection, StackedAppState, StackedBaseOffer, StackedBaseUser, StackedBaseUserExtra, StackedCampaignsResponse, StackedCampaignsServerResponse, StackedContentItem, StackedContentResponse, StackedContentStats, StackedCurrency, StackedCurrencyPrice, StackedEntityCurrencies, StackedEntityData, StackedEnv, StackedOffer, StackedOfferGroup, StackedOfferGroupKind, StackedOfferGroupResponse, StackedOfferHelpers, StackedOfferTrackers, StackedPlayerDelta, StackedReward, StackedRewardKind, StackedSnapshot, StackedSnapshotProgress, StackedSupportedNetwork, StackedThirdPartyApp, StackedUser, StackedUserComplete, StackedUserOffer, StackedUserResponse, StackedUserWithApps, StartCryptoAuthResponse, StartOAuthAttachResponse, StartOAuthResponse, StartOneTimeAuthResponse, TeamProgress, TxSourceTarget, UnlinkExternalGameFromUnifiedAccountResponse, UserOfferStatus };
@@ -15,12 +15,14 @@ export interface StackedSnapshotProgress {
15
15
  }
16
16
  /** offer fields that define this offer's properties */
17
17
  export interface StackedBaseOffer extends Pick<IOffer, OfferPickFields> {
18
+ /** @deprecated Use offerGroups instead */
19
+ groupId?: string;
18
20
  /** Siblings */
19
21
  siblings?: StackedSnapshotProgress[];
20
22
  /** Progress data for linked entity's offer (e.g., pet's progress on their task) */
21
23
  linked?: StackedSnapshotProgress[];
22
24
  }
23
- type OfferPickFields = 'groupId' | 'name' | 'description' | 'image' | 'gameId' | 'archived' | 'disabled' | 'labels' | 'completionConditions' | 'claimableConditions' | 'rewards' | 'maxClaimCount';
25
+ type OfferPickFields = 'name' | 'description' | 'image' | 'gameId' | 'archived' | 'disabled' | 'labels' | 'completionConditions' | 'claimableConditions' | 'rewards' | 'maxClaimCount';
24
26
  /** user-specific offer fields for this specific user's offer progress */
25
27
  export interface StackedUserOffer extends Pick<IPlayerOffer, UserOfferPickFields> {
26
28
  }
@@ -69,4 +71,22 @@ export type TeamProgress = {
69
71
  percentCompleted: number;
70
72
  isComplete: boolean;
71
73
  };
74
+ export type StackedOfferGroupKind = 'normal' | 'exclusive' | 'milestone' | 'campaign';
75
+ export interface StackedOfferGroup {
76
+ groupId: string;
77
+ name: string;
78
+ kind: StackedOfferGroupKind;
79
+ sortOrder?: number;
80
+ labels?: string[];
81
+ offers: StackedOffer[];
82
+ }
83
+ /** Wire format — API returns offerIds, SDK hydrates into StackedOfferGroup */
84
+ export interface StackedOfferGroupResponse {
85
+ groupId: string;
86
+ name: string;
87
+ kind: StackedOfferGroupKind;
88
+ sortOrder?: number;
89
+ labels?: string[];
90
+ offerIds: string[];
91
+ }
72
92
  //# sourceMappingURL=stacked_offer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"stacked_offer.d.ts","sourceRoot":"","sources":["../stacked_offer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stacked_offer.d.ts","sourceRoot":"","sources":["../stacked_offer.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,13 @@
1
1
  import { StackedAsset, StackedAssets } from './stacked_assets';
2
- import { StackedOffer } from './stacked_offer';
2
+ import { StackedOffer, StackedOfferGroupResponse } from './stacked_offer';
3
3
  import { StackedEntityData, StackedSnapshot } from './stacked_snapshot';
4
4
  import { StackedBaseUser, StackedUserComplete, StackedUserResponse } from './stacked_user';
5
5
  /** Base campaigns response - shared fields between client and server */
6
6
  interface StackedCampaignsBaseResponse extends StackedUserResponse {
7
7
  /** List of offers/campaigns for the player */
8
8
  offers: StackedOffer[];
9
+ /** Offers organized into groups (normal, exclusive, milestone) */
10
+ offerGroups?: StackedOfferGroupResponse[];
9
11
  /**
10
12
  * @deprecated
11
13
  * look at assets for currencies asset information name/image. The actually currencies on
@@ -1 +1 @@
1
- {"version":3,"file":"stacked_response.d.ts","sourceRoot":"","sources":["../stacked_response.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAA2B,iBAAiB,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACjG,OAAO,EAAE,eAAe,EAAe,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAExG,wEAAwE;AACxE,UAAU,4BAA6B,SAAQ,mBAAmB;IAChE,8CAA8C;IAC9C,MAAM,EAAE,YAAY,EAAE,CAAC;IACvB;;;iDAG6C;IAC7C,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IAE1C;;OAEG;IACH,MAAM,EAAE,aAAa,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,MAAM,wBAAwB,GAAG,4BAA4B,CAAC;AAEpE;mDACmD;AACnD,MAAM,WAAW,8BAA+B,SAAQ,4BAA4B;IAClF,mEAAmE;IACnE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kBAAkB;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,8CAA8C;IAC9C,cAAc,CAAC,EAAE,eAAe,CAAC;IACjC,iDAAiD;IACjD,UAAU,CAAC,EAAE,iBAAiB,CAAC;CAChC;AAED,MAAM,MAAM,2BAA2B,GAAG;IACxC,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,2CAA2C,GAAG;IACxD,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE;QACN,QAAQ,CAAC,EAAE,eAAe,CAAC;QAC3B,IAAI,CAAC,EAAE,iBAAiB,CAAC;KAC1B,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,gCAAgC,GAAG;IAC7C,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,gCAAgC,GAAG;IAC7C,MAAM,EAAE,OAAO,CAAC;IAChB,aAAa,EAAE,OAAO,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,6BAA6B,GAAG,mBAAmB,CAAC;AAEhE,MAAM,MAAM,wCAAwC,GAAG;IACrD,IAAI,CAAC,EAAE,eAAe,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,4CAA4C,GAAG,wCAAwC,CAAC;AAEpG,MAAM,MAAM,wBAAwB,GAAG;IACrC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG;IACxC,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,mBAAmB,CAAC;IAC1B,aAAa,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG;IACvC,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,mBAAmB,CAAC;IAC1B,aAAa,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,GAAG,EAAE,MAAM,CAAC;CACb,CAAA;AAED,MAAM,MAAM,wBAAwB,GAAG;IACrC,GAAG,EAAE,MAAM,CAAC;CACb,CAAA;AAED,MAAM,MAAM,qBAAqB,GAAG;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,mBAAmB,CAAC;IAC1B,aAAa,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG;IACxC,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAA;AAED,MAAM,MAAM,0BAA0B,GAAG;IACvC,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAA"}
1
+ {"version":3,"file":"stacked_response.d.ts","sourceRoot":"","sources":["../stacked_response.ts"],"names":[],"mappings":"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"}