@oxyfoo/whymeet-types 0.0.35 → 0.0.37

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.
@@ -1,12 +1,14 @@
1
1
  export type BadgeCategory = 'verification' | 'seniority' | 'hosting' | 'participation';
2
2
  export type BadgeKey = 'verified_profile' | 'veteran' | 'first_event_joined' | 'first_event_hosted' | 'host_5' | 'participant_10' | 'host_10' | 'host_25' | 'participant_50' | 'host_50' | 'host_100';
3
+ export type BadgeRewardType = 'promotional_offer';
4
+ export type BadgePlatform = 'ios' | 'android';
3
5
  export interface BadgeDefinition {
4
6
  key: BadgeKey;
5
7
  emoji: string;
6
8
  category: BadgeCategory;
7
9
  threshold: number | null;
8
10
  displayOrder: number;
9
- rewardType: string | null;
11
+ rewardType: BadgeRewardType | null;
10
12
  rewardOfferIdApple: string | null;
11
13
  rewardOfferIdGoogle: string | null;
12
14
  rewardDescription: string | null;
@@ -14,11 +16,14 @@ export interface BadgeDefinition {
14
16
  export interface UserBadge {
15
17
  key: BadgeKey;
16
18
  emoji: string;
19
+ category: BadgeCategory;
20
+ displayOrder: number;
17
21
  earned: boolean;
18
22
  earnedAt: string | null;
19
23
  progress: number;
20
24
  threshold: number | null;
21
- rewardType: string | null;
25
+ rewardType: BadgeRewardType | null;
22
26
  rewardDescription: string | null;
23
27
  rewardClaimedAt: string | null;
28
+ rewardPendingAt: string | null;
24
29
  }
@@ -1,6 +1,6 @@
1
1
  export interface Notification {
2
2
  id: string;
3
- type: 'match' | 'message' | 'like' | 'system' | 'activity_reminder';
3
+ type: 'match' | 'message' | 'like' | 'system' | 'activity_reminder' | 'badge_unlocked';
4
4
  title: string;
5
5
  body: string;
6
6
  read: boolean;
@@ -37,6 +37,7 @@ export declare const APP_CONFIG_KEYS: {
37
37
  readonly activityOpenDailyPremium: "counter.activity_open.daily.premium";
38
38
  readonly initialSearchTokens: "counter.search.initial";
39
39
  readonly subscriptionBoostDays: "subscription.boost.days";
40
+ readonly subscriptionGracePeriodDays: "subscription.grace_period.days";
40
41
  };
41
42
  export interface UsageLimitConfig {
42
43
  searchDailyFree: number;
@@ -47,6 +48,7 @@ export interface UsageLimitConfig {
47
48
  activityOpenDailyPremium: number;
48
49
  initialSearchTokens: number;
49
50
  subscriptionBoostDays: number;
51
+ subscriptionGracePeriodDays: number;
50
52
  }
51
53
  export declare const PRODUCT_IDS: {
52
54
  readonly subscriptions: {
@@ -23,7 +23,8 @@ export const APP_CONFIG_KEYS = {
23
23
  activityOpenDailyFree: 'counter.activity_open.daily.free',
24
24
  activityOpenDailyPremium: 'counter.activity_open.daily.premium',
25
25
  initialSearchTokens: 'counter.search.initial',
26
- subscriptionBoostDays: 'subscription.boost.days'
26
+ subscriptionBoostDays: 'subscription.boost.days',
27
+ subscriptionGracePeriodDays: 'subscription.grace_period.days'
27
28
  };
28
29
  export const PRODUCT_IDS = {
29
30
  subscriptions: {
@@ -21,7 +21,7 @@ export type { PreferredPeriod } from './Availability.js';
21
21
  export { PREFERRED_PERIODS } from './Availability.js';
22
22
  export type { SubscriptionPlan, SubscriptionStatus, SubscriptionPlatform, UserSubscription, BoostPack, BoostSource, UserBoost, QuotaInfo, SearchQuotaInfo, SwipeQuotaInfo, ActivityQuotaInfo, UsageLimitConfig, PurchaseErrorCode } from './Subscription.js';
23
23
  export { SUBSCRIPTION_PLANS, SUBSCRIPTION_STATUSES, BOOST_PACKS, BOOST_DURATION_DAYS, PRODUCT_IDS, APP_CONFIG_KEYS } from './Subscription.js';
24
- export type { BadgeCategory, BadgeKey, BadgeDefinition, UserBadge } from './Badge.js';
24
+ export type { BadgeCategory, BadgeKey, BadgeDefinition, UserBadge, BadgePlatform, BadgeRewardType } from './Badge.js';
25
25
  export type { HostLevelKey, HostLevel, HostLevelDefinition } from './TrustScore.js';
26
26
  export { HOST_LEVEL_KEYS, HOST_LEVELS, getHostLevel } from './TrustScore.js';
27
27
  export type { EmailTypeKey, EmailTypeDescriptor, EmailScope, EmailDelivery, EmailLogStatus } from './EmailType.js';
@@ -12,7 +12,7 @@ import type { BlockedUser } from '../Models/Block.js';
12
12
  import type { Activity, ActivitySummary, ActivitySearchFilters } from '../Models/Activity.js';
13
13
  import type { InterestCategoryKey } from '../Models/InterestCategory.js';
14
14
  import type { Intention, IntentionSelection, IntentionCategory, IntentionCategoryKey, IntentionKey } from '../Models/Intention.js';
15
- import type { UserBadge } from '../Models/Badge.js';
15
+ import type { BadgeKey, BadgePlatform, UserBadge } from '../Models/Badge.js';
16
16
  import type { PlaceSuggestion, PlaceSuggestionLite } from '../Models/Place.js';
17
17
  import type { AnalyticsClientEvent, AnalyticsEventName } from '../Models/Analytics.js';
18
18
  export interface WSRequest_Handshake {
@@ -439,8 +439,17 @@ export interface WSRequest_GetUserBadges {
439
439
  export interface WSRequest_ClaimBadgeReward {
440
440
  command: 'claim-badge-reward';
441
441
  payload: {
442
- badgeKey: string;
443
- platform: 'ios' | 'android';
442
+ badgeKey: BadgeKey;
443
+ platform: BadgePlatform;
444
+ };
445
+ }
446
+ export interface WSRequest_ConfirmBadgeReward {
447
+ command: 'confirm-badge-reward';
448
+ payload: {
449
+ badgeKey: BadgeKey;
450
+ platform: BadgePlatform;
451
+ purchaseToken?: string;
452
+ success: boolean;
444
453
  };
445
454
  }
446
455
  export interface WSRequest_ConfirmHostAttendance {
@@ -470,7 +479,7 @@ export interface WSRequest_AnalyticsIngest {
470
479
  events: AnalyticsClientEvent<AnalyticsEventName>[];
471
480
  };
472
481
  }
473
- export type WSClientRequest = WSRequest_Handshake | WSRequest_GetProfile | WSRequest_UpdateProfile | WSRequest_GetCandidates | WSRequest_GetCandidateCounts | WSRequest_GetIntentionCatalog | WSRequest_GetIntentionCounts | WSRequest_GetIntentionPopularTags | WSRequest_Like | WSRequest_Skip | WSRequest_Search | WSRequest_GetConversations | WSRequest_GetMessages | WSRequest_SendMessage | WSRequest_GetRequests | WSRequest_AcceptRequest | WSRequest_DeclineRequest | WSRequest_GetNotifications | WSRequest_GetCounters | WSRequest_SubmitFeedback | WSRequest_MarkNotificationRead | WSRequest_BlockUser | WSRequest_ReportUser | WSRequest_Unmatch | WSRequest_GetSettings | WSRequest_UpdateSettings | WSRequest_TagSuggest | WSRequest_GetPreferences | WSRequest_UpdatePreferences | WSRequest_DeleteAccount | WSRequest_RegisterPushToken | WSRequest_GetSubscription | WSRequest_ValidateReceipt | WSRequest_GetSearchQuota | WSRequest_SearchWithToken | WSRequest_PreviewSearch | WSRequest_PurchaseBoost | WSRequest_GetBoostStatus | WSRequest_MarkRead | WSRequest_GetUserProfile | WSRequest_CreateActivity | WSRequest_UpdateActivity | WSRequest_CancelActivity | WSRequest_GetActivity | WSRequest_JoinActivity | WSRequest_LeaveActivity | WSRequest_GetActivities | WSRequest_GetActivityCounts | WSRequest_SearchActivities | WSRequest_SearchActivitiesWithToken | WSRequest_PreviewSearchActivities | WSRequest_GetCandidateActivities | WSRequest_GetPopularActivityTags | WSRequest_ReportActivity | WSRequest_GetMyActivities | WSRequest_GetBlockedUsers | WSRequest_UnblockUser | WSRequest_GetProfilePopularTags | WSRequest_GetRefinePopularTags | WSRequest_GetBadges | WSRequest_GetUserBadges | WSRequest_ClaimBadgeReward | WSRequest_ConfirmHostAttendance | WSRequest_ConfirmParticipation | WSRequest_SetDiscoveryView | WSRequest_PlacesSuggest | WSRequest_PlacesRetrieve | WSRequest_AnalyticsIngest;
482
+ export type WSClientRequest = WSRequest_Handshake | WSRequest_GetProfile | WSRequest_UpdateProfile | WSRequest_GetCandidates | WSRequest_GetCandidateCounts | WSRequest_GetIntentionCatalog | WSRequest_GetIntentionCounts | WSRequest_GetIntentionPopularTags | WSRequest_Like | WSRequest_Skip | WSRequest_Search | WSRequest_GetConversations | WSRequest_GetMessages | WSRequest_SendMessage | WSRequest_GetRequests | WSRequest_AcceptRequest | WSRequest_DeclineRequest | WSRequest_GetNotifications | WSRequest_GetCounters | WSRequest_SubmitFeedback | WSRequest_MarkNotificationRead | WSRequest_BlockUser | WSRequest_ReportUser | WSRequest_Unmatch | WSRequest_GetSettings | WSRequest_UpdateSettings | WSRequest_TagSuggest | WSRequest_GetPreferences | WSRequest_UpdatePreferences | WSRequest_DeleteAccount | WSRequest_RegisterPushToken | WSRequest_GetSubscription | WSRequest_ValidateReceipt | WSRequest_GetSearchQuota | WSRequest_SearchWithToken | WSRequest_PreviewSearch | WSRequest_PurchaseBoost | WSRequest_GetBoostStatus | WSRequest_MarkRead | WSRequest_GetUserProfile | WSRequest_CreateActivity | WSRequest_UpdateActivity | WSRequest_CancelActivity | WSRequest_GetActivity | WSRequest_JoinActivity | WSRequest_LeaveActivity | WSRequest_GetActivities | WSRequest_GetActivityCounts | WSRequest_SearchActivities | WSRequest_SearchActivitiesWithToken | WSRequest_PreviewSearchActivities | WSRequest_GetCandidateActivities | WSRequest_GetPopularActivityTags | WSRequest_ReportActivity | WSRequest_GetMyActivities | WSRequest_GetBlockedUsers | WSRequest_UnblockUser | WSRequest_GetProfilePopularTags | WSRequest_GetRefinePopularTags | WSRequest_GetBadges | WSRequest_GetUserBadges | WSRequest_ConfirmBadgeReward | WSRequest_ClaimBadgeReward | WSRequest_ConfirmHostAttendance | WSRequest_ConfirmParticipation | WSRequest_SetDiscoveryView | WSRequest_PlacesSuggest | WSRequest_PlacesRetrieve | WSRequest_AnalyticsIngest;
474
483
  export type WSClientCommand = WSClientRequest['command'];
475
484
  export interface WSResponse_Handshake {
476
485
  command: 'handshake';
@@ -1011,7 +1020,7 @@ export interface WSResponse_ClaimBadgeReward {
1011
1020
  command: 'claim-badge-reward';
1012
1021
  payload: {
1013
1022
  offerId: string;
1014
- platform: 'ios' | 'android';
1023
+ platform: BadgePlatform;
1015
1024
  keyIdentifier?: string;
1016
1025
  nonce?: string;
1017
1026
  signature?: string;
@@ -1020,6 +1029,13 @@ export interface WSResponse_ClaimBadgeReward {
1020
1029
  error: string;
1021
1030
  };
1022
1031
  }
1032
+ export interface WSResponse_ConfirmBadgeReward {
1033
+ command: 'confirm-badge-reward';
1034
+ payload: {
1035
+ confirmed: boolean;
1036
+ error?: string;
1037
+ };
1038
+ }
1023
1039
  export interface WSResponse_ConfirmHostAttendance {
1024
1040
  command: 'confirm-host-attendance';
1025
1041
  payload: {
@@ -1069,7 +1085,7 @@ export interface WSResponse_AnalyticsIngest {
1069
1085
  error: string;
1070
1086
  };
1071
1087
  }
1072
- export type WSServerResponse = WSResponse_Handshake | WSResponse_GetProfile | WSResponse_UpdateProfile | WSResponse_GetCandidates | WSResponse_GetCandidateCounts | WSResponse_GetIntentionCatalog | WSResponse_GetIntentionCounts | WSResponse_GetIntentionPopularTags | WSResponse_Like | WSResponse_Skip | WSResponse_Search | WSResponse_GetConversations | WSResponse_GetMessages | WSResponse_SendMessage | WSResponse_GetRequests | WSResponse_AcceptRequest | WSResponse_DeclineRequest | WSResponse_SubmitFeedback | WSResponse_GetNotifications | WSResponse_GetCounters | WSResponse_MarkNotificationRead | WSResponse_BlockUser | WSResponse_ReportUser | WSResponse_Unmatch | WSResponse_GetSettings | WSResponse_UpdateSettings | WSResponse_TagSuggest | WSResponse_GetPreferences | WSResponse_UpdatePreferences | WSResponse_DeleteAccount | WSResponse_RegisterPushToken | WSResponse_GetSubscription | WSResponse_ValidateReceipt | WSResponse_GetSearchQuota | WSResponse_SearchWithToken | WSResponse_PreviewSearch | WSResponse_PurchaseBoost | WSResponse_GetBoostStatus | WSResponse_CreateActivity | WSResponse_UpdateActivity | WSResponse_CancelActivity | WSResponse_GetActivity | WSResponse_JoinActivity | WSResponse_LeaveActivity | WSResponse_GetActivities | WSResponse_GetActivityCounts | WSResponse_SearchActivities | WSResponse_SearchActivitiesWithToken | WSResponse_PreviewSearchActivities | WSResponse_GetCandidateActivities | WSResponse_GetPopularActivityTags | WSResponse_ReportActivity | WSResponse_GetMyActivities | WSResponse_MarkRead | WSResponse_GetUserProfile | WSResponse_GetBlockedUsers | WSResponse_UnblockUser | WSResponse_GetProfilePopularTags | WSResponse_GetRefinePopularTags | WSResponse_GetBadges | WSResponse_GetUserBadges | WSResponse_ClaimBadgeReward | WSResponse_ConfirmHostAttendance | WSResponse_ConfirmParticipation | WSResponse_SetDiscoveryView | WSResponse_PlacesSuggest | WSResponse_PlacesRetrieve | WSResponse_AnalyticsIngest;
1088
+ export type WSServerResponse = WSResponse_Handshake | WSResponse_GetProfile | WSResponse_UpdateProfile | WSResponse_GetCandidates | WSResponse_GetCandidateCounts | WSResponse_GetIntentionCatalog | WSResponse_GetIntentionCounts | WSResponse_GetIntentionPopularTags | WSResponse_Like | WSResponse_Skip | WSResponse_Search | WSResponse_GetConversations | WSResponse_GetMessages | WSResponse_SendMessage | WSResponse_GetRequests | WSResponse_AcceptRequest | WSResponse_DeclineRequest | WSResponse_SubmitFeedback | WSResponse_GetNotifications | WSResponse_GetCounters | WSResponse_MarkNotificationRead | WSResponse_BlockUser | WSResponse_ReportUser | WSResponse_Unmatch | WSResponse_GetSettings | WSResponse_UpdateSettings | WSResponse_TagSuggest | WSResponse_GetPreferences | WSResponse_UpdatePreferences | WSResponse_DeleteAccount | WSResponse_RegisterPushToken | WSResponse_GetSubscription | WSResponse_ValidateReceipt | WSResponse_GetSearchQuota | WSResponse_SearchWithToken | WSResponse_PreviewSearch | WSResponse_PurchaseBoost | WSResponse_GetBoostStatus | WSResponse_CreateActivity | WSResponse_UpdateActivity | WSResponse_CancelActivity | WSResponse_GetActivity | WSResponse_JoinActivity | WSResponse_LeaveActivity | WSResponse_GetActivities | WSResponse_GetActivityCounts | WSResponse_SearchActivities | WSResponse_SearchActivitiesWithToken | WSResponse_PreviewSearchActivities | WSResponse_GetCandidateActivities | WSResponse_GetPopularActivityTags | WSResponse_ReportActivity | WSResponse_GetMyActivities | WSResponse_MarkRead | WSResponse_GetUserProfile | WSResponse_GetBlockedUsers | WSResponse_UnblockUser | WSResponse_GetProfilePopularTags | WSResponse_GetRefinePopularTags | WSResponse_GetBadges | WSResponse_GetUserBadges | WSResponse_ClaimBadgeReward | WSResponse_ConfirmBadgeReward | WSResponse_ConfirmHostAttendance | WSResponse_ConfirmParticipation | WSResponse_SetDiscoveryView | WSResponse_PlacesSuggest | WSResponse_PlacesRetrieve | WSResponse_AnalyticsIngest;
1073
1089
  export interface WSEvent_NewMessage {
1074
1090
  event: 'new-message';
1075
1091
  payload: {
@@ -1110,7 +1126,13 @@ export interface WSEvent_RateLimited {
1110
1126
  message: string;
1111
1127
  };
1112
1128
  }
1113
- export type WSServerEvent = WSEvent_NewMessage | WSEvent_NewMatch | WSEvent_Notification | WSEvent_Counters | WSEvent_MarkRead | WSEvent_Suspended | WSEvent_Banned | WSEvent_RateLimited;
1129
+ export interface WSEvent_BadgeUnlocked {
1130
+ event: 'badge-unlocked';
1131
+ payload: {
1132
+ badge: UserBadge;
1133
+ };
1134
+ }
1135
+ export type WSServerEvent = WSEvent_NewMessage | WSEvent_NewMatch | WSEvent_Notification | WSEvent_Counters | WSEvent_MarkRead | WSEvent_Suspended | WSEvent_Banned | WSEvent_RateLimited | WSEvent_BadgeUnlocked;
1114
1136
  export interface WSEnvelope<T = WSClientRequest | WSServerResponse | WSServerEvent> {
1115
1137
  id: string;
1116
1138
  timestamp: number;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oxyfoo/whymeet-types",
3
- "version": "0.0.35",
3
+ "version": "0.0.37",
4
4
  "description": "WhyMeet Types - Shared TypeScript types for the WhyMeet project.",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",