@oxyfoo/whymeet-types 0.0.29 → 0.0.31

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,7 +1,7 @@
1
1
  import type { InterestCategoryKey } from './InterestCategory.js';
2
2
  export declare const INTENTION_CATEGORY_KEYS: readonly ["do_something_together", "go_out_or_move", "talk_and_share", "build_connection", "see_if_it_clicks", "grow_or_build"];
3
3
  export type IntentionCategoryKey = (typeof INTENTION_CATEGORY_KEYS)[number];
4
- export declare const INTENTION_KEYS: readonly ["go_out_coffee", "go_out_drink", "go_out_meal", "go_out_walk", "go_out_tonight", "go_out_discover", "activity_sports", "activity_play", "activity_play_video_games", "activity_play_board_games", "activity_culture", "activity_creative", "activity_food", "activity_outdoor", "talk_light", "talk_deep", "talk_topic", "talk_media", "talk_language_exchange", "talk_online", "meet_make_acquaintance", "meet_feeling", "meet_simple_first_date", "meet_relaxed_date", "meet_spontaneous", "meet_online_first", "regular_sports_partner", "regular_game_partner", "regular_talk_buddy", "regular_social_habit", "regular_small_group", "regular_go_out_often", "build_coworking", "build_project", "build_entrepreneurship", "build_create_together", "build_learn_together", "build_mentoring", "build_collaboration"];
4
+ export declare const INTENTION_KEYS: readonly ["go_out_coffee", "go_out_drink", "go_out_meal", "go_out_walk", "go_out_tonight", "go_out_discover", "activity_sports", "activity_play", "activity_play_video_games", "activity_play_board_games", "activity_play_chess", "activity_culture", "activity_creative", "activity_food", "activity_outdoor", "talk_light", "talk_deep", "talk_topic", "talk_media", "talk_language_exchange", "talk_online", "meet_make_acquaintance", "meet_feeling", "meet_simple_first_date", "meet_relaxed_date", "meet_spontaneous", "meet_online_first", "regular_sports_partner", "regular_game_partner", "regular_talk_buddy", "regular_social_habit", "regular_small_group", "regular_go_out_often", "build_coworking", "build_project", "build_entrepreneurship", "build_create_together", "build_learn_together", "build_mentoring", "build_collaboration"];
5
5
  export type IntentionKey = (typeof INTENTION_KEYS)[number];
6
6
  export type IntentionParentKey = IntentionCategoryKey | IntentionKey;
7
7
  export type SupportedLocale = 'fr' | 'en';
@@ -89,4 +89,7 @@ export declare function getParentKeyForIntention(intentionKey: IntentionKey): In
89
89
  export declare function getCategoryKeyForIntention(intentionKey: IntentionKey): IntentionCategoryKey;
90
90
  export declare function getAncestorIntentionKeys(intentionKey: IntentionKey): IntentionKey[];
91
91
  export declare function getDescendantIntentionKeys(parentKey: IntentionParentKey): IntentionKey[];
92
+ export declare function isTaggableIntention(intentionKey: IntentionKey): boolean;
93
+ export declare function isTaggableCategory(categoryKey: IntentionCategoryKey): boolean;
94
+ export declare function getDisplayLeafIntentions(categoryKey: IntentionCategoryKey): readonly Intention[];
92
95
  export declare function normalizeIntentionSelection(selection: IntentionSelection): IntentionSelection | null;
