@gymspace/sdk 1.2.13 → 1.2.15

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.
package/dist/index.d.mts CHANGED
@@ -432,11 +432,10 @@ interface CreateGymDto {
432
432
  postalCode?: string;
433
433
  phone?: string;
434
434
  email?: string;
435
- openingTime?: string;
436
- closingTime?: string;
437
435
  capacity?: number;
438
436
  amenities?: GymAmenities;
439
437
  settings?: GymSettings;
438
+ schedule?: GymSchedule;
440
439
  }
441
440
  interface UpdateGymDto {
442
441
  name?: string;
@@ -446,11 +445,10 @@ interface UpdateGymDto {
446
445
  postalCode?: string;
447
446
  phone?: string;
448
447
  email?: string;
449
- openingTime?: string;
450
- closingTime?: string;
451
448
  capacity?: number;
452
449
  amenities?: GymAmenities;
453
450
  settings?: GymSettings;
451
+ schedule?: GymSchedule;
454
452
  }
455
453
  interface GymAmenities {
456
454
  hasParking?: boolean;
@@ -508,8 +506,6 @@ interface Gym {
508
506
  postalCode?: string;
509
507
  phone?: string;
510
508
  email?: string;
511
- openingTime?: string;
512
- closingTime?: string;
513
509
  capacity?: number;
514
510
  amenities?: GymAmenities;
515
511
  settings?: GymSettings;
@@ -518,6 +514,11 @@ interface Gym {
518
514
  isActive: boolean;
519
515
  createdAt: string;
520
516
  updatedAt: string;
517
+ _count?: {
518
+ gymClients: number;
519
+ collaborators: number;
520
+ contracts: number;
521
+ };
521
522
  }
522
523
  interface TimeSlot {
523
524
  open: string;
@@ -673,6 +674,9 @@ interface CreateClientDto {
673
674
  occupation?: string;
674
675
  notes?: string;
675
676
  profilePhotoId?: string;
677
+ emergencyContactName?: string;
678
+ emergencyContactPhone?: string;
679
+ medicalConditions?: string;
676
680
  customData?: Record<string, any>;
677
681
  }
678
682
  interface UpdateClientDto {
@@ -691,6 +695,9 @@ interface UpdateClientDto {
691
695
  occupation?: string;
692
696
  notes?: string;
693
697
  profilePhotoId?: string;
698
+ emergencyContactName?: string;
699
+ emergencyContactPhone?: string;
700
+ medicalConditions?: string;
694
701
  customData?: Record<string, any>;
695
702
  }
696
703
  interface Client {
@@ -877,6 +884,21 @@ declare class MembershipPlansResource extends BaseResource {
877
884
  getMembershipPlanStats(id: string, options?: RequestOptions): Promise<MembershipPlanStats>;
878
885
  }
879
886
 
887
+ declare enum CancellationReason {
888
+ PRICE_TOO_HIGH = "PRICE_TOO_HIGH",
889
+ NOT_USING_SERVICE = "NOT_USING_SERVICE",
890
+ MOVING_LOCATION = "MOVING_LOCATION",
891
+ FINANCIAL_ISSUES = "FINANCIAL_ISSUES",
892
+ SERVICE_DISSATISFACTION = "SERVICE_DISSATISFACTION",
893
+ TEMPORARY_BREAK = "TEMPORARY_BREAK",
894
+ OTHER = "OTHER"
895
+ }
896
+ declare enum SuspensionType {
897
+ VACATION = "vacation",
898
+ MEDICAL = "medical",
899
+ FINANCIAL = "financial",
900
+ OTHER = "other"
901
+ }
880
902
  interface CreateContractDto {
881
903
  gymClientId: string;
882
904
  gymMembershipPlanId: string;
@@ -902,6 +924,32 @@ interface FreezeContractDto {
902
924
  freezeEndDate: string;
903
925
  reason?: string;
904
926
  }
927
+ interface CancelContractDto {
928
+ reason: CancellationReason;
929
+ detailedFeedback?: string;
930
+ offeredAlternatives?: boolean;
931
+ wouldRecommend?: boolean;
932
+ satisfactionScore?: number;
933
+ }
934
+ interface SuspendContractDto {
935
+ suspensionType: SuspensionType;
936
+ startDate: string;
937
+ endDate?: string;
938
+ reason?: string;
939
+ maintainBenefits?: boolean;
940
+ autoReactivate?: boolean;
941
+ }
942
+ interface ResumeContractDto {
943
+ resumeDate?: string;
944
+ notes?: string;
945
+ }
946
+ interface ReactivateContractDto {
947
+ newPlanId?: string;
948
+ startDate: string;
949
+ applyWinBackOffer?: boolean;
950
+ paymentMethodId: string;
951
+ notes?: string;
952
+ }
905
953
  interface Contract {
906
954
  id: string;
907
955
  gymId: string;
@@ -913,34 +961,70 @@ interface Contract {
913
961
  startDate: string;
914
962
  endDate: string;
915
963
  status: ContractStatus;
916
- price: number;
917
- discountPercentage?: number;
918
- finalAmount: number;
919
- freezeStartDate?: string;
920
- freezeEndDate?: string;
964
+ basePrice: string;
965
+ customPrice?: string | null;
966
+ finalAmount: string;
967
+ currency: string;
968
+ discountPercentage?: number | null;
969
+ discountAmount?: string | null;
970
+ paymentFrequency: string;
971
+ notes?: string | null;
972
+ termsAndConditions?: string | null;
973
+ freezeStartDate?: string | null;
974
+ freezeEndDate?: string | null;
975
+ contractDocumentId?: string | null;
976
+ paymentReceiptIds?: string[] | null;
921
977
  receiptIds?: string[];
922
978
  metadata?: Record<string, any>;
979
+ createdByUserId?: string;
980
+ updatedByUserId?: string | null;
981
+ approvedByUserId?: string | null;
982
+ approvedAt?: string | null;
983
+ cancelledByUserId?: string | null;
984
+ cancelledAt?: string | null;
923
985
  createdAt: string;
924
986
  updatedAt: string;
987
+ deletedAt?: string | null;
925
988
  gymClient?: {
926
989
  id: string;
927
990
  name: string;
928
- email: string;
991
+ email: string | null;
992
+ phone?: string;
993
+ gym?: {
994
+ id: string;
995
+ name: string;
996
+ };
929
997
  };
930
998
  gymMembershipPlan?: {
931
999
  id: string;
1000
+ gymId: string;
932
1001
  name: string;
933
- basePrice?: number;
934
- durationMonths?: number;
1002
+ basePrice: string;
1003
+ durationMonths?: number | null;
1004
+ durationDays?: number | null;
1005
+ description?: string;
1006
+ features?: string[];
1007
+ termsAndConditions?: string;
1008
+ allowsCustomPricing?: boolean;
1009
+ includesAdvisor?: boolean;
1010
+ showInCatalog?: boolean;
1011
+ assetsIds?: string[];
1012
+ status?: string;
935
1013
  };
936
1014
  paymentMethod?: {
937
1015
  id: string;
1016
+ organizationId: string;
938
1017
  name: string;
939
1018
  description?: string;
940
1019
  code: string;
941
1020
  enabled: boolean;
1021
+ metadata?: Record<string, any>;
942
1022
  };
943
1023
  renewals?: Contract[];
1024
+ createdBy?: {
1025
+ id: string;
1026
+ email: string;
1027
+ };
944
1028
  }
945
1029
  interface GetContractsParams extends PaginationQueryDto {
946
1030
  status?: ContractStatus;
@@ -951,6 +1035,38 @@ interface GetContractsParams extends PaginationQueryDto {
951
1035
  endDateFrom?: string;
952
1036
  endDateTo?: string;
953
1037
  }
1038
+ interface ContractLifecycleEvent {
1039
+ id: string;
1040
+ contractId: string;
1041
+ eventType: string;
1042
+ previousStatus?: string;
1043
+ newStatus?: string;
1044
+ reason?: string;
1045
+ metadata?: Record<string, any>;
1046
+ createdAt: string;
1047
+ createdBy?: {
1048
+ id: string;
1049
+ name: string;
1050
+ email: string;
1051
+ };
1052
+ }
1053
+ interface CancellationAnalytics {
1054
+ total: number;
1055
+ reasonBreakdown: Record<string, number>;
1056
+ averageSatisfaction: number | null;
1057
+ recommendationRate: number;
1058
+ feedbacks: Array<{
1059
+ id: string;
1060
+ contractId: string;
1061
+ contractNumber: string;
1062
+ clientName: string;
1063
+ reason: string;
1064
+ detailedFeedback?: string;
1065
+ satisfactionScore?: number;
1066
+ wouldRecommend?: boolean;
1067
+ createdAt: string;
1068
+ }>;
1069
+ }
954
1070
 
955
1071
  declare class ContractsResource extends BaseResource {
956
1072
  private basePath;
@@ -960,9 +1076,15 @@ declare class ContractsResource extends BaseResource {
960
1076
  getClientContracts(clientId: string, options?: RequestOptions): Promise<Contract[]>;
961
1077
  renewContract(id: string, data: RenewContractDto, options?: RequestOptions): Promise<Contract>;
962
1078
  freezeContract(id: string, data: FreezeContractDto, options?: RequestOptions): Promise<Contract>;
963
- cancelContract(id: string, data: {
964
- reason: string;
965
- }, options?: RequestOptions): Promise<Contract>;
1079
+ cancelContract(id: string, data: CancelContractDto, options?: RequestOptions): Promise<Contract>;
1080
+ suspendContract(id: string, data: SuspendContractDto, options?: RequestOptions): Promise<Contract>;
1081
+ resumeContract(id: string, data: ResumeContractDto, options?: RequestOptions): Promise<Contract>;
1082
+ reactivateContract(id: string, data: ReactivateContractDto, options?: RequestOptions): Promise<Contract>;
1083
+ getLifecycleHistory(id: string, options?: RequestOptions): Promise<ContractLifecycleEvent[]>;
1084
+ getCancellationAnalytics(params?: {
1085
+ startDate?: string;
1086
+ endDate?: string;
1087
+ }, options?: RequestOptions): Promise<CancellationAnalytics>;
966
1088
  resendWhatsAppNotification(contractId: string, options?: RequestOptions): Promise<{
967
1089
  success: boolean;
968
1090
  message: string;
@@ -1171,10 +1293,42 @@ interface ClientCheckInHistory {
1171
1293
 
1172
1294
  declare class CheckInsResource extends BaseResource {
1173
1295
  private basePath;
1296
+ /**
1297
+ * Creates a new check-in for a client.
1298
+ *
1299
+ * **Permissions Required:**
1300
+ * - Gym owners with full gym access
1301
+ * - Active collaborators with CHECKINS_CREATE permission
1302
+ *
1303
+ * @param data - The check-in data including client ID and optional notes
1304
+ * @param options - Optional request configuration
1305
+ * @returns The created check-in record with client and user details
1306
+ * @throws {ValidationError} When client is not found or already checked in
1307
+ * @throws {AuthorizationError} When user lacks required permissions
1308
+ */
1174
1309
  createCheckIn(data: CreateCheckInDto, options?: RequestOptions): Promise<CheckIn>;
1175
1310
  searchCheckIns(params?: SearchCheckInsParams, options?: RequestOptions): Promise<CheckInListResponse>;
1176
1311
  getCurrentlyInGym(options?: RequestOptions): Promise<CurrentlyInGymResponse>;
1177
1312
  getCheckIn(id: string, options?: RequestOptions): Promise<CheckIn>;
1313
+ /**
1314
+ * Deletes a check-in record.
1315
+ *
1316
+ * **Permissions Required:**
1317
+ * - Gym owners with full gym access
1318
+ * - Active collaborators with CHECKINS_CREATE permission
1319
+ *
1320
+ * **Business Rules:**
1321
+ * - Only check-ins from today can be deleted
1322
+ * - The same permission level required for creation is required for deletion
1323
+ * - Cannot delete check-ins from previous days
1324
+ *
1325
+ * @param id - The ID of the check-in to delete
1326
+ * @param options - Optional request configuration
1327
+ * @returns Promise that resolves when the check-in is successfully deleted
1328
+ * @throws {NotFoundError} When the check-in is not found
1329
+ * @throws {AuthorizationError} When user lacks required permissions
1330
+ * @throws {ValidationError} When trying to delete a check-in from a previous day
1331
+ */
1178
1332
  deleteCheckIn(id: string, options?: RequestOptions): Promise<void>;
1179
1333
  getGymCheckInStats(params: GetCheckInStatsParams, options?: RequestOptions): Promise<CheckInStats>;
1180
1334
  getClientCheckInHistory(clientId: string, params?: GetClientCheckInHistoryParams, options?: RequestOptions): Promise<ClientCheckInHistory>;
@@ -2522,6 +2676,347 @@ declare class BulkMessagingResource extends BaseResource {
2522
2676
  getLogs(sendId: string, options?: RequestOptions): Promise<BulkLogsResponseDto>;
2523
2677
  }
2524
2678
 
2679
+ interface CreateActivityDto {
2680
+ name: string;
2681
+ description?: string;
2682
+ imageId?: string;
2683
+ startDateTime: string;
2684
+ durationMinutes: number;
2685
+ maxParticipants?: number;
2686
+ recurrenceType?: 'daily' | 'weekly' | 'monthly';
2687
+ recurrenceEndDate?: string;
2688
+ planRestrictions?: string[];
2689
+ }
2690
+ interface UpdateActivityDto {
2691
+ name?: string;
2692
+ description?: string;
2693
+ imageId?: string;
2694
+ startDateTime?: string;
2695
+ durationMinutes?: number;
2696
+ maxParticipants?: number;
2697
+ recurrenceType?: 'daily' | 'weekly' | 'monthly';
2698
+ recurrenceEndDate?: string;
2699
+ planRestrictions?: string[];
2700
+ isActive?: boolean;
2701
+ }
2702
+ interface Activity {
2703
+ id: string;
2704
+ gymId: string;
2705
+ name: string;
2706
+ description?: string;
2707
+ imageId?: string;
2708
+ startDateTime: string;
2709
+ durationMinutes: number;
2710
+ maxParticipants?: number;
2711
+ recurrenceType?: 'daily' | 'weekly' | 'monthly';
2712
+ recurrenceEndDate?: string;
2713
+ isActive: boolean;
2714
+ planRestrictions: ActivityPlanRestriction[];
2715
+ notifications?: ActivityNotification[];
2716
+ createdByUserId: string;
2717
+ updatedByUserId?: string;
2718
+ createdAt: string;
2719
+ updatedAt: string;
2720
+ deletedAt?: string;
2721
+ }
2722
+ interface ActivityPlanRestriction {
2723
+ id: string;
2724
+ membershipPlanId: string;
2725
+ membershipPlan: {
2726
+ id: string;
2727
+ name: string;
2728
+ };
2729
+ }
2730
+ interface SearchActivitiesParams {
2731
+ page?: number;
2732
+ limit?: number;
2733
+ search?: string;
2734
+ startDate?: string;
2735
+ endDate?: string;
2736
+ recurrenceType?: 'daily' | 'weekly' | 'monthly';
2737
+ planId?: string;
2738
+ isActive?: boolean;
2739
+ }
2740
+ interface CreateActivityNotificationDto {
2741
+ templateId?: string;
2742
+ customMessage?: string;
2743
+ advanceTimeMinutes: number;
2744
+ }
2745
+ interface UpdateActivityNotificationDto {
2746
+ templateId?: string;
2747
+ customMessage?: string;
2748
+ advanceTimeMinutes?: number;
2749
+ isActive?: boolean;
2750
+ }
2751
+ interface ActivityNotification {
2752
+ id: string;
2753
+ activityId: string;
2754
+ templateId?: string;
2755
+ customMessage?: string;
2756
+ advanceTimeMinutes: number;
2757
+ isActive: boolean;
2758
+ template?: {
2759
+ id: string;
2760
+ name: string;
2761
+ message: string;
2762
+ };
2763
+ sentNotifications?: SentActivityNotification[];
2764
+ createdByUserId: string;
2765
+ createdAt: string;
2766
+ updatedAt: string;
2767
+ }
2768
+ interface SentActivityNotification {
2769
+ id: string;
2770
+ sendId: string;
2771
+ recipientsCount: number;
2772
+ sentAt: string;
2773
+ status: string;
2774
+ }
2775
+ interface ActivityStats {
2776
+ totalActivities: number;
2777
+ activeActivities: number;
2778
+ upcomingActivities: number;
2779
+ totalNotificationsSent: number;
2780
+ notificationsByActivity: {
2781
+ activityId: string;
2782
+ activityName: string;
2783
+ notificationsSent: number;
2784
+ lastSentAt: string;
2785
+ }[];
2786
+ }
2787
+ interface ActivityStatsParams {
2788
+ startDate?: string;
2789
+ endDate?: string;
2790
+ }
2791
+ interface EligibleClient {
2792
+ id: string;
2793
+ name: string;
2794
+ phone: string;
2795
+ email: string;
2796
+ planName: string;
2797
+ }
2798
+ interface EligibleClientsResponse {
2799
+ total: number;
2800
+ clients: EligibleClient[];
2801
+ }
2802
+ interface DeleteActivityParams {
2803
+ deleteRecurrence?: boolean;
2804
+ }
2805
+
2806
+ declare class ActivitiesResource extends BaseResource {
2807
+ private basePath;
2808
+ createActivity(data: CreateActivityDto, options?: RequestOptions): Promise<Activity>;
2809
+ searchActivities(params?: SearchActivitiesParams, options?: RequestOptions): Promise<PaginatedResponseDto<Activity>>;
2810
+ getActivity(id: string, options?: RequestOptions): Promise<Activity>;
2811
+ updateActivity(id: string, data: UpdateActivityDto, options?: RequestOptions): Promise<Activity>;
2812
+ deleteActivity(id: string, params?: DeleteActivityParams, options?: RequestOptions): Promise<void>;
2813
+ createNotification(activityId: string, data: CreateActivityNotificationDto, options?: RequestOptions): Promise<ActivityNotification>;
2814
+ getNotifications(activityId: string, options?: RequestOptions): Promise<{
2815
+ data: ActivityNotification[];
2816
+ }>;
2817
+ updateNotification(activityId: string, notificationId: string, data: UpdateActivityNotificationDto, options?: RequestOptions): Promise<ActivityNotification>;
2818
+ deleteNotification(activityId: string, notificationId: string, options?: RequestOptions): Promise<void>;
2819
+ getStats(params?: ActivityStatsParams, options?: RequestOptions): Promise<ActivityStats>;
2820
+ getEligibleClients(activityId: string, options?: RequestOptions): Promise<EligibleClientsResponse>;
2821
+ }
2822
+
2823
+ interface CreateTagDto {
2824
+ name: string;
2825
+ color?: string;
2826
+ description?: string;
2827
+ }
2828
+ interface UpdateTagDto {
2829
+ name?: string;
2830
+ color?: string;
2831
+ description?: string;
2832
+ }
2833
+ interface AssignTagsDto {
2834
+ tagIds: string[];
2835
+ }
2836
+ interface RemoveTagsDto {
2837
+ tagIds: string[];
2838
+ }
2839
+ interface Tag {
2840
+ id: string;
2841
+ gymId: string;
2842
+ name: string;
2843
+ color?: string;
2844
+ description?: string;
2845
+ clientCount?: number;
2846
+ createdAt: string;
2847
+ updatedAt: string;
2848
+ createdBy?: {
2849
+ id: string;
2850
+ name: string;
2851
+ };
2852
+ }
2853
+ interface TagWithAssignment extends Tag {
2854
+ assignedAt?: string;
2855
+ assignedBy?: {
2856
+ id: string;
2857
+ name: string;
2858
+ };
2859
+ }
2860
+ interface SearchTagsParams {
2861
+ page?: number;
2862
+ limit?: number;
2863
+ search?: string;
2864
+ includeCount?: boolean;
2865
+ sortBy?: 'name' | 'createdAt' | 'clientCount';
2866
+ sortOrder?: 'asc' | 'desc';
2867
+ }
2868
+ interface GetTagClientsParams {
2869
+ page?: number;
2870
+ limit?: number;
2871
+ search?: string;
2872
+ status?: 'active' | 'inactive';
2873
+ }
2874
+ interface AssignTagsResponse {
2875
+ message: string;
2876
+ assigned: number;
2877
+ skipped: number;
2878
+ client: {
2879
+ id: string;
2880
+ name: string;
2881
+ tags: TagWithAssignment[];
2882
+ };
2883
+ }
2884
+ interface RemoveTagsResponse {
2885
+ message: string;
2886
+ removed: number;
2887
+ notFound: number;
2888
+ client: {
2889
+ id: string;
2890
+ name: string;
2891
+ tags: TagWithAssignment[];
2892
+ };
2893
+ }
2894
+ interface DeleteTagResponse {
2895
+ message: string;
2896
+ deletedCount: number;
2897
+ affectedClients: number;
2898
+ }
2899
+ interface ClientTagsResponse {
2900
+ client: {
2901
+ id: string;
2902
+ name: string;
2903
+ clientNumber: string;
2904
+ };
2905
+ tags: TagWithAssignment[];
2906
+ total: number;
2907
+ }
2908
+ interface TagClientsResponse {
2909
+ data: Array<{
2910
+ id: string;
2911
+ clientNumber: string;
2912
+ name: string;
2913
+ email?: string;
2914
+ phone?: string;
2915
+ status: string;
2916
+ assignedAt: string;
2917
+ assignedBy: {
2918
+ id: string;
2919
+ name: string;
2920
+ };
2921
+ }>;
2922
+ meta: {
2923
+ total: number;
2924
+ page: number;
2925
+ limit: number;
2926
+ totalPages: number;
2927
+ };
2928
+ tag: {
2929
+ id: string;
2930
+ name: string;
2931
+ color?: string;
2932
+ };
2933
+ }
2934
+ interface TagStatsResponse {
2935
+ totalTags: number;
2936
+ totalAssignments: number;
2937
+ averageTagsPerClient: number;
2938
+ mostUsedTags: Array<{
2939
+ id: string;
2940
+ name: string;
2941
+ color?: string;
2942
+ clientCount: number;
2943
+ }>;
2944
+ leastUsedTags: Array<{
2945
+ id: string;
2946
+ name: string;
2947
+ color?: string;
2948
+ clientCount: number;
2949
+ }>;
2950
+ unusedTags: Array<{
2951
+ id: string;
2952
+ name: string;
2953
+ color?: string;
2954
+ clientCount: number;
2955
+ }>;
2956
+ }
2957
+
2958
+ declare class TagsResource extends BaseResource {
2959
+ private basePath;
2960
+ /**
2961
+ * Create a new tag
2962
+ * POST /api/v1/tags
2963
+ */
2964
+ createTag(data: CreateTagDto, options?: RequestOptions): Promise<Tag>;
2965
+ /**
2966
+ * List all tags with optional filters and pagination
2967
+ * GET /api/v1/tags
2968
+ */
2969
+ searchTags(params?: SearchTagsParams, options?: RequestOptions): Promise<PaginatedResponseDto<Tag>>;
2970
+ /**
2971
+ * Get a specific tag by ID
2972
+ * GET /api/v1/tags/:id
2973
+ */
2974
+ getTag(id: string, options?: RequestOptions): Promise<Tag>;
2975
+ /**
2976
+ * Update an existing tag
2977
+ * PUT /api/v1/tags/:id
2978
+ */
2979
+ updateTag(id: string, data: UpdateTagDto, options?: RequestOptions): Promise<Tag>;
2980
+ /**
2981
+ * Delete a tag (soft delete)
2982
+ * DELETE /api/v1/tags/:id
2983
+ * @param id - Tag ID
2984
+ * @param force - Force deletion even if tag has assigned clients
2985
+ */
2986
+ deleteTag(id: string, force?: boolean, options?: RequestOptions): Promise<DeleteTagResponse>;
2987
+ /**
2988
+ * Get clients with a specific tag
2989
+ * GET /api/v1/tags/:id/clients
2990
+ */
2991
+ getTagClients(id: string, params?: GetTagClientsParams, options?: RequestOptions): Promise<TagClientsResponse>;
2992
+ /**
2993
+ * Get tag statistics
2994
+ * GET /api/v1/tags/stats
2995
+ */
2996
+ getTagStats(options?: RequestOptions): Promise<TagStatsResponse>;
2997
+ /**
2998
+ * Assign one or multiple tags to a client
2999
+ * POST /api/v1/clients/:clientId/tags
3000
+ */
3001
+ assignTagsToClient(clientId: string, data: AssignTagsDto, options?: RequestOptions): Promise<AssignTagsResponse>;
3002
+ /**
3003
+ * Remove a specific tag from a client
3004
+ * DELETE /api/v1/clients/:clientId/tags/:tagId
3005
+ */
3006
+ removeTagFromClient(clientId: string, tagId: string, options?: RequestOptions): Promise<RemoveTagsResponse>;
3007
+ /**
3008
+ * Remove multiple tags from a client
3009
+ * DELETE /api/v1/clients/:clientId/tags
3010
+ * Note: This endpoint requires sending tagIds in the request body
3011
+ */
3012
+ removeTagsFromClient(clientId: string, tagIds: string[], options?: RequestOptions): Promise<RemoveTagsResponse>;
3013
+ /**
3014
+ * Get all tags assigned to a client
3015
+ * GET /api/v1/clients/:clientId/tags
3016
+ */
3017
+ getClientTags(clientId: string, options?: RequestOptions): Promise<ClientTagsResponse>;
3018
+ }
3019
+
2525
3020
  declare class GymSpaceSdk {
2526
3021
  client: ApiClient;
2527
3022
  private expoFetch?;
@@ -2552,6 +3047,8 @@ declare class GymSpaceSdk {
2552
3047
  whatsapp: WhatsAppResource;
2553
3048
  whatsappTemplates: WhatsAppTemplatesResource;
2554
3049
  bulkMessaging: BulkMessagingResource;
3050
+ activities: ActivitiesResource;
3051
+ tags: TagsResource;
2555
3052
  constructor(config: GymSpaceConfig);
2556
3053
  /**
2557
3054
  * Set the authentication token
@@ -2621,4 +3118,4 @@ declare class NetworkError extends GymSpaceError {
2621
3118
  constructor(message?: string);
2622
3119
  }
2623
3120
 
2624
- export { type ActivateRenewalDto, AdminSubscriptionManagementResource, type AdminSubscriptionStatusDto, type AffiliateOrganizationDto, type Amenities, ApiClient, type ApiResponse, type AssetResponseDto, AssetsResource, AuthResource, AuthenticationError, AuthorizationError, type AvailablePlanDto, type BulkLogsResponse, type BulkLogsResponseDto, type BulkMessageLog, type BulkMessageLogDto, type BulkMessageResult, type BulkMessageResultDto, type BulkMessageVariable, BulkMessagingResource, type BulkTemplate, type BusinessHours, type CancelSubscriptionDto, type CatalogGym, type ChangePasswordDto, type ChangePasswordResponseDto, type CheckIn, type CheckInDetail, type CheckInListResponse, type CheckInStats, type CheckInSystemFeatures, type CheckIns, type CheckInsList, CheckInsResource, type CheckLimitResponse, type CityWithGyms, type Client, type ClientCheckInHistory, type ClientManagementFeatures, type ClientStat, type ClientStats, ClientsResource, type CollaboratorRoleDto, CollaboratorsResource, type CompleteGuidedSetupData, type ConfigureFeaturesData, type ConnectionStatusResponse, type Contact, type Contract, type ContractSettings, ContractsResource, type ContractsRevenue, type CreateBulkTemplateDto, type CreateCheckInDto, type CreateClientDto, type CreateContractDto, type CreateGymDto, type CreateMembershipPlanDto, type CreatePaymentMethodDto, type CreateProductCategoryDto, type CreateProductDto, type CreateSaleDto, type CreateServiceDto, type CreateSubscriptionPlanDto, type CreateSupplierDto, type CreateTemplateDto, type CreateWhatsAppConfigDto, type CurrentSessionResponse, type CurrentlyInGymResponse, type CustomerSalesReport, DashboardResource, type DashboardStats, type DateRangeParams, type DaySchedule, type Debts, type DisconnectResponse, type ExpiringContract, type FileResponseDto, FilesResource, type FreezeContractDto, type GenerateAIMessageDto, type GenerateAIMessageParams, type GenerateAIMessageResponse, type GenerateAIMessageResponseDto, type GetBulkLogsQueryDto, type GetCheckInStatsParams, type GetClientCheckInHistoryParams, type GetContractsParams, type GetFeaturedGymsParams, type GetGymInvitationsParams, type GetMembershipPlansParams, type Gym, type GymAmenities, type GymSchedule, type GymSettings, type GymSocialMedia, type GymSpaceConfig, GymSpaceError, GymSpaceSdk, type GymStats, GymsResource, HealthResource, type HealthResponse, type InitializeConnectionResponse, type InventorySettings, type InvitationValidationResponse, InvitationsResource, type ListContactsResponse, type LoginDto, type LoginResponseDto, type MembershipManagementFeatures, type MembershipPlan, type MembershipPlanStats, MembershipPlansResource, NetworkError, type NewClients, NotFoundError, type NotificationSettings, OnboardingResource, type OnboardingResponse, type OnboardingStatus, OnboardingStep, type Organization, type OrganizationAdminDetails, type OrganizationStats, type OrganizationWithDetails, OrganizationsResource, type PaginatedResponse, type PaginatedResponseDto, type PaginationParams, type PaginationQueryDto, type PaySaleDto, type PaymentMethod, type PaymentMethodStats, PaymentMethodsResource, type PermissionsGroup, type PreviewTemplateResponse, type PriceDto, type PricingDto, type Product, type ProductCategory, ProductsResource, PublicCatalogResource, type ReadyResponse, type RegisterCollaboratorDto, type RegisterOwnerDto, type RejectedClient, type RejectedClientDto, type RenewContractDto, type RequestOptions, type RequestPasswordResetDto, type RequestPasswordResetResponseDto, type ResendResetCodeDto, type ResendResetCodeResponseDto, type ResendVerificationDto, type ResetPasswordDto, type ResetPasswordResponseDto, RolesResource, type Sale, type SaleItem, type SaleItemDto, SalesResource, type SalesRevenue, type SalesStats, type SearchCatalogParams, type SearchCheckInsParams, type SearchClientsParams, type SearchPaymentMethodsParams, type SearchProductsParams, type SearchSalesParams, type SearchSuppliersParams, type SearchTemplatesDto, type SearchWhatsAppMessagesDto, type SendBulkMessagesDto, type SendWhatsAppMessageDto, type SocialMedia, type StartOnboardingData, type StartOnboardingResponse, type StockMovement, type Subscription, type SubscriptionHistoryDto, type SubscriptionPlan, type SubscriptionPlanDto, SubscriptionPlansResource, type SubscriptionStatusDto, SubscriptionsResource, type Supplier, SuppliersResource, type SuppliersStats, type TimeSlot, type TopSellingProduct, type UpdateBulkTemplateDto, type UpdateClientDto, type UpdateGymContractSettingsDto, type UpdateGymDto, type UpdateGymInventorySettingsDto, type UpdateGymScheduleDto, type UpdateGymSettingsData, type UpdateGymSocialMediaDto, type UpdateMembershipPlanDto, type UpdateOrganizationDto, type UpdatePaymentMethodDto, type UpdatePaymentStatusDto, type UpdateProductCategoryDto, type UpdateProductDto, type UpdateProfileDto, type UpdateSaleDto, type UpdateStockDto, type UpdateSubscriptionPlanDto, type UpdateSupplierDto, type UpdateTemplateDto, type UpdateWhatsAppConfigDto, type UpgradeSubscriptionDto, type UploadAssetDto, type UploadFileDto, type UserProfileDto, UsersResource, ValidationError, type VerifyEmailDto, type VerifyResetCodeDto, type VerifyResetCodeResponseDto, type WeeklySchedule, type WhatsAppConfig, type WhatsAppMessage, WhatsAppResource, type WhatsAppTemplate, WhatsAppTemplatesResource };
3121
+ export { type ActivateRenewalDto, ActivitiesResource, type Activity, type ActivityNotification, type ActivityPlanRestriction, type ActivityStats, type ActivityStatsParams, AdminSubscriptionManagementResource, type AdminSubscriptionStatusDto, type AffiliateOrganizationDto, type Amenities, ApiClient, type ApiResponse, type AssetResponseDto, AssetsResource, type AssignTagsDto, type AssignTagsResponse, AuthResource, AuthenticationError, AuthorizationError, type AvailablePlanDto, type BulkLogsResponse, type BulkLogsResponseDto, type BulkMessageLog, type BulkMessageLogDto, type BulkMessageResult, type BulkMessageResultDto, type BulkMessageVariable, BulkMessagingResource, type BulkTemplate, type BusinessHours, type CancelContractDto, type CancelSubscriptionDto, type CancellationAnalytics, CancellationReason, type CatalogGym, type ChangePasswordDto, type ChangePasswordResponseDto, type CheckIn, type CheckInDetail, type CheckInListResponse, type CheckInStats, type CheckInSystemFeatures, type CheckIns, type CheckInsList, CheckInsResource, type CheckLimitResponse, type CityWithGyms, type Client, type ClientCheckInHistory, type ClientManagementFeatures, type ClientStat, type ClientStats, type ClientTagsResponse, ClientsResource, type CollaboratorRoleDto, CollaboratorsResource, type CompleteGuidedSetupData, type ConfigureFeaturesData, type ConnectionStatusResponse, type Contact, type Contract, type ContractLifecycleEvent, type ContractSettings, ContractsResource, type ContractsRevenue, type CreateActivityDto, type CreateActivityNotificationDto, type CreateBulkTemplateDto, type CreateCheckInDto, type CreateClientDto, type CreateContractDto, type CreateGymDto, type CreateMembershipPlanDto, type CreatePaymentMethodDto, type CreateProductCategoryDto, type CreateProductDto, type CreateSaleDto, type CreateServiceDto, type CreateSubscriptionPlanDto, type CreateSupplierDto, type CreateTagDto, type CreateTemplateDto, type CreateWhatsAppConfigDto, type CurrentSessionResponse, type CurrentlyInGymResponse, type CustomerSalesReport, DashboardResource, type DashboardStats, type DateRangeParams, type DaySchedule, type Debts, type DeleteActivityParams, type DeleteTagResponse, type DisconnectResponse, type EligibleClient, type EligibleClientsResponse, type ExpiringContract, type FileResponseDto, FilesResource, type FreezeContractDto, type GenerateAIMessageDto, type GenerateAIMessageParams, type GenerateAIMessageResponse, type GenerateAIMessageResponseDto, type GetBulkLogsQueryDto, type GetCheckInStatsParams, type GetClientCheckInHistoryParams, type GetContractsParams, type GetFeaturedGymsParams, type GetGymInvitationsParams, type GetMembershipPlansParams, type GetTagClientsParams, type Gym, type GymAmenities, type GymSchedule, type GymSettings, type GymSocialMedia, type GymSpaceConfig, GymSpaceError, GymSpaceSdk, type GymStats, GymsResource, HealthResource, type HealthResponse, type InitializeConnectionResponse, type InventorySettings, type InvitationValidationResponse, InvitationsResource, type ListContactsResponse, type LoginDto, type LoginResponseDto, type MembershipManagementFeatures, type MembershipPlan, type MembershipPlanStats, MembershipPlansResource, NetworkError, type NewClients, NotFoundError, type NotificationSettings, OnboardingResource, type OnboardingResponse, type OnboardingStatus, OnboardingStep, type Organization, type OrganizationAdminDetails, type OrganizationStats, type OrganizationWithDetails, OrganizationsResource, type PaginatedResponse, type PaginatedResponseDto, type PaginationParams, type PaginationQueryDto, type PaySaleDto, type PaymentMethod, type PaymentMethodStats, PaymentMethodsResource, type PermissionsGroup, type PreviewTemplateResponse, type PriceDto, type PricingDto, type Product, type ProductCategory, ProductsResource, PublicCatalogResource, type ReactivateContractDto, type ReadyResponse, type RegisterCollaboratorDto, type RegisterOwnerDto, type RejectedClient, type RejectedClientDto, type RemoveTagsDto, type RemoveTagsResponse, type RenewContractDto, type RequestOptions, type RequestPasswordResetDto, type RequestPasswordResetResponseDto, type ResendResetCodeDto, type ResendResetCodeResponseDto, type ResendVerificationDto, type ResetPasswordDto, type ResetPasswordResponseDto, type ResumeContractDto, RolesResource, type Sale, type SaleItem, type SaleItemDto, SalesResource, type SalesRevenue, type SalesStats, type SearchActivitiesParams, type SearchCatalogParams, type SearchCheckInsParams, type SearchClientsParams, type SearchPaymentMethodsParams, type SearchProductsParams, type SearchSalesParams, type SearchSuppliersParams, type SearchTagsParams, type SearchTemplatesDto, type SearchWhatsAppMessagesDto, type SendBulkMessagesDto, type SendWhatsAppMessageDto, type SentActivityNotification, type SocialMedia, type StartOnboardingData, type StartOnboardingResponse, type StockMovement, type Subscription, type SubscriptionHistoryDto, type SubscriptionPlan, type SubscriptionPlanDto, SubscriptionPlansResource, type SubscriptionStatusDto, SubscriptionsResource, type Supplier, SuppliersResource, type SuppliersStats, type SuspendContractDto, SuspensionType, type Tag, type TagClientsResponse, type TagStatsResponse, type TagWithAssignment, TagsResource, type TimeSlot, type TopSellingProduct, type UpdateActivityDto, type UpdateActivityNotificationDto, type UpdateBulkTemplateDto, type UpdateClientDto, type UpdateGymContractSettingsDto, type UpdateGymDto, type UpdateGymInventorySettingsDto, type UpdateGymScheduleDto, type UpdateGymSettingsData, type UpdateGymSocialMediaDto, type UpdateMembershipPlanDto, type UpdateOrganizationDto, type UpdatePaymentMethodDto, type UpdatePaymentStatusDto, type UpdateProductCategoryDto, type UpdateProductDto, type UpdateProfileDto, type UpdateSaleDto, type UpdateStockDto, type UpdateSubscriptionPlanDto, type UpdateSupplierDto, type UpdateTagDto, type UpdateTemplateDto, type UpdateWhatsAppConfigDto, type UpgradeSubscriptionDto, type UploadAssetDto, type UploadFileDto, type UserProfileDto, UsersResource, ValidationError, type VerifyEmailDto, type VerifyResetCodeDto, type VerifyResetCodeResponseDto, type WeeklySchedule, type WhatsAppConfig, type WhatsAppMessage, WhatsAppResource, type WhatsAppTemplate, WhatsAppTemplatesResource };