@wix/auto_sdk_online-programs_participants 1.0.11 → 1.0.13
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/build/cjs/index.d.ts +6 -134
- package/build/cjs/index.js +161 -1489
- package/build/cjs/index.js.map +1 -1
- package/build/cjs/index.typings.d.ts +691 -12
- package/build/cjs/index.typings.js +174 -1372
- package/build/cjs/index.typings.js.map +1 -1
- package/build/cjs/meta.d.ts +184 -1274
- package/build/cjs/meta.js +19 -1060
- package/build/cjs/meta.js.map +1 -1
- package/build/es/index.d.mts +6 -134
- package/build/es/index.mjs +144 -1446
- package/build/es/index.mjs.map +1 -1
- package/build/es/index.typings.d.mts +691 -12
- package/build/es/index.typings.mjs +166 -1337
- package/build/es/index.typings.mjs.map +1 -1
- package/build/es/meta.d.mts +184 -1274
- package/build/es/meta.mjs +10 -1025
- package/build/es/meta.mjs.map +1 -1
- package/build/internal/cjs/index.d.ts +6 -145
- package/build/internal/cjs/index.js +161 -1489
- package/build/internal/cjs/index.js.map +1 -1
- package/build/internal/cjs/index.typings.d.ts +691 -12
- package/build/internal/cjs/index.typings.js +174 -1372
- package/build/internal/cjs/index.typings.js.map +1 -1
- package/build/internal/cjs/meta.d.ts +184 -1274
- package/build/internal/cjs/meta.js +19 -1060
- package/build/internal/cjs/meta.js.map +1 -1
- package/build/internal/es/index.d.mts +6 -145
- package/build/internal/es/index.mjs +144 -1446
- package/build/internal/es/index.mjs.map +1 -1
- package/build/internal/es/index.typings.d.mts +691 -12
- package/build/internal/es/index.typings.mjs +166 -1337
- package/build/internal/es/index.typings.mjs.map +1 -1
- package/build/internal/es/meta.d.mts +184 -1274
- package/build/internal/es/meta.mjs +10 -1025
- package/build/internal/es/meta.mjs.map +1 -1
- package/package.json +2 -2
- package/build/cjs/online-programs-v3-participant-participants.universal-DRubTE1O.d.ts +0 -2228
- package/build/es/online-programs-v3-participant-participants.universal-DRubTE1O.d.mts +0 -2228
- package/build/internal/cjs/online-programs-v3-participant-participants.universal-DUdmZP01.d.ts +0 -2238
- package/build/internal/es/online-programs-v3-participant-participants.universal-DUdmZP01.d.mts +0 -2238
package/build/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../index.ts","../../src/online-programs-v3-participant-participants.public.ts","../../src/online-programs-v3-participant-participants.universal.ts","../../src/online-programs-v3-participant-participants.http.ts","../../src/online-programs-v3-participant-participants.context.ts"],"sourcesContent":["export * from './src/online-programs-v3-participant-participants.context.js';\n","import { renameKeysFromRESTResponseToSDKResponse } from '@wix/sdk-runtime/rename-all-nested-keys';\nimport { transformRESTTimestampToSDKTimestamp } from '@wix/sdk-runtime/transformations/timestamp';\nimport { transformPaths } from '@wix/sdk-runtime/transformations/transform-paths';\nimport { EventDefinition, HttpClient, NonNullablePaths } from '@wix/sdk-types';\nimport {\n BulkAddAllToProgramOptions,\n BulkAddAllToProgramResponse,\n BulkAddToProgramOptions,\n BulkAddToProgramResponse,\n BulkApproveAllParticipantOptions,\n BulkApproveAllParticipantResponse,\n BulkApproveParticipantOptions,\n BulkApproveParticipantResponse,\n BulkCreateParticipantOptions,\n BulkCreateParticipantResponse,\n BulkInviteAllToProgramOptions,\n BulkInviteAllToProgramResponse,\n BulkInviteToProgramOptions,\n BulkInviteToProgramResponse,\n BulkUpdateParticipantTagsApplicationErrors,\n BulkUpdateParticipantTagsByFilterApplicationErrors,\n BulkUpdateParticipantTagsByFilterOptions,\n BulkUpdateParticipantTagsByFilterResponse,\n BulkUpdateParticipantTagsOptions,\n BulkUpdateParticipantTagsResponse,\n CreateParticipantApplicationErrors,\n GetAccessStatusResponse,\n GetCompletionStatsResponse,\n GetPremiumStatsResponse,\n IssueCertificateResponse,\n Participant,\n ParticipantAddedEnvelope,\n ParticipantApprovedEnvelope,\n ParticipantInvitedEnvelope,\n ParticipantQuery,\n ParticipantSearch,\n ParticipantsQueryBuilder,\n QueryParticipantsResponse,\n SearchParticipantsResponse,\n bulkAddAllToProgram as universalBulkAddAllToProgram,\n bulkAddToProgram as universalBulkAddToProgram,\n bulkApproveAllParticipant as universalBulkApproveAllParticipant,\n bulkApproveParticipant as universalBulkApproveParticipant,\n bulkCreateParticipant as universalBulkCreateParticipant,\n bulkInviteAllToProgram as universalBulkInviteAllToProgram,\n bulkInviteToProgram as universalBulkInviteToProgram,\n bulkUpdateParticipantTags as universalBulkUpdateParticipantTags,\n bulkUpdateParticipantTagsByFilter as universalBulkUpdateParticipantTagsByFilter,\n createParticipant as universalCreateParticipant,\n deleteParticipant as universalDeleteParticipant,\n exportParticipantsStats as universalExportParticipantsStats,\n getAccessStatus as universalGetAccessStatus,\n getCompletionStats as universalGetCompletionStats,\n getParticipant as universalGetParticipant,\n getPremiumStats as universalGetPremiumStats,\n issueCertificate as universalIssueCertificate,\n queryParticipants as universalQueryParticipants,\n searchParticipants as universalSearchParticipants,\n typedQueryParticipants as universalTypedQueryParticipants,\n} from './online-programs-v3-participant-participants.universal.js';\n\nexport const __metadata = { PACKAGE_NAME: '@wix/online-programs' };\n\nexport function createParticipant(\n httpClient: HttpClient\n): CreateParticipantSignature {\n return (\n participant: NonNullablePaths<\n Participant,\n `joinedInfo.joinPath` | `memberId` | `programId`,\n 3\n >\n ) =>\n universalCreateParticipant(\n participant,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface CreateParticipantSignature {\n /**\n * Create one participant.\n * @param - Participant to create\n * @returns Created participant\n */\n (\n participant: NonNullablePaths<\n Participant,\n `joinedInfo.joinPath` | `memberId` | `programId`,\n 3\n >\n ): Promise<\n NonNullablePaths<\n Participant,\n | `memberId`\n | `programId`\n | `progress.totalStepsCompleted`\n | `progress.totalStepsAvailable`\n | `progress.completionPercentage`\n | `status`\n | `joinedInfo.singlePaymentDetails.paymentOrderId`\n | `joinedInfo.paidPlanDetails.paidPlanId`\n | `joinedInfo.freeCouponDetails.freeCouponId`\n | `joinedInfo.timeZone`\n | `joinedInfo.startDate`\n | `joinedInfo.joinPath`\n | `member.contactId`\n | `tags.privateTags.tagIds`,\n 4\n > & {\n __applicationErrorsType?: CreateParticipantApplicationErrors;\n }\n >;\n}\n\nexport function bulkCreateParticipant(\n httpClient: HttpClient\n): BulkCreateParticipantSignature {\n return (\n participants: NonNullablePaths<\n Participant,\n `joinedInfo.joinPath` | `memberId` | `programId`,\n 3\n >[],\n options?: BulkCreateParticipantOptions\n ) =>\n universalBulkCreateParticipant(\n participants,\n options,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface BulkCreateParticipantSignature {\n /**\n * Creates participants in bulk.\n * @param - List of participants you want to create\n */\n (\n participants: NonNullablePaths<\n Participant,\n `joinedInfo.joinPath` | `memberId` | `programId`,\n 3\n >[],\n options?: BulkCreateParticipantOptions\n ): Promise<\n NonNullablePaths<\n BulkCreateParticipantResponse,\n | `results`\n | `results.${number}.itemMetadata.originalIndex`\n | `results.${number}.itemMetadata.success`\n | `results.${number}.itemMetadata.error.code`\n | `results.${number}.itemMetadata.error.description`\n | `results.${number}.item.memberId`\n | `results.${number}.item.programId`\n | `results.${number}.item.progress.totalStepsCompleted`\n | `results.${number}.item.progress.totalStepsAvailable`\n | `results.${number}.item.progress.completionPercentage`\n | `results.${number}.item.status`\n | `results.${number}.item.joinedInfo.timeZone`\n | `results.${number}.item.joinedInfo.startDate`\n | `results.${number}.item.joinedInfo.joinPath`\n | `results.${number}.item.member.contactId`\n | `bulkActionMetadata.totalSuccesses`\n | `bulkActionMetadata.totalFailures`\n | `bulkActionMetadata.undetailedFailures`,\n 6\n >\n >;\n}\n\nexport function bulkAddAllToProgram(\n httpClient: HttpClient\n): BulkAddAllToProgramSignature {\n return (programId: string, options?: BulkAddAllToProgramOptions) =>\n universalBulkAddAllToProgram(\n programId,\n options,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface BulkAddAllToProgramSignature {\n /**\n * Bulk adds all site members to program, but not more then 1000.\n * Participant will be either created in state Joined, or updated to that state\n * from pending one.\n * @param - Program to which bulk add participants.\n */\n (programId: string, options?: BulkAddAllToProgramOptions): Promise<\n NonNullablePaths<BulkAddAllToProgramResponse, `jobId`, 2>\n >;\n}\n\nexport function deleteParticipant(\n httpClient: HttpClient\n): DeleteParticipantSignature {\n return (participantId: string) =>\n universalDeleteParticipant(\n participantId,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface DeleteParticipantSignature {\n /**\n * Delete participant from program. Removes participant from member\n * group. Leaves him in Social Group.\n * @param - Participants to delete\n */\n (participantId: string): Promise<void>;\n}\n\nexport function issueCertificate(\n httpClient: HttpClient\n): IssueCertificateSignature {\n return (participantId: string) =>\n universalIssueCertificate(\n participantId,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface IssueCertificateSignature {\n /**\n * Issue certificate by site admin\n * @param - Participant to get certificate\n */\n (participantId: string): Promise<\n NonNullablePaths<\n IssueCertificateResponse,\n | `participant.memberId`\n | `participant.programId`\n | `participant.progress.totalStepsCompleted`\n | `participant.progress.totalStepsAvailable`\n | `participant.progress.completionPercentage`\n | `participant.status`\n | `participant.joinedInfo.singlePaymentDetails.paymentOrderId`\n | `participant.joinedInfo.paidPlanDetails.paidPlanId`\n | `participant.joinedInfo.freeCouponDetails.freeCouponId`\n | `participant.joinedInfo.timeZone`\n | `participant.joinedInfo.startDate`\n | `participant.joinedInfo.joinPath`\n | `participant.member.contactId`\n | `participant.tags.privateTags.tagIds`,\n 5\n >\n >;\n}\n\nexport function getCompletionStats(\n httpClient: HttpClient\n): GetCompletionStatsSignature {\n return (programId: string) =>\n universalGetCompletionStats(\n programId,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface GetCompletionStatsSignature {\n /**\n * Get program's completion stats\n * @param - program id to get stats for\n */\n (programId: string): Promise<\n NonNullablePaths<\n GetCompletionStatsResponse,\n `completedAll` | `completionRate`,\n 2\n >\n >;\n}\n\nexport function getPremiumStats(\n httpClient: HttpClient\n): GetPremiumStatsSignature {\n return () =>\n universalGetPremiumStats(\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface GetPremiumStatsSignature {\n /**\n * Get premium stats\n */\n (): Promise<\n NonNullablePaths<\n GetPremiumStatsResponse,\n `hasPremium` | `activeParticipantsCount` | `activeParticipantsLimit`,\n 2\n >\n >;\n}\n\nexport function getParticipant(\n httpClient: HttpClient\n): GetParticipantSignature {\n return (participantId: string) =>\n universalGetParticipant(\n participantId,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface GetParticipantSignature {\n /**\n * Returns participant.\n * @param - Participant id to fetch\n * @returns existing participant\n */\n (participantId: string): Promise<\n NonNullablePaths<\n Participant,\n | `memberId`\n | `programId`\n | `progress.totalStepsCompleted`\n | `progress.totalStepsAvailable`\n | `progress.completionPercentage`\n | `status`\n | `joinedInfo.singlePaymentDetails.paymentOrderId`\n | `joinedInfo.paidPlanDetails.paidPlanId`\n | `joinedInfo.freeCouponDetails.freeCouponId`\n | `joinedInfo.timeZone`\n | `joinedInfo.startDate`\n | `joinedInfo.joinPath`\n | `member.contactId`\n | `tags.privateTags.tagIds`,\n 4\n >\n >;\n}\n\nexport function queryParticipants(\n httpClient: HttpClient\n): QueryParticipantsSignature {\n return () =>\n universalQueryParticipants(\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface QueryParticipantsSignature {\n /**\n * Query existing participants\n */\n (): ParticipantsQueryBuilder;\n}\n\nexport function typedQueryParticipants(\n httpClient: HttpClient\n): TypedQueryParticipantsSignature {\n return (query: ParticipantQuery) =>\n universalTypedQueryParticipants(\n query,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface TypedQueryParticipantsSignature {\n /** */\n (query: ParticipantQuery): Promise<\n NonNullablePaths<\n QueryParticipantsResponse,\n | `participants`\n | `participants.${number}.memberId`\n | `participants.${number}.programId`\n | `participants.${number}.progress.totalStepsCompleted`\n | `participants.${number}.progress.totalStepsAvailable`\n | `participants.${number}.progress.completionPercentage`\n | `participants.${number}.status`\n | `participants.${number}.joinedInfo.singlePaymentDetails.paymentOrderId`\n | `participants.${number}.joinedInfo.paidPlanDetails.paidPlanId`\n | `participants.${number}.joinedInfo.freeCouponDetails.freeCouponId`\n | `participants.${number}.joinedInfo.timeZone`\n | `participants.${number}.joinedInfo.startDate`\n | `participants.${number}.joinedInfo.joinPath`\n | `participants.${number}.member.contactId`,\n 6\n >\n >;\n}\n\nexport function getAccessStatus(\n httpClient: HttpClient\n): GetAccessStatusSignature {\n return () =>\n universalGetAccessStatus(\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface GetAccessStatusSignature {\n /**\n * Get access status\n */\n (): Promise<NonNullablePaths<GetAccessStatusResponse, `blocked`, 2>>;\n}\n\nexport function bulkUpdateParticipantTags(\n httpClient: HttpClient\n): BulkUpdateParticipantTagsSignature {\n return (\n participantIds: string[],\n options?: BulkUpdateParticipantTagsOptions\n ) =>\n universalBulkUpdateParticipantTags(\n participantIds,\n options,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface BulkUpdateParticipantTagsSignature {\n /**\n * Updates tags for multiple Participants by IDs.\n *\n * Allows assigning and/or unassigning tags in a single operation.\n * At least one of assign_tags or unassign_tags must be provided.\n * @param - Participant IDs to update tags for (1-100 items)\n */\n (\n participantIds: string[],\n options?: BulkUpdateParticipantTagsOptions\n ): Promise<\n NonNullablePaths<\n BulkUpdateParticipantTagsResponse,\n | `results`\n | `results.${number}.itemMetadata.originalIndex`\n | `results.${number}.itemMetadata.success`\n | `results.${number}.itemMetadata.error.code`\n | `results.${number}.itemMetadata.error.description`\n | `bulkActionMetadata.totalSuccesses`\n | `bulkActionMetadata.totalFailures`\n | `bulkActionMetadata.undetailedFailures`,\n 6\n > & {\n __applicationErrorsType?: BulkUpdateParticipantTagsApplicationErrors;\n }\n >;\n}\n\nexport function bulkUpdateParticipantTagsByFilter(\n httpClient: HttpClient\n): BulkUpdateParticipantTagsByFilterSignature {\n return (\n filter: Record<string, any>,\n options?: BulkUpdateParticipantTagsByFilterOptions\n ) =>\n universalBulkUpdateParticipantTagsByFilter(\n filter,\n options,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface BulkUpdateParticipantTagsByFilterSignature {\n /**\n * Updates tags for Participants matching a filter.\n *\n * Allows assigning and/or unassigning tags for all Participants matching the filter.\n * Returns a job ID for tracking the async operation.\n * @param - WQL filter to select Participants\n */\n (\n filter: Record<string, any>,\n options?: BulkUpdateParticipantTagsByFilterOptions\n ): Promise<\n NonNullablePaths<BulkUpdateParticipantTagsByFilterResponse, `jobId`, 2> & {\n __applicationErrorsType?: BulkUpdateParticipantTagsByFilterApplicationErrors;\n }\n >;\n}\n\nexport function searchParticipants(\n httpClient: HttpClient\n): SearchParticipantsSignature {\n return (search: ParticipantSearch) =>\n universalSearchParticipants(\n search,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface SearchParticipantsSignature {\n /**\n * Retrieves a list of programs according to search criteria\n * @param - Query to search programs\n */\n (search: ParticipantSearch): Promise<\n NonNullablePaths<\n SearchParticipantsResponse,\n | `participants`\n | `participants.${number}.memberId`\n | `participants.${number}.programId`\n | `participants.${number}.progress.totalStepsCompleted`\n | `participants.${number}.progress.totalStepsAvailable`\n | `participants.${number}.progress.completionPercentage`\n | `participants.${number}.status`\n | `participants.${number}.joinedInfo.singlePaymentDetails.paymentOrderId`\n | `participants.${number}.joinedInfo.paidPlanDetails.paidPlanId`\n | `participants.${number}.joinedInfo.freeCouponDetails.freeCouponId`\n | `participants.${number}.joinedInfo.timeZone`\n | `participants.${number}.joinedInfo.startDate`\n | `participants.${number}.joinedInfo.joinPath`\n | `participants.${number}.member.contactId`\n | `aggregationData.results`\n | `aggregationData.results.${number}.scalar.type`\n | `aggregationData.results.${number}.scalar.value`\n | `aggregationData.results.${number}.name`\n | `aggregationData.results.${number}.type`\n | `aggregationData.results.${number}.fieldPath`,\n 6\n >\n >;\n}\n\nexport function bulkInviteToProgram(\n httpClient: HttpClient\n): BulkInviteToProgramSignature {\n return (programId: string, options?: BulkInviteToProgramOptions) =>\n universalBulkInviteToProgram(\n programId,\n options,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface BulkInviteToProgramSignature {\n /**\n * Bulk invites participants to program.\n * For each member participant in Invited state is created.\n * @param - Program to which bulk invite participants.\n */\n (programId: string, options?: BulkInviteToProgramOptions): Promise<\n NonNullablePaths<\n BulkInviteToProgramResponse,\n | `results`\n | `results.${number}.itemMetadata.originalIndex`\n | `results.${number}.itemMetadata.success`\n | `results.${number}.itemMetadata.error.code`\n | `results.${number}.itemMetadata.error.description`\n | `results.${number}.item.memberId`\n | `results.${number}.item.programId`\n | `results.${number}.item.progress.totalStepsCompleted`\n | `results.${number}.item.progress.totalStepsAvailable`\n | `results.${number}.item.progress.completionPercentage`\n | `results.${number}.item.status`\n | `results.${number}.item.joinedInfo.timeZone`\n | `results.${number}.item.joinedInfo.startDate`\n | `results.${number}.item.joinedInfo.joinPath`\n | `results.${number}.item.member.contactId`\n | `bulkActionMetadata.totalSuccesses`\n | `bulkActionMetadata.totalFailures`\n | `bulkActionMetadata.undetailedFailures`,\n 6\n >\n >;\n}\n\nexport function bulkInviteAllToProgram(\n httpClient: HttpClient\n): BulkInviteAllToProgramSignature {\n return (programId: string, options?: BulkInviteAllToProgramOptions) =>\n universalBulkInviteAllToProgram(\n programId,\n options,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface BulkInviteAllToProgramSignature {\n /**\n * Bulk invites all participants to program, but not more then 1000.\n * For each member participant in Invited state is created.\n * @param - Program to which bulk add participants.\n */\n (programId: string, options?: BulkInviteAllToProgramOptions): Promise<\n NonNullablePaths<\n BulkInviteAllToProgramResponse,\n | `bulkActionMetadata.totalSuccesses`\n | `bulkActionMetadata.totalFailures`\n | `bulkActionMetadata.undetailedFailures`,\n 3\n >\n >;\n}\n\nexport function bulkAddToProgram(\n httpClient: HttpClient\n): BulkAddToProgramSignature {\n return (programId: string, options?: BulkAddToProgramOptions) =>\n universalBulkAddToProgram(\n programId,\n options,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface BulkAddToProgramSignature {\n /**\n * Bulk adds participants to program.\n * Participant will be either created in state Joined, or updated to that state\n * from pending one.\n * @param - Program to which bulk add participants.\n */\n (programId: string, options?: BulkAddToProgramOptions): Promise<\n NonNullablePaths<\n BulkAddToProgramResponse,\n | `results`\n | `results.${number}.itemMetadata.originalIndex`\n | `results.${number}.itemMetadata.success`\n | `results.${number}.itemMetadata.error.code`\n | `results.${number}.itemMetadata.error.description`\n | `results.${number}.item.memberId`\n | `results.${number}.item.programId`\n | `results.${number}.item.progress.totalStepsCompleted`\n | `results.${number}.item.progress.totalStepsAvailable`\n | `results.${number}.item.progress.completionPercentage`\n | `results.${number}.item.status`\n | `results.${number}.item.joinedInfo.timeZone`\n | `results.${number}.item.joinedInfo.startDate`\n | `results.${number}.item.joinedInfo.joinPath`\n | `results.${number}.item.member.contactId`\n | `bulkActionMetadata.totalSuccesses`\n | `bulkActionMetadata.totalFailures`\n | `bulkActionMetadata.undetailedFailures`,\n 6\n >\n >;\n}\n\nexport function bulkApproveParticipant(\n httpClient: HttpClient\n): BulkApproveParticipantSignature {\n return (participantIds: string[], options?: BulkApproveParticipantOptions) =>\n universalBulkApproveParticipant(\n participantIds,\n options,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface BulkApproveParticipantSignature {\n /**\n * Bulk approves participants, who asked to join private program (aka in\n * state `APPROVAL_PENDING`). If participant was in other state, no effect and\n * error returned.\n * @param - Participants to add\n */\n (participantIds: string[], options?: BulkApproveParticipantOptions): Promise<\n NonNullablePaths<\n BulkApproveParticipantResponse,\n | `results`\n | `results.${number}.itemMetadata.originalIndex`\n | `results.${number}.itemMetadata.success`\n | `results.${number}.itemMetadata.error.code`\n | `results.${number}.itemMetadata.error.description`\n | `results.${number}.item.memberId`\n | `results.${number}.item.programId`\n | `results.${number}.item.progress.totalStepsCompleted`\n | `results.${number}.item.progress.totalStepsAvailable`\n | `results.${number}.item.progress.completionPercentage`\n | `results.${number}.item.status`\n | `results.${number}.item.joinedInfo.timeZone`\n | `results.${number}.item.joinedInfo.startDate`\n | `results.${number}.item.joinedInfo.joinPath`\n | `results.${number}.item.member.contactId`\n | `bulkActionMetadata.totalSuccesses`\n | `bulkActionMetadata.totalFailures`\n | `bulkActionMetadata.undetailedFailures`,\n 6\n >\n >;\n}\n\nexport function bulkApproveAllParticipant(\n httpClient: HttpClient\n): BulkApproveAllParticipantSignature {\n return (options?: BulkApproveAllParticipantOptions) =>\n universalBulkApproveAllParticipant(\n options,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface BulkApproveAllParticipantSignature {\n /**\n * Bulk approves all pending participants, who asked to join private program (aka\n * in state `APPROVAL_PENDING`).\n */\n (options?: BulkApproveAllParticipantOptions): Promise<\n NonNullablePaths<BulkApproveAllParticipantResponse, `jobId`, 2>\n >;\n}\n\n/** @internal */\nexport function exportParticipantsStats(\n httpClient: HttpClient\n): ExportParticipantsStatsSignature {\n return (programId: string) =>\n universalExportParticipantsStats(\n programId,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface ExportParticipantsStatsSignature {\n /**\n * Exports data about participants as well as resolved steps in program.\n * @param - program id to export data from\n */\n (programId: string): Promise<void>;\n}\n\nexport const onParticipantAdded = EventDefinition(\n 'wix.online_programs.v3.participant_added',\n true,\n (event: ParticipantAddedEnvelope) =>\n renameKeysFromRESTResponseToSDKResponse(\n transformPaths(event, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [{ path: 'metadata.eventTime' }],\n },\n ])\n )\n)<ParticipantAddedEnvelope>();\nexport const onParticipantApproved = EventDefinition(\n 'wix.online_programs.v3.participant_participant_approved',\n true,\n (event: ParticipantApprovedEnvelope) =>\n renameKeysFromRESTResponseToSDKResponse(\n transformPaths(event, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [{ path: 'metadata.eventTime' }],\n },\n ])\n )\n)<ParticipantApprovedEnvelope>();\nexport const onParticipantInvited = EventDefinition(\n 'wix.online_programs.v3.participant_participant_invited',\n true,\n (event: ParticipantInvitedEnvelope) =>\n renameKeysFromRESTResponseToSDKResponse(\n transformPaths(event, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [{ path: 'metadata.eventTime' }],\n },\n ])\n )\n)<ParticipantInvitedEnvelope>();\n\nexport {\n ActionEvent,\n Aggregation,\n AggregationData,\n AggregationKindOneOf,\n AggregationResults,\n AggregationResultsResultOneOf,\n AggregationResultsScalarResult,\n AggregationType,\n ApplicationError,\n BaseEventMetadata,\n Behavior,\n BehaviorBehaviorOneOf,\n Benefit,\n BenefitNotification,\n BenefitType,\n BulkActionMetadata,\n BulkAddAllToProgramOptions,\n BulkAddAllToProgramRequest,\n BulkAddAllToProgramResponse,\n BulkAddToProgramOptions,\n BulkAddToProgramRequest,\n BulkAddToProgramResponse,\n BulkAddToProgramResult,\n BulkApproveAllParticipantOptions,\n BulkApproveAllParticipantRequest,\n BulkApproveAllParticipantResponse,\n BulkApproveParticipantOptions,\n BulkApproveParticipantRequest,\n BulkApproveParticipantResponse,\n BulkApproveParticipantResult,\n BulkCreateParticipantOptions,\n BulkCreateParticipantRequest,\n BulkCreateParticipantResponse,\n BulkInviteAllToProgramOptions,\n BulkInviteAllToProgramRequest,\n BulkInviteAllToProgramResponse,\n BulkInviteToProgramOptions,\n BulkInviteToProgramRequest,\n BulkInviteToProgramResponse,\n BulkInviteToProgramResult,\n BulkParticipantResult,\n BulkUpdateParticipantTagsByFilterOptions,\n BulkUpdateParticipantTagsByFilterRequest,\n BulkUpdateParticipantTagsByFilterResponse,\n BulkUpdateParticipantTagsOptions,\n BulkUpdateParticipantTagsRequest,\n BulkUpdateParticipantTagsResponse,\n BulkUpdateParticipantTagsResult,\n Certificate,\n CommonBulkActionMetadata,\n CommonItemMetadata,\n CreateParticipantRequest,\n CreateParticipantResponse,\n CursorPaging,\n CursorPagingMetadata,\n CursorQuery,\n CursorQueryPagingMethodOneOf,\n CursorSearch,\n CursorSearchPagingMethodOneOf,\n Cursors,\n DateHistogramAggregation,\n DateHistogramResult,\n DateHistogramResults,\n DeleteParticipantRequest,\n DeleteParticipantResponse,\n Discount,\n DiscountDiscountOneOf,\n DomainEvent,\n DomainEventBodyOneOf,\n Empty,\n EntityCreatedEvent,\n EntityDeletedEvent,\n EntityUpdatedEvent,\n EntryPass,\n Event,\n EventMetadata,\n ExportParticipantsStatsRequest,\n ExportParticipantsStatsResponse,\n ExtendedFields,\n FreeCouponDetails,\n GetAccessStatusRequest,\n GetAccessStatusResponse,\n GetCompletionStatsRequest,\n GetCompletionStatsResponse,\n GetParticipantRequest,\n GetParticipantResponse,\n GetPremiumStatsRequest,\n GetPremiumStatsResponse,\n GroupByAggregation,\n GroupByAggregationKindOneOf,\n GroupByValueResults,\n IdentificationData,\n IdentificationDataIdOneOf,\n IncludeMissingValuesOptions,\n Interval,\n IssueCertificateRequest,\n IssueCertificateResponse,\n ItemMetadata,\n JoinPath,\n JoinedInfo,\n JoinedInfoJoinPathDetailsOneOf,\n Member,\n MessageEnvelope,\n MissingValues,\n Mode,\n NestedAggregation,\n NestedAggregationItem,\n NestedAggregationItemKindOneOf,\n NestedAggregationResults,\n NestedAggregationResultsResultOneOf,\n NestedAggregationType,\n NestedResultValue,\n NestedResultValueResultOneOf,\n NestedResults,\n NestedValueAggregationResult,\n PaidPlanDetails,\n Participant,\n ParticipantAdded,\n ParticipantAddedEnvelope,\n ParticipantApproved,\n ParticipantApprovedEnvelope,\n ParticipantExportsFinished,\n ParticipantInvited,\n ParticipantInvitedEnvelope,\n ParticipantQuerySpec,\n ParticipantSearchSpec,\n ParticipantsQueryBuilder,\n ParticipantsQueryResult,\n Progress,\n QueryParticipantsRequest,\n QueryParticipantsResponse,\n RangeAggregation,\n RangeAggregationResult,\n RangeBucket,\n RangeResult,\n RangeResults,\n RestoreInfo,\n Results,\n ScalarAggregation,\n ScalarResult,\n ScalarType,\n SearchDetails,\n SearchParticipantsRequest,\n SearchParticipantsResponse,\n SinglePaymentDetails,\n SortDirection,\n SortOrder,\n SortType,\n Sorting,\n State,\n Status,\n TagList,\n Tags,\n TagsModified,\n ValueAggregation,\n ValueAggregationOptionsOneOf,\n ValueAggregationResult,\n ValueResult,\n ValueResults,\n WebhookIdentityType,\n} from './online-programs-v3-participant-participants.universal.js';\n","import { transformError as sdkTransformError } from '@wix/sdk-runtime/transform-error';\nimport { queryBuilder } from '@wix/sdk-runtime/query-builder';\nimport {\n renameKeysFromSDKRequestToRESTRequest,\n renameKeysFromRESTResponseToSDKResponse,\n} from '@wix/sdk-runtime/rename-all-nested-keys';\nimport {\n HttpClient,\n HttpResponse,\n Search as SearchSdkType,\n NonNullablePaths,\n QuerySpec,\n Query as QuerySdkType,\n SearchSpec,\n} from '@wix/sdk-types';\nimport * as ambassadorWixOnlineProgramsV3Participant from './online-programs-v3-participant-participants.http.js';\n// @ts-ignore\nimport { transformPaths } from '@wix/sdk-runtime/transformations/transform-paths';\n\nexport interface Participant {\n /**\n * Participant ID.\n * @format GUID\n * @readonly\n */\n _id?: string | null;\n /**\n * Participant revision (for optimistic concurrency control).\n * @readonly\n */\n revision?: string | null;\n /**\n * Participant creation date\n * @readonly\n */\n _createdDate?: Date | null;\n /**\n * Participant last update date\n * @readonly\n */\n _updatedDate?: Date | null;\n /**\n * Member ID of participant on site\n * @format GUID\n * @readonly\n */\n memberId?: string;\n /**\n * Program ID which participant participates in\n * @format GUID\n * @readonly\n */\n programId?: string;\n /**\n * Program completion progress\n * @readonly\n */\n progress?: Progress;\n /**\n * status of participation in the program\n * @readonly\n */\n status?: StatusWithLiterals;\n /**\n * Certificate issued to participant\n * @readonly\n */\n certificate?: Certificate;\n /** Additional info about when and how participant joined the program and which timeframes participant has to complete program. */\n joinedInfo?: JoinedInfo;\n /**\n * Site member info snapshot for the participant\n * @readonly\n */\n member?: Member;\n /**\n * Last activity date of the participant in the program (can either be status change or step resolution).\n * @readonly\n */\n lastActivityDate?: Date | null;\n /** Extended fields for participant (can be used for storing custom data). */\n extendedFields?: ExtendedFields;\n /** Tags for categorizing and organizing participants. */\n tags?: Tags;\n}\n\nexport enum JoinPath {\n /** Default value. This value is unused. */\n UNKNOWN_JOIN_PATH = 'UNKNOWN_JOIN_PATH',\n /** Member joined to the program for free. */\n FREE = 'FREE',\n /** Member was added to the program by site owner. */\n ADDED = 'ADDED',\n /** Member paid once to join the program. */\n SINGLE_PAYMENT = 'SINGLE_PAYMENT',\n /** Member has Paid Plan to join. */\n PAID_PLAN = 'PAID_PLAN',\n /** Member joined with the Free Coupon. */\n FREE_COUPON = 'FREE_COUPON',\n}\n\n/** @enumType */\nexport type JoinPathWithLiterals =\n | JoinPath\n | 'UNKNOWN_JOIN_PATH'\n | 'FREE'\n | 'ADDED'\n | 'SINGLE_PAYMENT'\n | 'PAID_PLAN'\n | 'FREE_COUPON';\n\nexport interface SinglePaymentDetails {\n /**\n * ID of the cashier order which was used to pay for joining the program.\n * @format GUID\n * @immutable\n */\n paymentOrderId?: string;\n /**\n * ID of the offline transaction if offline payment flow from cashier was used.\n * @format GUID\n * @immutable\n */\n offlineTransactionId?: string | null;\n}\n\nexport interface PaidPlanDetails {\n /**\n * ID of the Paid Plan for which member has paid to join the program.\n * @format GUID\n * @immutable\n */\n paidPlanId?: string;\n}\n\nexport interface FreeCouponDetails {\n /**\n * ID of the coupon which was applied and gave 100% discount to join the program for free.\n * @format GUID\n * @immutable\n */\n freeCouponId?: string;\n}\n\nexport interface Progress {\n /** Number of program steps completed by member. */\n totalStepsCompleted?: number;\n /** Total number of program steps available to resolve. */\n totalStepsAvailable?: number;\n /**\n * Completion percentage.\n * @max 100\n */\n completionPercentage?: number;\n}\n\nexport enum Status {\n /** Default value. This value is unused. */\n UNKNOWN_STATUS = 'UNKNOWN_STATUS',\n /** Member joined the program and became participant. */\n JOINED = 'JOINED',\n /** Participant completed the program, and could join again. */\n COMPLETED = 'COMPLETED',\n /** Participant failed to complete the program, and could join again. */\n FAILED = 'FAILED',\n /** Participant with ended pricing plan (PP), will be joined as renew PP. */\n SUSPENDED = 'SUSPENDED',\n /** Participant removed automatically after some program condition. */\n AUTO_REMOVED = 'AUTO_REMOVED',\n /** Participant removed by site owner. */\n REMOVED = 'REMOVED',\n /** Participant left the program by himself. */\n LEFT = 'LEFT',\n}\n\n/** @enumType */\nexport type StatusWithLiterals =\n | Status\n | 'UNKNOWN_STATUS'\n | 'JOINED'\n | 'COMPLETED'\n | 'FAILED'\n | 'SUSPENDED'\n | 'AUTO_REMOVED'\n | 'REMOVED'\n | 'LEFT';\n\nexport interface Certificate {\n /**\n * when certificate was issued, UTC.\n * @readonly\n */\n issuedDate?: Date | null;\n}\n\nexport interface JoinedInfo extends JoinedInfoJoinPathDetailsOneOf {\n /** Details about Single Payment join path. */\n singlePaymentDetails?: SinglePaymentDetails;\n /** Details about Paid Plan join path. */\n paidPlanDetails?: PaidPlanDetails;\n /** Details about Free Coupon join path. */\n freeCouponDetails?: FreeCouponDetails;\n /**\n * Time zone for site on which member joined the program.\n * @maxLength 50\n * @readonly\n */\n timeZone?: string;\n /**\n * Date when participant starts the program (is the same as join date if program does not have start date, otherwise can be later).\n * @format LOCAL_DATE\n * @readonly\n */\n startDate?: string;\n /**\n * How participant joined the program.\n * @immutable\n */\n joinPath?: JoinPathWithLiterals;\n /**\n * Date before which participant has to finish the program (is not empty only if program itself has finish date).\n * @format LOCAL_DATE\n * @readonly\n */\n finishDate?: string | null;\n}\n\n/** @oneof */\nexport interface JoinedInfoJoinPathDetailsOneOf {\n /** Details about Single Payment join path. */\n singlePaymentDetails?: SinglePaymentDetails;\n /** Details about Paid Plan join path. */\n paidPlanDetails?: PaidPlanDetails;\n /** Details about Free Coupon join path. */\n freeCouponDetails?: FreeCouponDetails;\n}\n\nexport interface Member {\n /**\n * First name of the site member.\n * @readonly\n * @maxLength 1000\n */\n firstName?: string | null;\n /**\n * Last name of the site member.\n * @readonly\n * @maxLength 1000\n */\n lastName?: string | null;\n /**\n * Email of the site member.\n * @readonly\n * @format EMAIL\n */\n email?: string | null;\n /**\n * Contact ID of the site member.\n * @format GUID\n * @readonly\n */\n contactId?: string;\n /**\n * Profile image URL of the site member.\n * @readonly\n * @format WEB_URL\n */\n profileImageUrl?: string | null;\n}\n\nexport interface ExtendedFields {\n /**\n * Extended field data. Each key corresponds to the namespace of the app that created the extended fields.\n * The value of each key is structured according to the schema defined when the extended fields were configured.\n *\n * You can only access fields for which you have the appropriate permissions.\n *\n * Learn more about [extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields).\n */\n namespaces?: Record<string, Record<string, any>>;\n}\n\n/**\n * Common object for tags.\n * Should be use as in this example:\n * message Foo {\n * option (.wix.api.decomposite_of) = \"wix.commons.v2.tags.Foo\";\n * string id = 1;\n * ...\n * Tags tags = 5\n * }\n *\n * example of taggable entity\n * {\n * id: \"123\"\n * tags: {\n * public_tags: {\n * tag_ids:[\"11\",\"22\"]\n * },\n * private_tags: {\n * tag_ids: [\"33\", \"44\"]\n * }\n * }\n * }\n */\nexport interface Tags {\n /** Tags that require an additional permission in order to access them, typically restricted from site members and visitors. */\n privateTags?: TagList;\n /** Tags that are exposed to anyone with access to the entity, including site members and visitors. */\n publicTags?: TagList;\n}\n\nexport interface TagList {\n /**\n * List of tag IDs.\n * @maxSize 100\n * @maxLength 5\n */\n tagIds?: string[];\n}\n\nexport interface ParticipantAdded {\n /**\n * Program ID which participant was added\n * @format GUID\n */\n programId?: string;\n /**\n * Member ID of participant on site\n * @format GUID\n */\n memberId?: string;\n}\n\n/** Domain event emitted when tags are modified */\nexport interface TagsModified {\n /** The Participant with updated tags */\n participant?: Participant;\n /** Tags that were assigned */\n assignedTags?: Tags;\n /** Tags that were unassigned */\n unassignedTags?: Tags;\n}\n\nexport interface CreateParticipantRequest {\n /** Participant to create */\n participant: Participant;\n}\n\nexport interface CreateParticipantResponse {\n /** Created participant */\n participant?: Participant;\n}\n\nexport interface BulkCreateParticipantRequest {\n /**\n * List of participants you want to create\n * @minSize 1\n * @maxSize 100\n */\n participants: Participant[];\n /** Whether to return entities in response or not. */\n returnEntity?: boolean;\n}\n\nexport interface BulkCreateParticipantResponse {\n /**\n * Results of bulk action.\n * @minSize 1\n * @maxSize 100\n */\n results?: BulkParticipantResult[];\n /** Metadata about whole bulk action. */\n bulkActionMetadata?: CommonBulkActionMetadata;\n}\n\nexport interface BulkParticipantResult {\n /** Metadata of item. */\n itemMetadata?: CommonItemMetadata;\n /** Item itself (empty if return_entity in request is false). */\n item?: Participant;\n}\n\nexport interface CommonItemMetadata {\n /** Item ID. Should always be available, unless it's impossible (for example, when failing to create an item). */\n _id?: string | null;\n /** Index of the item within the request array. Allows for correlation between request and response items. */\n originalIndex?: number;\n /** Whether the requested action was successful for this item. When `false`, the `error` field is populated. */\n success?: boolean;\n /** Details about the error in case of failure. */\n error?: ApplicationError;\n}\n\nexport interface ApplicationError {\n /** Error code. */\n code?: string;\n /** Description of the error. */\n description?: string;\n /** Data related to the error. */\n data?: Record<string, any> | null;\n}\n\nexport interface CommonBulkActionMetadata {\n /** Number of items that were successfully processed. */\n totalSuccesses?: number;\n /** Number of items that couldn't be processed. */\n totalFailures?: number;\n /** Number of failures without details because detailed failure threshold was exceeded. */\n undetailedFailures?: number;\n}\n\nexport interface BulkAddAllToProgramRequest {\n /**\n * Program to which bulk add participants.\n * @format GUID\n */\n programId: string;\n /**\n * Exclude site members.\n * @format GUID\n * @maxSize 100\n */\n excludeMemberIds?: string[];\n}\n\nexport interface BulkAddAllToProgramResponse {\n /**\n * Async infra job id which will process the request.\n * @format GUID\n */\n jobId?: string;\n}\n\nexport interface DeleteParticipantRequest {\n /**\n * Participants to delete\n * @format GUID\n */\n participantId: string;\n}\n\nexport interface DeleteParticipantResponse {}\n\nexport interface IssueCertificateRequest {\n /**\n * Participant to get certificate\n * @format GUID\n */\n participantId: string;\n}\n\nexport interface IssueCertificateResponse {\n /** Updated participant */\n participant?: Participant;\n}\n\nexport interface GetCompletionStatsRequest {\n /**\n * program id to get stats for\n * @format GUID\n */\n programId: string;\n}\n\nexport interface GetCompletionStatsResponse {\n /** Number of participants that completed the program */\n completedAll?: number;\n /** Percentage of participants that completed the program */\n completionRate?: number;\n}\n\nexport interface GetPremiumStatsRequest {}\n\nexport interface GetPremiumStatsResponse {\n /** True if site has Online Programs premium feature */\n hasPremium?: boolean;\n /** Count of active participants on the site */\n activeParticipantsCount?: number;\n /** Limit of active participants on a site without premium */\n activeParticipantsLimit?: number;\n}\n\nexport interface GetParticipantRequest {\n /**\n * Participant id to fetch\n * @format GUID\n */\n participantId: string;\n}\n\nexport interface GetParticipantResponse {\n /** existing participant */\n participant?: Participant;\n}\n\nexport interface QueryParticipantsRequest {\n /** Platformized query */\n query?: CursorQuery;\n}\n\nexport interface CursorQuery extends CursorQueryPagingMethodOneOf {\n /**\n * Cursor paging options.\n *\n * Learn more about [cursor paging](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#cursor-paging).\n */\n cursorPaging?: CursorPaging;\n /**\n * Filter object.\n *\n * Learn more about [filtering](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#filters).\n */\n filter?: Record<string, any> | null;\n /**\n * Sort object.\n *\n * Learn more about [sorting](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#sorting).\n * @maxSize 5\n */\n sort?: Sorting[];\n}\n\n/** @oneof */\nexport interface CursorQueryPagingMethodOneOf {\n /**\n * Cursor paging options.\n *\n * Learn more about [cursor paging](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#cursor-paging).\n */\n cursorPaging?: CursorPaging;\n}\n\nexport interface Sorting {\n /**\n * Name of the field to sort by.\n * @maxLength 512\n */\n fieldName?: string;\n /** Sort order. */\n order?: SortOrderWithLiterals;\n}\n\nexport enum SortOrder {\n ASC = 'ASC',\n DESC = 'DESC',\n}\n\n/** @enumType */\nexport type SortOrderWithLiterals = SortOrder | 'ASC' | 'DESC';\n\nexport interface CursorPaging {\n /**\n * Maximum number of items to return in the results.\n * @max 100\n */\n limit?: number | null;\n /**\n * Pointer to the next or previous page in the list of results.\n *\n * Pass the relevant cursor token from the `pagingMetadata` object in the previous call's response.\n * Not relevant for the first request.\n * @maxLength 16000\n */\n cursor?: string | null;\n}\n\nexport interface QueryParticipantsResponse {\n /** found participants */\n participants?: Participant[];\n /** paging metadata */\n pagingMetadata?: CursorPagingMetadata;\n}\n\nexport interface CursorPagingMetadata {\n /** Number of items returned in current page. */\n count?: number | null;\n /** Cursor strings that point to the next page, previous page, or both. */\n cursors?: Cursors;\n /**\n * Whether there are more pages to retrieve following the current page.\n *\n * + `true`: Another page of results can be retrieved.\n * + `false`: This is the last page.\n */\n hasNext?: boolean | null;\n}\n\nexport interface Cursors {\n /**\n * Cursor string pointing to the next page in the list of results.\n * @maxLength 16000\n */\n next?: string | null;\n /**\n * Cursor pointing to the previous page in the list of results.\n * @maxLength 16000\n */\n prev?: string | null;\n}\n\nexport interface GetAccessStatusRequest {}\n\nexport interface GetAccessStatusResponse {\n /** True if participants cannot access online programs due to some limitations */\n blocked?: boolean;\n}\n\nexport interface BulkUpdateParticipantTagsRequest {\n /**\n * Participant IDs to update tags for (1-100 items)\n * @minSize 1\n * @maxSize 100\n * @format GUID\n */\n participantIds: string[];\n /** Tags to assign to the Participants */\n assignTags?: Tags;\n /** Tags to unassign from the Participants */\n unassignTags?: Tags;\n}\n\nexport interface BulkUpdateParticipantTagsResponse {\n /**\n * Results for each Participant\n * @minSize 1\n * @maxSize 100\n */\n results?: BulkUpdateParticipantTagsResult[];\n /** Metadata about the bulk operation */\n bulkActionMetadata?: CommonBulkActionMetadata;\n}\n\nexport interface BulkUpdateParticipantTagsResult {\n /** Metadata for this specific item */\n itemMetadata?: CommonItemMetadata;\n}\n\nexport interface BulkUpdateParticipantTagsByFilterRequest {\n /** WQL filter to select Participants */\n filter: Record<string, any> | null;\n /** Tags to assign to matching Participants */\n assignTags?: Tags;\n /** Tags to unassign from matching Participants */\n unassignTags?: Tags;\n}\n\nexport interface BulkUpdateParticipantTagsByFilterResponse {\n /**\n * Job ID for tracking the async operation\n * @format GUID\n */\n jobId?: string;\n}\n\nexport interface SearchParticipantsRequest {\n /** Query to search programs */\n search?: CursorSearch;\n}\n\nexport interface CursorSearch extends CursorSearchPagingMethodOneOf {\n /**\n * Cursor paging options.\n *\n * Learn more about [cursor paging](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#cursor-paging).\n */\n cursorPaging?: CursorPaging;\n /**\n * Filter object.\n *\n * Learn more about [filtering](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#filters).\n */\n filter?: Record<string, any> | null;\n /**\n * List of sort objects.\n *\n * Learn more about [sorting](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#sorting).\n * @maxSize 10\n */\n sort?: Sorting[];\n /**\n * Logical groupings of data into facets, with summaries for each facet. For example, use aggregations to allow site visitors to narrow down their search results by selecting specific categories.\n * @maxSize 10\n */\n aggregations?: Aggregation[];\n /** Free text to match in searchable fields. */\n search?: SearchDetails;\n /**\n * Time zone to adjust date-time-based filters and aggregations, in ISO 8601 (including offsets) or IANA time zone database (including time zone IDs) format.\n * Applies to all relevant filters and aggregations, unless overridden by providing timestamps including time zone. For example, \"2023-12-20T10:52:34.795Z\".\n * @maxLength 50\n */\n timeZone?: string | null;\n}\n\n/** @oneof */\nexport interface CursorSearchPagingMethodOneOf {\n /**\n * Cursor paging options.\n *\n * Learn more about [cursor paging](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#cursor-paging).\n */\n cursorPaging?: CursorPaging;\n}\n\nexport interface Aggregation extends AggregationKindOneOf {\n /** A value aggregation calculates metrics such as count for specific fields within a dataset, providing insights into the overall distribution and key statistics of those values. For example, use a value aggregation to get the number (count) of products for each price listed in the store. */\n value?: ValueAggregation;\n /** A range aggregation calculates the count of the values from the specified field in the dataset that fall within the range of each bucket you define. For example, use a range aggregation to compare the number of reservations made for parties of 4 or less to the number of reservations made for parties with 5 or more. */\n range?: RangeAggregation;\n /** A scalar aggregation calculates a single numerical value from a dataset, summarizing the dataset into one key metric: `COUNT_DISTINCT`, `SUM`, `AVG`, `MIN`, or `MAX`. */\n scalar?: ScalarAggregation;\n /** A date histogram calculates the count of time values from the specified field in the dataset that fall within each time interval you define (hour, day, week, etc.) For example, use a date histogram to find how many reservations have been made at a restaurant each week. */\n dateHistogram?: DateHistogramAggregation;\n /** A nested aggregation is applied within the results of another aggregation. Rather than aggregating directly on the primary dataset, first group data using one aggregation and then apply another aggregation within each group. It allows for more complex analyses where you can summarize data at different levels of detail or hierarchy. For example, to get the number of products that are in stock and out of stock for each price listed, first perform a value aggregation on `discountedPriceNumeric`, and a second value aggregation on `inStock`. */\n nested?: NestedAggregation;\n /**\n * Aggregation name, returned in `aggregations.results.name`.\n * @maxLength 100\n */\n name?: string | null;\n /** Type of aggregation to perform. Must align with the corresponding aggregation field. */\n type?: AggregationTypeWithLiterals;\n /**\n * Field to aggregate by. Use dot notation to specify a JSON path. For example, `order.address.streetName`.\n * @maxLength 200\n */\n fieldPath?: string;\n /**\n * Deprecated. Use `nested` instead.\n * @deprecated Deprecated. Use `nested` instead.\n * @replacedBy kind.nested\n * @targetRemovalDate 2024-03-30\n */\n groupBy?: GroupByAggregation;\n}\n\n/** @oneof */\nexport interface AggregationKindOneOf {\n /** A value aggregation calculates metrics such as count for specific fields within a dataset, providing insights into the overall distribution and key statistics of those values. For example, use a value aggregation to get the number (count) of products for each price listed in the store. */\n value?: ValueAggregation;\n /** A range aggregation calculates the count of the values from the specified field in the dataset that fall within the range of each bucket you define. For example, use a range aggregation to compare the number of reservations made for parties of 4 or less to the number of reservations made for parties with 5 or more. */\n range?: RangeAggregation;\n /** A scalar aggregation calculates a single numerical value from a dataset, summarizing the dataset into one key metric: `COUNT_DISTINCT`, `SUM`, `AVG`, `MIN`, or `MAX`. */\n scalar?: ScalarAggregation;\n /** A date histogram calculates the count of time values from the specified field in the dataset that fall within each time interval you define (hour, day, week, etc.) For example, use a date histogram to find how many reservations have been made at a restaurant each week. */\n dateHistogram?: DateHistogramAggregation;\n /** A nested aggregation is applied within the results of another aggregation. Rather than aggregating directly on the primary dataset, first group data using one aggregation and then apply another aggregation within each group. It allows for more complex analyses where you can summarize data at different levels of detail or hierarchy. For example, to get the number of products that are in stock and out of stock for each price listed, first perform a value aggregation on `discountedPriceNumeric`, and a second value aggregation on `inStock`. */\n nested?: NestedAggregation;\n}\n\nexport interface RangeBucket {\n /** Inclusive lower bound of the range. Required if `to` is not provided. */\n from?: number | null;\n /** Exclusive upper bound of the range. Required if `from` is not provided. */\n to?: number | null;\n}\n\nexport enum SortType {\n /** Number of matches in the results. */\n COUNT = 'COUNT',\n /** Alphabetically by the field value. */\n VALUE = 'VALUE',\n}\n\n/** @enumType */\nexport type SortTypeWithLiterals = SortType | 'COUNT' | 'VALUE';\n\nexport enum SortDirection {\n /** Descending order. */\n DESC = 'DESC',\n /** Ascending order. */\n ASC = 'ASC',\n}\n\n/** @enumType */\nexport type SortDirectionWithLiterals = SortDirection | 'DESC' | 'ASC';\n\nexport enum MissingValues {\n /** Exclude missing values from the aggregation results. */\n EXCLUDE = 'EXCLUDE',\n /** Include missing values in the aggregation results. */\n INCLUDE = 'INCLUDE',\n}\n\n/** @enumType */\nexport type MissingValuesWithLiterals = MissingValues | 'EXCLUDE' | 'INCLUDE';\n\nexport interface IncludeMissingValuesOptions {\n /**\n * Specify a custom name for the bucket containing the missing values. Defaults are `\"N/A\"` for strings, `0` for integers, and `false` for booleans.\n * @maxLength 20\n */\n addToBucket?: string;\n}\n\nexport enum ScalarType {\n UNKNOWN_SCALAR_TYPE = 'UNKNOWN_SCALAR_TYPE',\n /** Total number of distinct values. */\n COUNT_DISTINCT = 'COUNT_DISTINCT',\n /** Minimum value. */\n MIN = 'MIN',\n /** Maximum value. */\n MAX = 'MAX',\n}\n\n/** @enumType */\nexport type ScalarTypeWithLiterals =\n | ScalarType\n | 'UNKNOWN_SCALAR_TYPE'\n | 'COUNT_DISTINCT'\n | 'MIN'\n | 'MAX';\n\nexport interface ValueAggregation extends ValueAggregationOptionsOneOf {\n /** Options for including missing values in results. */\n includeOptions?: IncludeMissingValuesOptions;\n /** Sort type. */\n sortType?: SortTypeWithLiterals;\n /** Sort direction. */\n sortDirection?: SortDirectionWithLiterals;\n /**\n * Number of aggregation results to return.\n * Min: `1`\n * Max: `250`\n * Default: `10`\n */\n limit?: number | null;\n /**\n * Whether to include or exclude missing values in the aggregation results.\n * Default: `EXCLUDE`.\n */\n missingValues?: MissingValuesWithLiterals;\n}\n\n/** @oneof */\nexport interface ValueAggregationOptionsOneOf {\n /** Options for including missing values in results. */\n includeOptions?: IncludeMissingValuesOptions;\n}\n\nexport enum NestedAggregationType {\n UNKNOWN_AGGREGATION_TYPE = 'UNKNOWN_AGGREGATION_TYPE',\n /** Calculates the distribution of a specific field's values within a dataset, providing insights into the overall distribution and key statistics of those values. */\n VALUE = 'VALUE',\n /** Calculates the count of the values from the specified field in the dataset that fall within the range of each bucket you define. */\n RANGE = 'RANGE',\n /** Calculates a single numerical value from a dataset, summarizing the dataset into one key metric: `COUNT_DISTINCT`, `SUM`, `AVG`, `MIN`, or `MAX`. */\n SCALAR = 'SCALAR',\n /** Calculates the count of time values from the specified field in the dataset that fall within each time interval you define (hour, day, week, etc.). */\n DATE_HISTOGRAM = 'DATE_HISTOGRAM',\n}\n\n/** @enumType */\nexport type NestedAggregationTypeWithLiterals =\n | NestedAggregationType\n | 'UNKNOWN_AGGREGATION_TYPE'\n | 'VALUE'\n | 'RANGE'\n | 'SCALAR'\n | 'DATE_HISTOGRAM';\n\nexport interface RangeAggregation {\n /**\n * List of range buckets. During aggregation each entity is placed in the first bucket its value falls into, based on the provided range bounds.\n * @maxSize 50\n */\n buckets?: RangeBucket[];\n}\n\nexport interface ScalarAggregation {\n /** Operator type for the scalar aggregation. */\n type?: ScalarTypeWithLiterals;\n}\n\nexport interface DateHistogramAggregation {\n /** Interval for date histogram aggregation. */\n interval?: IntervalWithLiterals;\n}\n\nexport enum Interval {\n UNKNOWN_INTERVAL = 'UNKNOWN_INTERVAL',\n YEAR = 'YEAR',\n MONTH = 'MONTH',\n WEEK = 'WEEK',\n DAY = 'DAY',\n HOUR = 'HOUR',\n MINUTE = 'MINUTE',\n SECOND = 'SECOND',\n}\n\n/** @enumType */\nexport type IntervalWithLiterals =\n | Interval\n | 'UNKNOWN_INTERVAL'\n | 'YEAR'\n | 'MONTH'\n | 'WEEK'\n | 'DAY'\n | 'HOUR'\n | 'MINUTE'\n | 'SECOND';\n\nexport interface NestedAggregationItem extends NestedAggregationItemKindOneOf {\n /** A value aggregation calculates the distribution of a specific field's values within a dataset, providing insights into the overall distribution and key statistics of those values. For example, use a value aggregation to get the number (count) of orders for each order status. */\n value?: ValueAggregation;\n /** A range aggregation calculates the count of the values from the specified field in the dataset that fall within the range of each bucket you define. For example, use a range aggregation to compare the number of reservations made for parties of 4 or less to the number of reservations made for parties with 5 or more. If ranges overlap, a record that fits more than one range will only be counted in the first range that matches the criteria. */\n range?: RangeAggregation;\n /** A scalar aggregation calculates a single numerical value from a dataset, summarizing the dataset into one key metric: `COUNT_DISTINCT`, `SUM`, `AVG`, `MIN`, or `MAX`. */\n scalar?: ScalarAggregation;\n /** A date histogram calculates the count of time values from the specified field in the dataset that fall within each time interval you define (hour, day, week, etc.). For example, use a date histogram to determine how many reservations have been made at a restaurant each week. If ranges overlap, a record that fits more than one range will only be counted in the first range that matches the criteria. */\n dateHistogram?: DateHistogramAggregation;\n /**\n * Unique, caller-defined aggregation name, returned in `aggregations.results`.\n * @maxLength 100\n */\n name?: string | null;\n /** Type of aggregation to perform. The matching aggregation field must be passed. */\n type?: NestedAggregationTypeWithLiterals;\n /**\n * Field to aggregate by. Use dot notation to specify a JSON path. For example, `order.address.streetName`.\n * @maxLength 200\n */\n fieldPath?: string;\n}\n\n/** @oneof */\nexport interface NestedAggregationItemKindOneOf {\n /** A value aggregation calculates the distribution of a specific field's values within a dataset, providing insights into the overall distribution and key statistics of those values. For example, use a value aggregation to get the number (count) of orders for each order status. */\n value?: ValueAggregation;\n /** A range aggregation calculates the count of the values from the specified field in the dataset that fall within the range of each bucket you define. For example, use a range aggregation to compare the number of reservations made for parties of 4 or less to the number of reservations made for parties with 5 or more. If ranges overlap, a record that fits more than one range will only be counted in the first range that matches the criteria. */\n range?: RangeAggregation;\n /** A scalar aggregation calculates a single numerical value from a dataset, summarizing the dataset into one key metric: `COUNT_DISTINCT`, `SUM`, `AVG`, `MIN`, or `MAX`. */\n scalar?: ScalarAggregation;\n /** A date histogram calculates the count of time values from the specified field in the dataset that fall within each time interval you define (hour, day, week, etc.). For example, use a date histogram to determine how many reservations have been made at a restaurant each week. If ranges overlap, a record that fits more than one range will only be counted in the first range that matches the criteria. */\n dateHistogram?: DateHistogramAggregation;\n}\n\nexport enum AggregationType {\n UNKNOWN_AGGREGATION_TYPE = 'UNKNOWN_AGGREGATION_TYPE',\n /** Calculates the distribution of a specific field's values within a dataset, providing insights into the overall distribution and key statistics of those values. */\n VALUE = 'VALUE',\n /** Calculates the count of the values from the specified field in the dataset that fall within the range of each bucket you define. */\n RANGE = 'RANGE',\n /** Calculates a single numerical value from a dataset, summarizing the dataset into one key metric: `COUNT_DISTINCT`, `SUM`, `AVG`, `MIN`, or `MAX`. */\n SCALAR = 'SCALAR',\n /** Calculates the count of time values from the specified field in the dataset that fall within each time interval you define (hour, day, week, etc.). */\n DATE_HISTOGRAM = 'DATE_HISTOGRAM',\n /** Flattened list of aggregations, where each aggregation is nested within previous one. */\n NESTED = 'NESTED',\n}\n\n/** @enumType */\nexport type AggregationTypeWithLiterals =\n | AggregationType\n | 'UNKNOWN_AGGREGATION_TYPE'\n | 'VALUE'\n | 'RANGE'\n | 'SCALAR'\n | 'DATE_HISTOGRAM'\n | 'NESTED';\n\n/** Nested aggregation expressed through a list of aggregation where each next aggregation is nested within previous one. */\nexport interface NestedAggregation {\n /**\n * Flattened list of aggregations, where each aggregation is nested within previous one.\n * @minSize 2\n * @maxSize 3\n */\n nestedAggregations?: NestedAggregationItem[];\n}\n\nexport interface GroupByAggregation extends GroupByAggregationKindOneOf {\n /** Value aggregation configuration. */\n value?: ValueAggregation;\n /**\n * Unique, caller-defined aggregation name, returned in `aggregations.results`.\n * @maxLength 100\n */\n name?: string | null;\n /**\n * Field to aggregate by.\n * @maxLength 200\n */\n fieldPath?: string;\n}\n\n/** @oneof */\nexport interface GroupByAggregationKindOneOf {\n /** Value aggregation configuration. */\n value?: ValueAggregation;\n}\n\nexport interface SearchDetails {\n /** Search mode. Defines the search logic for combining multiple terms in the `expression`. */\n mode?: ModeWithLiterals;\n /**\n * Search term or expression.\n * @maxLength 100\n */\n expression?: string | null;\n /**\n * Fields to search in. If the array is empty, all searchable fields are searched. Use dot notation to specify a JSON path. For example, `order.address.streetName`.\n * @maxLength 200\n * @maxSize 20\n */\n fields?: string[];\n /** Whether to enable the search function to use an algorithm to automatically find results that are close to the search expression, such as typos and declensions. */\n fuzzy?: boolean;\n}\n\nexport enum Mode {\n /** At least one of the search terms must be present. */\n OR = 'OR',\n /** All search terms must be present. */\n AND = 'AND',\n}\n\n/** @enumType */\nexport type ModeWithLiterals = Mode | 'OR' | 'AND';\n\nexport interface SearchParticipantsResponse {\n /** Participants matching the search criteria. */\n participants?: Participant[];\n /** Paging metadata. */\n pagingMetadata?: CursorPagingMetadata;\n /** Aggregation data in case aggregations were requested. */\n aggregationData?: AggregationData;\n}\n\nexport interface AggregationData {\n /**\n * key = aggregation name (as derived from search request).\n * @maxSize 10000\n */\n results?: AggregationResults[];\n}\n\nexport interface ValueAggregationResult {\n /**\n * Value of the field.\n * @maxLength 100\n */\n value?: string;\n /** Count of entities with this value. */\n count?: number;\n}\n\nexport interface RangeAggregationResult {\n /** Inclusive lower bound of the range. */\n from?: number | null;\n /** Exclusive upper bound of the range. */\n to?: number | null;\n /** Count of entities in this range. */\n count?: number;\n}\n\nexport interface NestedAggregationResults\n extends NestedAggregationResultsResultOneOf {\n /** Value aggregation results. */\n values?: ValueResults;\n /** Range aggregation results. */\n ranges?: RangeResults;\n /** Scalar aggregation results. */\n scalar?: AggregationResultsScalarResult;\n /**\n * User-defined name of aggregation, matches the one provided in request.\n * @maxLength 100\n */\n name?: string;\n /** Type of aggregation that matches result. */\n type?: AggregationTypeWithLiterals;\n /**\n * Field to aggregate by, matches the one provided in request.\n * @maxLength 200\n */\n fieldPath?: string;\n}\n\n/** @oneof */\nexport interface NestedAggregationResultsResultOneOf {\n /** Value aggregation results. */\n values?: ValueResults;\n /** Range aggregation results. */\n ranges?: RangeResults;\n /** Scalar aggregation results. */\n scalar?: AggregationResultsScalarResult;\n}\n\nexport interface ValueResults {\n /**\n * List of value aggregations.\n * @maxSize 250\n */\n results?: ValueAggregationResult[];\n}\n\nexport interface RangeResults {\n /**\n * List of ranges returned in same order as requested.\n * @maxSize 50\n */\n results?: RangeAggregationResult[];\n}\n\nexport interface AggregationResultsScalarResult {\n /** Type of scalar aggregation. */\n type?: ScalarTypeWithLiterals;\n /** Value of the scalar aggregation. */\n value?: number;\n}\n\nexport interface NestedValueAggregationResult {\n /**\n * Value of the field.\n * @maxLength 1000\n */\n value?: string;\n /** Nested aggregations. */\n nestedResults?: NestedAggregationResults;\n}\n\nexport interface ValueResult {\n /**\n * Value of the field.\n * @maxLength 1000\n */\n value?: string;\n /** Count of entities with this value. */\n count?: number | null;\n}\n\nexport interface RangeResult {\n /** Inclusive lower bound of the range. */\n from?: number | null;\n /** Exclusive upper bound of the range. */\n to?: number | null;\n /** Count of entities in this range. */\n count?: number | null;\n}\n\nexport interface ScalarResult {\n /** Value of the scalar aggregation. */\n value?: number;\n}\n\nexport interface NestedResultValue extends NestedResultValueResultOneOf {\n /** Value aggregation result. */\n value?: ValueResult;\n /** Range aggregation result. */\n range?: RangeResult;\n /** Scalar aggregation result. */\n scalar?: ScalarResult;\n /** Date histogram aggregation result. */\n dateHistogram?: ValueResult;\n}\n\n/** @oneof */\nexport interface NestedResultValueResultOneOf {\n /** Value aggregation result. */\n value?: ValueResult;\n /** Range aggregation result. */\n range?: RangeResult;\n /** Scalar aggregation result. */\n scalar?: ScalarResult;\n /** Date histogram aggregation result. */\n dateHistogram?: ValueResult;\n}\n\nexport interface Results {\n /** List of nested aggregations. */\n results?: Record<string, NestedResultValue>;\n}\n\nexport interface DateHistogramResult {\n /**\n * Date in ISO 8601 format.\n * @maxLength 100\n */\n value?: string;\n /** Count of documents in the bucket. */\n count?: number;\n}\n\nexport interface GroupByValueResults {\n /**\n * List of value aggregations.\n * @maxSize 1000\n */\n results?: NestedValueAggregationResult[];\n}\n\nexport interface DateHistogramResults {\n /**\n * List of date histogram aggregations.\n * @maxSize 200\n */\n results?: DateHistogramResult[];\n}\n\n/**\n * Results of `NESTED` aggregation type in a flattened form.\n * Aggregations in resulting array are keyed by requested aggregation `name`.\n */\nexport interface NestedResults {\n /**\n * List of nested aggregations.\n * @maxSize 1000\n */\n results?: Results[];\n}\n\nexport interface AggregationResults extends AggregationResultsResultOneOf {\n /** Value aggregation results. */\n values?: ValueResults;\n /** Range aggregation results. */\n ranges?: RangeResults;\n /** Scalar aggregation results. */\n scalar?: AggregationResultsScalarResult;\n /** Group by value aggregation results. */\n groupedByValue?: GroupByValueResults;\n /** Date histogram aggregation results. */\n dateHistogram?: DateHistogramResults;\n /** Nested aggregation results. */\n nested?: NestedResults;\n /**\n * User-defined name of aggregation as derived from search request.\n * @maxLength 100\n */\n name?: string;\n /** Type of aggregation that must match provided kind as derived from search request. */\n type?: AggregationTypeWithLiterals;\n /**\n * Field to aggregate by as derived from search request.\n * @maxLength 200\n */\n fieldPath?: string;\n}\n\n/** @oneof */\nexport interface AggregationResultsResultOneOf {\n /** Value aggregation results. */\n values?: ValueResults;\n /** Range aggregation results. */\n ranges?: RangeResults;\n /** Scalar aggregation results. */\n scalar?: AggregationResultsScalarResult;\n /** Group by value aggregation results. */\n groupedByValue?: GroupByValueResults;\n /** Date histogram aggregation results. */\n dateHistogram?: DateHistogramResults;\n /** Nested aggregation results. */\n nested?: NestedResults;\n}\n\nexport interface DomainEvent extends DomainEventBodyOneOf {\n createdEvent?: EntityCreatedEvent;\n updatedEvent?: EntityUpdatedEvent;\n deletedEvent?: EntityDeletedEvent;\n actionEvent?: ActionEvent;\n /** Event ID. With this ID you can easily spot duplicated events and ignore them. */\n _id?: string;\n /**\n * Fully Qualified Domain Name of an entity. This is a unique identifier assigned to the API main business entities.\n * For example, `wix.stores.catalog.product`, `wix.bookings.session`, `wix.payments.transaction`.\n */\n entityFqdn?: string;\n /**\n * Event action name, placed at the top level to make it easier for users to dispatch messages.\n * For example: `created`/`updated`/`deleted`/`started`/`completed`/`email_opened`.\n */\n slug?: string;\n /** ID of the entity associated with the event. */\n entityId?: string;\n /** Event timestamp in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format and UTC time. For example, `2020-04-26T13:57:50.699Z`. */\n eventTime?: Date | null;\n /**\n * Whether the event was triggered as a result of a privacy regulation application\n * (for example, GDPR).\n */\n triggeredByAnonymizeRequest?: boolean | null;\n /** If present, indicates the action that triggered the event. */\n originatedFrom?: string | null;\n /**\n * A sequence number that indicates the order of updates to an entity. For example, if an entity was updated at 16:00 and then again at 16:01, the second update will always have a higher sequence number.\n * You can use this number to make sure you're handling updates in the right order. Just save the latest sequence number on your end and compare it to the one in each new message. If the new message has an older (lower) number, you can safely ignore it.\n */\n entityEventSequence?: string | null;\n}\n\n/** @oneof */\nexport interface DomainEventBodyOneOf {\n createdEvent?: EntityCreatedEvent;\n updatedEvent?: EntityUpdatedEvent;\n deletedEvent?: EntityDeletedEvent;\n actionEvent?: ActionEvent;\n}\n\nexport interface EntityCreatedEvent {\n entity?: string;\n}\n\nexport interface RestoreInfo {\n deletedDate?: Date | null;\n}\n\nexport interface EntityUpdatedEvent {\n /**\n * Since platformized APIs only expose PATCH and not PUT we can't assume that the fields sent from the client are the actual diff.\n * This means that to generate a list of changed fields (as opposed to sent fields) one needs to traverse both objects.\n * We don't want to impose this on all developers and so we leave this traversal to the notification recipients which need it.\n */\n currentEntity?: string;\n}\n\nexport interface EntityDeletedEvent {\n /** Entity that was deleted. */\n deletedEntity?: string | null;\n}\n\nexport interface ActionEvent {\n body?: string;\n}\n\nexport interface Empty {}\n\nexport interface BenefitNotification {\n /**\n * Plan unique ID\n * @format GUID\n */\n planId?: string;\n /**\n * App def ID\n * @format GUID\n */\n appDefId?: string;\n /** Current benefit details */\n benefit?: Benefit;\n /** Previous benefit */\n prevBenefit?: Benefit;\n /** Notification event */\n event?: EventWithLiterals;\n}\n\nexport interface Benefit {\n /**\n * Benefit unique ID\n * @format GUID\n * @readonly\n */\n _id?: string | null;\n /** Benefit Type */\n benefitType?: BenefitTypeWithLiterals;\n /**\n * Resource IDs that serves by this benefit\n * @format GUID\n */\n resourceIds?: string[];\n /** Amount of credits that provided by this benefit */\n creditAmount?: number | null;\n /**\n * additional details related to benefit; limited to 20 entries, 20 symbols for key and 20 symbols for value\n * @maxSize 20\n */\n customFields?: Record<string, string>;\n /** return value only in case it required in the ListRequest, true means that benefit's type could be updated */\n editable?: boolean | null;\n /** Benefit behavior */\n behavior?: Behavior;\n /**\n * Id of the app associated with this benefit\n * @format GUID\n * @readonly\n */\n appDefId?: string | null;\n}\n\nexport interface EntryPass {}\n\nexport interface Discount extends DiscountDiscountOneOf {\n /**\n * Fixed-rate percent off discount\n * @decimalValue options { gt:0, lte:100, maxScale:2 }\n */\n percentOffRate?: string;\n /**\n * Absolute amount discount\n * @decimalValue options { gt:0, maxScale:2 }\n */\n moneyOffAmount?: string;\n}\n\n/** @oneof */\nexport interface DiscountDiscountOneOf {\n /**\n * Fixed-rate percent off discount\n * @decimalValue options { gt:0, lte:100, maxScale:2 }\n */\n percentOffRate?: string;\n /**\n * Absolute amount discount\n * @decimalValue options { gt:0, maxScale:2 }\n */\n moneyOffAmount?: string;\n}\n\nexport enum BenefitType {\n /** Should never be used */\n UNDEFINED = 'UNDEFINED',\n /** Limited benefit type */\n LIMITED = 'LIMITED',\n /** Unlimited benefit type */\n UNLIMITED = 'UNLIMITED',\n}\n\n/** @enumType */\nexport type BenefitTypeWithLiterals =\n | BenefitType\n | 'UNDEFINED'\n | 'LIMITED'\n | 'UNLIMITED';\n\nexport interface Behavior extends BehaviorBehaviorOneOf {\n /** Entry pass for resources, e.g. a ticket for Bookings service or a ticket for Events. */\n defaultBehavior?: EntryPass;\n /** Discount applied to paid resources */\n discount?: Discount;\n}\n\n/** @oneof */\nexport interface BehaviorBehaviorOneOf {\n /** Entry pass for resources, e.g. a ticket for Bookings service or a ticket for Events. */\n defaultBehavior?: EntryPass;\n /** Discount applied to paid resources */\n discount?: Discount;\n}\n\nexport enum Event {\n Updated = 'Updated',\n Deleted = 'Deleted',\n Created = 'Created',\n}\n\n/** @enumType */\nexport type EventWithLiterals = Event | 'Updated' | 'Deleted' | 'Created';\n\nexport interface MessageEnvelope {\n /**\n * App instance ID.\n * @format GUID\n */\n instanceId?: string | null;\n /**\n * Event type.\n * @maxLength 150\n */\n eventType?: string;\n /** The identification type and identity data. */\n identity?: IdentificationData;\n /** Stringify payload. */\n data?: string;\n}\n\nexport interface IdentificationData extends IdentificationDataIdOneOf {\n /**\n * ID of a site visitor that has not logged in to the site.\n * @format GUID\n */\n anonymousVisitorId?: string;\n /**\n * ID of a site visitor that has logged in to the site.\n * @format GUID\n */\n memberId?: string;\n /**\n * ID of a Wix user (site owner, contributor, etc.).\n * @format GUID\n */\n wixUserId?: string;\n /**\n * ID of an app.\n * @format GUID\n */\n appId?: string;\n /** @readonly */\n identityType?: WebhookIdentityTypeWithLiterals;\n}\n\n/** @oneof */\nexport interface IdentificationDataIdOneOf {\n /**\n * ID of a site visitor that has not logged in to the site.\n * @format GUID\n */\n anonymousVisitorId?: string;\n /**\n * ID of a site visitor that has logged in to the site.\n * @format GUID\n */\n memberId?: string;\n /**\n * ID of a Wix user (site owner, contributor, etc.).\n * @format GUID\n */\n wixUserId?: string;\n /**\n * ID of an app.\n * @format GUID\n */\n appId?: string;\n}\n\nexport enum WebhookIdentityType {\n UNKNOWN = 'UNKNOWN',\n ANONYMOUS_VISITOR = 'ANONYMOUS_VISITOR',\n MEMBER = 'MEMBER',\n WIX_USER = 'WIX_USER',\n APP = 'APP',\n}\n\n/** @enumType */\nexport type WebhookIdentityTypeWithLiterals =\n | WebhookIdentityType\n | 'UNKNOWN'\n | 'ANONYMOUS_VISITOR'\n | 'MEMBER'\n | 'WIX_USER'\n | 'APP';\n\nexport enum State {\n /** Unknown state */\n UNKNOWN_STATE = 'UNKNOWN_STATE',\n /** Member joined the program and became participant */\n JOINED = 'JOINED',\n /** Participant completed the program, and could join again */\n COMPLETED = 'COMPLETED',\n /** Participant failed to complete the program, and could join again */\n FAILED = 'FAILED',\n /** Participant with ended pricing plan (PP), will be joined as renew PP */\n SUSPENDED = 'SUSPENDED',\n /** Participant removed automatically after some program condition */\n AUTO_REMOVED = 'AUTO_REMOVED',\n /** Participant removed by site owner */\n REMOVED = 'REMOVED',\n /** Participant left the program by himself */\n LEFT = 'LEFT',\n}\n\n/** @enumType */\nexport type StateWithLiterals =\n | State\n | 'UNKNOWN_STATE'\n | 'JOINED'\n | 'COMPLETED'\n | 'FAILED'\n | 'SUSPENDED'\n | 'AUTO_REMOVED'\n | 'REMOVED'\n | 'LEFT';\n\nexport interface BulkInviteToProgramRequest {\n /**\n * Program to which bulk invite participants.\n * @format GUID\n */\n programId: string;\n /**\n * Return added participants in the response or not.\n * @format GUID\n * @minSize 1\n * @maxSize 100\n */\n memberIds?: string[];\n /** Return invited participants in the response or not. */\n returnEntity?: boolean;\n}\n\nexport interface BulkInviteToProgramResponse {\n /** Participants created by bulk action */\n results?: BulkInviteToProgramResult[];\n /** Bulk action metadata. */\n bulkActionMetadata?: BulkActionMetadata;\n}\n\nexport interface ItemMetadata {\n /** Item ID. Should always be available, unless it's impossible (for example, when failing to create an item). */\n _id?: string | null;\n /** Index of the item within the request array. Allows for correlation between request and response items. */\n originalIndex?: number;\n /** Whether the requested action was successful for this item. When `false`, the `error` field is populated. */\n success?: boolean;\n /** Details about the error in case of failure. */\n error?: ApplicationError;\n}\n\nexport interface BulkInviteToProgramResult {\n /** Invited participant metadata. */\n itemMetadata?: ItemMetadata;\n /** Invited participant */\n item?: Participant;\n}\n\nexport interface BulkActionMetadata {\n /** Number of items that were successfully processed. */\n totalSuccesses?: number;\n /** Number of items that couldn't be processed. */\n totalFailures?: number;\n /** Number of failures without details because detailed failure threshold was exceeded. */\n undetailedFailures?: number;\n}\n\nexport interface ParticipantInvited {\n /**\n * Program to which bulk invite participants.\n * @format GUID\n */\n programId?: string;\n /**\n * Invited member to program\n * @format GUID\n */\n memberId?: string;\n}\n\nexport interface BulkInviteAllToProgramRequest {\n /**\n * Program to which bulk add participants.\n * @format GUID\n */\n programId: string;\n /**\n * Exclude site members.\n * @format GUID\n * @maxSize 100\n */\n excludeMemberIds?: string[];\n}\n\nexport interface BulkInviteAllToProgramResponse {\n /** Bulk action metadata. */\n bulkActionMetadata?: BulkActionMetadata;\n}\n\nexport interface BulkAddToProgramRequest {\n /**\n * Program to which bulk add participants.\n * @format GUID\n */\n programId: string;\n /**\n * Site members.\n * @format GUID\n * @minSize 1\n * @maxSize 1000\n */\n memberIds?: string[];\n /** Return added participants in the response or not. */\n returnEntity?: boolean;\n}\n\nexport interface BulkAddToProgramResponse {\n /** Participants created by bulk action */\n results?: BulkAddToProgramResult[];\n /** Bulk action metadata. */\n bulkActionMetadata?: BulkActionMetadata;\n}\n\nexport interface BulkAddToProgramResult {\n /** Added participant metadata. */\n itemMetadata?: ItemMetadata;\n /** Added participant */\n item?: Participant;\n}\n\nexport interface BulkApproveParticipantRequest {\n /**\n * Participants to add\n * @format GUID\n * @maxSize 100\n */\n participantIds: string[];\n /**\n * program to approve participant\n * @format GUID\n */\n programId?: string;\n /** Return approved participants in the response or not */\n returnEntity?: boolean;\n}\n\nexport interface BulkApproveParticipantResponse {\n /** Participants approved by bulk action */\n results?: BulkApproveParticipantResult[];\n /** Bulk action metadata */\n bulkActionMetadata?: BulkActionMetadata;\n}\n\nexport interface BulkApproveParticipantResult {\n /** Approved participant metadata */\n itemMetadata?: ItemMetadata;\n /** Approved or existing participant */\n item?: Participant;\n}\n\nexport interface ParticipantApproved {\n /**\n * Program ID which participant approved\n * @format GUID\n */\n programId?: string;\n /**\n * Member ID of participant approved\n * @format GUID\n */\n memberId?: string;\n}\n\nexport interface BulkApproveAllParticipantRequest {\n /**\n * Program to approve all participants.\n * @format GUID\n */\n programId?: string;\n /**\n * Exclude site members.\n * @format GUID\n * @maxSize 100\n */\n excludeParticipantIds?: string[];\n}\n\nexport interface BulkApproveAllParticipantResponse {\n /**\n * Job id with async process\n * @format GUID\n */\n jobId?: string;\n}\n\nexport interface ExportParticipantsStatsRequest {\n /**\n * program id to export data from\n * @format GUID\n */\n programId: string;\n}\n\nexport interface ExportParticipantsStatsResponse {}\n\nexport interface ParticipantExportsFinished {\n /**\n * program id from which stats were exported\n * @format GUID\n */\n programId?: string;\n /**\n * user id of program owner\n * @format GUID\n */\n userId?: string;\n /**\n * url to download report\n * @format WEB_URL\n */\n downloadUrl?: string;\n /** days url will be downloadable */\n downloadUrlTtlDays?: number;\n}\n\n/** @docsIgnore */\nexport type CreateParticipantApplicationErrors = {\n code?: 'INVALID_PAYMENT_INFO';\n description?: string;\n data?: Record<string, any>;\n};\n/** @docsIgnore */\nexport type BulkUpdateParticipantTagsApplicationErrors = {\n code?: 'EMPTY_ASSIGN_AND_UNASSIGN_LISTS';\n description?: string;\n data?: Record<string, any>;\n};\n/** @docsIgnore */\nexport type BulkUpdateParticipantTagsByFilterApplicationErrors = {\n code?: 'EMPTY_ASSIGN_AND_UNASSIGN_LISTS';\n description?: string;\n data?: Record<string, any>;\n};\n\nexport interface BaseEventMetadata {\n /**\n * App instance ID.\n * @format GUID\n */\n instanceId?: string | null;\n /**\n * Event type.\n * @maxLength 150\n */\n eventType?: string;\n /** The identification type and identity data. */\n identity?: IdentificationData;\n}\n\nexport interface EventMetadata extends BaseEventMetadata {\n /** Event ID. With this ID you can easily spot duplicated events and ignore them. */\n _id?: string;\n /**\n * Fully Qualified Domain Name of an entity. This is a unique identifier assigned to the API main business entities.\n * For example, `wix.stores.catalog.product`, `wix.bookings.session`, `wix.payments.transaction`.\n */\n entityFqdn?: string;\n /**\n * Event action name, placed at the top level to make it easier for users to dispatch messages.\n * For example: `created`/`updated`/`deleted`/`started`/`completed`/`email_opened`.\n */\n slug?: string;\n /** ID of the entity associated with the event. */\n entityId?: string;\n /** Event timestamp in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format and UTC time. For example, `2020-04-26T13:57:50.699Z`. */\n eventTime?: Date | null;\n /**\n * Whether the event was triggered as a result of a privacy regulation application\n * (for example, GDPR).\n */\n triggeredByAnonymizeRequest?: boolean | null;\n /** If present, indicates the action that triggered the event. */\n originatedFrom?: string | null;\n /**\n * A sequence number that indicates the order of updates to an entity. For example, if an entity was updated at 16:00 and then again at 16:01, the second update will always have a higher sequence number.\n * You can use this number to make sure you're handling updates in the right order. Just save the latest sequence number on your end and compare it to the one in each new message. If the new message has an older (lower) number, you can safely ignore it.\n */\n entityEventSequence?: string | null;\n}\n\nexport interface ParticipantAddedEnvelope {\n data: ParticipantAdded;\n metadata: EventMetadata;\n}\n\n/** @permissionScope Manage Challenges\n * @permissionScopeId SCOPE.CHALLENGES.MANAGE\n * @permissionId ONLINE_PROGRAMS.PARTICIPANT_READ\n * @webhook\n * @eventType wix.online_programs.v3.participant_added\n * @slug added\n * @documentationMaturity preview\n */\nexport declare function onParticipantAdded(\n handler: (event: ParticipantAddedEnvelope) => void | Promise<void>\n): void;\n\nexport interface ParticipantApprovedEnvelope {\n data: ParticipantApproved;\n metadata: EventMetadata;\n}\n\n/** @permissionScope Manage Challenges\n * @permissionScopeId SCOPE.CHALLENGES.MANAGE\n * @permissionId ONLINE_PROGRAMS.PARTICIPANT_READ\n * @webhook\n * @eventType wix.online_programs.v3.participant_participant_approved\n * @serviceIdentifier wix.onlineprograms.participants.v3.ManageParticipantsService\n * @slug participant_approved\n * @documentationMaturity preview\n */\nexport declare function onParticipantApproved(\n handler: (event: ParticipantApprovedEnvelope) => void | Promise<void>\n): void;\n\nexport interface ParticipantInvitedEnvelope {\n data: ParticipantInvited;\n metadata: EventMetadata;\n}\n\n/** @permissionScope Manage Challenges\n * @permissionScopeId SCOPE.CHALLENGES.MANAGE\n * @permissionId ONLINE_PROGRAMS.PARTICIPANT_READ\n * @webhook\n * @eventType wix.online_programs.v3.participant_participant_invited\n * @serviceIdentifier wix.onlineprograms.participants.v3.ManageParticipantsService\n * @slug participant_invited\n * @documentationMaturity preview\n */\nexport declare function onParticipantInvited(\n handler: (event: ParticipantInvitedEnvelope) => void | Promise<void>\n): void;\n\n/**\n * Create one participant.\n * @param participant - Participant to create\n * @public\n * @documentationMaturity preview\n * @requiredField participant\n * @requiredField participant.joinedInfo.joinPath\n * @requiredField participant.memberId\n * @requiredField participant.programId\n * @permissionId ONLINE_PROGRAMS.PARTICIPANT_CREATE\n * @returns Created participant\n * @fqn wix.onlineprograms.participants.v3.ParticipantsService.CreateParticipant\n */\nexport async function createParticipant(\n participant: NonNullablePaths<\n Participant,\n `joinedInfo.joinPath` | `memberId` | `programId`,\n 3\n >\n): Promise<\n NonNullablePaths<\n Participant,\n | `memberId`\n | `programId`\n | `progress.totalStepsCompleted`\n | `progress.totalStepsAvailable`\n | `progress.completionPercentage`\n | `status`\n | `joinedInfo.singlePaymentDetails.paymentOrderId`\n | `joinedInfo.paidPlanDetails.paidPlanId`\n | `joinedInfo.freeCouponDetails.freeCouponId`\n | `joinedInfo.timeZone`\n | `joinedInfo.startDate`\n | `joinedInfo.joinPath`\n | `member.contactId`\n | `tags.privateTags.tagIds`,\n 4\n > & {\n __applicationErrorsType?: CreateParticipantApplicationErrors;\n }\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n participant: participant,\n });\n\n const reqOpts =\n ambassadorWixOnlineProgramsV3Participant.createParticipant(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)?.participant!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { participant: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['participant']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Creates participants in bulk.\n * @param participants - List of participants you want to create\n * @public\n * @documentationMaturity preview\n * @requiredField participants\n * @requiredField participants.joinedInfo.joinPath\n * @requiredField participants.memberId\n * @requiredField participants.programId\n * @permissionId ONLINE_PROGRAMS.PARTICIPANT_CREATE\n * @fqn wix.onlineprograms.participants.v3.ParticipantsService.BulkCreateParticipant\n */\nexport async function bulkCreateParticipant(\n participants: NonNullablePaths<\n Participant,\n `joinedInfo.joinPath` | `memberId` | `programId`,\n 3\n >[],\n options?: BulkCreateParticipantOptions\n): Promise<\n NonNullablePaths<\n BulkCreateParticipantResponse,\n | `results`\n | `results.${number}.itemMetadata.originalIndex`\n | `results.${number}.itemMetadata.success`\n | `results.${number}.itemMetadata.error.code`\n | `results.${number}.itemMetadata.error.description`\n | `results.${number}.item.memberId`\n | `results.${number}.item.programId`\n | `results.${number}.item.progress.totalStepsCompleted`\n | `results.${number}.item.progress.totalStepsAvailable`\n | `results.${number}.item.progress.completionPercentage`\n | `results.${number}.item.status`\n | `results.${number}.item.joinedInfo.timeZone`\n | `results.${number}.item.joinedInfo.startDate`\n | `results.${number}.item.joinedInfo.joinPath`\n | `results.${number}.item.member.contactId`\n | `bulkActionMetadata.totalSuccesses`\n | `bulkActionMetadata.totalFailures`\n | `bulkActionMetadata.undetailedFailures`,\n 6\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[2] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n participants: participants,\n returnEntity: options?.returnEntity,\n });\n\n const reqOpts =\n ambassadorWixOnlineProgramsV3Participant.bulkCreateParticipant(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: {\n participants: '$[0]',\n returnEntity: '$[1].returnEntity',\n },\n singleArgumentUnchanged: false,\n },\n ['participants', 'options']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\nexport interface BulkCreateParticipantOptions {\n /** Whether to return entities in response or not. */\n returnEntity?: boolean;\n}\n\n/**\n * Bulk adds all site members to program, but not more then 1000.\n * Participant will be either created in state Joined, or updated to that state\n * from pending one.\n * @param programId - Program to which bulk add participants.\n * @public\n * @documentationMaturity preview\n * @requiredField programId\n * @permissionId ONLINE_PROGRAMS.PARTICIPANT_ADD\n * @applicableIdentity APP\n * @fqn wix.onlineprograms.participants.v3.ParticipantsService.BulkAddAllToProgram\n */\nexport async function bulkAddAllToProgram(\n programId: string,\n options?: BulkAddAllToProgramOptions\n): Promise<NonNullablePaths<BulkAddAllToProgramResponse, `jobId`, 2>> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[2] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n programId: programId,\n excludeMemberIds: options?.excludeMemberIds,\n });\n\n const reqOpts =\n ambassadorWixOnlineProgramsV3Participant.bulkAddAllToProgram(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: {\n programId: '$[0]',\n excludeMemberIds: '$[1].excludeMemberIds',\n },\n singleArgumentUnchanged: false,\n },\n ['programId', 'options']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\nexport interface BulkAddAllToProgramOptions {\n /**\n * Exclude site members.\n * @format GUID\n * @maxSize 100\n */\n excludeMemberIds?: string[];\n}\n\n/**\n * Delete participant from program. Removes participant from member\n * group. Leaves him in Social Group.\n * @param participantId - Participants to delete\n * @public\n * @documentationMaturity preview\n * @requiredField participantId\n * @permissionId ONLINE_PROGRAMS.PARTICIPANT_DELETE\n * @fqn wix.onlineprograms.participants.v3.ParticipantsService.DeleteParticipant\n */\nexport async function deleteParticipant(participantId: string): Promise<void> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n participantId: participantId,\n });\n\n const reqOpts =\n ambassadorWixOnlineProgramsV3Participant.deleteParticipant(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { participantId: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['participantId']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Issue certificate by site admin\n * @param participantId - Participant to get certificate\n * @public\n * @documentationMaturity preview\n * @requiredField participantId\n * @permissionId ONLINE_PROGRAMS.PARTICIPANT_ISSUE_CERTIFICATE\n * @applicableIdentity APP\n * @fqn wix.onlineprograms.participants.v3.ParticipantsService.IssueCertificate\n */\nexport async function issueCertificate(\n participantId: string\n): Promise<\n NonNullablePaths<\n IssueCertificateResponse,\n | `participant.memberId`\n | `participant.programId`\n | `participant.progress.totalStepsCompleted`\n | `participant.progress.totalStepsAvailable`\n | `participant.progress.completionPercentage`\n | `participant.status`\n | `participant.joinedInfo.singlePaymentDetails.paymentOrderId`\n | `participant.joinedInfo.paidPlanDetails.paidPlanId`\n | `participant.joinedInfo.freeCouponDetails.freeCouponId`\n | `participant.joinedInfo.timeZone`\n | `participant.joinedInfo.startDate`\n | `participant.joinedInfo.joinPath`\n | `participant.member.contactId`\n | `participant.tags.privateTags.tagIds`,\n 5\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n participantId: participantId,\n });\n\n const reqOpts =\n ambassadorWixOnlineProgramsV3Participant.issueCertificate(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { participantId: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['participantId']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Get program's completion stats\n * @param programId - program id to get stats for\n * @public\n * @documentationMaturity preview\n * @requiredField programId\n * @permissionId ONLINE_PROGRAMS.STATS_READ\n * @applicableIdentity APP\n * @fqn wix.onlineprograms.participants.v3.ParticipantsService.GetCompletionStats\n */\nexport async function getCompletionStats(\n programId: string\n): Promise<\n NonNullablePaths<\n GetCompletionStatsResponse,\n `completedAll` | `completionRate`,\n 2\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n programId: programId,\n });\n\n const reqOpts =\n ambassadorWixOnlineProgramsV3Participant.getCompletionStats(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { programId: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['programId']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Get premium stats\n * @public\n * @documentationMaturity preview\n * @permissionId ONLINE_PROGRAMS.STATS_READ\n * @applicableIdentity APP\n * @fqn wix.onlineprograms.participants.v3.ParticipantsService.GetPremiumStats\n */\nexport async function getPremiumStats(): Promise<\n NonNullablePaths<\n GetPremiumStatsResponse,\n `hasPremium` | `activeParticipantsCount` | `activeParticipantsLimit`,\n 2\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[0] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({});\n\n const reqOpts =\n ambassadorWixOnlineProgramsV3Participant.getPremiumStats(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: {},\n singleArgumentUnchanged: false,\n },\n []\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Returns participant.\n * @param participantId - Participant id to fetch\n * @public\n * @documentationMaturity preview\n * @requiredField participantId\n * @permissionId ONLINE_PROGRAMS.PARTICIPANT_READ\n * @applicableIdentity APP\n * @applicableIdentity MEMBER\n * @returns existing participant\n * @fqn wix.onlineprograms.participants.v3.ParticipantsService.GetParticipant\n */\nexport async function getParticipant(\n participantId: string\n): Promise<\n NonNullablePaths<\n Participant,\n | `memberId`\n | `programId`\n | `progress.totalStepsCompleted`\n | `progress.totalStepsAvailable`\n | `progress.completionPercentage`\n | `status`\n | `joinedInfo.singlePaymentDetails.paymentOrderId`\n | `joinedInfo.paidPlanDetails.paidPlanId`\n | `joinedInfo.freeCouponDetails.freeCouponId`\n | `joinedInfo.timeZone`\n | `joinedInfo.startDate`\n | `joinedInfo.joinPath`\n | `member.contactId`\n | `tags.privateTags.tagIds`,\n 4\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n participantId: participantId,\n });\n\n const reqOpts =\n ambassadorWixOnlineProgramsV3Participant.getParticipant(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)?.participant!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { participantId: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['participantId']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Query existing participants\n * @public\n * @documentationMaturity preview\n * @permissionId ONLINE_PROGRAMS.PARTICIPANT_READ\n * @applicableIdentity APP\n * @applicableIdentity MEMBER\n * @fqn wix.onlineprograms.participants.v3.ParticipantsService.QueryParticipants\n */\nexport function queryParticipants(): ParticipantsQueryBuilder {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[0] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n return queryBuilder<\n Participant,\n 'CURSOR',\n QueryParticipantsRequest,\n QueryParticipantsResponse\n >({\n func: async (payload: QueryParticipantsRequest) => {\n const reqOpts =\n ambassadorWixOnlineProgramsV3Participant.queryParticipants(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n return result;\n } catch (err) {\n sideEffects?.onError?.(err);\n throw err;\n }\n },\n requestTransformer: (query: QueryParticipantsRequest['query']) => {\n const args = [query, {}] as [QueryParticipantsRequest['query'], {}];\n return renameKeysFromSDKRequestToRESTRequest({\n ...args?.[1],\n query: args?.[0],\n });\n },\n responseTransformer: ({\n data,\n }: HttpResponse<QueryParticipantsResponse>) => {\n const transformedData = renameKeysFromRESTResponseToSDKResponse(\n transformPaths(data, [])\n );\n\n return {\n items: transformedData?.participants,\n pagingMetadata: transformedData?.pagingMetadata,\n };\n },\n errorTransformer: (err: unknown) => {\n const transformedError = sdkTransformError(err, {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { query: '$[0]' },\n singleArgumentUnchanged: false,\n });\n\n throw transformedError;\n },\n pagingMethod: 'CURSOR',\n transformationPaths: {},\n });\n}\n\ninterface QueryCursorResult {\n cursors: Cursors;\n hasNext: () => boolean;\n hasPrev: () => boolean;\n length: number;\n pageSize: number;\n}\n\nexport interface ParticipantsQueryResult extends QueryCursorResult {\n items: Participant[];\n query: ParticipantsQueryBuilder;\n next: () => Promise<ParticipantsQueryResult>;\n prev: () => Promise<ParticipantsQueryResult>;\n}\n\nexport interface ParticipantsQueryBuilder {\n /** @param propertyName - Property whose value is compared with `value`.\n * @param value - Value to compare against.\n * @documentationMaturity preview\n */\n eq: (\n propertyName: '_id' | 'memberId' | 'programId' | 'status',\n value: any\n ) => ParticipantsQueryBuilder;\n /** @param propertyName - Property whose value is compared with `value`.\n * @param value - Value to compare against.\n * @documentationMaturity preview\n */\n ge: (\n propertyName: 'joinedInfo.startDate',\n value: any\n ) => ParticipantsQueryBuilder;\n /** @param propertyName - Property whose value is compared with `value`.\n * @param value - Value to compare against.\n * @documentationMaturity preview\n */\n gt: (\n propertyName: 'joinedInfo.startDate',\n value: any\n ) => ParticipantsQueryBuilder;\n /** @param propertyName - Property whose value is compared with `value`.\n * @param value - Value to compare against.\n * @documentationMaturity preview\n */\n le: (\n propertyName: 'joinedInfo.startDate',\n value: any\n ) => ParticipantsQueryBuilder;\n /** @param propertyName - Property whose value is compared with `value`.\n * @param value - Value to compare against.\n * @documentationMaturity preview\n */\n lt: (\n propertyName: 'joinedInfo.startDate',\n value: any\n ) => ParticipantsQueryBuilder;\n /** @documentationMaturity preview */\n in: (\n propertyName: '_id' | 'memberId' | 'status',\n value: any\n ) => ParticipantsQueryBuilder;\n /** @param propertyNames - Properties used in the sort. To sort by multiple properties, pass properties as additional arguments.\n * @documentationMaturity preview\n */\n ascending: (\n ...propertyNames: Array<\n '_id' | '_createdDate' | 'status' | 'joinedInfo.startDate'\n >\n ) => ParticipantsQueryBuilder;\n /** @param propertyNames - Properties used in the sort. To sort by multiple properties, pass properties as additional arguments.\n * @documentationMaturity preview\n */\n descending: (\n ...propertyNames: Array<\n '_id' | '_createdDate' | 'status' | 'joinedInfo.startDate'\n >\n ) => ParticipantsQueryBuilder;\n /** @param limit - Number of items to return, which is also the `pageSize` of the results object.\n * @documentationMaturity preview\n */\n limit: (limit: number) => ParticipantsQueryBuilder;\n /** @param cursor - A pointer to specific record\n * @documentationMaturity preview\n */\n skipTo: (cursor: string) => ParticipantsQueryBuilder;\n /** @documentationMaturity preview */\n find: () => Promise<ParticipantsQueryResult>;\n}\n\n/**\n * @hidden\n * @fqn wix.onlineprograms.participants.v3.ParticipantsService.QueryParticipants\n * @requiredField query\n */\nexport async function typedQueryParticipants(\n query: ParticipantQuery\n): Promise<\n NonNullablePaths<\n QueryParticipantsResponse,\n | `participants`\n | `participants.${number}.memberId`\n | `participants.${number}.programId`\n | `participants.${number}.progress.totalStepsCompleted`\n | `participants.${number}.progress.totalStepsAvailable`\n | `participants.${number}.progress.completionPercentage`\n | `participants.${number}.status`\n | `participants.${number}.joinedInfo.singlePaymentDetails.paymentOrderId`\n | `participants.${number}.joinedInfo.paidPlanDetails.paidPlanId`\n | `participants.${number}.joinedInfo.freeCouponDetails.freeCouponId`\n | `participants.${number}.joinedInfo.timeZone`\n | `participants.${number}.joinedInfo.startDate`\n | `participants.${number}.joinedInfo.joinPath`\n | `participants.${number}.member.contactId`,\n 6\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({ query: query });\n\n const reqOpts =\n ambassadorWixOnlineProgramsV3Participant.queryParticipants(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { query: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['query']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\nexport interface ParticipantQuerySpec extends QuerySpec {\n paging: 'cursor';\n wql: [\n {\n fields: ['_id', 'status'];\n operators: ['$eq', '$in'];\n sort: 'BOTH';\n },\n {\n fields: ['memberId'];\n operators: ['$eq', '$in'];\n sort: 'NONE';\n },\n {\n fields: ['programId'];\n operators: ['$eq'];\n sort: 'NONE';\n },\n {\n fields: ['_createdDate'];\n operators: [];\n sort: 'BOTH';\n },\n {\n fields: ['joinedInfo.startDate'];\n operators: ['$gt', '$gte', '$lt', '$lte'];\n sort: 'BOTH';\n }\n ];\n}\n\nexport type CommonQueryWithEntityContext = QuerySdkType<\n Participant,\n ParticipantQuerySpec\n>;\nexport type ParticipantQuery = {\n /** \n Cursor paging options.\n\n Learn more about [cursor paging](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#cursor-paging). \n */\n cursorPaging?: {\n /** \n Maximum number of items to return in the results. \n @max: 100 \n */\n limit?:\n | NonNullable<CommonQueryWithEntityContext['cursorPaging']>['limit']\n | null;\n /** \n Pointer to the next or previous page in the list of results.\n\n Pass the relevant cursor token from the `pagingMetadata` object in the previous call's response.\n Not relevant for the first request. \n @maxLength: 16000 \n */\n cursor?:\n | NonNullable<CommonQueryWithEntityContext['cursorPaging']>['cursor']\n | null;\n };\n /** \n Filter object.\n\n Learn more about [filtering](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#filters). \n */\n filter?: CommonQueryWithEntityContext['filter'] | null;\n /** \n Sort object.\n\n Learn more about [sorting](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#sorting). \n @maxSize: 5 \n */\n sort?: {\n /** \n Name of the field to sort by. \n @maxLength: 512 \n */\n fieldName?: NonNullable<\n CommonQueryWithEntityContext['sort']\n >[number]['fieldName'];\n /** \n Sort order. \n */\n order?: NonNullable<CommonQueryWithEntityContext['sort']>[number]['order'];\n }[];\n};\n\n/**\n * Get access status\n * @public\n * @documentationMaturity preview\n * @permissionId ONLINE_PROGRAMS.PARTICIPANT_READ\n * @applicableIdentity APP\n * @applicableIdentity MEMBER\n * @fqn wix.onlineprograms.participants.v3.ParticipantsService.GetAccessStatus\n */\nexport async function getAccessStatus(): Promise<\n NonNullablePaths<GetAccessStatusResponse, `blocked`, 2>\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[0] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({});\n\n const reqOpts =\n ambassadorWixOnlineProgramsV3Participant.getAccessStatus(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: {},\n singleArgumentUnchanged: false,\n },\n []\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Updates tags for multiple Participants by IDs.\n *\n * Allows assigning and/or unassigning tags in a single operation.\n * At least one of assign_tags or unassign_tags must be provided.\n * @param participantIds - Participant IDs to update tags for (1-100 items)\n * @public\n * @documentationMaturity preview\n * @requiredField participantIds\n * @permissionId online_programs:v3:participant:bulk_update_participant_tags\n * @fqn wix.onlineprograms.participants.v3.ParticipantsService.BulkUpdateParticipantTags\n */\nexport async function bulkUpdateParticipantTags(\n participantIds: string[],\n options?: BulkUpdateParticipantTagsOptions\n): Promise<\n NonNullablePaths<\n BulkUpdateParticipantTagsResponse,\n | `results`\n | `results.${number}.itemMetadata.originalIndex`\n | `results.${number}.itemMetadata.success`\n | `results.${number}.itemMetadata.error.code`\n | `results.${number}.itemMetadata.error.description`\n | `bulkActionMetadata.totalSuccesses`\n | `bulkActionMetadata.totalFailures`\n | `bulkActionMetadata.undetailedFailures`,\n 6\n > & {\n __applicationErrorsType?: BulkUpdateParticipantTagsApplicationErrors;\n }\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[2] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n participantIds: participantIds,\n assignTags: options?.assignTags,\n unassignTags: options?.unassignTags,\n });\n\n const reqOpts =\n ambassadorWixOnlineProgramsV3Participant.bulkUpdateParticipantTags(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: {\n participantIds: '$[0]',\n assignTags: '$[1].assignTags',\n unassignTags: '$[1].unassignTags',\n },\n singleArgumentUnchanged: false,\n },\n ['participantIds', 'options']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\nexport interface BulkUpdateParticipantTagsOptions {\n /** Tags to assign to the Participants */\n assignTags?: Tags;\n /** Tags to unassign from the Participants */\n unassignTags?: Tags;\n}\n\n/**\n * Updates tags for Participants matching a filter.\n *\n * Allows assigning and/or unassigning tags for all Participants matching the filter.\n * Returns a job ID for tracking the async operation.\n * @param filter - WQL filter to select Participants\n * @public\n * @documentationMaturity preview\n * @requiredField filter\n * @permissionId online_programs:v3:participant:bulk_update_participant_tags_by_filter\n * @fqn wix.onlineprograms.participants.v3.ParticipantsService.BulkUpdateParticipantTagsByFilter\n */\nexport async function bulkUpdateParticipantTagsByFilter(\n filter: Record<string, any>,\n options?: BulkUpdateParticipantTagsByFilterOptions\n): Promise<\n NonNullablePaths<BulkUpdateParticipantTagsByFilterResponse, `jobId`, 2> & {\n __applicationErrorsType?: BulkUpdateParticipantTagsByFilterApplicationErrors;\n }\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[2] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n filter: filter,\n assignTags: options?.assignTags,\n unassignTags: options?.unassignTags,\n });\n\n const reqOpts =\n ambassadorWixOnlineProgramsV3Participant.bulkUpdateParticipantTagsByFilter(\n payload\n );\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: {\n filter: '$[0]',\n assignTags: '$[1].assignTags',\n unassignTags: '$[1].unassignTags',\n },\n singleArgumentUnchanged: false,\n },\n ['filter', 'options']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\nexport interface BulkUpdateParticipantTagsByFilterOptions {\n /** Tags to assign to matching Participants */\n assignTags?: Tags;\n /** Tags to unassign from matching Participants */\n unassignTags?: Tags;\n}\n\n/**\n * Retrieves a list of programs according to search criteria\n * @param search - Query to search programs\n * @public\n * @documentationMaturity preview\n * @requiredField search\n * @permissionId online_programs:v3:participant:search_participants\n * @fqn wix.onlineprograms.participants.v3.ParticipantsService.SearchParticipants\n */\nexport async function searchParticipants(\n search: ParticipantSearch\n): Promise<\n NonNullablePaths<\n SearchParticipantsResponse,\n | `participants`\n | `participants.${number}.memberId`\n | `participants.${number}.programId`\n | `participants.${number}.progress.totalStepsCompleted`\n | `participants.${number}.progress.totalStepsAvailable`\n | `participants.${number}.progress.completionPercentage`\n | `participants.${number}.status`\n | `participants.${number}.joinedInfo.singlePaymentDetails.paymentOrderId`\n | `participants.${number}.joinedInfo.paidPlanDetails.paidPlanId`\n | `participants.${number}.joinedInfo.freeCouponDetails.freeCouponId`\n | `participants.${number}.joinedInfo.timeZone`\n | `participants.${number}.joinedInfo.startDate`\n | `participants.${number}.joinedInfo.joinPath`\n | `participants.${number}.member.contactId`\n | `aggregationData.results`\n | `aggregationData.results.${number}.scalar.type`\n | `aggregationData.results.${number}.scalar.value`\n | `aggregationData.results.${number}.name`\n | `aggregationData.results.${number}.type`\n | `aggregationData.results.${number}.fieldPath`,\n 6\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({ search: search });\n\n const reqOpts =\n ambassadorWixOnlineProgramsV3Participant.searchParticipants(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { search: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['search']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\nexport interface ParticipantSearchSpec extends SearchSpec {\n searchable: ['member.email', 'member.firstName', 'member.lastName'];\n aggregatable: [\n '_id',\n 'joinedInfo.startDate',\n 'memberId',\n 'programId',\n 'status'\n ];\n paging: 'cursor';\n wql: [\n {\n operators: ['$eq', '$in'];\n fields: ['_id', 'status'];\n sort: 'BOTH';\n },\n {\n operators: ['$eq', '$in'];\n fields: ['memberId'];\n sort: 'NONE';\n },\n {\n operators: ['$eq'];\n fields: ['programId'];\n sort: 'NONE';\n },\n {\n operators: [];\n fields: ['_createdDate'];\n sort: 'BOTH';\n },\n {\n operators: ['$gt', '$gte', '$lt', '$lte'];\n fields: ['joinedInfo.startDate'];\n sort: 'BOTH';\n }\n ];\n}\n\nexport type CommonSearchWithEntityContext = SearchSdkType<\n Participant,\n ParticipantSearchSpec\n>;\nexport type ParticipantSearch = {\n /** \n Cursor paging options.\n\n Learn more about [cursor paging](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#cursor-paging). \n */\n cursorPaging?: {\n /** \n Maximum number of items to return in the results. \n @max: 100 \n */\n limit?:\n | NonNullable<CommonSearchWithEntityContext['cursorPaging']>['limit']\n | null;\n /** \n Pointer to the next or previous page in the list of results.\n\n Pass the relevant cursor token from the `pagingMetadata` object in the previous call's response.\n Not relevant for the first request. \n @maxLength: 16000 \n */\n cursor?:\n | NonNullable<CommonSearchWithEntityContext['cursorPaging']>['cursor']\n | null;\n };\n /** \n Filter object.\n\n Learn more about [filtering](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#filters). \n */\n filter?: CommonSearchWithEntityContext['filter'] | null;\n /** \n List of sort objects.\n\n Learn more about [sorting](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#sorting). \n @maxSize: 10 \n */\n sort?: {\n /** \n Name of the field to sort by. \n @maxLength: 512 \n */\n fieldName?: NonNullable<\n CommonSearchWithEntityContext['sort']\n >[number]['fieldName'];\n /** \n Sort order. \n */\n order?: NonNullable<CommonSearchWithEntityContext['sort']>[number]['order'];\n }[];\n /** \n Logical groupings of data into facets, with summaries for each facet. For example, use aggregations to allow site visitors to narrow down their search results by selecting specific categories. \n @maxSize: 10 \n */\n aggregations?: {\n /** \n A value aggregation calculates metrics such as count for specific fields within a dataset, providing insights into the overall distribution and key statistics of those values. For example, use a value aggregation to get the number (count) of products for each price listed in the store. \n */\n value?: NonNullable<\n CommonSearchWithEntityContext['aggregations']\n >[number]['value'];\n /** \n A range aggregation calculates the count of the values from the specified field in the dataset that fall within the range of each bucket you define. For example, use a range aggregation to compare the number of reservations made for parties of 4 or less to the number of reservations made for parties with 5 or more. \n */\n range?: NonNullable<\n CommonSearchWithEntityContext['aggregations']\n >[number]['range'];\n /** \n A scalar aggregation calculates a single numerical value from a dataset, summarizing the dataset into one key metric: `COUNT_DISTINCT`, `SUM`, `AVG`, `MIN`, or `MAX`. \n */\n scalar?: NonNullable<\n CommonSearchWithEntityContext['aggregations']\n >[number]['scalar'];\n /** \n A date histogram calculates the count of time values from the specified field in the dataset that fall within each time interval you define (hour, day, week, etc.) For example, use a date histogram to find how many reservations have been made at a restaurant each week. \n */\n dateHistogram?: NonNullable<\n CommonSearchWithEntityContext['aggregations']\n >[number]['dateHistogram'];\n /** \n A nested aggregation is applied within the results of another aggregation. Rather than aggregating directly on the primary dataset, first group data using one aggregation and then apply another aggregation within each group. It allows for more complex analyses where you can summarize data at different levels of detail or hierarchy. For example, to get the number of products that are in stock and out of stock for each price listed, first perform a value aggregation on `discountedPriceNumeric`, and a second value aggregation on `inStock`. \n */\n nested?: NonNullable<\n CommonSearchWithEntityContext['aggregations']\n >[number]['nested'];\n /** \n Aggregation name, returned in `aggregations.results.name`. \n @maxLength: 100 \n */\n name?:\n | NonNullable<\n CommonSearchWithEntityContext['aggregations']\n >[number]['name']\n | null;\n /** \n Type of aggregation to perform. Must align with the corresponding aggregation field. \n */\n type?: NonNullable<\n CommonSearchWithEntityContext['aggregations']\n >[number]['type'];\n /** \n Field to aggregate by. Use dot notation to specify a JSON path. For example, `order.address.streetName`. \n @maxLength: 200 \n */\n fieldPath?: NonNullable<\n CommonSearchWithEntityContext['aggregations']\n >[number]['fieldPath'];\n /** \n Deprecated. Use `nested` instead. \n @deprecated: Deprecated. Use `nested` instead.,\n @replacedBy: kind.nested,\n @targetRemovalDate: 2024-03-30 \n */\n groupBy?: NonNullable<\n CommonSearchWithEntityContext['aggregations']\n >[number]['groupBy'];\n }[];\n /** \n Free text to match in searchable fields. \n */\n search?: {\n /** \n Search mode. Defines the search logic for combining multiple terms in the `expression`. \n */\n mode?: NonNullable<CommonSearchWithEntityContext['search']>['mode'];\n /** \n Search term or expression. \n @maxLength: 100 \n */\n expression?:\n | NonNullable<CommonSearchWithEntityContext['search']>['expression']\n | null;\n /** \n Fields to search in. If the array is empty, all searchable fields are searched. Use dot notation to specify a JSON path. For example, `order.address.streetName`. \n @maxLength: 200,\n @maxSize: 20 \n */\n fields?: NonNullable<CommonSearchWithEntityContext['search']>['fields'];\n /** \n Whether to enable the search function to use an algorithm to automatically find results that are close to the search expression, such as typos and declensions. \n */\n fuzzy?: NonNullable<CommonSearchWithEntityContext['search']>['fuzzy'];\n };\n /** \n Time zone to adjust date-time-based filters and aggregations, in ISO 8601 (including offsets) or IANA time zone database (including time zone IDs) format.\n Applies to all relevant filters and aggregations, unless overridden by providing timestamps including time zone. For example, \"2023-12-20T10:52:34.795Z\". \n @maxLength: 50 \n */\n timeZone?: CommonSearchWithEntityContext['timeZone'] | null;\n};\n\n/**\n * Bulk invites participants to program.\n * For each member participant in Invited state is created.\n * @param programId - Program to which bulk invite participants.\n * @public\n * @documentationMaturity preview\n * @requiredField programId\n * @permissionId ONLINE_PROGRAMS.PARTICIPANT_INVITE\n * @applicableIdentity APP\n * @fqn wix.onlineprograms.participants.v3.ManageParticipantsService.BulkInviteToProgram\n */\nexport async function bulkInviteToProgram(\n programId: string,\n options?: BulkInviteToProgramOptions\n): Promise<\n NonNullablePaths<\n BulkInviteToProgramResponse,\n | `results`\n | `results.${number}.itemMetadata.originalIndex`\n | `results.${number}.itemMetadata.success`\n | `results.${number}.itemMetadata.error.code`\n | `results.${number}.itemMetadata.error.description`\n | `results.${number}.item.memberId`\n | `results.${number}.item.programId`\n | `results.${number}.item.progress.totalStepsCompleted`\n | `results.${number}.item.progress.totalStepsAvailable`\n | `results.${number}.item.progress.completionPercentage`\n | `results.${number}.item.status`\n | `results.${number}.item.joinedInfo.timeZone`\n | `results.${number}.item.joinedInfo.startDate`\n | `results.${number}.item.joinedInfo.joinPath`\n | `results.${number}.item.member.contactId`\n | `bulkActionMetadata.totalSuccesses`\n | `bulkActionMetadata.totalFailures`\n | `bulkActionMetadata.undetailedFailures`,\n 6\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[2] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n programId: programId,\n memberIds: options?.memberIds,\n returnEntity: options?.returnEntity,\n });\n\n const reqOpts =\n ambassadorWixOnlineProgramsV3Participant.bulkInviteToProgram(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: {\n programId: '$[0]',\n memberIds: '$[1].memberIds',\n returnEntity: '$[1].returnEntity',\n },\n singleArgumentUnchanged: false,\n },\n ['programId', 'options']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\nexport interface BulkInviteToProgramOptions {\n /**\n * Return added participants in the response or not.\n * @format GUID\n * @minSize 1\n * @maxSize 100\n */\n memberIds?: string[];\n /** Return invited participants in the response or not. */\n returnEntity?: boolean;\n}\n\n/**\n * Bulk invites all participants to program, but not more then 1000.\n * For each member participant in Invited state is created.\n * @param programId - Program to which bulk add participants.\n * @public\n * @documentationMaturity preview\n * @requiredField programId\n * @permissionId ONLINE_PROGRAMS.PARTICIPANT_INVITE\n * @applicableIdentity APP\n * @fqn wix.onlineprograms.participants.v3.ManageParticipantsService.BulkInviteAllToProgram\n */\nexport async function bulkInviteAllToProgram(\n programId: string,\n options?: BulkInviteAllToProgramOptions\n): Promise<\n NonNullablePaths<\n BulkInviteAllToProgramResponse,\n | `bulkActionMetadata.totalSuccesses`\n | `bulkActionMetadata.totalFailures`\n | `bulkActionMetadata.undetailedFailures`,\n 3\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[2] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n programId: programId,\n excludeMemberIds: options?.excludeMemberIds,\n });\n\n const reqOpts =\n ambassadorWixOnlineProgramsV3Participant.bulkInviteAllToProgram(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: {\n programId: '$[0]',\n excludeMemberIds: '$[1].excludeMemberIds',\n },\n singleArgumentUnchanged: false,\n },\n ['programId', 'options']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\nexport interface BulkInviteAllToProgramOptions {\n /**\n * Exclude site members.\n * @format GUID\n * @maxSize 100\n */\n excludeMemberIds?: string[];\n}\n\n/**\n * Bulk adds participants to program.\n * Participant will be either created in state Joined, or updated to that state\n * from pending one.\n * @param programId - Program to which bulk add participants.\n * @public\n * @documentationMaturity preview\n * @requiredField programId\n * @permissionId ONLINE_PROGRAMS.PARTICIPANT_ADD\n * @applicableIdentity APP\n * @fqn wix.onlineprograms.participants.v3.ManageParticipantsService.BulkAddToProgram\n */\nexport async function bulkAddToProgram(\n programId: string,\n options?: BulkAddToProgramOptions\n): Promise<\n NonNullablePaths<\n BulkAddToProgramResponse,\n | `results`\n | `results.${number}.itemMetadata.originalIndex`\n | `results.${number}.itemMetadata.success`\n | `results.${number}.itemMetadata.error.code`\n | `results.${number}.itemMetadata.error.description`\n | `results.${number}.item.memberId`\n | `results.${number}.item.programId`\n | `results.${number}.item.progress.totalStepsCompleted`\n | `results.${number}.item.progress.totalStepsAvailable`\n | `results.${number}.item.progress.completionPercentage`\n | `results.${number}.item.status`\n | `results.${number}.item.joinedInfo.timeZone`\n | `results.${number}.item.joinedInfo.startDate`\n | `results.${number}.item.joinedInfo.joinPath`\n | `results.${number}.item.member.contactId`\n | `bulkActionMetadata.totalSuccesses`\n | `bulkActionMetadata.totalFailures`\n | `bulkActionMetadata.undetailedFailures`,\n 6\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[2] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n programId: programId,\n memberIds: options?.memberIds,\n returnEntity: options?.returnEntity,\n });\n\n const reqOpts =\n ambassadorWixOnlineProgramsV3Participant.bulkAddToProgram(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: {\n programId: '$[0]',\n memberIds: '$[1].memberIds',\n returnEntity: '$[1].returnEntity',\n },\n singleArgumentUnchanged: false,\n },\n ['programId', 'options']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\nexport interface BulkAddToProgramOptions {\n /**\n * Site members.\n * @format GUID\n * @minSize 1\n * @maxSize 1000\n */\n memberIds?: string[];\n /** Return added participants in the response or not. */\n returnEntity?: boolean;\n}\n\n/**\n * Bulk approves participants, who asked to join private program (aka in\n * state `APPROVAL_PENDING`). If participant was in other state, no effect and\n * error returned.\n * @param participantIds - Participants to add\n * @public\n * @documentationMaturity preview\n * @requiredField participantIds\n * @permissionId ONLINE_PROGRAMS.PARTICIPANT_APPROVE\n * @fqn wix.onlineprograms.participants.v3.ManageParticipantsService.BulkApproveParticipant\n */\nexport async function bulkApproveParticipant(\n participantIds: string[],\n options?: BulkApproveParticipantOptions\n): Promise<\n NonNullablePaths<\n BulkApproveParticipantResponse,\n | `results`\n | `results.${number}.itemMetadata.originalIndex`\n | `results.${number}.itemMetadata.success`\n | `results.${number}.itemMetadata.error.code`\n | `results.${number}.itemMetadata.error.description`\n | `results.${number}.item.memberId`\n | `results.${number}.item.programId`\n | `results.${number}.item.progress.totalStepsCompleted`\n | `results.${number}.item.progress.totalStepsAvailable`\n | `results.${number}.item.progress.completionPercentage`\n | `results.${number}.item.status`\n | `results.${number}.item.joinedInfo.timeZone`\n | `results.${number}.item.joinedInfo.startDate`\n | `results.${number}.item.joinedInfo.joinPath`\n | `results.${number}.item.member.contactId`\n | `bulkActionMetadata.totalSuccesses`\n | `bulkActionMetadata.totalFailures`\n | `bulkActionMetadata.undetailedFailures`,\n 6\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[2] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n participantIds: participantIds,\n programId: options?.programId,\n returnEntity: options?.returnEntity,\n });\n\n const reqOpts =\n ambassadorWixOnlineProgramsV3Participant.bulkApproveParticipant(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: {\n participantIds: '$[0]',\n programId: '$[1].programId',\n returnEntity: '$[1].returnEntity',\n },\n singleArgumentUnchanged: false,\n },\n ['participantIds', 'options']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\nexport interface BulkApproveParticipantOptions {\n /**\n * program to approve participant\n * @format GUID\n */\n programId?: string;\n /** Return approved participants in the response or not */\n returnEntity?: boolean;\n}\n\n/**\n * Bulk approves all pending participants, who asked to join private program (aka\n * in state `APPROVAL_PENDING`).\n * @public\n * @documentationMaturity preview\n * @permissionId ONLINE_PROGRAMS.PARTICIPANT_APPROVE\n * @fqn wix.onlineprograms.participants.v3.ManageParticipantsService.BulkApproveAllParticipant\n */\nexport async function bulkApproveAllParticipant(\n options?: BulkApproveAllParticipantOptions\n): Promise<NonNullablePaths<BulkApproveAllParticipantResponse, `jobId`, 2>> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n programId: options?.programId,\n excludeParticipantIds: options?.excludeParticipantIds,\n });\n\n const reqOpts =\n ambassadorWixOnlineProgramsV3Participant.bulkApproveAllParticipant(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: {\n programId: '$[0].programId',\n excludeParticipantIds: '$[0].excludeParticipantIds',\n },\n singleArgumentUnchanged: false,\n },\n ['options']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\nexport interface BulkApproveAllParticipantOptions {\n /**\n * Program to approve all participants.\n * @format GUID\n */\n programId?: string;\n /**\n * Exclude site members.\n * @format GUID\n * @maxSize 100\n */\n excludeParticipantIds?: string[];\n}\n\n/**\n * Exports data about participants as well as resolved steps in program.\n * @param programId - program id to export data from\n * @internal\n * @documentationMaturity preview\n * @requiredField programId\n * @permissionId ONLINE_PROGRAMS.EXPORT_PARTICIPANTS_STATS\n * @fqn wix.onlineprograms.participants.v3.ParticipantExportsService.ExportParticipantsStats\n */\nexport async function exportParticipantsStats(\n programId: string\n): Promise<void> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n programId: programId,\n });\n\n const reqOpts =\n ambassadorWixOnlineProgramsV3Participant.exportParticipantsStats(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { programId: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['programId']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n","import { toURLSearchParams } from '@wix/sdk-runtime/rest-modules';\nimport { transformSDKFloatToRESTFloat } from '@wix/sdk-runtime/transformations/float';\nimport { transformRESTFloatToSDKFloat } from '@wix/sdk-runtime/transformations/float';\nimport { transformSDKTimestampToRESTTimestamp } from '@wix/sdk-runtime/transformations/timestamp';\nimport { transformRESTTimestampToSDKTimestamp } from '@wix/sdk-runtime/transformations/timestamp';\nimport { transformPaths } from '@wix/sdk-runtime/transformations/transform-paths';\nimport { resolveUrl } from '@wix/sdk-runtime/rest-modules';\nimport { ResolveUrlOpts } from '@wix/sdk-runtime/rest-modules';\nimport { RequestOptionsFactory } from '@wix/sdk-types';\n\nfunction resolveWixOnlineprogramsParticipantsV3ParticipantExportsServiceUrl(\n opts: Omit<ResolveUrlOpts, 'domainToMappings'>\n) {\n const domainToMappings = {\n 'bo._base_domain_': [\n {\n srcPath: '/participants-service',\n destPath: '',\n },\n ],\n 'wixbo.ai': [\n {\n srcPath: '/participants-service',\n destPath: '',\n },\n ],\n 'wix-bo.com': [\n {\n srcPath: '/participants-service',\n destPath: '',\n },\n ],\n 'manage._base_domain_': [\n {\n srcPath: '/participants-service',\n destPath: '',\n },\n ],\n _: [\n {\n srcPath: '/participants-service',\n destPath: '',\n },\n ],\n 'editor._base_domain_': [\n {\n srcPath: '/participants-service',\n destPath: '',\n },\n ],\n 'blocks._base_domain_': [\n {\n srcPath: '/participants-service',\n destPath: '',\n },\n ],\n 'create.editorx': [\n {\n srcPath: '/participants-service',\n destPath: '',\n },\n ],\n 'www._base_domain_': [\n {\n srcPath: '/_api/participants-service',\n destPath: '',\n },\n ],\n 'www.wixapis.com': [\n {\n srcPath: '/participants-service',\n destPath: '',\n },\n ],\n };\n\n return resolveUrl(Object.assign(opts, { domainToMappings }));\n}\n\nfunction resolveWixOnlineprogramsParticipantsV3ManageParticipantsServiceUrl(\n opts: Omit<ResolveUrlOpts, 'domainToMappings'>\n) {\n const domainToMappings = {\n 'bo._base_domain_': [\n {\n srcPath: '/participants-service',\n destPath: '',\n },\n ],\n 'wixbo.ai': [\n {\n srcPath: '/participants-service',\n destPath: '',\n },\n ],\n 'wix-bo.com': [\n {\n srcPath: '/participants-service',\n destPath: '',\n },\n ],\n 'manage._base_domain_': [\n {\n srcPath: '/participants-service',\n destPath: '',\n },\n ],\n _: [\n {\n srcPath: '/participants-service',\n destPath: '',\n },\n ],\n 'editor._base_domain_': [\n {\n srcPath: '/participants-service',\n destPath: '',\n },\n ],\n 'blocks._base_domain_': [\n {\n srcPath: '/participants-service',\n destPath: '',\n },\n ],\n 'create.editorx': [\n {\n srcPath: '/participants-service',\n destPath: '',\n },\n ],\n 'www._base_domain_': [\n {\n srcPath: '/_api/participants-service',\n destPath: '',\n },\n ],\n 'www.wixapis.com': [\n {\n srcPath: '/participants-service',\n destPath: '',\n },\n ],\n };\n\n return resolveUrl(Object.assign(opts, { domainToMappings }));\n}\n\nfunction resolveWixOnlineprogramsParticipantsV3ParticipantsServiceUrl(\n opts: Omit<ResolveUrlOpts, 'domainToMappings'>\n) {\n const domainToMappings = {\n 'bo._base_domain_': [\n {\n srcPath: '/participants-service',\n destPath: '',\n },\n ],\n 'wixbo.ai': [\n {\n srcPath: '/participants-service',\n destPath: '',\n },\n ],\n 'wix-bo.com': [\n {\n srcPath: '/participants-service',\n destPath: '',\n },\n ],\n 'manage._base_domain_': [\n {\n srcPath: '/participants-service',\n destPath: '',\n },\n ],\n _: [\n {\n srcPath: '/participants-service',\n destPath: '',\n },\n ],\n 'editor._base_domain_': [\n {\n srcPath: '/participants-service',\n destPath: '',\n },\n ],\n 'blocks._base_domain_': [\n {\n srcPath: '/participants-service',\n destPath: '',\n },\n ],\n 'create.editorx': [\n {\n srcPath: '/participants-service',\n destPath: '',\n },\n ],\n 'www._base_domain_': [\n {\n srcPath: '/_api/participants-service',\n destPath: '',\n },\n ],\n 'www.wixapis.com': [\n {\n srcPath: '/participants-service',\n destPath: '',\n },\n ],\n };\n\n return resolveUrl(Object.assign(opts, { domainToMappings }));\n}\n\nconst PACKAGE_NAME = '@wix/auto_sdk_online-programs_participants';\n\n/** Create one participant. */\nexport function createParticipant(payload: object): RequestOptionsFactory<any> {\n function __createParticipant({ host }: any) {\n const serializedData = transformPaths(payload, [\n {\n transformFn: transformSDKTimestampToRESTTimestamp,\n paths: [\n { path: 'participant.createdDate' },\n { path: 'participant.updatedDate' },\n { path: 'participant.lastActivityDate' },\n { path: 'participant.certificate.issuedDate' },\n ],\n },\n {\n transformFn: transformSDKFloatToRESTFloat,\n paths: [{ path: 'participant.progress.completionPercentage' }],\n },\n ]);\n const metadata = {\n entityFqdn: 'wix.online_programs.v3.participant',\n method: 'POST' as any,\n methodFqn:\n 'wix.onlineprograms.participants.v3.ParticipantsService.CreateParticipant',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixOnlineprogramsParticipantsV3ParticipantsServiceUrl({\n protoPath: '/v3/participants',\n data: serializedData,\n host,\n }),\n data: serializedData,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'participant.createdDate' },\n { path: 'participant.updatedDate' },\n { path: 'participant.lastActivityDate' },\n { path: 'participant.certificate.issuedDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [{ path: 'participant.progress.completionPercentage' }],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __createParticipant;\n}\n\n/** Creates participants in bulk. */\nexport function bulkCreateParticipant(\n payload: object\n): RequestOptionsFactory<any> {\n function __bulkCreateParticipant({ host }: any) {\n const serializedData = transformPaths(payload, [\n {\n transformFn: transformSDKTimestampToRESTTimestamp,\n paths: [\n { path: 'participants.createdDate' },\n { path: 'participants.updatedDate' },\n { path: 'participants.lastActivityDate' },\n { path: 'participants.certificate.issuedDate' },\n ],\n },\n {\n transformFn: transformSDKFloatToRESTFloat,\n paths: [{ path: 'participants.progress.completionPercentage' }],\n },\n ]);\n const metadata = {\n entityFqdn: 'wix.online_programs.v3.participant',\n method: 'POST' as any,\n methodFqn:\n 'wix.onlineprograms.participants.v3.ParticipantsService.BulkCreateParticipant',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixOnlineprogramsParticipantsV3ParticipantsServiceUrl({\n protoPath: '/v3/bulk/participants/create',\n data: serializedData,\n host,\n }),\n data: serializedData,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'results.item.createdDate' },\n { path: 'results.item.updatedDate' },\n { path: 'results.item.lastActivityDate' },\n { path: 'results.item.certificate.issuedDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [{ path: 'results.item.progress.completionPercentage' }],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __bulkCreateParticipant;\n}\n\n/**\n * Bulk adds all site members to program, but not more then 1000.\n * Participant will be either created in state Joined, or updated to that state\n * from pending one.\n */\nexport function bulkAddAllToProgram(\n payload: object\n): RequestOptionsFactory<any> {\n function __bulkAddAllToProgram({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.online_programs.v3.participant',\n method: 'POST' as any,\n methodFqn:\n 'wix.onlineprograms.participants.v3.ParticipantsService.BulkAddAllToProgram',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixOnlineprogramsParticipantsV3ParticipantsServiceUrl({\n protoPath: '/v3/bulk/participants/add-all',\n data: payload,\n host,\n }),\n data: payload,\n };\n\n return metadata;\n }\n\n return __bulkAddAllToProgram;\n}\n\n/**\n * Delete participant from program. Removes participant from member\n * group. Leaves him in Social Group.\n */\nexport function deleteParticipant(payload: object): RequestOptionsFactory<any> {\n function __deleteParticipant({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.online_programs.v3.participant',\n method: 'DELETE' as any,\n methodFqn:\n 'wix.onlineprograms.participants.v3.ParticipantsService.DeleteParticipant',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixOnlineprogramsParticipantsV3ParticipantsServiceUrl({\n protoPath: '/v3/participants/{participantId}',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n };\n\n return metadata;\n }\n\n return __deleteParticipant;\n}\n\n/** Issue certificate by site admin */\nexport function issueCertificate(payload: object): RequestOptionsFactory<any> {\n function __issueCertificate({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.online_programs.v3.participant',\n method: 'POST' as any,\n methodFqn:\n 'wix.onlineprograms.participants.v3.ParticipantsService.IssueCertificate',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixOnlineprogramsParticipantsV3ParticipantsServiceUrl({\n protoPath: '/v3/participants/{participantId}/issue-certificate',\n data: payload,\n host,\n }),\n data: payload,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'participant.createdDate' },\n { path: 'participant.updatedDate' },\n { path: 'participant.lastActivityDate' },\n { path: 'participant.certificate.issuedDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [{ path: 'participant.progress.completionPercentage' }],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __issueCertificate;\n}\n\n/** Get program's completion stats */\nexport function getCompletionStats(\n payload: object\n): RequestOptionsFactory<any> {\n function __getCompletionStats({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.online_programs.v3.participant',\n method: 'GET' as any,\n methodFqn:\n 'wix.onlineprograms.participants.v3.ParticipantsService.GetCompletionStats',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixOnlineprogramsParticipantsV3ParticipantsServiceUrl({\n protoPath: '/v3/stats/completion/{programId}',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [{ path: 'completionRate' }],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __getCompletionStats;\n}\n\n/** Get premium stats */\nexport function getPremiumStats(payload: object): RequestOptionsFactory<any> {\n function __getPremiumStats({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.online_programs.v3.participant',\n method: 'GET' as any,\n methodFqn:\n 'wix.onlineprograms.participants.v3.ParticipantsService.GetPremiumStats',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixOnlineprogramsParticipantsV3ParticipantsServiceUrl({\n protoPath: '/v3/stats/premium',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n };\n\n return metadata;\n }\n\n return __getPremiumStats;\n}\n\n/** Returns participant. */\nexport function getParticipant(payload: object): RequestOptionsFactory<any> {\n function __getParticipant({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.online_programs.v3.participant',\n method: 'GET' as any,\n methodFqn:\n 'wix.onlineprograms.participants.v3.ParticipantsService.GetParticipant',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixOnlineprogramsParticipantsV3ParticipantsServiceUrl({\n protoPath: '/v3/participants/{participantId}',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'participant.createdDate' },\n { path: 'participant.updatedDate' },\n { path: 'participant.lastActivityDate' },\n { path: 'participant.certificate.issuedDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [{ path: 'participant.progress.completionPercentage' }],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __getParticipant;\n}\n\n/** Query existing participants */\nexport function queryParticipants(payload: object): RequestOptionsFactory<any> {\n function __queryParticipants({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.online_programs.v3.participant',\n method: 'POST' as any,\n methodFqn:\n 'wix.onlineprograms.participants.v3.ParticipantsService.QueryParticipants',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixOnlineprogramsParticipantsV3ParticipantsServiceUrl({\n protoPath: '/v3/participants/query',\n data: payload,\n host,\n }),\n data: payload,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'participants.createdDate' },\n { path: 'participants.updatedDate' },\n { path: 'participants.lastActivityDate' },\n { path: 'participants.certificate.issuedDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [{ path: 'participants.progress.completionPercentage' }],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __queryParticipants;\n}\n\n/** Get access status */\nexport function getAccessStatus(payload: object): RequestOptionsFactory<any> {\n function __getAccessStatus({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.online_programs.v3.participant',\n method: 'GET' as any,\n methodFqn:\n 'wix.onlineprograms.participants.v3.ParticipantsService.GetAccessStatus',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixOnlineprogramsParticipantsV3ParticipantsServiceUrl({\n protoPath: '/v3/participants/access',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n };\n\n return metadata;\n }\n\n return __getAccessStatus;\n}\n\n/**\n * Updates tags for multiple Participants by IDs.\n *\n * Allows assigning and/or unassigning tags in a single operation.\n * At least one of assign_tags or unassign_tags must be provided.\n */\nexport function bulkUpdateParticipantTags(\n payload: object\n): RequestOptionsFactory<any> {\n function __bulkUpdateParticipantTags({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.online_programs.v3.participant',\n method: 'POST' as any,\n methodFqn:\n 'wix.onlineprograms.participants.v3.ParticipantsService.BulkUpdateParticipantTags',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixOnlineprogramsParticipantsV3ParticipantsServiceUrl({\n protoPath: '/v3/bulk/participants/update-tags',\n data: payload,\n host,\n }),\n data: payload,\n };\n\n return metadata;\n }\n\n return __bulkUpdateParticipantTags;\n}\n\n/**\n * Updates tags for Participants matching a filter.\n *\n * Allows assigning and/or unassigning tags for all Participants matching the filter.\n * Returns a job ID for tracking the async operation.\n */\nexport function bulkUpdateParticipantTagsByFilter(\n payload: object\n): RequestOptionsFactory<any> {\n function __bulkUpdateParticipantTagsByFilter({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.online_programs.v3.participant',\n method: 'POST' as any,\n methodFqn:\n 'wix.onlineprograms.participants.v3.ParticipantsService.BulkUpdateParticipantTagsByFilter',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixOnlineprogramsParticipantsV3ParticipantsServiceUrl({\n protoPath: '/v3/bulk/participants/update-tags-by-filter',\n data: payload,\n host,\n }),\n data: payload,\n };\n\n return metadata;\n }\n\n return __bulkUpdateParticipantTagsByFilter;\n}\n\n/** Retrieves a list of programs according to search criteria */\nexport function searchParticipants(\n payload: object\n): RequestOptionsFactory<any> {\n function __searchParticipants({ host }: any) {\n const serializedData = transformPaths(payload, [\n {\n transformFn: transformSDKFloatToRESTFloat,\n paths: [\n { path: 'search.aggregations.range.buckets.from' },\n { path: 'search.aggregations.range.buckets.to' },\n {\n path: 'search.aggregations.nested.nestedAggregations.range.buckets.from',\n },\n {\n path: 'search.aggregations.nested.nestedAggregations.range.buckets.to',\n },\n ],\n },\n ]);\n const metadata = {\n entityFqdn: 'wix.online_programs.v3.participant',\n method: 'POST' as any,\n methodFqn:\n 'wix.onlineprograms.participants.v3.ParticipantsService.SearchParticipants',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixOnlineprogramsParticipantsV3ParticipantsServiceUrl({\n protoPath: '/v3/participants/search',\n data: serializedData,\n host,\n }),\n data: serializedData,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'participants.createdDate' },\n { path: 'participants.updatedDate' },\n { path: 'participants.lastActivityDate' },\n { path: 'participants.certificate.issuedDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [\n { path: 'participants.progress.completionPercentage' },\n { path: 'aggregationData.results.scalar.value' },\n {\n path: 'aggregationData.results.groupedByValue.results.nestedResults.scalar.value',\n },\n {\n path: 'aggregationData.results.nested.results.results.*.scalar.value',\n },\n { path: 'aggregationData.results.ranges.results.from' },\n { path: 'aggregationData.results.ranges.results.to' },\n {\n path: 'aggregationData.results.groupedByValue.results.nestedResults.ranges.results.from',\n },\n {\n path: 'aggregationData.results.groupedByValue.results.nestedResults.ranges.results.to',\n },\n {\n path: 'aggregationData.results.nested.results.results.*.range.from',\n },\n {\n path: 'aggregationData.results.nested.results.results.*.range.to',\n },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __searchParticipants;\n}\n\n/**\n * Bulk invites participants to program.\n * For each member participant in Invited state is created.\n */\nexport function bulkInviteToProgram(\n payload: object\n): RequestOptionsFactory<any> {\n function __bulkInviteToProgram({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.online_programs.v3.participant',\n method: 'POST' as any,\n methodFqn:\n 'wix.onlineprograms.participants.v3.ManageParticipantsService.BulkInviteToProgram',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixOnlineprogramsParticipantsV3ManageParticipantsServiceUrl({\n protoPath: '/v3/bulk/participants/invite',\n data: payload,\n host,\n }),\n data: payload,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'results.item.createdDate' },\n { path: 'results.item.updatedDate' },\n { path: 'results.item.lastActivityDate' },\n { path: 'results.item.certificate.issuedDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [{ path: 'results.item.progress.completionPercentage' }],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __bulkInviteToProgram;\n}\n\n/**\n * Bulk invites all participants to program, but not more then 1000.\n * For each member participant in Invited state is created.\n */\nexport function bulkInviteAllToProgram(\n payload: object\n): RequestOptionsFactory<any> {\n function __bulkInviteAllToProgram({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.online_programs.v3.participant',\n method: 'POST' as any,\n methodFqn:\n 'wix.onlineprograms.participants.v3.ManageParticipantsService.BulkInviteAllToProgram',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixOnlineprogramsParticipantsV3ManageParticipantsServiceUrl({\n protoPath: '/v3/bulk/participants/invite-all',\n data: payload,\n host,\n }),\n data: payload,\n };\n\n return metadata;\n }\n\n return __bulkInviteAllToProgram;\n}\n\n/**\n * Bulk adds participants to program.\n * Participant will be either created in state Joined, or updated to that state\n * from pending one.\n */\nexport function bulkAddToProgram(payload: object): RequestOptionsFactory<any> {\n function __bulkAddToProgram({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.online_programs.v3.participant',\n method: 'POST' as any,\n methodFqn:\n 'wix.onlineprograms.participants.v3.ManageParticipantsService.BulkAddToProgram',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixOnlineprogramsParticipantsV3ManageParticipantsServiceUrl({\n protoPath: '/v3/bulk/participants/add',\n data: payload,\n host,\n }),\n data: payload,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'results.item.createdDate' },\n { path: 'results.item.updatedDate' },\n { path: 'results.item.lastActivityDate' },\n { path: 'results.item.certificate.issuedDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [{ path: 'results.item.progress.completionPercentage' }],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __bulkAddToProgram;\n}\n\n/**\n * Bulk approves participants, who asked to join private program (aka in\n * state `APPROVAL_PENDING`). If participant was in other state, no effect and\n * error returned.\n */\nexport function bulkApproveParticipant(\n payload: object\n): RequestOptionsFactory<any> {\n function __bulkApproveParticipant({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.online_programs.v3.participant',\n method: 'POST' as any,\n methodFqn:\n 'wix.onlineprograms.participants.v3.ManageParticipantsService.BulkApproveParticipant',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixOnlineprogramsParticipantsV3ManageParticipantsServiceUrl({\n protoPath: '/v3/bulk/participants/approve',\n data: payload,\n host,\n }),\n data: payload,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'results.item.createdDate' },\n { path: 'results.item.updatedDate' },\n { path: 'results.item.lastActivityDate' },\n { path: 'results.item.certificate.issuedDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [{ path: 'results.item.progress.completionPercentage' }],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __bulkApproveParticipant;\n}\n\n/**\n * Bulk approves all pending participants, who asked to join private program (aka\n * in state `APPROVAL_PENDING`).\n */\nexport function bulkApproveAllParticipant(\n payload: object\n): RequestOptionsFactory<any> {\n function __bulkApproveAllParticipant({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.online_programs.v3.participant',\n method: 'POST' as any,\n methodFqn:\n 'wix.onlineprograms.participants.v3.ManageParticipantsService.BulkApproveAllParticipant',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixOnlineprogramsParticipantsV3ManageParticipantsServiceUrl({\n protoPath: '/v3/bulk/participants/approve-all',\n data: payload,\n host,\n }),\n data: payload,\n };\n\n return metadata;\n }\n\n return __bulkApproveAllParticipant;\n}\n\n/** Exports data about participants as well as resolved steps in program. */\nexport function exportParticipantsStats(\n payload: object\n): RequestOptionsFactory<any> {\n function __exportParticipantsStats({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.online_programs.v3.participant',\n method: 'GET' as any,\n methodFqn:\n 'wix.onlineprograms.participants.v3.ParticipantExportsService.ExportParticipantsStats',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixOnlineprogramsParticipantsV3ParticipantExportsServiceUrl({\n protoPath: '/v3/participants/export/{programId}',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n };\n\n return metadata;\n }\n\n return __exportParticipantsStats;\n}\n","import {\n createParticipant as publicCreateParticipant,\n bulkCreateParticipant as publicBulkCreateParticipant,\n bulkAddAllToProgram as publicBulkAddAllToProgram,\n deleteParticipant as publicDeleteParticipant,\n issueCertificate as publicIssueCertificate,\n getCompletionStats as publicGetCompletionStats,\n getPremiumStats as publicGetPremiumStats,\n getParticipant as publicGetParticipant,\n queryParticipants as publicQueryParticipants,\n typedQueryParticipants as publicTypedQueryParticipants,\n getAccessStatus as publicGetAccessStatus,\n bulkUpdateParticipantTags as publicBulkUpdateParticipantTags,\n bulkUpdateParticipantTagsByFilter as publicBulkUpdateParticipantTagsByFilter,\n searchParticipants as publicSearchParticipants,\n bulkInviteToProgram as publicBulkInviteToProgram,\n bulkInviteAllToProgram as publicBulkInviteAllToProgram,\n bulkAddToProgram as publicBulkAddToProgram,\n bulkApproveParticipant as publicBulkApproveParticipant,\n bulkApproveAllParticipant as publicBulkApproveAllParticipant,\n exportParticipantsStats as publicExportParticipantsStats,\n} from './online-programs-v3-participant-participants.public.js';\nimport { createRESTModule } from '@wix/sdk-runtime/rest-modules';\nimport { createEventModule } from '@wix/sdk-runtime/event-definition-modules';\nimport {\n BuildRESTFunction,\n MaybeContext,\n BuildEventDefinition,\n} from '@wix/sdk-types';\nimport { HttpClient } from '@wix/sdk-types';\nimport { createQueryOverloadRouter } from '@wix/sdk-runtime/query-method-router';\nimport {\n ParticipantQuery,\n ParticipantsQueryBuilder,\n typedQueryParticipants as universalTypedQueryParticipants,\n} from './online-programs-v3-participant-participants.universal.js';\nimport { onParticipantAdded as publicOnParticipantAdded } from './online-programs-v3-participant-participants.public.js';\nimport { onParticipantApproved as publicOnParticipantApproved } from './online-programs-v3-participant-participants.public.js';\nimport { onParticipantInvited as publicOnParticipantInvited } from './online-programs-v3-participant-participants.public.js';\n\nfunction customQueryParticipants(httpClient: HttpClient) {\n const router = createQueryOverloadRouter({\n builderQueryFunction: () => publicQueryParticipants(httpClient)(),\n typedQueryFunction: (query: ParticipantQuery) =>\n publicTypedQueryParticipants(httpClient)(query),\n hasOptionsParameter: false,\n });\n\n function overloadedQuery(): ParticipantsQueryBuilder;\n function overloadedQuery(\n query: ParticipantQuery\n ): ReturnType<typeof universalTypedQueryParticipants>;\n function overloadedQuery(query?: ParticipantQuery): any {\n return router(...arguments);\n }\n\n return overloadedQuery;\n}\n\nexport const createParticipant: MaybeContext<\n BuildRESTFunction<typeof publicCreateParticipant> &\n typeof publicCreateParticipant\n> = /*#__PURE__*/ createRESTModule(publicCreateParticipant);\nexport const bulkCreateParticipant: MaybeContext<\n BuildRESTFunction<typeof publicBulkCreateParticipant> &\n typeof publicBulkCreateParticipant\n> = /*#__PURE__*/ createRESTModule(publicBulkCreateParticipant);\nexport const bulkAddAllToProgram: MaybeContext<\n BuildRESTFunction<typeof publicBulkAddAllToProgram> &\n typeof publicBulkAddAllToProgram\n> = /*#__PURE__*/ createRESTModule(publicBulkAddAllToProgram);\nexport const deleteParticipant: MaybeContext<\n BuildRESTFunction<typeof publicDeleteParticipant> &\n typeof publicDeleteParticipant\n> = /*#__PURE__*/ createRESTModule(publicDeleteParticipant);\nexport const issueCertificate: MaybeContext<\n BuildRESTFunction<typeof publicIssueCertificate> &\n typeof publicIssueCertificate\n> = /*#__PURE__*/ createRESTModule(publicIssueCertificate);\nexport const getCompletionStats: MaybeContext<\n BuildRESTFunction<typeof publicGetCompletionStats> &\n typeof publicGetCompletionStats\n> = /*#__PURE__*/ createRESTModule(publicGetCompletionStats);\nexport const getPremiumStats: MaybeContext<\n BuildRESTFunction<typeof publicGetPremiumStats> & typeof publicGetPremiumStats\n> = /*#__PURE__*/ createRESTModule(publicGetPremiumStats);\nexport const getParticipant: MaybeContext<\n BuildRESTFunction<typeof publicGetParticipant> & typeof publicGetParticipant\n> = /*#__PURE__*/ createRESTModule(publicGetParticipant);\nexport const getAccessStatus: MaybeContext<\n BuildRESTFunction<typeof publicGetAccessStatus> & typeof publicGetAccessStatus\n> = /*#__PURE__*/ createRESTModule(publicGetAccessStatus);\nexport const bulkUpdateParticipantTags: MaybeContext<\n BuildRESTFunction<typeof publicBulkUpdateParticipantTags> &\n typeof publicBulkUpdateParticipantTags\n> = /*#__PURE__*/ createRESTModule(publicBulkUpdateParticipantTags);\nexport const bulkUpdateParticipantTagsByFilter: MaybeContext<\n BuildRESTFunction<typeof publicBulkUpdateParticipantTagsByFilter> &\n typeof publicBulkUpdateParticipantTagsByFilter\n> = /*#__PURE__*/ createRESTModule(publicBulkUpdateParticipantTagsByFilter);\nexport const searchParticipants: MaybeContext<\n BuildRESTFunction<typeof publicSearchParticipants> &\n typeof publicSearchParticipants\n> = /*#__PURE__*/ createRESTModule(publicSearchParticipants);\nexport const bulkInviteToProgram: MaybeContext<\n BuildRESTFunction<typeof publicBulkInviteToProgram> &\n typeof publicBulkInviteToProgram\n> = /*#__PURE__*/ createRESTModule(publicBulkInviteToProgram);\nexport const bulkInviteAllToProgram: MaybeContext<\n BuildRESTFunction<typeof publicBulkInviteAllToProgram> &\n typeof publicBulkInviteAllToProgram\n> = /*#__PURE__*/ createRESTModule(publicBulkInviteAllToProgram);\nexport const bulkAddToProgram: MaybeContext<\n BuildRESTFunction<typeof publicBulkAddToProgram> &\n typeof publicBulkAddToProgram\n> = /*#__PURE__*/ createRESTModule(publicBulkAddToProgram);\nexport const bulkApproveParticipant: MaybeContext<\n BuildRESTFunction<typeof publicBulkApproveParticipant> &\n typeof publicBulkApproveParticipant\n> = /*#__PURE__*/ createRESTModule(publicBulkApproveParticipant);\nexport const bulkApproveAllParticipant: MaybeContext<\n BuildRESTFunction<typeof publicBulkApproveAllParticipant> &\n typeof publicBulkApproveAllParticipant\n> = /*#__PURE__*/ createRESTModule(publicBulkApproveAllParticipant);\n/** @internal */\nexport const exportParticipantsStats: MaybeContext<\n BuildRESTFunction<typeof publicExportParticipantsStats> &\n typeof publicExportParticipantsStats\n> = /*#__PURE__*/ createRESTModule(publicExportParticipantsStats);\nexport const queryParticipants: MaybeContext<\n BuildRESTFunction<typeof customQueryParticipants> &\n typeof customQueryParticipants\n> = /*#__PURE__*/ createRESTModule(customQueryParticipants);\n/** */\nexport const onParticipantAdded: BuildEventDefinition<\n typeof publicOnParticipantAdded\n> &\n typeof publicOnParticipantAdded = createEventModule(publicOnParticipantAdded);\n/** */\nexport const onParticipantApproved: BuildEventDefinition<\n typeof publicOnParticipantApproved\n> &\n typeof publicOnParticipantApproved = createEventModule(\n publicOnParticipantApproved\n);\n/** */\nexport const onParticipantInvited: BuildEventDefinition<\n typeof publicOnParticipantInvited\n> &\n typeof publicOnParticipantInvited = createEventModule(\n publicOnParticipantInvited\n);\n\nexport {\n JoinPath,\n Status,\n SortOrder,\n SortType,\n SortDirection,\n MissingValues,\n ScalarType,\n NestedAggregationType,\n Interval,\n AggregationType,\n Mode,\n BenefitType,\n Event,\n WebhookIdentityType,\n State,\n} from './online-programs-v3-participant-participants.universal.js';\nexport {\n Participant,\n SinglePaymentDetails,\n PaidPlanDetails,\n FreeCouponDetails,\n Progress,\n Certificate,\n JoinedInfo,\n JoinedInfoJoinPathDetailsOneOf,\n Member,\n ExtendedFields,\n Tags,\n TagList,\n ParticipantAdded,\n TagsModified,\n CreateParticipantRequest,\n CreateParticipantResponse,\n BulkCreateParticipantRequest,\n BulkCreateParticipantResponse,\n BulkParticipantResult,\n CommonItemMetadata,\n ApplicationError,\n CommonBulkActionMetadata,\n BulkAddAllToProgramRequest,\n BulkAddAllToProgramResponse,\n DeleteParticipantRequest,\n DeleteParticipantResponse,\n IssueCertificateRequest,\n IssueCertificateResponse,\n GetCompletionStatsRequest,\n GetCompletionStatsResponse,\n GetPremiumStatsRequest,\n GetPremiumStatsResponse,\n GetParticipantRequest,\n GetParticipantResponse,\n QueryParticipantsRequest,\n CursorQuery,\n CursorQueryPagingMethodOneOf,\n Sorting,\n CursorPaging,\n QueryParticipantsResponse,\n CursorPagingMetadata,\n Cursors,\n GetAccessStatusRequest,\n GetAccessStatusResponse,\n BulkUpdateParticipantTagsRequest,\n BulkUpdateParticipantTagsResponse,\n BulkUpdateParticipantTagsResult,\n BulkUpdateParticipantTagsByFilterRequest,\n BulkUpdateParticipantTagsByFilterResponse,\n SearchParticipantsRequest,\n CursorSearch,\n CursorSearchPagingMethodOneOf,\n Aggregation,\n AggregationKindOneOf,\n RangeBucket,\n IncludeMissingValuesOptions,\n ValueAggregation,\n ValueAggregationOptionsOneOf,\n RangeAggregation,\n ScalarAggregation,\n DateHistogramAggregation,\n NestedAggregationItem,\n NestedAggregationItemKindOneOf,\n NestedAggregation,\n GroupByAggregation,\n GroupByAggregationKindOneOf,\n SearchDetails,\n SearchParticipantsResponse,\n AggregationData,\n ValueAggregationResult,\n RangeAggregationResult,\n NestedAggregationResults,\n NestedAggregationResultsResultOneOf,\n ValueResults,\n RangeResults,\n AggregationResultsScalarResult,\n NestedValueAggregationResult,\n ValueResult,\n RangeResult,\n ScalarResult,\n NestedResultValue,\n NestedResultValueResultOneOf,\n Results,\n DateHistogramResult,\n GroupByValueResults,\n DateHistogramResults,\n NestedResults,\n AggregationResults,\n AggregationResultsResultOneOf,\n DomainEvent,\n DomainEventBodyOneOf,\n EntityCreatedEvent,\n RestoreInfo,\n EntityUpdatedEvent,\n EntityDeletedEvent,\n ActionEvent,\n Empty,\n BenefitNotification,\n Benefit,\n EntryPass,\n Discount,\n DiscountDiscountOneOf,\n Behavior,\n BehaviorBehaviorOneOf,\n MessageEnvelope,\n IdentificationData,\n IdentificationDataIdOneOf,\n BulkInviteToProgramRequest,\n BulkInviteToProgramResponse,\n ItemMetadata,\n BulkInviteToProgramResult,\n BulkActionMetadata,\n ParticipantInvited,\n BulkInviteAllToProgramRequest,\n BulkInviteAllToProgramResponse,\n BulkAddToProgramRequest,\n BulkAddToProgramResponse,\n BulkAddToProgramResult,\n BulkApproveParticipantRequest,\n BulkApproveParticipantResponse,\n BulkApproveParticipantResult,\n ParticipantApproved,\n BulkApproveAllParticipantRequest,\n BulkApproveAllParticipantResponse,\n ExportParticipantsStatsRequest,\n ExportParticipantsStatsResponse,\n ParticipantExportsFinished,\n BaseEventMetadata,\n EventMetadata,\n ParticipantAddedEnvelope,\n ParticipantApprovedEnvelope,\n ParticipantInvitedEnvelope,\n BulkCreateParticipantOptions,\n BulkAddAllToProgramOptions,\n ParticipantsQueryResult,\n ParticipantsQueryBuilder,\n ParticipantQuerySpec,\n BulkUpdateParticipantTagsOptions,\n BulkUpdateParticipantTagsByFilterOptions,\n ParticipantSearchSpec,\n BulkInviteToProgramOptions,\n BulkInviteAllToProgramOptions,\n BulkAddToProgramOptions,\n BulkApproveParticipantOptions,\n BulkApproveAllParticipantOptions,\n} from './online-programs-v3-participant-participants.universal.js';\nexport {\n JoinPathWithLiterals,\n StatusWithLiterals,\n SortOrderWithLiterals,\n SortTypeWithLiterals,\n SortDirectionWithLiterals,\n MissingValuesWithLiterals,\n ScalarTypeWithLiterals,\n NestedAggregationTypeWithLiterals,\n IntervalWithLiterals,\n AggregationTypeWithLiterals,\n ModeWithLiterals,\n BenefitTypeWithLiterals,\n EventWithLiterals,\n WebhookIdentityTypeWithLiterals,\n StateWithLiterals,\n CreateParticipantApplicationErrors,\n BulkUpdateParticipantTagsApplicationErrors,\n BulkUpdateParticipantTagsByFilterApplicationErrors,\n CommonQueryWithEntityContext,\n ParticipantQuery,\n CommonSearchWithEntityContext,\n ParticipantSearch,\n} from './online-programs-v3-participant-participants.universal.js';\n"],"mappings":"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","names":["bulkAddAllToProgram","bulkAddToProgram","bulkApproveAllParticipant","bulkApproveParticipant","bulkCreateParticipant","bulkInviteAllToProgram","bulkInviteToProgram","bulkUpdateParticipantTags","bulkUpdateParticipantTagsByFilter","createParticipant","deleteParticipant","exportParticipantsStats","getAccessStatus","getCompletionStats","getParticipant","getPremiumStats","issueCertificate","onParticipantAdded","onParticipantApproved","onParticipantInvited","queryParticipants","searchParticipants","import_rename_all_nested_keys","import_timestamp","import_transform_paths","import_float","import_timestamp","import_rest_modules","payload","import_transform_paths","JoinPath","Status","SortOrder","SortType","SortDirection","MissingValues","ScalarType","NestedAggregationType","Interval","AggregationType","Mode","BenefitType","Event","WebhookIdentityType","State","createParticipant","sdkTransformError","bulkCreateParticipant","bulkAddAllToProgram","deleteParticipant","issueCertificate","getCompletionStats","getPremiumStats","getParticipant","queryParticipants","getAccessStatus","bulkUpdateParticipantTags","bulkUpdateParticipantTagsByFilter","searchParticipants","bulkInviteToProgram","bulkInviteAllToProgram","bulkAddToProgram","bulkApproveParticipant","bulkApproveAllParticipant","exportParticipantsStats","createParticipant","bulkCreateParticipant","bulkAddAllToProgram","deleteParticipant","issueCertificate","getCompletionStats","getPremiumStats","getParticipant","queryParticipants","typedQueryParticipants","getAccessStatus","bulkUpdateParticipantTags","bulkUpdateParticipantTagsByFilter","searchParticipants","bulkInviteToProgram","bulkInviteAllToProgram","bulkAddToProgram","bulkApproveParticipant","bulkApproveAllParticipant","exportParticipantsStats","import_rest_modules","queryParticipants","typedQueryParticipants","createParticipant","bulkCreateParticipant","bulkAddAllToProgram","deleteParticipant","issueCertificate","getCompletionStats","getPremiumStats","getParticipant","getAccessStatus","bulkUpdateParticipantTags","bulkUpdateParticipantTagsByFilter","searchParticipants","bulkInviteToProgram","bulkInviteAllToProgram","bulkAddToProgram","bulkApproveParticipant","bulkApproveAllParticipant","exportParticipantsStats","onParticipantAdded","onParticipantApproved","onParticipantInvited"]}
|
|
1
|
+
{"version":3,"sources":["../../index.ts","../../src/online-programs-v3-participant-participants.public.ts","../../src/online-programs-v3-participant-participants.universal.ts","../../src/online-programs-v3-participant-participants.http.ts","../../src/online-programs-v3-participant-participants.context.ts"],"sourcesContent":["export * from './src/online-programs-v3-participant-participants.context.js';\n","import { renameKeysFromRESTResponseToSDKResponse } from '@wix/sdk-runtime/rename-all-nested-keys';\nimport { transformRESTTimestampToSDKTimestamp } from '@wix/sdk-runtime/transformations/timestamp';\nimport { transformPaths } from '@wix/sdk-runtime/transformations/transform-paths';\nimport { EventDefinition, HttpClient, NonNullablePaths } from '@wix/sdk-types';\nimport {\n BulkAddToProgramOptions,\n BulkAddToProgramResponse,\n BulkApproveAllParticipantOptions,\n BulkApproveAllParticipantResponse,\n BulkApproveParticipantOptions,\n BulkApproveParticipantResponse,\n BulkInviteAllToProgramOptions,\n BulkInviteAllToProgramResponse,\n BulkInviteToProgramOptions,\n BulkInviteToProgramResponse,\n ParticipantAddedEnvelope,\n ParticipantApprovedEnvelope,\n ParticipantInvitedEnvelope,\n bulkAddToProgram as universalBulkAddToProgram,\n bulkApproveAllParticipant as universalBulkApproveAllParticipant,\n bulkApproveParticipant as universalBulkApproveParticipant,\n bulkInviteAllToProgram as universalBulkInviteAllToProgram,\n bulkInviteToProgram as universalBulkInviteToProgram,\n} from './online-programs-v3-participant-participants.universal.js';\n\nexport const __metadata = { PACKAGE_NAME: '@wix/online-programs' };\n\nexport function bulkInviteToProgram(\n httpClient: HttpClient\n): BulkInviteToProgramSignature {\n return (programId: string, options?: BulkInviteToProgramOptions) =>\n universalBulkInviteToProgram(\n programId,\n options,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface BulkInviteToProgramSignature {\n /**\n * Bulk invites participants to program.\n * For each member participant in Invited state is created.\n * @param - Program to which bulk invite participants.\n */\n (programId: string, options?: BulkInviteToProgramOptions): Promise<\n NonNullablePaths<\n BulkInviteToProgramResponse,\n | `results`\n | `results.${number}.itemMetadata.originalIndex`\n | `results.${number}.itemMetadata.success`\n | `results.${number}.itemMetadata.error.code`\n | `results.${number}.itemMetadata.error.description`\n | `results.${number}.item.memberId`\n | `results.${number}.item.programId`\n | `results.${number}.item.progress.totalStepsCompleted`\n | `results.${number}.item.progress.totalStepsAvailable`\n | `results.${number}.item.progress.completionPercentage`\n | `results.${number}.item.state`\n | `results.${number}.item.joinedInfo.timeZone`\n | `results.${number}.item.joinedInfo.startDate`\n | `results.${number}.item.joinedInfo.joinPath`\n | `results.${number}.item.member.contactId`\n | `bulkActionMetadata.totalSuccesses`\n | `bulkActionMetadata.totalFailures`\n | `bulkActionMetadata.undetailedFailures`,\n 6\n >\n >;\n}\n\nexport function bulkInviteAllToProgram(\n httpClient: HttpClient\n): BulkInviteAllToProgramSignature {\n return (programId: string, options?: BulkInviteAllToProgramOptions) =>\n universalBulkInviteAllToProgram(\n programId,\n options,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface BulkInviteAllToProgramSignature {\n /**\n * Bulk invites all participants to program, but not more then 1000.\n * For each member participant in Invited state is created.\n * @param - Program to which bulk add participants.\n */\n (programId: string, options?: BulkInviteAllToProgramOptions): Promise<\n NonNullablePaths<\n BulkInviteAllToProgramResponse,\n | `bulkActionMetadata.totalSuccesses`\n | `bulkActionMetadata.totalFailures`\n | `bulkActionMetadata.undetailedFailures`,\n 3\n >\n >;\n}\n\nexport function bulkAddToProgram(\n httpClient: HttpClient\n): BulkAddToProgramSignature {\n return (programId: string, options?: BulkAddToProgramOptions) =>\n universalBulkAddToProgram(\n programId,\n options,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface BulkAddToProgramSignature {\n /**\n * Bulk adds participants to program.\n * Participant will be either created in state Joined, or updated to that state\n * from pending one.\n * @param - Program to which bulk add participants.\n */\n (programId: string, options?: BulkAddToProgramOptions): Promise<\n NonNullablePaths<\n BulkAddToProgramResponse,\n | `results`\n | `results.${number}.itemMetadata.originalIndex`\n | `results.${number}.itemMetadata.success`\n | `results.${number}.itemMetadata.error.code`\n | `results.${number}.itemMetadata.error.description`\n | `results.${number}.item.memberId`\n | `results.${number}.item.programId`\n | `results.${number}.item.progress.totalStepsCompleted`\n | `results.${number}.item.progress.totalStepsAvailable`\n | `results.${number}.item.progress.completionPercentage`\n | `results.${number}.item.state`\n | `results.${number}.item.joinedInfo.timeZone`\n | `results.${number}.item.joinedInfo.startDate`\n | `results.${number}.item.joinedInfo.joinPath`\n | `results.${number}.item.member.contactId`\n | `bulkActionMetadata.totalSuccesses`\n | `bulkActionMetadata.totalFailures`\n | `bulkActionMetadata.undetailedFailures`,\n 6\n >\n >;\n}\n\nexport function bulkApproveParticipant(\n httpClient: HttpClient\n): BulkApproveParticipantSignature {\n return (participantIds: string[], options?: BulkApproveParticipantOptions) =>\n universalBulkApproveParticipant(\n participantIds,\n options,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface BulkApproveParticipantSignature {\n /**\n * Bulk approves participants, who asked to join private program (aka in\n * state `APPROVAL_PENDING`). If participant was in other state, no effect and\n * error returned.\n * @param - Participants to add\n */\n (participantIds: string[], options?: BulkApproveParticipantOptions): Promise<\n NonNullablePaths<\n BulkApproveParticipantResponse,\n | `results`\n | `results.${number}.itemMetadata.originalIndex`\n | `results.${number}.itemMetadata.success`\n | `results.${number}.itemMetadata.error.code`\n | `results.${number}.itemMetadata.error.description`\n | `results.${number}.item.memberId`\n | `results.${number}.item.programId`\n | `results.${number}.item.progress.totalStepsCompleted`\n | `results.${number}.item.progress.totalStepsAvailable`\n | `results.${number}.item.progress.completionPercentage`\n | `results.${number}.item.state`\n | `results.${number}.item.joinedInfo.timeZone`\n | `results.${number}.item.joinedInfo.startDate`\n | `results.${number}.item.joinedInfo.joinPath`\n | `results.${number}.item.member.contactId`\n | `bulkActionMetadata.totalSuccesses`\n | `bulkActionMetadata.totalFailures`\n | `bulkActionMetadata.undetailedFailures`,\n 6\n >\n >;\n}\n\nexport function bulkApproveAllParticipant(\n httpClient: HttpClient\n): BulkApproveAllParticipantSignature {\n return (options?: BulkApproveAllParticipantOptions) =>\n universalBulkApproveAllParticipant(\n options,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface BulkApproveAllParticipantSignature {\n /**\n * Bulk approves all pending participants, who asked to join private program (aka\n * in state `APPROVAL_PENDING`).\n */\n (options?: BulkApproveAllParticipantOptions): Promise<\n NonNullablePaths<BulkApproveAllParticipantResponse, `jobId`, 2>\n >;\n}\n\nexport const onParticipantAdded = EventDefinition(\n 'wix.online_programs.v3.participant_added',\n true,\n (event: ParticipantAddedEnvelope) =>\n renameKeysFromRESTResponseToSDKResponse(\n transformPaths(event, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [{ path: 'metadata.eventTime' }],\n },\n ])\n )\n)<ParticipantAddedEnvelope>();\nexport const onParticipantApproved = EventDefinition(\n 'wix.online_programs.v3.participant_participant_approved',\n true,\n (event: ParticipantApprovedEnvelope) =>\n renameKeysFromRESTResponseToSDKResponse(\n transformPaths(event, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [{ path: 'metadata.eventTime' }],\n },\n ])\n )\n)<ParticipantApprovedEnvelope>();\nexport const onParticipantInvited = EventDefinition(\n 'wix.online_programs.v3.participant_participant_invited',\n true,\n (event: ParticipantInvitedEnvelope) =>\n renameKeysFromRESTResponseToSDKResponse(\n transformPaths(event, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [{ path: 'metadata.eventTime' }],\n },\n ])\n )\n)<ParticipantInvitedEnvelope>();\n\nexport {\n ActionEvent,\n ApplicationError,\n BaseEventMetadata,\n BulkActionMetadata,\n BulkAddToProgramOptions,\n BulkAddToProgramRequest,\n BulkAddToProgramResponse,\n BulkAddToProgramResult,\n BulkApproveAllParticipantOptions,\n BulkApproveAllParticipantRequest,\n BulkApproveAllParticipantResponse,\n BulkApproveParticipantOptions,\n BulkApproveParticipantRequest,\n BulkApproveParticipantResponse,\n BulkApproveParticipantResult,\n BulkInviteAllToProgramOptions,\n BulkInviteAllToProgramRequest,\n BulkInviteAllToProgramResponse,\n BulkInviteToProgramOptions,\n BulkInviteToProgramRequest,\n BulkInviteToProgramResponse,\n BulkInviteToProgramResult,\n Certificate,\n DomainEvent,\n DomainEventBodyOneOf,\n EntityCreatedEvent,\n EntityDeletedEvent,\n EntityUpdatedEvent,\n EventMetadata,\n ExtendedFields,\n FreeCouponDetails,\n IdentificationData,\n IdentificationDataIdOneOf,\n ItemMetadata,\n JoinPath,\n JoinedInfo,\n JoinedInfoJoinPathDetailsOneOf,\n Member,\n MessageEnvelope,\n PaidPlanDetails,\n Participant,\n ParticipantAdded,\n ParticipantAddedEnvelope,\n ParticipantApproved,\n ParticipantApprovedEnvelope,\n ParticipantInvited,\n ParticipantInvitedEnvelope,\n Progress,\n RestoreInfo,\n SinglePaymentDetails,\n State,\n WebhookIdentityType,\n} from './online-programs-v3-participant-participants.universal.js';\n","import { transformError as sdkTransformError } from '@wix/sdk-runtime/transform-error';\nimport {\n renameKeysFromSDKRequestToRESTRequest,\n renameKeysFromRESTResponseToSDKResponse,\n} from '@wix/sdk-runtime/rename-all-nested-keys';\nimport { HttpClient, NonNullablePaths } from '@wix/sdk-types';\nimport * as ambassadorWixOnlineProgramsV3Participant from './online-programs-v3-participant-participants.http.js';\n\nexport interface Participant {\n /**\n * Participant ID.\n * @format GUID\n * @readonly\n */\n _id?: string | null;\n /** @readonly */\n revision?: string | null;\n /** @readonly */\n _createdDate?: Date | null;\n /** @readonly */\n _updatedDate?: Date | null;\n /**\n * Member ID of participant on site\n * @format GUID\n * @readonly\n */\n memberId?: string;\n /**\n * Program ID which participant participates in\n * @format GUID\n * @readonly\n */\n programId?: string;\n /**\n * Program completion progress\n * @readonly\n */\n progress?: Progress;\n /** state of participation in the program */\n state?: StateWithLiterals;\n /**\n * Certificate issued to participant\n * @readonly\n */\n certificate?: Certificate;\n joinedInfo?: JoinedInfo;\n /** @readonly */\n member?: Member;\n /** @readonly */\n lastActivityDate?: Date | null;\n extendedFields?: ExtendedFields;\n}\n\nexport enum JoinPath {\n UNKNOWN_JOIN_PATH = 'UNKNOWN_JOIN_PATH',\n /** Member joined to the program for free */\n FREE = 'FREE',\n /** Member was added to the program by site owner */\n ADDED = 'ADDED',\n /** Member paid once to join the program */\n SINGLE_PAYMENT = 'SINGLE_PAYMENT',\n /** Member has Paid Plan to join */\n PAID_PLAN = 'PAID_PLAN',\n /** Member joined with the Free Coupon */\n FREE_COUPON = 'FREE_COUPON',\n}\n\n/** @enumType */\nexport type JoinPathWithLiterals =\n | JoinPath\n | 'UNKNOWN_JOIN_PATH'\n | 'FREE'\n | 'ADDED'\n | 'SINGLE_PAYMENT'\n | 'PAID_PLAN'\n | 'FREE_COUPON';\n\nexport interface SinglePaymentDetails {\n /** @format GUID */\n paymentOrderId?: string;\n /** @format GUID */\n offlineTransactionId?: string | null;\n}\n\nexport interface PaidPlanDetails {\n /** @format GUID */\n paidPlanId?: string;\n}\n\nexport interface FreeCouponDetails {\n /** @format GUID */\n freeCouponId?: string;\n}\n\nexport interface Progress {\n /** Number of program steps completed by member */\n totalStepsCompleted?: number;\n /** Total number of program steps available to resolve */\n totalStepsAvailable?: number;\n /**\n * Completion percentage\n * @max 100\n */\n completionPercentage?: number;\n}\n\nexport enum State {\n /** Unknown state */\n UNKNOWN_STATE = 'UNKNOWN_STATE',\n /** Member joined the program and became participant */\n JOINED = 'JOINED',\n /** Participant completed the program, and could join again */\n COMPLETED = 'COMPLETED',\n /** Participant failed to complete the program, and could join again */\n FAILED = 'FAILED',\n /** Participant with ended pricing plan (PP), will be joined as renew PP */\n SUSPENDED = 'SUSPENDED',\n /** Participant removed automatically after some program condition */\n AUTO_REMOVED = 'AUTO_REMOVED',\n /** Participant removed by site owner */\n REMOVED = 'REMOVED',\n /** Participant left the program by himself */\n LEFT = 'LEFT',\n}\n\n/** @enumType */\nexport type StateWithLiterals =\n | State\n | 'UNKNOWN_STATE'\n | 'JOINED'\n | 'COMPLETED'\n | 'FAILED'\n | 'SUSPENDED'\n | 'AUTO_REMOVED'\n | 'REMOVED'\n | 'LEFT';\n\nexport interface Certificate {\n /**\n * when certificate was issued, UTC\n * @readonly\n */\n issuedDate?: Date | null;\n}\n\nexport interface JoinedInfo extends JoinedInfoJoinPathDetailsOneOf {\n singlePaymentDetails?: SinglePaymentDetails;\n paidPlanDetails?: PaidPlanDetails;\n freeCouponDetails?: FreeCouponDetails;\n /**\n * @maxLength 50\n * @readonly\n */\n timeZone?: string;\n /**\n * @format LOCAL_DATE\n * @readonly\n */\n startDate?: string;\n joinPath?: JoinPathWithLiterals;\n /**\n * @format LOCAL_DATE\n * @readonly\n */\n finishDate?: string | null;\n}\n\n/** @oneof */\nexport interface JoinedInfoJoinPathDetailsOneOf {\n singlePaymentDetails?: SinglePaymentDetails;\n paidPlanDetails?: PaidPlanDetails;\n freeCouponDetails?: FreeCouponDetails;\n}\n\nexport interface Member {\n /**\n * @readonly\n * @maxLength 100\n */\n firstName?: string | null;\n /**\n * @readonly\n * @maxLength 100\n */\n lastName?: string | null;\n /**\n * @readonly\n * @format EMAIL\n */\n email?: string | null;\n /** @format GUID */\n contactId?: string;\n /**\n * @readonly\n * @format WEB_URL\n */\n profileImageUrl?: string | null;\n}\n\nexport interface ExtendedFields {\n /**\n * Extended field data. Each key corresponds to the namespace of the app that created the extended fields.\n * The value of each key is structured according to the schema defined when the extended fields were configured.\n *\n * You can only access fields for which you have the appropriate permissions.\n *\n * Learn more about [extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields).\n */\n namespaces?: Record<string, Record<string, any>>;\n}\n\nexport interface ParticipantAdded {\n /**\n * Program ID which participant was added\n * @format GUID\n */\n programId?: string;\n /**\n * Member ID of participant on site\n * @format GUID\n */\n memberId?: string;\n}\n\nexport interface BulkInviteToProgramRequest {\n /**\n * Program to which bulk invite participants.\n * @format GUID\n */\n programId: string;\n /**\n * Return added participants in the response or not.\n * @format GUID\n * @minSize 1\n * @maxSize 100\n */\n memberIds?: string[];\n /** Return invited participants in the response or not. */\n returnEntity?: boolean;\n}\n\nexport interface BulkInviteToProgramResponse {\n /** Participants created by bulk action */\n results?: BulkInviteToProgramResult[];\n /** Bulk action metadata. */\n bulkActionMetadata?: BulkActionMetadata;\n}\n\nexport interface ItemMetadata {\n /** Item ID. Should always be available, unless it's impossible (for example, when failing to create an item). */\n _id?: string | null;\n /** Index of the item within the request array. Allows for correlation between request and response items. */\n originalIndex?: number;\n /** Whether the requested action was successful for this item. When `false`, the `error` field is populated. */\n success?: boolean;\n /** Details about the error in case of failure. */\n error?: ApplicationError;\n}\n\nexport interface ApplicationError {\n /** Error code. */\n code?: string;\n /** Description of the error. */\n description?: string;\n /** Data related to the error. */\n data?: Record<string, any> | null;\n}\n\nexport interface BulkInviteToProgramResult {\n /** Invited participant metadata. */\n itemMetadata?: ItemMetadata;\n /** Invited participant */\n item?: Participant;\n}\n\nexport interface BulkActionMetadata {\n /** Number of items that were successfully processed. */\n totalSuccesses?: number;\n /** Number of items that couldn't be processed. */\n totalFailures?: number;\n /** Number of failures without details because detailed failure threshold was exceeded. */\n undetailedFailures?: number;\n}\n\nexport interface ParticipantInvited {\n /**\n * Program to which bulk invite participants.\n * @format GUID\n */\n programId?: string;\n /**\n * Invited member to program\n * @format GUID\n */\n memberId?: string;\n}\n\nexport interface BulkInviteAllToProgramRequest {\n /**\n * Program to which bulk add participants.\n * @format GUID\n */\n programId: string;\n /**\n * Exclude site members.\n * @format GUID\n * @maxSize 100\n */\n excludeMemberIds?: string[];\n}\n\nexport interface BulkInviteAllToProgramResponse {\n /** Bulk action metadata. */\n bulkActionMetadata?: BulkActionMetadata;\n}\n\nexport interface BulkAddToProgramRequest {\n /**\n * Program to which bulk add participants.\n * @format GUID\n */\n programId: string;\n /**\n * Site members.\n * @format GUID\n * @minSize 1\n * @maxSize 1000\n */\n memberIds?: string[];\n /** Return added participants in the response or not. */\n returnEntity?: boolean;\n}\n\nexport interface BulkAddToProgramResponse {\n /** Participants created by bulk action */\n results?: BulkAddToProgramResult[];\n /** Bulk action metadata. */\n bulkActionMetadata?: BulkActionMetadata;\n}\n\nexport interface BulkAddToProgramResult {\n /** Added participant metadata. */\n itemMetadata?: ItemMetadata;\n /** Added participant */\n item?: Participant;\n}\n\nexport interface BulkApproveParticipantRequest {\n /**\n * Participants to add\n * @format GUID\n * @maxSize 100\n */\n participantIds: string[];\n /**\n * program to approve participant\n * @format GUID\n */\n programId?: string;\n /** Return approved participants in the response or not */\n returnEntity?: boolean;\n}\n\nexport interface BulkApproveParticipantResponse {\n /** Participants approved by bulk action */\n results?: BulkApproveParticipantResult[];\n /** Bulk action metadata */\n bulkActionMetadata?: BulkActionMetadata;\n}\n\nexport interface BulkApproveParticipantResult {\n /** Approved participant metadata */\n itemMetadata?: ItemMetadata;\n /** Approved or existing participant */\n item?: Participant;\n}\n\nexport interface ParticipantApproved {\n /**\n * Program ID which participant approved\n * @format GUID\n */\n programId?: string;\n /**\n * Member ID of participant approved\n * @format GUID\n */\n memberId?: string;\n}\n\nexport interface BulkApproveAllParticipantRequest {\n /**\n * Program to approve all participants.\n * @format GUID\n */\n programId?: string;\n /**\n * Exclude site members.\n * @format GUID\n * @maxSize 100\n */\n excludeParticipantIds?: string[];\n}\n\nexport interface BulkApproveAllParticipantResponse {\n /**\n * Job id with async process\n * @format GUID\n */\n jobId?: string;\n}\n\nexport interface DomainEvent extends DomainEventBodyOneOf {\n createdEvent?: EntityCreatedEvent;\n updatedEvent?: EntityUpdatedEvent;\n deletedEvent?: EntityDeletedEvent;\n actionEvent?: ActionEvent;\n /** Event ID. With this ID you can easily spot duplicated events and ignore them. */\n _id?: string;\n /**\n * Fully Qualified Domain Name of an entity. This is a unique identifier assigned to the API main business entities.\n * For example, `wix.stores.catalog.product`, `wix.bookings.session`, `wix.payments.transaction`.\n */\n entityFqdn?: string;\n /**\n * Event action name, placed at the top level to make it easier for users to dispatch messages.\n * For example: `created`/`updated`/`deleted`/`started`/`completed`/`email_opened`.\n */\n slug?: string;\n /** ID of the entity associated with the event. */\n entityId?: string;\n /** Event timestamp in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format and UTC time. For example, `2020-04-26T13:57:50.699Z`. */\n eventTime?: Date | null;\n /**\n * Whether the event was triggered as a result of a privacy regulation application\n * (for example, GDPR).\n */\n triggeredByAnonymizeRequest?: boolean | null;\n /** If present, indicates the action that triggered the event. */\n originatedFrom?: string | null;\n /**\n * A sequence number that indicates the order of updates to an entity. For example, if an entity was updated at 16:00 and then again at 16:01, the second update will always have a higher sequence number.\n * You can use this number to make sure you're handling updates in the right order. Just save the latest sequence number on your end and compare it to the one in each new message. If the new message has an older (lower) number, you can safely ignore it.\n */\n entityEventSequence?: string | null;\n}\n\n/** @oneof */\nexport interface DomainEventBodyOneOf {\n createdEvent?: EntityCreatedEvent;\n updatedEvent?: EntityUpdatedEvent;\n deletedEvent?: EntityDeletedEvent;\n actionEvent?: ActionEvent;\n}\n\nexport interface EntityCreatedEvent {\n entity?: string;\n}\n\nexport interface RestoreInfo {\n deletedDate?: Date | null;\n}\n\nexport interface EntityUpdatedEvent {\n /**\n * Since platformized APIs only expose PATCH and not PUT we can't assume that the fields sent from the client are the actual diff.\n * This means that to generate a list of changed fields (as opposed to sent fields) one needs to traverse both objects.\n * We don't want to impose this on all developers and so we leave this traversal to the notification recipients which need it.\n */\n currentEntity?: string;\n}\n\nexport interface EntityDeletedEvent {\n /** Entity that was deleted. */\n deletedEntity?: string | null;\n}\n\nexport interface ActionEvent {\n body?: string;\n}\n\nexport interface MessageEnvelope {\n /**\n * App instance ID.\n * @format GUID\n */\n instanceId?: string | null;\n /**\n * Event type.\n * @maxLength 150\n */\n eventType?: string;\n /** The identification type and identity data. */\n identity?: IdentificationData;\n /** Stringify payload. */\n data?: string;\n}\n\nexport interface IdentificationData extends IdentificationDataIdOneOf {\n /**\n * ID of a site visitor that has not logged in to the site.\n * @format GUID\n */\n anonymousVisitorId?: string;\n /**\n * ID of a site visitor that has logged in to the site.\n * @format GUID\n */\n memberId?: string;\n /**\n * ID of a Wix user (site owner, contributor, etc.).\n * @format GUID\n */\n wixUserId?: string;\n /**\n * ID of an app.\n * @format GUID\n */\n appId?: string;\n /** @readonly */\n identityType?: WebhookIdentityTypeWithLiterals;\n}\n\n/** @oneof */\nexport interface IdentificationDataIdOneOf {\n /**\n * ID of a site visitor that has not logged in to the site.\n * @format GUID\n */\n anonymousVisitorId?: string;\n /**\n * ID of a site visitor that has logged in to the site.\n * @format GUID\n */\n memberId?: string;\n /**\n * ID of a Wix user (site owner, contributor, etc.).\n * @format GUID\n */\n wixUserId?: string;\n /**\n * ID of an app.\n * @format GUID\n */\n appId?: string;\n}\n\nexport enum WebhookIdentityType {\n UNKNOWN = 'UNKNOWN',\n ANONYMOUS_VISITOR = 'ANONYMOUS_VISITOR',\n MEMBER = 'MEMBER',\n WIX_USER = 'WIX_USER',\n APP = 'APP',\n}\n\n/** @enumType */\nexport type WebhookIdentityTypeWithLiterals =\n | WebhookIdentityType\n | 'UNKNOWN'\n | 'ANONYMOUS_VISITOR'\n | 'MEMBER'\n | 'WIX_USER'\n | 'APP';\n\nexport interface BaseEventMetadata {\n /**\n * App instance ID.\n * @format GUID\n */\n instanceId?: string | null;\n /**\n * Event type.\n * @maxLength 150\n */\n eventType?: string;\n /** The identification type and identity data. */\n identity?: IdentificationData;\n}\n\nexport interface EventMetadata extends BaseEventMetadata {\n /** Event ID. With this ID you can easily spot duplicated events and ignore them. */\n _id?: string;\n /**\n * Fully Qualified Domain Name of an entity. This is a unique identifier assigned to the API main business entities.\n * For example, `wix.stores.catalog.product`, `wix.bookings.session`, `wix.payments.transaction`.\n */\n entityFqdn?: string;\n /**\n * Event action name, placed at the top level to make it easier for users to dispatch messages.\n * For example: `created`/`updated`/`deleted`/`started`/`completed`/`email_opened`.\n */\n slug?: string;\n /** ID of the entity associated with the event. */\n entityId?: string;\n /** Event timestamp in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format and UTC time. For example, `2020-04-26T13:57:50.699Z`. */\n eventTime?: Date | null;\n /**\n * Whether the event was triggered as a result of a privacy regulation application\n * (for example, GDPR).\n */\n triggeredByAnonymizeRequest?: boolean | null;\n /** If present, indicates the action that triggered the event. */\n originatedFrom?: string | null;\n /**\n * A sequence number that indicates the order of updates to an entity. For example, if an entity was updated at 16:00 and then again at 16:01, the second update will always have a higher sequence number.\n * You can use this number to make sure you're handling updates in the right order. Just save the latest sequence number on your end and compare it to the one in each new message. If the new message has an older (lower) number, you can safely ignore it.\n */\n entityEventSequence?: string | null;\n accountInfo?: AccountInfoMetadata;\n}\n\ninterface AccountInfoMetadata {\n /** ID of the Wix account associated with the event */\n accountId: string;\n /** ID of the Wix site associated with the event. Only included when the event is tied to a specific site. */\n siteId?: string;\n /** ID of the parent Wix account. Only included when 'accountId' belongs to a child account. */\n parentAccountId?: string;\n}\n\nexport interface ParticipantAddedEnvelope {\n data: ParticipantAdded;\n metadata: EventMetadata;\n}\n\n/** @permissionScope Manage Challenges\n * @permissionScopeId SCOPE.CHALLENGES.MANAGE\n * @permissionId ONLINE_PROGRAMS.PARTICIPANT_READ\n * @webhook\n * @eventType wix.online_programs.v3.participant_added\n * @slug added\n * @documentationMaturity preview\n */\nexport declare function onParticipantAdded(\n handler: (event: ParticipantAddedEnvelope) => void | Promise<void>\n): void;\n\nexport interface ParticipantApprovedEnvelope {\n data: ParticipantApproved;\n metadata: EventMetadata;\n}\n\n/** @permissionScope Manage Challenges\n * @permissionScopeId SCOPE.CHALLENGES.MANAGE\n * @permissionId ONLINE_PROGRAMS.PARTICIPANT_READ\n * @webhook\n * @eventType wix.online_programs.v3.participant_participant_approved\n * @serviceIdentifier wix.onlineprograms.participants.v3.ManageParticipantsService\n * @slug participant_approved\n * @documentationMaturity preview\n */\nexport declare function onParticipantApproved(\n handler: (event: ParticipantApprovedEnvelope) => void | Promise<void>\n): void;\n\nexport interface ParticipantInvitedEnvelope {\n data: ParticipantInvited;\n metadata: EventMetadata;\n}\n\n/** @permissionScope Manage Challenges\n * @permissionScopeId SCOPE.CHALLENGES.MANAGE\n * @permissionId ONLINE_PROGRAMS.PARTICIPANT_READ\n * @webhook\n * @eventType wix.online_programs.v3.participant_participant_invited\n * @serviceIdentifier wix.onlineprograms.participants.v3.ManageParticipantsService\n * @slug participant_invited\n * @documentationMaturity preview\n */\nexport declare function onParticipantInvited(\n handler: (event: ParticipantInvitedEnvelope) => void | Promise<void>\n): void;\n\n/**\n * Bulk invites participants to program.\n * For each member participant in Invited state is created.\n * @param programId - Program to which bulk invite participants.\n * @public\n * @documentationMaturity preview\n * @requiredField programId\n * @permissionId ONLINE_PROGRAMS.PARTICIPANT_INVITE\n * @applicableIdentity APP\n * @fqn wix.onlineprograms.participants.v3.ManageParticipantsService.BulkInviteToProgram\n */\nexport async function bulkInviteToProgram(\n programId: string,\n options?: BulkInviteToProgramOptions\n): Promise<\n NonNullablePaths<\n BulkInviteToProgramResponse,\n | `results`\n | `results.${number}.itemMetadata.originalIndex`\n | `results.${number}.itemMetadata.success`\n | `results.${number}.itemMetadata.error.code`\n | `results.${number}.itemMetadata.error.description`\n | `results.${number}.item.memberId`\n | `results.${number}.item.programId`\n | `results.${number}.item.progress.totalStepsCompleted`\n | `results.${number}.item.progress.totalStepsAvailable`\n | `results.${number}.item.progress.completionPercentage`\n | `results.${number}.item.state`\n | `results.${number}.item.joinedInfo.timeZone`\n | `results.${number}.item.joinedInfo.startDate`\n | `results.${number}.item.joinedInfo.joinPath`\n | `results.${number}.item.member.contactId`\n | `bulkActionMetadata.totalSuccesses`\n | `bulkActionMetadata.totalFailures`\n | `bulkActionMetadata.undetailedFailures`,\n 6\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[2] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n programId: programId,\n memberIds: options?.memberIds,\n returnEntity: options?.returnEntity,\n });\n\n const reqOpts =\n ambassadorWixOnlineProgramsV3Participant.bulkInviteToProgram(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: {\n programId: '$[0]',\n memberIds: '$[1].memberIds',\n returnEntity: '$[1].returnEntity',\n },\n singleArgumentUnchanged: false,\n },\n ['programId', 'options']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\nexport interface BulkInviteToProgramOptions {\n /**\n * Return added participants in the response or not.\n * @format GUID\n * @minSize 1\n * @maxSize 100\n */\n memberIds?: string[];\n /** Return invited participants in the response or not. */\n returnEntity?: boolean;\n}\n\n/**\n * Bulk invites all participants to program, but not more then 1000.\n * For each member participant in Invited state is created.\n * @param programId - Program to which bulk add participants.\n * @public\n * @documentationMaturity preview\n * @requiredField programId\n * @permissionId ONLINE_PROGRAMS.PARTICIPANT_INVITE\n * @applicableIdentity APP\n * @fqn wix.onlineprograms.participants.v3.ManageParticipantsService.BulkInviteAllToProgram\n */\nexport async function bulkInviteAllToProgram(\n programId: string,\n options?: BulkInviteAllToProgramOptions\n): Promise<\n NonNullablePaths<\n BulkInviteAllToProgramResponse,\n | `bulkActionMetadata.totalSuccesses`\n | `bulkActionMetadata.totalFailures`\n | `bulkActionMetadata.undetailedFailures`,\n 3\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[2] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n programId: programId,\n excludeMemberIds: options?.excludeMemberIds,\n });\n\n const reqOpts =\n ambassadorWixOnlineProgramsV3Participant.bulkInviteAllToProgram(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: {\n programId: '$[0]',\n excludeMemberIds: '$[1].excludeMemberIds',\n },\n singleArgumentUnchanged: false,\n },\n ['programId', 'options']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\nexport interface BulkInviteAllToProgramOptions {\n /**\n * Exclude site members.\n * @format GUID\n * @maxSize 100\n */\n excludeMemberIds?: string[];\n}\n\n/**\n * Bulk adds participants to program.\n * Participant will be either created in state Joined, or updated to that state\n * from pending one.\n * @param programId - Program to which bulk add participants.\n * @public\n * @documentationMaturity preview\n * @requiredField programId\n * @permissionId ONLINE_PROGRAMS.PARTICIPANT_ADD\n * @applicableIdentity APP\n * @fqn wix.onlineprograms.participants.v3.ManageParticipantsService.BulkAddToProgram\n */\nexport async function bulkAddToProgram(\n programId: string,\n options?: BulkAddToProgramOptions\n): Promise<\n NonNullablePaths<\n BulkAddToProgramResponse,\n | `results`\n | `results.${number}.itemMetadata.originalIndex`\n | `results.${number}.itemMetadata.success`\n | `results.${number}.itemMetadata.error.code`\n | `results.${number}.itemMetadata.error.description`\n | `results.${number}.item.memberId`\n | `results.${number}.item.programId`\n | `results.${number}.item.progress.totalStepsCompleted`\n | `results.${number}.item.progress.totalStepsAvailable`\n | `results.${number}.item.progress.completionPercentage`\n | `results.${number}.item.state`\n | `results.${number}.item.joinedInfo.timeZone`\n | `results.${number}.item.joinedInfo.startDate`\n | `results.${number}.item.joinedInfo.joinPath`\n | `results.${number}.item.member.contactId`\n | `bulkActionMetadata.totalSuccesses`\n | `bulkActionMetadata.totalFailures`\n | `bulkActionMetadata.undetailedFailures`,\n 6\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[2] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n programId: programId,\n memberIds: options?.memberIds,\n returnEntity: options?.returnEntity,\n });\n\n const reqOpts =\n ambassadorWixOnlineProgramsV3Participant.bulkAddToProgram(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: {\n programId: '$[0]',\n memberIds: '$[1].memberIds',\n returnEntity: '$[1].returnEntity',\n },\n singleArgumentUnchanged: false,\n },\n ['programId', 'options']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\nexport interface BulkAddToProgramOptions {\n /**\n * Site members.\n * @format GUID\n * @minSize 1\n * @maxSize 1000\n */\n memberIds?: string[];\n /** Return added participants in the response or not. */\n returnEntity?: boolean;\n}\n\n/**\n * Bulk approves participants, who asked to join private program (aka in\n * state `APPROVAL_PENDING`). If participant was in other state, no effect and\n * error returned.\n * @param participantIds - Participants to add\n * @public\n * @documentationMaturity preview\n * @requiredField participantIds\n * @permissionId ONLINE_PROGRAMS.PARTICIPANT_APPROVE\n * @fqn wix.onlineprograms.participants.v3.ManageParticipantsService.BulkApproveParticipant\n */\nexport async function bulkApproveParticipant(\n participantIds: string[],\n options?: BulkApproveParticipantOptions\n): Promise<\n NonNullablePaths<\n BulkApproveParticipantResponse,\n | `results`\n | `results.${number}.itemMetadata.originalIndex`\n | `results.${number}.itemMetadata.success`\n | `results.${number}.itemMetadata.error.code`\n | `results.${number}.itemMetadata.error.description`\n | `results.${number}.item.memberId`\n | `results.${number}.item.programId`\n | `results.${number}.item.progress.totalStepsCompleted`\n | `results.${number}.item.progress.totalStepsAvailable`\n | `results.${number}.item.progress.completionPercentage`\n | `results.${number}.item.state`\n | `results.${number}.item.joinedInfo.timeZone`\n | `results.${number}.item.joinedInfo.startDate`\n | `results.${number}.item.joinedInfo.joinPath`\n | `results.${number}.item.member.contactId`\n | `bulkActionMetadata.totalSuccesses`\n | `bulkActionMetadata.totalFailures`\n | `bulkActionMetadata.undetailedFailures`,\n 6\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[2] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n participantIds: participantIds,\n programId: options?.programId,\n returnEntity: options?.returnEntity,\n });\n\n const reqOpts =\n ambassadorWixOnlineProgramsV3Participant.bulkApproveParticipant(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: {\n participantIds: '$[0]',\n programId: '$[1].programId',\n returnEntity: '$[1].returnEntity',\n },\n singleArgumentUnchanged: false,\n },\n ['participantIds', 'options']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\nexport interface BulkApproveParticipantOptions {\n /**\n * program to approve participant\n * @format GUID\n */\n programId?: string;\n /** Return approved participants in the response or not */\n returnEntity?: boolean;\n}\n\n/**\n * Bulk approves all pending participants, who asked to join private program (aka\n * in state `APPROVAL_PENDING`).\n * @public\n * @documentationMaturity preview\n * @permissionId ONLINE_PROGRAMS.PARTICIPANT_APPROVE\n * @fqn wix.onlineprograms.participants.v3.ManageParticipantsService.BulkApproveAllParticipant\n */\nexport async function bulkApproveAllParticipant(\n options?: BulkApproveAllParticipantOptions\n): Promise<NonNullablePaths<BulkApproveAllParticipantResponse, `jobId`, 2>> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n programId: options?.programId,\n excludeParticipantIds: options?.excludeParticipantIds,\n });\n\n const reqOpts =\n ambassadorWixOnlineProgramsV3Participant.bulkApproveAllParticipant(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: {\n programId: '$[0].programId',\n excludeParticipantIds: '$[0].excludeParticipantIds',\n },\n singleArgumentUnchanged: false,\n },\n ['options']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\nexport interface BulkApproveAllParticipantOptions {\n /**\n * Program to approve all participants.\n * @format GUID\n */\n programId?: string;\n /**\n * Exclude site members.\n * @format GUID\n * @maxSize 100\n */\n excludeParticipantIds?: string[];\n}\n","import { transformRESTFloatToSDKFloat } from '@wix/sdk-runtime/transformations/float';\nimport { transformRESTTimestampToSDKTimestamp } from '@wix/sdk-runtime/transformations/timestamp';\nimport { transformPaths } from '@wix/sdk-runtime/transformations/transform-paths';\nimport { resolveUrl } from '@wix/sdk-runtime/rest-modules';\nimport { ResolveUrlOpts } from '@wix/sdk-runtime/rest-modules';\nimport { RequestOptionsFactory } from '@wix/sdk-types';\n\nfunction resolveWixOnlineprogramsParticipantsV3ManageParticipantsServiceUrl(\n opts: Omit<ResolveUrlOpts, 'domainToMappings'>\n) {\n const domainToMappings = {};\n\n return resolveUrl(Object.assign(opts, { domainToMappings }));\n}\n\nconst PACKAGE_NAME = '@wix/auto_sdk_online-programs_participants';\n\n/**\n * Bulk invites participants to program.\n * For each member participant in Invited state is created.\n */\nexport function bulkInviteToProgram(\n payload: object\n): RequestOptionsFactory<any> {\n function __bulkInviteToProgram({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.online_programs.v3.participant',\n method: 'POST' as any,\n methodFqn:\n 'wix.onlineprograms.participants.v3.ManageParticipantsService.BulkInviteToProgram',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixOnlineprogramsParticipantsV3ManageParticipantsServiceUrl({\n protoPath: '/v3/bulk/participants/invite',\n data: payload,\n host,\n }),\n data: payload,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'results.item.createdDate' },\n { path: 'results.item.updatedDate' },\n { path: 'results.item.lastActivityDate' },\n { path: 'results.item.certificate.issuedDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [{ path: 'results.item.progress.completionPercentage' }],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __bulkInviteToProgram;\n}\n\n/**\n * Bulk invites all participants to program, but not more then 1000.\n * For each member participant in Invited state is created.\n */\nexport function bulkInviteAllToProgram(\n payload: object\n): RequestOptionsFactory<any> {\n function __bulkInviteAllToProgram({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.online_programs.v3.participant',\n method: 'POST' as any,\n methodFqn:\n 'wix.onlineprograms.participants.v3.ManageParticipantsService.BulkInviteAllToProgram',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixOnlineprogramsParticipantsV3ManageParticipantsServiceUrl({\n protoPath: '/v3/bulk/participants/invite-all',\n data: payload,\n host,\n }),\n data: payload,\n };\n\n return metadata;\n }\n\n return __bulkInviteAllToProgram;\n}\n\n/**\n * Bulk adds participants to program.\n * Participant will be either created in state Joined, or updated to that state\n * from pending one.\n */\nexport function bulkAddToProgram(payload: object): RequestOptionsFactory<any> {\n function __bulkAddToProgram({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.online_programs.v3.participant',\n method: 'POST' as any,\n methodFqn:\n 'wix.onlineprograms.participants.v3.ManageParticipantsService.BulkAddToProgram',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixOnlineprogramsParticipantsV3ManageParticipantsServiceUrl({\n protoPath: '/v3/bulk/participants/add',\n data: payload,\n host,\n }),\n data: payload,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'results.item.createdDate' },\n { path: 'results.item.updatedDate' },\n { path: 'results.item.lastActivityDate' },\n { path: 'results.item.certificate.issuedDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [{ path: 'results.item.progress.completionPercentage' }],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __bulkAddToProgram;\n}\n\n/**\n * Bulk approves participants, who asked to join private program (aka in\n * state `APPROVAL_PENDING`). If participant was in other state, no effect and\n * error returned.\n */\nexport function bulkApproveParticipant(\n payload: object\n): RequestOptionsFactory<any> {\n function __bulkApproveParticipant({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.online_programs.v3.participant',\n method: 'POST' as any,\n methodFqn:\n 'wix.onlineprograms.participants.v3.ManageParticipantsService.BulkApproveParticipant',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixOnlineprogramsParticipantsV3ManageParticipantsServiceUrl({\n protoPath: '/v3/bulk/participants/approve',\n data: payload,\n host,\n }),\n data: payload,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'results.item.createdDate' },\n { path: 'results.item.updatedDate' },\n { path: 'results.item.lastActivityDate' },\n { path: 'results.item.certificate.issuedDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [{ path: 'results.item.progress.completionPercentage' }],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __bulkApproveParticipant;\n}\n\n/**\n * Bulk approves all pending participants, who asked to join private program (aka\n * in state `APPROVAL_PENDING`).\n */\nexport function bulkApproveAllParticipant(\n payload: object\n): RequestOptionsFactory<any> {\n function __bulkApproveAllParticipant({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.online_programs.v3.participant',\n method: 'POST' as any,\n methodFqn:\n 'wix.onlineprograms.participants.v3.ManageParticipantsService.BulkApproveAllParticipant',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixOnlineprogramsParticipantsV3ManageParticipantsServiceUrl({\n protoPath: '/v3/bulk/participants/approve-all',\n data: payload,\n host,\n }),\n data: payload,\n };\n\n return metadata;\n }\n\n return __bulkApproveAllParticipant;\n}\n","import {\n bulkInviteToProgram as publicBulkInviteToProgram,\n bulkInviteAllToProgram as publicBulkInviteAllToProgram,\n bulkAddToProgram as publicBulkAddToProgram,\n bulkApproveParticipant as publicBulkApproveParticipant,\n bulkApproveAllParticipant as publicBulkApproveAllParticipant,\n} from './online-programs-v3-participant-participants.public.js';\nimport { createRESTModule } from '@wix/sdk-runtime/rest-modules';\nimport { createEventModule } from '@wix/sdk-runtime/event-definition-modules';\nimport {\n BuildRESTFunction,\n MaybeContext,\n BuildEventDefinition,\n} from '@wix/sdk-types';\nimport { onParticipantAdded as publicOnParticipantAdded } from './online-programs-v3-participant-participants.public.js';\nimport { onParticipantApproved as publicOnParticipantApproved } from './online-programs-v3-participant-participants.public.js';\nimport { onParticipantInvited as publicOnParticipantInvited } from './online-programs-v3-participant-participants.public.js';\n\nexport const bulkInviteToProgram: MaybeContext<\n BuildRESTFunction<typeof publicBulkInviteToProgram> &\n typeof publicBulkInviteToProgram\n> = /*#__PURE__*/ createRESTModule(publicBulkInviteToProgram);\nexport const bulkInviteAllToProgram: MaybeContext<\n BuildRESTFunction<typeof publicBulkInviteAllToProgram> &\n typeof publicBulkInviteAllToProgram\n> = /*#__PURE__*/ createRESTModule(publicBulkInviteAllToProgram);\nexport const bulkAddToProgram: MaybeContext<\n BuildRESTFunction<typeof publicBulkAddToProgram> &\n typeof publicBulkAddToProgram\n> = /*#__PURE__*/ createRESTModule(publicBulkAddToProgram);\nexport const bulkApproveParticipant: MaybeContext<\n BuildRESTFunction<typeof publicBulkApproveParticipant> &\n typeof publicBulkApproveParticipant\n> = /*#__PURE__*/ createRESTModule(publicBulkApproveParticipant);\nexport const bulkApproveAllParticipant: MaybeContext<\n BuildRESTFunction<typeof publicBulkApproveAllParticipant> &\n typeof publicBulkApproveAllParticipant\n> = /*#__PURE__*/ createRESTModule(publicBulkApproveAllParticipant);\n/** */\nexport const onParticipantAdded: BuildEventDefinition<\n typeof publicOnParticipantAdded\n> &\n typeof publicOnParticipantAdded = createEventModule(publicOnParticipantAdded);\n/** */\nexport const onParticipantApproved: BuildEventDefinition<\n typeof publicOnParticipantApproved\n> &\n typeof publicOnParticipantApproved = createEventModule(\n publicOnParticipantApproved\n);\n/** */\nexport const onParticipantInvited: BuildEventDefinition<\n typeof publicOnParticipantInvited\n> &\n typeof publicOnParticipantInvited = createEventModule(\n publicOnParticipantInvited\n);\n\nexport {\n JoinPath,\n State,\n WebhookIdentityType,\n} from './online-programs-v3-participant-participants.universal.js';\nexport {\n Participant,\n SinglePaymentDetails,\n PaidPlanDetails,\n FreeCouponDetails,\n Progress,\n Certificate,\n JoinedInfo,\n JoinedInfoJoinPathDetailsOneOf,\n Member,\n ExtendedFields,\n ParticipantAdded,\n BulkInviteToProgramRequest,\n BulkInviteToProgramResponse,\n ItemMetadata,\n ApplicationError,\n BulkInviteToProgramResult,\n BulkActionMetadata,\n ParticipantInvited,\n BulkInviteAllToProgramRequest,\n BulkInviteAllToProgramResponse,\n BulkAddToProgramRequest,\n BulkAddToProgramResponse,\n BulkAddToProgramResult,\n BulkApproveParticipantRequest,\n BulkApproveParticipantResponse,\n BulkApproveParticipantResult,\n ParticipantApproved,\n BulkApproveAllParticipantRequest,\n BulkApproveAllParticipantResponse,\n DomainEvent,\n DomainEventBodyOneOf,\n EntityCreatedEvent,\n RestoreInfo,\n EntityUpdatedEvent,\n EntityDeletedEvent,\n ActionEvent,\n MessageEnvelope,\n IdentificationData,\n IdentificationDataIdOneOf,\n BaseEventMetadata,\n EventMetadata,\n ParticipantAddedEnvelope,\n ParticipantApprovedEnvelope,\n ParticipantInvitedEnvelope,\n BulkInviteToProgramOptions,\n BulkInviteAllToProgramOptions,\n BulkAddToProgramOptions,\n BulkApproveParticipantOptions,\n BulkApproveAllParticipantOptions,\n} from './online-programs-v3-participant-participants.universal.js';\nexport {\n JoinPathWithLiterals,\n StateWithLiterals,\n WebhookIdentityTypeWithLiterals,\n} from './online-programs-v3-participant-participants.universal.js';\n"],"mappings":"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","names":["bulkAddToProgram","bulkApproveAllParticipant","bulkApproveParticipant","bulkInviteAllToProgram","bulkInviteToProgram","onParticipantAdded","onParticipantApproved","onParticipantInvited","import_rename_all_nested_keys","import_timestamp","import_transform_paths","payload","JoinPath","State","WebhookIdentityType","bulkInviteToProgram","sdkTransformError","bulkInviteAllToProgram","bulkAddToProgram","bulkApproveParticipant","bulkApproveAllParticipant","bulkInviteToProgram","bulkInviteAllToProgram","bulkAddToProgram","bulkApproveParticipant","bulkApproveAllParticipant","import_rest_modules","bulkInviteToProgram","bulkInviteAllToProgram","bulkAddToProgram","bulkApproveParticipant","bulkApproveAllParticipant","onParticipantAdded","onParticipantApproved","onParticipantInvited"]}
|