@@ -17,6 +17,7 @@ export const INTENTION_KEYS = [
17
17
  'activity_play',
18
18
  'activity_play_video_games',
19
19
  'activity_play_board_games',
20
+ 'activity_play_chess',
20
21
  'activity_culture',
21
22
  'activity_creative',
22
23
  'activity_food',
@@ -343,6 +344,28 @@ export const INTENTIONS = [
343
344
  domainKeys: ['gaming', 'culture'],
344
345
  order: 22
345
346
  },
347
+ {
348
+ key: 'activity_play_chess',
349
+ parentKey: 'activity_play',
350
+ categoryKey: 'do_something_together',
351
+ level: 3,
352
+ emoji: '♟️',
353
+ i18n: {
354
+ fr: {
355
+ label: 'Échecs',
356
+ shortLabel: 'Échecs',
357
+ description: 'Jouer aux échecs, du café tranquille au tournoi rapide.'
358
+ },
359
+ en: {
360
+ label: 'Chess',
361
+ shortLabel: 'Chess',
362
+ description: 'Play chess, from casual café games to fast tournaments.'
363
+ }
364
+ },
365
+ tags: ['Blitz', 'Rapide', 'Café échecs', 'Club', 'Débutant', 'Confirmé'],
366
+ domainKeys: ['gaming', 'culture'],
367
+ order: 23
368
+ },
346
369
  {
347
370
  key: 'activity_culture',
348
371
  parentKey: 'do_something_together',
@@ -1064,6 +1087,26 @@ export function getDescendantIntentionKeys(parentKey) {
1064
1087
  visit(parentKey);
1065
1088
  return descendants;
1066
1089
  }
1090
+ const NON_TAGGABLE_CATEGORY_KEYS = new Set(['talk_and_share', 'see_if_it_clicks']);
1091
+ export function isTaggableIntention(intentionKey) {
1092
+ return !NON_TAGGABLE_CATEGORY_KEYS.has(getCategoryKeyForIntention(intentionKey));
1093
+ }
1094
+ export function isTaggableCategory(categoryKey) {
1095
+ return !NON_TAGGABLE_CATEGORY_KEYS.has(categoryKey);
1096
+ }
1097
+ export function getDisplayLeafIntentions(categoryKey) {
1098
+ const leaves = [];
1099
+ for (const intention of getIntentionsForCategory(categoryKey)) {
1100
+ const children = getChildIntentions(intention.key);
1101
+ if (children.length > 0) {
1102
+ leaves.push(...children);
1103
+ }
1104
+ else {
1105
+ leaves.push(intention);
1106
+ }
1107
+ }
1108
+ return leaves.sort((a, b) => a.order - b.order);
1109
+ }
1067
1110
  export function normalizeIntentionSelection(selection) {
1068
1111
  if (!isIntentionKey(selection.intentionKey))
1069
1112
  return null;
@@ -6,6 +6,7 @@ export interface MatchCandidate {
6
6
  id: string;
7
7
  user: User;
8
8
  intentionKeys: IntentionKey[];
9
+ intentionCategoryKeys: IntentionCategoryKey[];
9
10
  intentionMatch?: IntentionMatchSummary;
10
11
  bio: string;
11
12
  interests: string[];
@@ -1,5 +1,5 @@
1
1
  import { User } from './User.js';
2
- import type { IntentionKey } from './Intention.js';
2
+ import type { IntentionCategoryKey, IntentionKey } from './Intention.js';
3
3
  import { Tag } from './Tag.js';
4
4
  import type { HostLevel } from './TrustScore.js';
5
5
  export type SocialVibe = 'reserved' | 'calm' | 'balanced' | 'outgoing' | 'very_social';
@@ -12,6 +12,7 @@ export interface Profile extends User {
12
12
  skills: Tag[];
13
13
  socialVibe: SocialVibe;
14
14
  intentionKeys: IntentionKey[];
15
+ intentionCategoryKeys: IntentionCategoryKey[];
15
16
  spokenLanguages: string[];
16
17
  preferredDiscoveryView: DiscoveryView;
17
18
  location: {
@@ -6,7 +6,7 @@ export { SOCIAL_VIBES } from './Profile.js';
6
6
  export type { InterestCategory, InterestCategoryKey } from './InterestCategory.js';
7
7
  export { INTEREST_CATEGORY_KEYS, INTEREST_CATEGORIES } from './InterestCategory.js';
8
8
  export type { IntentionFallbackLevel, IntentionMatchSummary, Intention, IntentionDomainMapping, IntentionKey, IntentionParentKey, IntentionSelection, IntentionTagMapping, IntentionCategory, IntentionCategoryKey } from './Intention.js';
9
- export { getAllIntentionsForCategory, getAncestorIntentionKeys, getChildIntentions, getDescendantIntentionKeys, getCategoryKeyForIntention, getParentKeyForIntention, getIntention, getIntentionsForCategory, hasChildIntentions, getIntentionCategory, isIntentionKey, isIntentionCategoryKey, normalizeIntentionKey, normalizeIntentionKeys, normalizeIntentionSelection, INTENTION_DOMAIN_MAPPINGS, INTENTION_KEYS, INTENTIONS_BY_PARENT, INTENTION_TAG_MAPPINGS, INTENTIONS, INTENTIONS_BY_KEY, INTENTIONS_BY_CATEGORY, NESTED_INTENTIONS_BY_CATEGORY, INTENTION_CATEGORY_KEYS, INTENTION_CATEGORIES, INTENTION_CATEGORIES_BY_KEY } from './Intention.js';
9
+ export { getAllIntentionsForCategory, getAncestorIntentionKeys, getChildIntentions, getDescendantIntentionKeys, getCategoryKeyForIntention, getDisplayLeafIntentions, getParentKeyForIntention, getIntention, getIntentionsForCategory, hasChildIntentions, getIntentionCategory, isIntentionKey, isIntentionCategoryKey, isTaggableCategory, isTaggableIntention, normalizeIntentionKey, normalizeIntentionKeys, normalizeIntentionSelection, INTENTION_DOMAIN_MAPPINGS, INTENTION_KEYS, INTENTIONS_BY_PARENT, INTENTION_TAG_MAPPINGS, INTENTIONS, INTENTIONS_BY_KEY, INTENTIONS_BY_CATEGORY, NESTED_INTENTIONS_BY_CATEGORY, INTENTION_CATEGORY_KEYS, INTENTION_CATEGORIES, INTENTION_CATEGORIES_BY_KEY } from './Intention.js';
10
10
  export type { Tag, TagMatchType, TagSuggestion } from './Tag.js';
11
11
  export type { SearchFilters } from './Search.js';
12
12
  export type { MatchCandidate, Match, MatchRequest } from './Match.js';
@@ -1,6 +1,6 @@
1
1
  export { SOCIAL_VIBES } from './Profile.js';
2
2
  export { INTEREST_CATEGORY_KEYS, INTEREST_CATEGORIES } from './InterestCategory.js';
3
- export { getAllIntentionsForCategory, getAncestorIntentionKeys, getChildIntentions, getDescendantIntentionKeys, getCategoryKeyForIntention, getParentKeyForIntention, getIntention, getIntentionsForCategory, hasChildIntentions, getIntentionCategory, isIntentionKey, isIntentionCategoryKey, normalizeIntentionKey, normalizeIntentionKeys, normalizeIntentionSelection, INTENTION_DOMAIN_MAPPINGS, INTENTION_KEYS, INTENTIONS_BY_PARENT, INTENTION_TAG_MAPPINGS, INTENTIONS, INTENTIONS_BY_KEY, INTENTIONS_BY_CATEGORY, NESTED_INTENTIONS_BY_CATEGORY, INTENTION_CATEGORY_KEYS, INTENTION_CATEGORIES, INTENTION_CATEGORIES_BY_KEY } from './Intention.js';
3
+ export { getAllIntentionsForCategory, getAncestorIntentionKeys, getChildIntentions, getDescendantIntentionKeys, getCategoryKeyForIntention, getDisplayLeafIntentions, getParentKeyForIntention, getIntention, getIntentionsForCategory, hasChildIntentions, getIntentionCategory, isIntentionKey, isIntentionCategoryKey, isTaggableCategory, isTaggableIntention, normalizeIntentionKey, normalizeIntentionKeys, normalizeIntentionSelection, INTENTION_DOMAIN_MAPPINGS, INTENTION_KEYS, INTENTIONS_BY_PARENT, INTENTION_TAG_MAPPINGS, INTENTIONS, INTENTIONS_BY_KEY, INTENTIONS_BY_CATEGORY, NESTED_INTENTIONS_BY_CATEGORY, INTENTION_CATEGORY_KEYS, INTENTION_CATEGORIES, INTENTION_CATEGORIES_BY_KEY } from './Intention.js';
4
4
  export { GENDERS, DEFAULT_PEOPLE, DEFAULT_ACTIVITY, DEFAULT_VISIBILITY } from './Settings.js';
5
5
  export { PREFERRED_PERIODS } from './Availability.js';
6
6
  export { SUBSCRIPTION_PLANS, SUBSCRIPTION_STATUSES, BOOST_PACKS, BOOST_DURATION_DAYS, PRODUCT_IDS, APP_CONFIG_KEYS } from './Subscription.js';
@@ -11,7 +11,7 @@ import type { FeedbackType } from '../Models/Feedback.js';
11
11
  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
- import type { Intention, IntentionSelection, IntentionCategory, IntentionCategoryKey } from '../Models/Intention.js';
14
+ import type { Intention, IntentionSelection, IntentionCategory, IntentionCategoryKey, IntentionKey } from '../Models/Intention.js';
15
15
  import type { 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';
@@ -62,6 +62,19 @@ export interface WSRequest_GetProfilePopularTags {
62
62
  command: 'get-profile-popular-tags';
63
63
  payload: Record<string, never>;
64
64
  }
65
+ export type RefinePopularTagsScope = {
66
+ type: 'category';
67
+ categoryKey: IntentionCategoryKey;
68
+ } | {
69
+ type: 'intention';
70
+ intentionKey: IntentionKey;
71
+ };
72
+ export interface WSRequest_GetRefinePopularTags {
73
+ command: 'get-refine-popular-tags';
74
+ payload: {
75
+ scope: RefinePopularTagsScope;
76
+ };
77
+ }
65
78
  export interface WSRequest_Like {
66
79
  command: 'like';
67
80
  payload: {
@@ -437,7 +450,7 @@ export interface WSRequest_AnalyticsIngest {
437
450
  events: AnalyticsClientEvent<AnalyticsEventName>[];
438
451
  };
439
452
  }
440
- 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_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_GetBadges | WSRequest_GetUserBadges | WSRequest_ClaimBadgeReward | WSRequest_ConfirmHostAttendance | WSRequest_ConfirmParticipation | WSRequest_SetDiscoveryView | WSRequest_PlacesSuggest | WSRequest_PlacesRetrieve | WSRequest_AnalyticsIngest;
453
+ 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_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;
441
454
  export type WSClientCommand = WSClientRequest['command'];
442
455
  export interface WSResponse_Handshake {
443
456
  command: 'handshake';
@@ -515,11 +528,20 @@ export interface WSResponse_GetProfilePopularTags {
515
528
  error: string;
516
529
  };
517
530
  }
531
+ export interface WSResponse_GetRefinePopularTags {
532
+ command: 'get-refine-popular-tags';
533
+ payload: {
534
+ tags: string[];
535
+ } | {
536
+ error: string;
537
+ };
538
+ }
518
539
  export interface WSResponse_Like {
519
540
  command: 'like';
520
541
  payload: {
521
542
  matched: boolean;
522
543
  conversationId?: string;
544
+ intentionAdded?: boolean;
523
545
  } | {
524
546
  error: string;
525
547
  };
@@ -1000,7 +1022,7 @@ export interface WSResponse_AnalyticsIngest {
1000
1022
  error: string;
1001
1023
  };
1002
1024
  }
1003
- 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_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_GetBadges | WSResponse_GetUserBadges | WSResponse_ClaimBadgeReward | WSResponse_ConfirmHostAttendance | WSResponse_ConfirmParticipation | WSResponse_SetDiscoveryView | WSResponse_PlacesSuggest | WSResponse_PlacesRetrieve | WSResponse_AnalyticsIngest;
1025
+ 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_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;
1004
1026
  export interface WSEvent_NewMessage {
1005
1027
  event: 'new-message';
1006
1028
  payload: {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oxyfoo/whymeet-types",
3
- "version": "0.0.29",
3
+ "version": "0.0.31",
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",