@wix/auto_sdk_benefit-programs_programs 1.0.20 → 1.0.22

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.
Files changed (44) hide show
  1. package/build/{internal → cjs}/index.d.ts +20 -12
  2. package/build/cjs/index.js.map +1 -0
  3. package/build/{benefit-programs-v1-program-programs.universal-7lcFYs2X.d.mts → cjs/index.typings.d.ts} +189 -1
  4. package/build/cjs/index.typings.js +700 -0
  5. package/build/cjs/index.typings.js.map +1 -0
  6. package/build/{internal → cjs}/meta.d.ts +2 -1
  7. package/build/{internal → es}/index.d.mts +20 -12
  8. package/build/es/index.mjs.map +1 -0
  9. package/build/{benefit-programs-v1-program-programs.universal-7lcFYs2X.d.ts → es/index.typings.d.mts} +189 -1
  10. package/build/es/index.typings.mjs +662 -0
  11. package/build/es/index.typings.mjs.map +1 -0
  12. package/build/{internal → es}/meta.d.mts +2 -1
  13. package/build/es/package.json +3 -0
  14. package/build/{index.d.ts → internal/cjs/index.d.ts} +20 -12
  15. package/build/internal/cjs/index.js.map +1 -0
  16. package/build/internal/{benefit-programs-v1-program-programs.universal-7lcFYs2X.d.ts → cjs/index.typings.d.ts} +189 -1
  17. package/build/internal/cjs/index.typings.js +700 -0
  18. package/build/internal/cjs/index.typings.js.map +1 -0
  19. package/build/{meta.d.ts → internal/cjs/meta.d.ts} +2 -1
  20. package/build/internal/cjs/meta.js.map +1 -0
  21. package/build/{index.d.mts → internal/es/index.d.mts} +20 -12
  22. package/build/internal/es/index.mjs.map +1 -0
  23. package/build/internal/{benefit-programs-v1-program-programs.universal-7lcFYs2X.d.mts → es/index.typings.d.mts} +189 -1
  24. package/build/internal/es/index.typings.mjs +662 -0
  25. package/build/internal/es/index.typings.mjs.map +1 -0
  26. package/build/{meta.d.mts → internal/es/meta.d.mts} +2 -1
  27. package/build/internal/es/meta.mjs.map +1 -0
  28. package/package.json +13 -12
  29. package/build/index.js.map +0 -1
  30. package/build/index.mjs.map +0 -1
  31. package/build/internal/index.js.map +0 -1
  32. package/build/internal/index.mjs.map +0 -1
  33. package/build/meta.js.map +0 -1
  34. package/build/meta.mjs.map +0 -1
  35. /package/build/{index.js → cjs/index.js} +0 -0
  36. /package/build/{internal → cjs}/meta.js +0 -0
  37. /package/build/{internal → cjs}/meta.js.map +0 -0
  38. /package/build/{index.mjs → es/index.mjs} +0 -0
  39. /package/build/{internal → es}/meta.mjs +0 -0
  40. /package/build/{internal → es}/meta.mjs.map +0 -0
  41. /package/build/internal/{index.js → cjs/index.js} +0 -0
  42. /package/build/{meta.js → internal/cjs/meta.js} +0 -0
  43. /package/build/internal/{index.mjs → es/index.mjs} +0 -0
  44. /package/build/{meta.mjs → internal/es/meta.mjs} +0 -0
@@ -1,6 +1,6 @@
1
- import { HttpClient, MaybeContext, BuildRESTFunction } from '@wix/sdk-types';
2
- import { P as PoolDefinitionLookupId, a as ProvisionProgramOptions, b as ProvisionProgramResponse, R as RenewProgramOptions, c as RenewProgramResponse, d as PauseProgramOptions, e as PauseProgramResponse, f as ResumeProgramOptions, g as ResumeProgramResponse, E as EndProgramResponse, U as UpdateProgram, h as Program, i as ProgramsQueryBuilder, G as GetProgramByExternalIdAndNamespaceOptions, j as GetProgramByExternalIdAndNamespaceResponse } from './benefit-programs-v1-program-programs.universal-7lcFYs2X.js';
3
- export { a7 as ActionEvent, C as CommonIdentificationData, m as CommonIdentificationDataIdOneOf, Y as CursorPaging, _ as CursorPagingMetadata, T as CursorQuery, V as CursorQueryPagingMethodOneOf, $ as Cursors, a1 as DomainEvent, a2 as DomainEventBodyOneOf, B as EndProgramRequest, a3 as EntityCreatedEvent, a6 as EntityDeletedEvent, a5 as EntityUpdatedEvent, n as ExtendedFields, a0 as GetProgramByExternalIdAndNamespaceRequest, M as GetProgramRequest, N as GetProgramResponse, a9 as IdentificationData, aa as IdentificationDataIdOneOf, I as IdentityType, a8 as MessageEnvelope, O as OrderStatus, y as PauseProgramRequest, v as PoolDefinitionLookupIdIdOneOf, w as ProgramAlreadyExists, o as ProgramDefinitionInfo, r as ProgramEnded, s as ProgramPaused, p as ProgramProvisioned, q as ProgramRenewed, t as ProgramResumed, k as ProgramStatus, z as ProgramStatusTransitionNotAllowed, ab as ProgramsQueryResult, u as ProvisionProgramRequest, l as ProvisionProgramRequestProgramStatus, Q as QueryProgramsRequest, Z as QueryProgramsResponse, x as RenewProgramRequest, a4 as RestoreInfo, A as ResumeProgramRequest, S as SortOrder, X as Sorting, K as UpdateProgramRequest, L as UpdateProgramResponse, D as UpdateProgramStatusRequest, F as UpdateProgramStatusResponse, H as UpsertMigratedProgramRequest, J as UpsertMigratedProgramResponse, W as WebhookIdentityType } from './benefit-programs-v1-program-programs.universal-7lcFYs2X.js';
1
+ import { HttpClient, NonNullablePaths, MaybeContext, BuildRESTFunction } from '@wix/sdk-types';
2
+ import { PoolDefinitionLookupId, ProvisionProgramOptions, ProvisionProgramResponse, ProvisionProgramApplicationErrors, RenewProgramOptions, RenewProgramResponse, PauseProgramOptions, PauseProgramResponse, PauseProgramApplicationErrors, ResumeProgramOptions, ResumeProgramResponse, ResumeProgramApplicationErrors, EndProgramResponse, EndProgramApplicationErrors, UpdateProgram, Program, ProgramsQueryBuilder, GetProgramByExternalIdAndNamespaceOptions, GetProgramByExternalIdAndNamespaceResponse } from './index.typings.js';
3
+ export { ActionEvent, CommonIdentificationData, CommonIdentificationDataIdOneOf, CursorPaging, CursorPagingMetadata, CursorQuery, CursorQueryPagingMethodOneOf, Cursors, DomainEvent, DomainEventBodyOneOf, EndProgramRequest, EntityCreatedEvent, EntityDeletedEvent, EntityUpdatedEvent, ExtendedFields, GetProgramByExternalIdAndNamespaceRequest, GetProgramRequest, GetProgramResponse, IdentificationData, IdentificationDataIdOneOf, IdentityType, IdentityTypeWithLiterals, MessageEnvelope, OrderStatus, OrderStatusWithLiterals, PauseProgramRequest, PoolDefinitionLookupIdIdOneOf, ProgramAlreadyExists, ProgramDefinitionInfo, ProgramEnded, ProgramPaused, ProgramProvisioned, ProgramRenewed, ProgramResumed, ProgramStatus, ProgramStatusTransitionNotAllowed, ProgramStatusWithLiterals, ProgramsQueryResult, ProvisionProgramRequest, ProvisionProgramRequestProgramStatus, ProvisionProgramRequestProgramStatusWithLiterals, QueryProgramsRequest, QueryProgramsResponse, RenewProgramRequest, RestoreInfo, ResumeProgramRequest, SortOrder, SortOrderWithLiterals, Sorting, UpdateProgramRequest, UpdateProgramResponse, UpdateProgramStatusRequest, UpdateProgramStatusResponse, UpsertMigratedProgramRequest, UpsertMigratedProgramResponse, WebhookIdentityType, WebhookIdentityTypeWithLiterals } from './index.typings.js';
4
4
 
5
5
  declare function provisionProgram$1(httpClient: HttpClient): ProvisionProgramSignature;
6
6
  interface ProvisionProgramSignature {
@@ -12,7 +12,9 @@ interface ProvisionProgramSignature {
12
12
  * - **Pool definition**: The provisioned program has 1 pool that is created from the pool definition.
13
13
  * @param - The program definition or pool definition to use to provision the program.
14
14
  */
15
- (poolDefinitionLookupId: PoolDefinitionLookupId, options?: ProvisionProgramOptions | undefined): Promise<ProvisionProgramResponse>;
15
+ (poolDefinitionLookupId: PoolDefinitionLookupId, options?: NonNullablePaths<ProvisionProgramOptions, `beneficiary` | `externalProgramId` | `namespace`, 2>): Promise<NonNullablePaths<ProvisionProgramResponse, `jobId` | `program.status` | `program.beneficiary.anonymousVisitorId` | `program.beneficiary.memberId` | `program.beneficiary.wixUserId` | `program.programDefinition._id`, 4> & {
16
+ __applicationErrorsType?: ProvisionProgramApplicationErrors;
17
+ }>;
16
18
  }
17
19
  declare function renewProgram$1(httpClient: HttpClient): RenewProgramSignature;
18
20
  interface RenewProgramSignature {
@@ -22,7 +24,7 @@ interface RenewProgramSignature {
22
24
  * The number of available credits in each pool in the program is defined in the corresponding pool's credit configuration.
23
25
  * @param - ID of the program to renew.
24
26
  */
25
- (programId: string, options: RenewProgramOptions): Promise<RenewProgramResponse>;
27
+ (programId: string, options: NonNullablePaths<RenewProgramOptions, `idempotencyKey`, 2>): Promise<NonNullablePaths<RenewProgramResponse, `jobId`, 2>>;
26
28
  }
27
29
  declare function pauseProgram$1(httpClient: HttpClient): PauseProgramSignature;
28
30
  interface PauseProgramSignature {
@@ -30,7 +32,9 @@ interface PauseProgramSignature {
30
32
  * Pauses the specified program. Benefits in the program's pools can't be redeemed until the program is resumed.
31
33
  * @param - ID of the program to pause.
32
34
  */
33
- (programId: string, options: PauseProgramOptions): Promise<PauseProgramResponse>;
35
+ (programId: string, options: NonNullablePaths<PauseProgramOptions, `idempotencyKey`, 2>): Promise<NonNullablePaths<PauseProgramResponse, `jobId`, 2> & {
36
+ __applicationErrorsType?: PauseProgramApplicationErrors;
37
+ }>;
34
38
  }
35
39
  declare function resumeProgram$1(httpClient: HttpClient): ResumeProgramSignature;
36
40
  interface ResumeProgramSignature {
@@ -40,7 +44,9 @@ interface ResumeProgramSignature {
40
44
  * Call this method for paused programs.
41
45
  * @param - ID of program to resume.
42
46
  */
43
- (programId: string, options: ResumeProgramOptions): Promise<ResumeProgramResponse>;
47
+ (programId: string, options: NonNullablePaths<ResumeProgramOptions, `idempotencyKey`, 2>): Promise<NonNullablePaths<ResumeProgramResponse, `jobId`, 2> & {
48
+ __applicationErrorsType?: ResumeProgramApplicationErrors;
49
+ }>;
44
50
  }
45
51
  declare function endProgram$1(httpClient: HttpClient): EndProgramSignature;
46
52
  interface EndProgramSignature {
@@ -48,7 +54,9 @@ interface EndProgramSignature {
48
54
  * Ends the specified program.
49
55
  * @param - ID of the program to end.
50
56
  */
51
- (programId: string): Promise<EndProgramResponse>;
57
+ (programId: string): Promise<NonNullablePaths<EndProgramResponse, `jobId`, 2> & {
58
+ __applicationErrorsType?: EndProgramApplicationErrors;
59
+ }>;
52
60
  }
53
61
  declare function updateProgram$1(httpClient: HttpClient): UpdateProgramSignature;
54
62
  interface UpdateProgramSignature {
@@ -63,7 +71,7 @@ interface UpdateProgramSignature {
63
71
  * @param - Program ID.
64
72
  * @returns Updated program.
65
73
  */
66
- (_id: string, program: UpdateProgram): Promise<Program>;
74
+ (_id: string, program: NonNullablePaths<UpdateProgram, `revision`, 2>): Promise<NonNullablePaths<Program, `status` | `beneficiary.anonymousVisitorId` | `beneficiary.memberId` | `beneficiary.wixUserId` | `programDefinition._id`, 3>>;
67
75
  }
68
76
  declare function getProgram$1(httpClient: HttpClient): GetProgramSignature;
69
77
  interface GetProgramSignature {
@@ -72,7 +80,7 @@ interface GetProgramSignature {
72
80
  * @param - ID of the program to retrieve.
73
81
  * @returns Retrieved program.
74
82
  */
75
- (programId: string): Promise<Program>;
83
+ (programId: string): Promise<NonNullablePaths<Program, `status` | `beneficiary.anonymousVisitorId` | `beneficiary.memberId` | `beneficiary.wixUserId` | `programDefinition._id`, 3>>;
76
84
  }
77
85
  declare function queryPrograms$1(httpClient: HttpClient): QueryProgramsSignature;
78
86
  interface QueryProgramsSignature {
@@ -97,7 +105,7 @@ interface GetProgramByExternalIdAndNamespaceSignature {
97
105
  * Retrieves a program with the specified external ID and namespace.
98
106
  * @param - Namespace for your app or site's benefit programs. Namespaces allow you to distinguish between entities that you created and entities that other apps created.
99
107
  */
100
- (namespace: string, options: GetProgramByExternalIdAndNamespaceOptions): Promise<GetProgramByExternalIdAndNamespaceResponse>;
108
+ (namespace: string, options: NonNullablePaths<GetProgramByExternalIdAndNamespaceOptions, `externalId`, 2>): Promise<NonNullablePaths<GetProgramByExternalIdAndNamespaceResponse, `program.status` | `program.beneficiary.anonymousVisitorId` | `program.beneficiary.memberId` | `program.beneficiary.wixUserId` | `program.programDefinition._id`, 4>>;
101
109
  }
102
110
 
103
111
  declare const provisionProgram: MaybeContext<BuildRESTFunction<typeof provisionProgram$1> & typeof provisionProgram$1>;
@@ -110,4 +118,4 @@ declare const getProgram: MaybeContext<BuildRESTFunction<typeof getProgram$1> &
110
118
  declare const queryPrograms: MaybeContext<BuildRESTFunction<typeof queryPrograms$1> & typeof queryPrograms$1>;
111
119
  declare const getProgramByExternalIdAndNamespace: MaybeContext<BuildRESTFunction<typeof getProgramByExternalIdAndNamespace$1> & typeof getProgramByExternalIdAndNamespace$1>;
112
120
 
113
- export { EndProgramResponse, GetProgramByExternalIdAndNamespaceOptions, GetProgramByExternalIdAndNamespaceResponse, PauseProgramOptions, PauseProgramResponse, PoolDefinitionLookupId, Program, ProgramsQueryBuilder, ProvisionProgramOptions, ProvisionProgramResponse, RenewProgramOptions, RenewProgramResponse, ResumeProgramOptions, ResumeProgramResponse, UpdateProgram, endProgram, getProgram, getProgramByExternalIdAndNamespace, pauseProgram, provisionProgram, queryPrograms, renewProgram, resumeProgram, updateProgram };
121
+ export { EndProgramApplicationErrors, EndProgramResponse, GetProgramByExternalIdAndNamespaceOptions, GetProgramByExternalIdAndNamespaceResponse, PauseProgramApplicationErrors, PauseProgramOptions, PauseProgramResponse, PoolDefinitionLookupId, Program, ProgramsQueryBuilder, ProvisionProgramApplicationErrors, ProvisionProgramOptions, ProvisionProgramResponse, RenewProgramOptions, RenewProgramResponse, ResumeProgramApplicationErrors, ResumeProgramOptions, ResumeProgramResponse, UpdateProgram, endProgram, getProgram, getProgramByExternalIdAndNamespace, pauseProgram, provisionProgram, queryPrograms, renewProgram, resumeProgram, updateProgram };
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../index.ts","../../src/benefit-programs-v1-program-programs.universal.ts","../../src/benefit-programs-v1-program-programs.http.ts","../../src/benefit-programs-v1-program-programs.public.ts","../../src/benefit-programs-v1-program-programs.context.ts"],"sourcesContent":["export * from './src/benefit-programs-v1-program-programs.context.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 { HttpClient, HttpResponse, NonNullablePaths } from '@wix/sdk-types';\nimport * as ambassadorWixBenefitProgramsV1Program from './benefit-programs-v1-program-programs.http.js';\n// @ts-ignore\nimport { transformPaths } from '@wix/sdk-runtime/transformations/transform-paths';\n\nexport interface Program {\n /**\n * Program ID.\n * @format GUID\n * @readonly\n * @immutable\n */\n _id?: string | null;\n /**\n * Revision number, which increments by 1 each time the program is updated.\n * To prevent conflicting changes, the current revision must be specified when updating the program.\n *\n * Ignored when creating a program.\n * @readonly\n */\n revision?: string | null;\n /**\n * Date and time the program was created.\n * @readonly\n */\n _createdDate?: Date | null;\n /**\n * Date and time the program was updated.\n * @readonly\n */\n _updatedDate?: Date | null;\n /**\n * ID of the associated program definition.\n * @format GUID\n * @readonly\n * @immutable\n */\n programDefinitionId?: string | null;\n /**\n * Program status.\n * @readonly\n */\n status?: ProgramStatusWithLiterals;\n /**\n * Program beneficiary.\n * @readonly\n * @immutable\n */\n beneficiary?: CommonIdentificationData;\n /**\n * Program name.\n *\n * You may want to use the same name that's used in the associated program definition, if it exists.\n * @maxLength 64\n */\n displayName?: string | null;\n /**\n * Namespace for your app or site's benefit programs. Namespaces allow you to distinguish between entities that you created and entities that other apps created.\n * @minLength 1\n * @maxLength 20\n * @immutable\n * @readonly\n */\n namespace?: string | null;\n /**\n * Custom field data for the program object.\n *\n * [Extended fields](https://dev.wix.com/docs/build-apps/develop-your-app/extensions/backend-extensions/schema-plugins/about-schema-plugin-extensions) must be configured in the app dashboard before they can be accessed with API calls.\n */\n extendedFields?: ExtendedFields;\n /**\n * ID for the program defined by you. You can use `externalId` to filter queries.\n * @format GUID\n * @immutable\n * @readonly\n */\n externalId?: string | null;\n /**\n * Associated program definition information.\n * @readonly\n */\n programDefinition?: ProgramDefinitionInfo;\n}\n\nexport enum ProgramStatus {\n /** Undefined program status. */\n UNDEFINED = 'UNDEFINED',\n /** Program is active. */\n ACTIVE = 'ACTIVE',\n /** Program is paused. It can be resumed. */\n PAUSED = 'PAUSED',\n /** Program has ended. It can't be resumed. */\n ENDED = 'ENDED',\n /** Program is being activated for the first time. This status exists for a short time during processing. */\n PROVISIONING = 'PROVISIONING',\n /** Program is being paused. This status exists for a short time during processing. */\n PAUSING = 'PAUSING',\n /** Program is being re-activated after being paused. This status exists for a short time during processing. */\n RESUMING = 'RESUMING',\n /** Program is being ended. This status exists for a short time during processing. */\n ENDING = 'ENDING',\n}\n\n/** @enumType */\nexport type ProgramStatusWithLiterals =\n | ProgramStatus\n | 'UNDEFINED'\n | 'ACTIVE'\n | 'PAUSED'\n | 'ENDED'\n | 'PROVISIONING'\n | 'PAUSING'\n | 'RESUMING'\n | 'ENDING';\n\nexport interface CommonIdentificationData\n extends CommonIdentificationDataIdOneOf {\n /**\n * ID of a site visitor that hasn't logged in to the site.\n * @format GUID\n */\n anonymousVisitorId?: string;\n /**\n * ID of a site member.\n * @format GUID\n */\n memberId?: string;\n /**\n * ID of a Wix user.\n * @format GUID\n */\n wixUserId?: string;\n}\n\n/** @oneof */\nexport interface CommonIdentificationDataIdOneOf {\n /**\n * ID of a site visitor that hasn't logged in to the site.\n * @format GUID\n */\n anonymousVisitorId?: string;\n /**\n * ID of a site member.\n * @format GUID\n */\n memberId?: string;\n /**\n * ID of a Wix user.\n * @format GUID\n */\n wixUserId?: string;\n}\n\nexport enum IdentityType {\n /** Unknown type. This value is not used. */\n UNKNOWN = 'UNKNOWN',\n /** A site visitor who has not logged in. */\n ANONYMOUS_VISITOR = 'ANONYMOUS_VISITOR',\n /** A logged-in site member. */\n MEMBER = 'MEMBER',\n /** A Wix account holder, such as a site owner or contributor. */\n WIX_USER = 'WIX_USER',\n}\n\n/** @enumType */\nexport type IdentityTypeWithLiterals =\n | IdentityType\n | 'UNKNOWN'\n | 'ANONYMOUS_VISITOR'\n | 'MEMBER'\n | 'WIX_USER';\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 ProgramDefinitionInfo {\n /**\n * Program definition ID.\n * @format GUID\n * @readonly\n */\n _id?: string;\n /**\n * Program definition external ID.\n * @format GUID\n * @readonly\n */\n externalId?: string | null;\n}\n\nexport interface ProgramProvisioned {\n /** Program which has been provisioned */\n program?: Program;\n}\n\nexport interface ProgramRenewed {\n /** Program which has been renewed */\n program?: Program;\n}\n\nexport interface ProgramEnded {\n /** Program which has been ended */\n program?: Program;\n}\n\nexport interface ProgramPaused {\n /** Program which has been paused */\n program?: Program;\n}\n\nexport interface ProgramResumed {\n /** Program which has been resumed */\n program?: Program;\n}\n\n/** In case pool_definition_id is provided should test if it's part of a package. If it is, reject the request */\nexport interface ProvisionProgramRequest {\n /** The program definition or pool definition to use to provision the program. */\n poolDefinitionLookupId: PoolDefinitionLookupId;\n /** Program beneficiary. */\n beneficiary: CommonIdentificationData;\n /**\n * Initial program status.\n *\n * Default: `ACTIVE`\n */\n programStatus?: ProvisionProgramRequestProgramStatusWithLiterals;\n /**\n * Namespace for your app or site's benefit programs. Namespaces allow you to distinguish between entities that you created and entities that other apps created.\n * @minLength 1\n * @maxLength 20\n */\n namespace: string;\n /**\n * Program name.\n *\n * If you're provisioning the program from a program definition, you may want to use the same name that was used for the program definition.\n * @maxLength 64\n */\n displayName?: string | null;\n /**\n * ID for the program defined by you. You can use `externalId` to filter queries.\n * @format GUID\n */\n externalProgramId: string;\n}\n\nexport interface PoolDefinitionLookupId extends PoolDefinitionLookupIdIdOneOf {\n /**\n * Pool definition ID.\n * @format GUID\n */\n poolDefinitionId?: string;\n /**\n * Program definition ID.\n * @format GUID\n */\n programDefinitionId?: string;\n}\n\n/** @oneof */\nexport interface PoolDefinitionLookupIdIdOneOf {\n /**\n * Pool definition ID.\n * @format GUID\n */\n poolDefinitionId?: string;\n /**\n * Program definition ID.\n * @format GUID\n */\n programDefinitionId?: string;\n}\n\nexport enum ProvisionProgramRequestProgramStatus {\n /** Program is active. */\n ACTIVE = 'ACTIVE',\n /** Program is paused. */\n PAUSED = 'PAUSED',\n}\n\n/** @enumType */\nexport type ProvisionProgramRequestProgramStatusWithLiterals =\n | ProvisionProgramRequestProgramStatus\n | 'ACTIVE'\n | 'PAUSED';\n\nexport interface ProvisionProgramResponse {\n /**\n * Job ID of the provisioning of the program. Retrieve job details using the Async Job API ([SDK](https://dev.wix.com/docs/sdk/backend-modules/async-jobs/introduction) | [REST](https://dev.wix.com/docs/rest/business-management/async-job/introduction)).\n * @format GUID\n */\n jobId?: string;\n /** Provisioned program. */\n program?: Program;\n}\n\nexport interface ProgramAlreadyExists {\n /**\n * Key of a program that already exists\n * @format GUID\n */\n externalProgramId?: string;\n /**\n * Key of a program that already exists\n * @format GUID\n */\n namespace?: string;\n}\n\n/** Updates the pool credit amount according to the configuration. */\nexport interface RenewProgramRequest {\n /**\n * ID of the program to renew.\n * @format GUID\n */\n programId: string;\n /**\n * Idempotency key to ensure that the request is processed only once.\n * @maxLength 64\n */\n idempotencyKey: string;\n}\n\nexport interface RenewProgramResponse {\n /**\n * Job ID of the program renewal. Retrieve job details using the Async Job API ([SDK](https://dev.wix.com/docs/sdk/backend-modules/async-jobs/introduction) | [REST](https://dev.wix.com/docs/rest/business-management/async-job/introduction)).\n * @format GUID\n */\n jobId?: string;\n}\n\nexport interface PauseProgramRequest {\n /**\n * ID of the program to pause.\n * @format GUID\n */\n programId: string;\n /**\n * Idempotency key to ensure that the request is processed only once.\n * @maxLength 64\n */\n idempotencyKey: string;\n}\n\nexport interface PauseProgramResponse {\n /**\n * Job ID of the pausing of the program. Retrieve job details using the Async Job API ([SDK](https://dev.wix.com/docs/sdk/backend-modules/async-jobs/introduction) | [REST](https://dev.wix.com/docs/rest/business-management/async-job/introduction)).\n * @format GUID\n */\n jobId?: string;\n}\n\nexport interface ProgramStatusTransitionNotAllowed {\n /** Current status of the program */\n currentStatus?: ProgramStatusWithLiterals;\n /** Status to which the program is being transitioned */\n requestedStatus?: ProgramStatusWithLiterals;\n}\n\nexport interface ResumeProgramRequest {\n /**\n * ID of program to resume.\n * @format GUID\n */\n programId: string;\n /**\n * Idempotency key to ensure that the request is processed only once.\n * @maxLength 64\n */\n idempotencyKey: string;\n}\n\nexport interface ResumeProgramResponse {\n /**\n * Job ID of the resuming of the program. Retrieve job details using the Async Job API ([SDK](https://dev.wix.com/docs/sdk/backend-modules/async-jobs/introduction) | [REST](https://dev.wix.com/docs/rest/business-management/async-job/introduction)).\n * @format GUID\n */\n jobId?: string;\n}\n\nexport interface EndProgramRequest {\n /**\n * ID of the program to end.\n * @format GUID\n */\n programId: string;\n}\n\nexport interface EndProgramResponse {\n /**\n * Job ID of the ending of the program. Retrieve job details using the Async Job API ([SDK](https://dev.wix.com/docs/sdk/backend-modules/async-jobs/introduction) | [REST](https://dev.wix.com/docs/rest/business-management/async-job/introduction)).\n * @format GUID\n */\n jobId?: string;\n}\n\nexport interface UpdateProgramStatusRequest {\n /**\n * Program to update\n * @format GUID\n */\n programId?: string;\n /** Program revision */\n programRevision?: string;\n /** Status to update */\n status?: ProgramStatusWithLiterals;\n /** Status to update */\n targetStatus?: ProgramStatusWithLiterals;\n}\n\nexport interface UpdateProgramStatusResponse {\n /** The updated Program */\n program?: Program;\n}\n\nexport interface UpsertMigratedProgramRequest {\n /**\n * Order id\n * @format GUID\n */\n orderId?: string;\n /**\n * Plan id\n * @format GUID\n */\n planId?: string;\n /**\n * Order member id\n * @format GUID\n */\n memberId?: string;\n /** Order status */\n status?: OrderStatusWithLiterals;\n /**\n * Plan name\n * @maxLength 64\n */\n planName?: string;\n}\n\nexport enum OrderStatus {\n UNKNOWN = 'UNKNOWN',\n ACTIVE = 'ACTIVE',\n PAUSED = 'PAUSED',\n ENDED = 'ENDED',\n}\n\n/** @enumType */\nexport type OrderStatusWithLiterals =\n | OrderStatus\n | 'UNKNOWN'\n | 'ACTIVE'\n | 'PAUSED'\n | 'ENDED';\n\nexport interface UpsertMigratedProgramResponse {\n /** Inserted or updated program */\n program?: Program;\n}\n\nexport interface UpdateProgramRequest {\n /** Program to update. */\n program: Program;\n}\n\nexport interface UpdateProgramResponse {\n /** Updated program. */\n program?: Program;\n}\n\nexport interface GetProgramRequest {\n /**\n * ID of the program to retrieve.\n * @format GUID\n */\n programId: string;\n}\n\nexport interface GetProgramResponse {\n /** Retrieved program. */\n program?: Program;\n}\n\nexport interface QueryProgramsRequest {\n /** Filter, sort, and paging to apply to the query. */\n query?: CursorQuery;\n}\n\nexport interface CursorQuery extends CursorQueryPagingMethodOneOf {\n /** Cursor token pointing to a page of results. Not used in the first request. Following requests use the cursor token and not `filter` or `sort`. */\n cursorPaging?: CursorPaging;\n /**\n * Filter object.\n * See [API Query Language](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language)\n * for more information.\n */\n filter?: Record<string, any> | null;\n /**\n * List of sort objects.\n * @maxSize 5\n */\n sort?: Sorting[];\n}\n\n/** @oneof */\nexport interface CursorQueryPagingMethodOneOf {\n /** Cursor token pointing to a page of results. Not used in the first request. Following requests use the cursor token and not `filter` or `sort`. */\n cursorPaging?: CursorPaging;\n}\n\nexport interface Sorting {\n /**\n * Field to sort by.\n * @maxLength 512\n */\n fieldName?: string;\n /**\n * Sort order. Use `ASC` for ascending order or `DESC` for descending order.\n *\n * Default: `ASC`\n */\n order?: SortOrderWithLiterals;\n}\n\nexport enum SortOrder {\n /** Ascending sort order. */\n ASC = 'ASC',\n /** Descending sort order. */\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.\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 QueryProgramsResponse {\n /** List of retrieved programs. */\n programs?: Program[];\n /** Metadata for the paginated results. */\n metadata?: CursorPagingMetadata;\n}\n\nexport interface CursorPagingMetadata {\n /** Number of items returned in the response. */\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 GetProgramByExternalIdAndNamespaceRequest {\n /**\n * Namespace for your app or site's benefit programs. Namespaces allow you to distinguish between entities that you created and entities that other apps created.\n * @minLength 1\n * @maxLength 20\n */\n namespace: string;\n /**\n * Program's external ID.\n * @format GUID\n */\n externalId: string;\n}\n\nexport interface GetProgramByExternalIdAndNamespaceResponse {\n /** Retrieved program. */\n program?: Program;\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';\nexport type ProvisionProgramApplicationErrors =\n | {\n code?: 'PROGRAM_ALREADY_EXISTS';\n description?: string;\n data?: ProgramAlreadyExists;\n }\n | {\n code?: 'IN_PROGRESS';\n description?: string;\n data?: Record<string, any>;\n };\nexport type PauseProgramApplicationErrors =\n | {\n code?: 'PROGRAM_STATUS_TRANSITION_NOT_ALLOWED';\n description?: string;\n data?: ProgramStatusTransitionNotAllowed;\n }\n | {\n code?: 'ALREADY_EXECUTED';\n description?: string;\n data?: Record<string, any>;\n }\n | {\n code?: 'IN_PROGRESS';\n description?: string;\n data?: Record<string, any>;\n };\nexport type ResumeProgramApplicationErrors =\n | {\n code?: 'PROGRAM_STATUS_TRANSITION_NOT_ALLOWED';\n description?: string;\n data?: ProgramStatusTransitionNotAllowed;\n }\n | {\n code?: 'ALREADY_EXECUTED';\n description?: string;\n data?: Record<string, any>;\n }\n | {\n code?: 'IN_PROGRESS';\n description?: string;\n data?: Record<string, any>;\n };\nexport type EndProgramApplicationErrors = {\n code?: 'PROGRAM_STATUS_TRANSITION_NOT_ALLOWED';\n description?: string;\n data?: ProgramStatusTransitionNotAllowed;\n};\n\n/**\n * Creates a program for the specified beneficiary. Creating a program is also referred to as provisioning a program.\n *\n * You can provision a program from a program definition or a pool definition:\n * - **Program definition**: The provisioned program has pools that are created from the pool definitions in the program definition.\n * - **Pool definition**: The provisioned program has 1 pool that is created from the pool definition.\n * @param poolDefinitionLookupId - The program definition or pool definition to use to provision the program.\n * @public\n * @documentationMaturity preview\n * @requiredField options.beneficiary\n * @requiredField options.externalProgramId\n * @requiredField options.namespace\n * @requiredField poolDefinitionLookupId\n * @permissionId BENEFIT_PROGRAMS.PROGRAM_PROVISION\n * @applicableIdentity APP\n * @fqn wix.benefit_programs.v1.program.ProgramService.ProvisionProgram\n */\nexport async function provisionProgram(\n poolDefinitionLookupId: PoolDefinitionLookupId,\n options?: NonNullablePaths<\n ProvisionProgramOptions,\n `beneficiary` | `externalProgramId` | `namespace`,\n 2\n >\n): Promise<\n NonNullablePaths<\n ProvisionProgramResponse,\n | `jobId`\n | `program.status`\n | `program.beneficiary.anonymousVisitorId`\n | `program.beneficiary.memberId`\n | `program.beneficiary.wixUserId`\n | `program.programDefinition._id`,\n 4\n > & {\n __applicationErrorsType?: ProvisionProgramApplicationErrors;\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 poolDefinitionLookupId: poolDefinitionLookupId,\n beneficiary: options?.beneficiary,\n programStatus: options?.programStatus,\n namespace: options?.namespace,\n displayName: options?.displayName,\n externalProgramId: options?.externalProgramId,\n });\n\n const reqOpts =\n ambassadorWixBenefitProgramsV1Program.provisionProgram(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 poolDefinitionLookupId: '$[0]',\n beneficiary: '$[1].beneficiary',\n programStatus: '$[1].programStatus',\n namespace: '$[1].namespace',\n displayName: '$[1].displayName',\n externalProgramId: '$[1].externalProgramId',\n },\n singleArgumentUnchanged: false,\n },\n ['poolDefinitionLookupId', 'options']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\nexport interface ProvisionProgramOptions {\n /** Program beneficiary. */\n beneficiary: CommonIdentificationData;\n /**\n * Initial program status.\n *\n * Default: `ACTIVE`\n */\n programStatus?: ProvisionProgramRequestProgramStatusWithLiterals;\n /**\n * Namespace for your app or site's benefit programs. Namespaces allow you to distinguish between entities that you created and entities that other apps created.\n * @minLength 1\n * @maxLength 20\n */\n namespace: string;\n /**\n * Program name.\n *\n * If you're provisioning the program from a program definition, you may want to use the same name that was used for the program definition.\n * @maxLength 64\n */\n displayName?: string | null;\n /**\n * ID for the program defined by you. You can use `externalId` to filter queries.\n * @format GUID\n */\n externalProgramId: string;\n}\n\n/**\n * Renews the specified program.\n *\n * The number of available credits in each pool in the program is defined in the corresponding pool's credit configuration.\n * @param programId - ID of the program to renew.\n * @public\n * @documentationMaturity preview\n * @requiredField options\n * @requiredField options.idempotencyKey\n * @requiredField programId\n * @permissionId BENEFIT_PROGRAMS.PROGRAM_RENEW\n * @applicableIdentity APP\n * @fqn wix.benefit_programs.v1.program.ProgramService.RenewProgram\n */\nexport async function renewProgram(\n programId: string,\n options: NonNullablePaths<RenewProgramOptions, `idempotencyKey`, 2>\n): Promise<NonNullablePaths<RenewProgramResponse, `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 idempotencyKey: options?.idempotencyKey,\n });\n\n const reqOpts = ambassadorWixBenefitProgramsV1Program.renewProgram(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 idempotencyKey: '$[1].idempotencyKey',\n },\n singleArgumentUnchanged: false,\n },\n ['programId', 'options']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\nexport interface RenewProgramOptions {\n /**\n * Idempotency key to ensure that the request is processed only once.\n * @maxLength 64\n */\n idempotencyKey: string;\n}\n\n/**\n * Pauses the specified program. Benefits in the program's pools can't be redeemed until the program is resumed.\n * @param programId - ID of the program to pause.\n * @public\n * @documentationMaturity preview\n * @requiredField options\n * @requiredField options.idempotencyKey\n * @requiredField programId\n * @permissionId BENEFIT_PROGRAMS.PROGRAM_PAUSE\n * @applicableIdentity APP\n * @fqn wix.benefit_programs.v1.program.ProgramService.PauseProgram\n */\nexport async function pauseProgram(\n programId: string,\n options: NonNullablePaths<PauseProgramOptions, `idempotencyKey`, 2>\n): Promise<\n NonNullablePaths<PauseProgramResponse, `jobId`, 2> & {\n __applicationErrorsType?: PauseProgramApplicationErrors;\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 idempotencyKey: options?.idempotencyKey,\n });\n\n const reqOpts = ambassadorWixBenefitProgramsV1Program.pauseProgram(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 idempotencyKey: '$[1].idempotencyKey',\n },\n singleArgumentUnchanged: false,\n },\n ['programId', 'options']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\nexport interface PauseProgramOptions {\n /**\n * Idempotency key to ensure that the request is processed only once.\n * @maxLength 64\n */\n idempotencyKey: string;\n}\n\n/**\n * Resumes the specified program.\n *\n * Call this method for paused programs.\n * @param programId - ID of program to resume.\n * @public\n * @documentationMaturity preview\n * @requiredField options\n * @requiredField options.idempotencyKey\n * @requiredField programId\n * @permissionId BENEFIT_PROGRAMS.PROGRAM_RESUME\n * @applicableIdentity APP\n * @fqn wix.benefit_programs.v1.program.ProgramService.ResumeProgram\n */\nexport async function resumeProgram(\n programId: string,\n options: NonNullablePaths<ResumeProgramOptions, `idempotencyKey`, 2>\n): Promise<\n NonNullablePaths<ResumeProgramResponse, `jobId`, 2> & {\n __applicationErrorsType?: ResumeProgramApplicationErrors;\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 idempotencyKey: options?.idempotencyKey,\n });\n\n const reqOpts = ambassadorWixBenefitProgramsV1Program.resumeProgram(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 idempotencyKey: '$[1].idempotencyKey',\n },\n singleArgumentUnchanged: false,\n },\n ['programId', 'options']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\nexport interface ResumeProgramOptions {\n /**\n * Idempotency key to ensure that the request is processed only once.\n * @maxLength 64\n */\n idempotencyKey: string;\n}\n\n/**\n * Ends the specified program.\n * @param programId - ID of the program to end.\n * @public\n * @documentationMaturity preview\n * @requiredField programId\n * @permissionId BENEFIT_PROGRAMS.PROGRAM_END\n * @applicableIdentity APP\n * @fqn wix.benefit_programs.v1.program.ProgramService.EndProgram\n */\nexport async function endProgram(programId: string): Promise<\n NonNullablePaths<EndProgramResponse, `jobId`, 2> & {\n __applicationErrorsType?: EndProgramApplicationErrors;\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 = ambassadorWixBenefitProgramsV1Program.endProgram(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 * Updates a program.\n *\n * Each time the program definition is updated,\n * `revision` increments by 1.\n * The current `revision` must be passed when updating the program definition.\n * This ensures you're working with the latest program definition\n * and prevents unintended overwrites.\n * @param _id - Program ID.\n * @public\n * @documentationMaturity preview\n * @requiredField _id\n * @requiredField program\n * @requiredField program.revision\n * @permissionId BENEFIT_PROGRAMS.PROGRAM_UPDATE\n * @applicableIdentity APP\n * @returns Updated program.\n * @fqn wix.benefit_programs.v1.program.ProgramService.UpdateProgram\n */\nexport async function updateProgram(\n _id: string,\n program: NonNullablePaths<UpdateProgram, `revision`, 2>\n): Promise<\n NonNullablePaths<\n Program,\n | `status`\n | `beneficiary.anonymousVisitorId`\n | `beneficiary.memberId`\n | `beneficiary.wixUserId`\n | `programDefinition._id`,\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 program: { ...program, id: _id },\n });\n\n const reqOpts = ambassadorWixBenefitProgramsV1Program.updateProgram(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)?.program!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: { program: '$[1]' },\n explicitPathsToArguments: { 'program.id': '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['_id', 'program']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\nexport interface UpdateProgram {\n /**\n * Program ID.\n * @format GUID\n * @readonly\n * @immutable\n */\n _id?: string | null;\n /**\n * Revision number, which increments by 1 each time the program is updated.\n * To prevent conflicting changes, the current revision must be specified when updating the program.\n *\n * Ignored when creating a program.\n * @readonly\n */\n revision?: string | null;\n /**\n * Date and time the program was created.\n * @readonly\n */\n _createdDate?: Date | null;\n /**\n * Date and time the program was updated.\n * @readonly\n */\n _updatedDate?: Date | null;\n /**\n * ID of the associated program definition.\n * @format GUID\n * @readonly\n * @immutable\n */\n programDefinitionId?: string | null;\n /**\n * Program status.\n * @readonly\n */\n status?: ProgramStatusWithLiterals;\n /**\n * Program beneficiary.\n * @readonly\n * @immutable\n */\n beneficiary?: CommonIdentificationData;\n /**\n * Program name.\n *\n * You may want to use the same name that's used in the associated program definition, if it exists.\n * @maxLength 64\n */\n displayName?: string | null;\n /**\n * Namespace for your app or site's benefit programs. Namespaces allow you to distinguish between entities that you created and entities that other apps created.\n * @minLength 1\n * @maxLength 20\n * @immutable\n * @readonly\n */\n namespace?: string | null;\n /**\n * Custom field data for the program object.\n *\n * [Extended fields](https://dev.wix.com/docs/build-apps/develop-your-app/extensions/backend-extensions/schema-plugins/about-schema-plugin-extensions) must be configured in the app dashboard before they can be accessed with API calls.\n */\n extendedFields?: ExtendedFields;\n /**\n * ID for the program defined by you. You can use `externalId` to filter queries.\n * @format GUID\n * @immutable\n * @readonly\n */\n externalId?: string | null;\n /**\n * Associated program definition information.\n * @readonly\n */\n programDefinition?: ProgramDefinitionInfo;\n}\n\n/**\n * Retrieves a program.\n * @param programId - ID of the program to retrieve.\n * @public\n * @documentationMaturity preview\n * @requiredField programId\n * @permissionId BENEFIT_PROGRAMS.PROGRAM_READ\n * @applicableIdentity APP\n * @returns Retrieved program.\n * @fqn wix.benefit_programs.v1.program.ProgramService.GetProgram\n */\nexport async function getProgram(\n programId: string\n): Promise<\n NonNullablePaths<\n Program,\n | `status`\n | `beneficiary.anonymousVisitorId`\n | `beneficiary.memberId`\n | `beneficiary.wixUserId`\n | `programDefinition._id`,\n 3\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 = ambassadorWixBenefitProgramsV1Program.getProgram(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)?.program!;\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 * Creates a query to retrieve a list of programs.\n *\n * The Query Programs method builds a query to retrieve a list of programs and returns a `ProgramsQueryBuilder` object.\n *\n * The returned object contains the query definition, which is used to run the query using the `find()` method.\n *\n * You can refine the query by chaining `ProgramsQueryBuilder` methods onto the query. `ProgramsQueryBuilder` methods enable you to filter, sort, and control the results that Query Programs returns.\n *\n * Query Programs has a default paging limit of 50, which you can override.\n *\n * For a full description of the item object, see the object returned for the `items` property in `ProgramsQueryResult`.\n * @public\n * @documentationMaturity preview\n * @permissionId BENEFIT_PROGRAMS.PROGRAM_READ\n * @applicableIdentity APP\n * @fqn wix.benefit_programs.v1.program.ProgramService.QueryPrograms\n */\nexport function queryPrograms(): ProgramsQueryBuilder {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[0] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n return queryBuilder<\n Program,\n 'CURSOR',\n QueryProgramsRequest,\n QueryProgramsResponse\n >({\n func: async (payload: QueryProgramsRequest) => {\n const reqOpts =\n ambassadorWixBenefitProgramsV1Program.queryPrograms(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: QueryProgramsRequest['query']) => {\n const args = [query, {}] as [QueryProgramsRequest['query'], {}];\n return renameKeysFromSDKRequestToRESTRequest({\n ...args?.[1],\n query: args?.[0],\n });\n },\n responseTransformer: ({ data }: HttpResponse<QueryProgramsResponse>) => {\n const transformedData = renameKeysFromRESTResponseToSDKResponse(\n transformPaths(data, [])\n );\n\n return {\n items: transformedData?.programs,\n pagingMetadata: transformedData?.metadata,\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 ProgramsQueryResult extends QueryCursorResult {\n items: Program[];\n query: ProgramsQueryBuilder;\n next: () => Promise<ProgramsQueryResult>;\n prev: () => Promise<ProgramsQueryResult>;\n}\n\nexport interface ProgramsQueryBuilder {\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:\n | '_id'\n | '_createdDate'\n | 'programDefinitionId'\n | 'status'\n | 'namespace'\n | 'externalId'\n | 'programDefinition.id',\n value: any\n ) => ProgramsQueryBuilder;\n /** @param propertyName - Property whose value is compared with `value`.\n * @param value - Value to compare against.\n * @documentationMaturity preview\n */\n ne: (\n propertyName:\n | '_id'\n | '_createdDate'\n | 'programDefinitionId'\n | 'status'\n | 'namespace'\n | 'externalId'\n | 'programDefinition.id',\n value: any\n ) => ProgramsQueryBuilder;\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:\n | '_id'\n | '_createdDate'\n | 'programDefinitionId'\n | 'namespace'\n | 'externalId'\n | 'programDefinition.id',\n value: any\n ) => ProgramsQueryBuilder;\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:\n | '_id'\n | '_createdDate'\n | 'programDefinitionId'\n | 'namespace'\n | 'externalId'\n | 'programDefinition.id',\n value: any\n ) => ProgramsQueryBuilder;\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:\n | '_id'\n | '_createdDate'\n | 'programDefinitionId'\n | 'namespace'\n | 'externalId'\n | 'programDefinition.id',\n value: any\n ) => ProgramsQueryBuilder;\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:\n | '_id'\n | '_createdDate'\n | 'programDefinitionId'\n | 'namespace'\n | 'externalId'\n | 'programDefinition.id',\n value: any\n ) => ProgramsQueryBuilder;\n /** @param propertyName - Property whose value is compared with `string`.\n * @param string - String to compare against. Case-insensitive.\n * @documentationMaturity preview\n */\n startsWith: (\n propertyName:\n | '_id'\n | 'programDefinitionId'\n | 'namespace'\n | 'externalId'\n | 'programDefinition.id',\n value: string\n ) => ProgramsQueryBuilder;\n /** @param propertyName - Property whose value is compared with `values`.\n * @param values - List of values to compare against.\n * @documentationMaturity preview\n */\n hasSome: (\n propertyName:\n | '_id'\n | '_createdDate'\n | 'programDefinitionId'\n | 'status'\n | 'namespace'\n | 'externalId'\n | 'programDefinition.id',\n value: any[]\n ) => ProgramsQueryBuilder;\n /** @documentationMaturity preview */\n in: (\n propertyName:\n | '_id'\n | '_createdDate'\n | 'programDefinitionId'\n | 'status'\n | 'namespace'\n | 'externalId'\n | 'programDefinition.id',\n value: any\n ) => ProgramsQueryBuilder;\n /** @documentationMaturity preview */\n exists: (\n propertyName:\n | '_id'\n | '_createdDate'\n | 'programDefinitionId'\n | 'status'\n | 'namespace'\n | 'externalId'\n | 'programDefinition.id',\n value: boolean\n ) => ProgramsQueryBuilder;\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'\n | '_createdDate'\n | 'programDefinitionId'\n | 'status'\n | 'namespace'\n | 'externalId'\n | 'programDefinition.id'\n >\n ) => ProgramsQueryBuilder;\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'\n | '_createdDate'\n | 'programDefinitionId'\n | 'status'\n | 'namespace'\n | 'externalId'\n | 'programDefinition.id'\n >\n ) => ProgramsQueryBuilder;\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) => ProgramsQueryBuilder;\n /** @param cursor - A pointer to specific record\n * @documentationMaturity preview\n */\n skipTo: (cursor: string) => ProgramsQueryBuilder;\n /** @documentationMaturity preview */\n find: () => Promise<ProgramsQueryResult>;\n}\n\n/**\n * Retrieves a program with the specified external ID and namespace.\n * @param namespace - Namespace for your app or site's benefit programs. Namespaces allow you to distinguish between entities that you created and entities that other apps created.\n * @public\n * @documentationMaturity preview\n * @requiredField namespace\n * @requiredField options\n * @requiredField options.externalId\n * @permissionId BENEFIT_PROGRAMS.PROGRAM_READ\n * @applicableIdentity APP\n * @fqn wix.benefit_programs.v1.program.ProgramService.GetProgramByExternalIdAndNamespace\n */\nexport async function getProgramByExternalIdAndNamespace(\n namespace: string,\n options: NonNullablePaths<\n GetProgramByExternalIdAndNamespaceOptions,\n `externalId`,\n 2\n >\n): Promise<\n NonNullablePaths<\n GetProgramByExternalIdAndNamespaceResponse,\n | `program.status`\n | `program.beneficiary.anonymousVisitorId`\n | `program.beneficiary.memberId`\n | `program.beneficiary.wixUserId`\n | `program.programDefinition._id`,\n 4\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 namespace: namespace,\n externalId: options?.externalId,\n });\n\n const reqOpts =\n ambassadorWixBenefitProgramsV1Program.getProgramByExternalIdAndNamespace(\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 namespace: '$[0]',\n externalId: '$[1].externalId',\n },\n singleArgumentUnchanged: false,\n },\n ['namespace', 'options']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\nexport interface GetProgramByExternalIdAndNamespaceOptions {\n /**\n * Program's external ID.\n * @format GUID\n */\n externalId: string;\n}\n","import { toURLSearchParams } from '@wix/sdk-runtime/rest-modules';\nimport { transformSDKTimestampToRESTTimestamp } from '@wix/sdk-runtime/transformations/timestamp';\nimport { transformRESTTimestampToSDKTimestamp } from '@wix/sdk-runtime/transformations/timestamp';\nimport { transformSDKFieldMaskToRESTFieldMask } from '@wix/sdk-runtime/transformations/field-mask';\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 resolveWixBenefitProgramsV1ProgramProgramServiceUrl(\n opts: Omit<ResolveUrlOpts, 'domainToMappings'>\n) {\n const domainToMappings = {\n 'api._api_base_domain_': [\n {\n srcPath: '/programs',\n destPath: '',\n },\n ],\n _: [\n {\n srcPath: '/_api/benefit-programs-programs',\n destPath: '',\n },\n ],\n 'editor._base_domain_': [\n {\n srcPath: '/_api/benefit-programs-programs',\n destPath: '',\n },\n {\n srcPath: '/_api/benefit-programs/v1/programs',\n destPath: '/v1/programs',\n },\n ],\n 'blocks._base_domain_': [\n {\n srcPath: '/_api/benefit-programs-programs',\n destPath: '',\n },\n {\n srcPath: '/_api/benefit-programs/v1/programs',\n destPath: '/v1/programs',\n },\n ],\n 'create.editorx': [\n {\n srcPath: '/_api/benefit-programs-programs',\n destPath: '',\n },\n {\n srcPath: '/_api/benefit-programs/v1/programs',\n destPath: '/v1/programs',\n },\n ],\n 'editor.wixapps.net': [\n {\n srcPath: '/_api/benefit-programs-programs',\n destPath: '',\n },\n {\n srcPath: '/_api/benefit-programs/v1/programs',\n destPath: '/v1/programs',\n },\n ],\n 'manage._base_domain_': [\n {\n srcPath: '/_api/benefit-programs-programs',\n destPath: '',\n },\n {\n srcPath: '/_api/benefit-programs/v1/programs',\n destPath: '/v1/programs',\n },\n ],\n 'www._base_domain_': [\n {\n srcPath: '/_api/benefit-programs-programs',\n destPath: '',\n },\n {\n srcPath: '/_api/benefit-programs/v1/programs',\n destPath: '/v1/programs',\n },\n ],\n '*.dev.wix-code.com': [\n {\n srcPath: '/_api/benefit-programs/v1/programs',\n destPath: '/v1/programs',\n },\n ],\n 'www.wixapis.com': [\n {\n srcPath: '/benefit-programs/v1/programs',\n destPath: '/v1/programs',\n },\n ],\n };\n\n return resolveUrl(Object.assign(opts, { domainToMappings }));\n}\n\nconst PACKAGE_NAME = '@wix/auto_sdk_benefit-programs_programs';\n\n/**\n * Creates a program for the specified beneficiary. Creating a program is also referred to as provisioning a program.\n *\n * You can provision a program from a program definition or a pool definition:\n * - **Program definition**: The provisioned program has pools that are created from the pool definitions in the program definition.\n * - **Pool definition**: The provisioned program has 1 pool that is created from the pool definition.\n */\nexport function provisionProgram(payload: object): RequestOptionsFactory<any> {\n function __provisionProgram({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.benefit_programs.v1.program',\n method: 'POST' as any,\n methodFqn:\n 'wix.benefit_programs.v1.program.ProgramService.ProvisionProgram',\n packageName: PACKAGE_NAME,\n url: resolveWixBenefitProgramsV1ProgramProgramServiceUrl({\n protoPath: '/v1/programs/provision',\n data: payload,\n host,\n }),\n data: payload,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'program.createdDate' },\n { path: 'program.updatedDate' },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __provisionProgram;\n}\n\n/**\n * Renews the specified program.\n *\n * The number of available credits in each pool in the program is defined in the corresponding pool's credit configuration.\n */\nexport function renewProgram(payload: object): RequestOptionsFactory<any> {\n function __renewProgram({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.benefit_programs.v1.program',\n method: 'POST' as any,\n methodFqn: 'wix.benefit_programs.v1.program.ProgramService.RenewProgram',\n packageName: PACKAGE_NAME,\n url: resolveWixBenefitProgramsV1ProgramProgramServiceUrl({\n protoPath: '/v1/programs/renew',\n data: payload,\n host,\n }),\n data: payload,\n };\n\n return metadata;\n }\n\n return __renewProgram;\n}\n\n/** Pauses the specified program. Benefits in the program's pools can't be redeemed until the program is resumed. */\nexport function pauseProgram(payload: object): RequestOptionsFactory<any> {\n function __pauseProgram({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.benefit_programs.v1.program',\n method: 'POST' as any,\n methodFqn: 'wix.benefit_programs.v1.program.ProgramService.PauseProgram',\n packageName: PACKAGE_NAME,\n url: resolveWixBenefitProgramsV1ProgramProgramServiceUrl({\n protoPath: '/v1/programs/pause',\n data: payload,\n host,\n }),\n data: payload,\n };\n\n return metadata;\n }\n\n return __pauseProgram;\n}\n\n/**\n * Resumes the specified program.\n *\n * Call this method for paused programs.\n */\nexport function resumeProgram(payload: object): RequestOptionsFactory<any> {\n function __resumeProgram({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.benefit_programs.v1.program',\n method: 'POST' as any,\n methodFqn: 'wix.benefit_programs.v1.program.ProgramService.ResumeProgram',\n packageName: PACKAGE_NAME,\n url: resolveWixBenefitProgramsV1ProgramProgramServiceUrl({\n protoPath: '/v1/programs/resume',\n data: payload,\n host,\n }),\n data: payload,\n };\n\n return metadata;\n }\n\n return __resumeProgram;\n}\n\n/** Ends the specified program. */\nexport function endProgram(payload: object): RequestOptionsFactory<any> {\n function __endProgram({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.benefit_programs.v1.program',\n method: 'POST' as any,\n methodFqn: 'wix.benefit_programs.v1.program.ProgramService.EndProgram',\n packageName: PACKAGE_NAME,\n url: resolveWixBenefitProgramsV1ProgramProgramServiceUrl({\n protoPath: '/v1/programs/end',\n data: payload,\n host,\n }),\n data: payload,\n };\n\n return metadata;\n }\n\n return __endProgram;\n}\n\n/**\n * Updates a program.\n *\n * Each time the program definition is updated,\n * `revision` increments by 1.\n * The current `revision` must be passed when updating the program definition.\n * This ensures you're working with the latest program definition\n * and prevents unintended overwrites.\n */\nexport function updateProgram(payload: object): RequestOptionsFactory<any> {\n function __updateProgram({ host }: any) {\n const serializedData = transformPaths(payload, [\n {\n transformFn: transformSDKFieldMaskToRESTFieldMask,\n paths: [{ path: 'fieldMask' }],\n },\n {\n transformFn: transformSDKTimestampToRESTTimestamp,\n paths: [\n { path: 'program.createdDate' },\n { path: 'program.updatedDate' },\n ],\n },\n ]);\n const metadata = {\n entityFqdn: 'wix.benefit_programs.v1.program',\n method: 'PATCH' as any,\n methodFqn: 'wix.benefit_programs.v1.program.ProgramService.UpdateProgram',\n packageName: PACKAGE_NAME,\n url: resolveWixBenefitProgramsV1ProgramProgramServiceUrl({\n protoPath: '/v1/programs/{program.id}',\n data: serializedData,\n host,\n }),\n data: serializedData,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'program.createdDate' },\n { path: 'program.updatedDate' },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __updateProgram;\n}\n\n/** Retrieves a program. */\nexport function getProgram(payload: object): RequestOptionsFactory<any> {\n function __getProgram({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.benefit_programs.v1.program',\n method: 'GET' as any,\n methodFqn: 'wix.benefit_programs.v1.program.ProgramService.GetProgram',\n packageName: PACKAGE_NAME,\n url: resolveWixBenefitProgramsV1ProgramProgramServiceUrl({\n protoPath: '/v1/programs/{programId}',\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: 'program.createdDate' },\n { path: 'program.updatedDate' },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __getProgram;\n}\n\n/**\n * Creates a query to retrieve a list of programs.\n *\n * The Query Programs method builds a query to retrieve a list of programs and returns a `ProgramsQueryBuilder` object.\n *\n * The returned object contains the query definition, which is used to run the query using the `find()` method.\n *\n * You can refine the query by chaining `ProgramsQueryBuilder` methods onto the query. `ProgramsQueryBuilder` methods enable you to filter, sort, and control the results that Query Programs returns.\n *\n * Query Programs has a default paging limit of 50, which you can override.\n *\n * For a full description of the item object, see the object returned for the `items` property in `ProgramsQueryResult`.\n */\nexport function queryPrograms(payload: object): RequestOptionsFactory<any> {\n function __queryPrograms({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.benefit_programs.v1.program',\n method: 'POST' as any,\n methodFqn: 'wix.benefit_programs.v1.program.ProgramService.QueryPrograms',\n packageName: PACKAGE_NAME,\n url: resolveWixBenefitProgramsV1ProgramProgramServiceUrl({\n protoPath: '/v1/programs/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: 'programs.createdDate' },\n { path: 'programs.updatedDate' },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __queryPrograms;\n}\n\n/** Retrieves a program with the specified external ID and namespace. */\nexport function getProgramByExternalIdAndNamespace(\n payload: object\n): RequestOptionsFactory<any> {\n function __getProgramByExternalIdAndNamespace({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.benefit_programs.v1.program',\n method: 'GET' as any,\n methodFqn:\n 'wix.benefit_programs.v1.program.ProgramService.GetProgramByExternalIdAndNamespace',\n packageName: PACKAGE_NAME,\n url: resolveWixBenefitProgramsV1ProgramProgramServiceUrl({\n protoPath: '/v1/programs/by-namespace-and-external-id',\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: 'program.createdDate' },\n { path: 'program.updatedDate' },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __getProgramByExternalIdAndNamespace;\n}\n","import { HttpClient, NonNullablePaths } from '@wix/sdk-types';\nimport {\n EndProgramApplicationErrors,\n EndProgramResponse,\n GetProgramByExternalIdAndNamespaceOptions,\n GetProgramByExternalIdAndNamespaceResponse,\n PauseProgramApplicationErrors,\n PauseProgramOptions,\n PauseProgramResponse,\n PoolDefinitionLookupId,\n Program,\n ProgramsQueryBuilder,\n ProvisionProgramApplicationErrors,\n ProvisionProgramOptions,\n ProvisionProgramResponse,\n RenewProgramOptions,\n RenewProgramResponse,\n ResumeProgramApplicationErrors,\n ResumeProgramOptions,\n ResumeProgramResponse,\n UpdateProgram,\n endProgram as universalEndProgram,\n getProgram as universalGetProgram,\n getProgramByExternalIdAndNamespace as universalGetProgramByExternalIdAndNamespace,\n pauseProgram as universalPauseProgram,\n provisionProgram as universalProvisionProgram,\n queryPrograms as universalQueryPrograms,\n renewProgram as universalRenewProgram,\n resumeProgram as universalResumeProgram,\n updateProgram as universalUpdateProgram,\n} from './benefit-programs-v1-program-programs.universal.js';\n\nexport const __metadata = { PACKAGE_NAME: '@wix/benefit-programs' };\n\nexport function provisionProgram(\n httpClient: HttpClient\n): ProvisionProgramSignature {\n return (\n poolDefinitionLookupId: PoolDefinitionLookupId,\n options?: NonNullablePaths<\n ProvisionProgramOptions,\n `beneficiary` | `externalProgramId` | `namespace`,\n 2\n >\n ) =>\n universalProvisionProgram(\n poolDefinitionLookupId,\n options,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface ProvisionProgramSignature {\n /**\n * Creates a program for the specified beneficiary. Creating a program is also referred to as provisioning a program.\n *\n * You can provision a program from a program definition or a pool definition:\n * - **Program definition**: The provisioned program has pools that are created from the pool definitions in the program definition.\n * - **Pool definition**: The provisioned program has 1 pool that is created from the pool definition.\n * @param - The program definition or pool definition to use to provision the program.\n */\n (\n poolDefinitionLookupId: PoolDefinitionLookupId,\n options?: NonNullablePaths<\n ProvisionProgramOptions,\n `beneficiary` | `externalProgramId` | `namespace`,\n 2\n >\n ): Promise<\n NonNullablePaths<\n ProvisionProgramResponse,\n | `jobId`\n | `program.status`\n | `program.beneficiary.anonymousVisitorId`\n | `program.beneficiary.memberId`\n | `program.beneficiary.wixUserId`\n | `program.programDefinition._id`,\n 4\n > & {\n __applicationErrorsType?: ProvisionProgramApplicationErrors;\n }\n >;\n}\n\nexport function renewProgram(httpClient: HttpClient): RenewProgramSignature {\n return (\n programId: string,\n options: NonNullablePaths<RenewProgramOptions, `idempotencyKey`, 2>\n ) =>\n universalRenewProgram(\n programId,\n options,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface RenewProgramSignature {\n /**\n * Renews the specified program.\n *\n * The number of available credits in each pool in the program is defined in the corresponding pool's credit configuration.\n * @param - ID of the program to renew.\n */\n (\n programId: string,\n options: NonNullablePaths<RenewProgramOptions, `idempotencyKey`, 2>\n ): Promise<NonNullablePaths<RenewProgramResponse, `jobId`, 2>>;\n}\n\nexport function pauseProgram(httpClient: HttpClient): PauseProgramSignature {\n return (\n programId: string,\n options: NonNullablePaths<PauseProgramOptions, `idempotencyKey`, 2>\n ) =>\n universalPauseProgram(\n programId,\n options,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface PauseProgramSignature {\n /**\n * Pauses the specified program. Benefits in the program's pools can't be redeemed until the program is resumed.\n * @param - ID of the program to pause.\n */\n (\n programId: string,\n options: NonNullablePaths<PauseProgramOptions, `idempotencyKey`, 2>\n ): Promise<\n NonNullablePaths<PauseProgramResponse, `jobId`, 2> & {\n __applicationErrorsType?: PauseProgramApplicationErrors;\n }\n >;\n}\n\nexport function resumeProgram(httpClient: HttpClient): ResumeProgramSignature {\n return (\n programId: string,\n options: NonNullablePaths<ResumeProgramOptions, `idempotencyKey`, 2>\n ) =>\n universalResumeProgram(\n programId,\n options,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface ResumeProgramSignature {\n /**\n * Resumes the specified program.\n *\n * Call this method for paused programs.\n * @param - ID of program to resume.\n */\n (\n programId: string,\n options: NonNullablePaths<ResumeProgramOptions, `idempotencyKey`, 2>\n ): Promise<\n NonNullablePaths<ResumeProgramResponse, `jobId`, 2> & {\n __applicationErrorsType?: ResumeProgramApplicationErrors;\n }\n >;\n}\n\nexport function endProgram(httpClient: HttpClient): EndProgramSignature {\n return (programId: string) =>\n universalEndProgram(\n programId,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface EndProgramSignature {\n /**\n * Ends the specified program.\n * @param - ID of the program to end.\n */\n (programId: string): Promise<\n NonNullablePaths<EndProgramResponse, `jobId`, 2> & {\n __applicationErrorsType?: EndProgramApplicationErrors;\n }\n >;\n}\n\nexport function updateProgram(httpClient: HttpClient): UpdateProgramSignature {\n return (\n _id: string,\n program: NonNullablePaths<UpdateProgram, `revision`, 2>\n ) =>\n universalUpdateProgram(\n _id,\n program,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface UpdateProgramSignature {\n /**\n * Updates a program.\n *\n * Each time the program definition is updated,\n * `revision` increments by 1.\n * The current `revision` must be passed when updating the program definition.\n * This ensures you're working with the latest program definition\n * and prevents unintended overwrites.\n * @param - Program ID.\n * @returns Updated program.\n */\n (\n _id: string,\n program: NonNullablePaths<UpdateProgram, `revision`, 2>\n ): Promise<\n NonNullablePaths<\n Program,\n | `status`\n | `beneficiary.anonymousVisitorId`\n | `beneficiary.memberId`\n | `beneficiary.wixUserId`\n | `programDefinition._id`,\n 3\n >\n >;\n}\n\nexport function getProgram(httpClient: HttpClient): GetProgramSignature {\n return (programId: string) =>\n universalGetProgram(\n programId,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface GetProgramSignature {\n /**\n * Retrieves a program.\n * @param - ID of the program to retrieve.\n * @returns Retrieved program.\n */\n (programId: string): Promise<\n NonNullablePaths<\n Program,\n | `status`\n | `beneficiary.anonymousVisitorId`\n | `beneficiary.memberId`\n | `beneficiary.wixUserId`\n | `programDefinition._id`,\n 3\n >\n >;\n}\n\nexport function queryPrograms(httpClient: HttpClient): QueryProgramsSignature {\n return () =>\n universalQueryPrograms(\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface QueryProgramsSignature {\n /**\n * Creates a query to retrieve a list of programs.\n *\n * The Query Programs method builds a query to retrieve a list of programs and returns a `ProgramsQueryBuilder` object.\n *\n * The returned object contains the query definition, which is used to run the query using the `find()` method.\n *\n * You can refine the query by chaining `ProgramsQueryBuilder` methods onto the query. `ProgramsQueryBuilder` methods enable you to filter, sort, and control the results that Query Programs returns.\n *\n * Query Programs has a default paging limit of 50, which you can override.\n *\n * For a full description of the item object, see the object returned for the `items` property in `ProgramsQueryResult`.\n */\n (): ProgramsQueryBuilder;\n}\n\nexport function getProgramByExternalIdAndNamespace(\n httpClient: HttpClient\n): GetProgramByExternalIdAndNamespaceSignature {\n return (\n namespace: string,\n options: NonNullablePaths<\n GetProgramByExternalIdAndNamespaceOptions,\n `externalId`,\n 2\n >\n ) =>\n universalGetProgramByExternalIdAndNamespace(\n namespace,\n options,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface GetProgramByExternalIdAndNamespaceSignature {\n /**\n * Retrieves a program with the specified external ID and namespace.\n * @param - Namespace for your app or site's benefit programs. Namespaces allow you to distinguish between entities that you created and entities that other apps created.\n */\n (\n namespace: string,\n options: NonNullablePaths<\n GetProgramByExternalIdAndNamespaceOptions,\n `externalId`,\n 2\n >\n ): Promise<\n NonNullablePaths<\n GetProgramByExternalIdAndNamespaceResponse,\n | `program.status`\n | `program.beneficiary.anonymousVisitorId`\n | `program.beneficiary.memberId`\n | `program.beneficiary.wixUserId`\n | `program.programDefinition._id`,\n 4\n >\n >;\n}\n\nexport {\n ActionEvent,\n CommonIdentificationData,\n CommonIdentificationDataIdOneOf,\n CursorPaging,\n CursorPagingMetadata,\n CursorQuery,\n CursorQueryPagingMethodOneOf,\n Cursors,\n DomainEvent,\n DomainEventBodyOneOf,\n EndProgramRequest,\n EndProgramResponse,\n EntityCreatedEvent,\n EntityDeletedEvent,\n EntityUpdatedEvent,\n ExtendedFields,\n GetProgramByExternalIdAndNamespaceOptions,\n GetProgramByExternalIdAndNamespaceRequest,\n GetProgramByExternalIdAndNamespaceResponse,\n GetProgramRequest,\n GetProgramResponse,\n IdentificationData,\n IdentificationDataIdOneOf,\n IdentityType,\n MessageEnvelope,\n OrderStatus,\n PauseProgramOptions,\n PauseProgramRequest,\n PauseProgramResponse,\n PoolDefinitionLookupId,\n PoolDefinitionLookupIdIdOneOf,\n Program,\n ProgramAlreadyExists,\n ProgramDefinitionInfo,\n ProgramEnded,\n ProgramPaused,\n ProgramProvisioned,\n ProgramRenewed,\n ProgramResumed,\n ProgramStatus,\n ProgramStatusTransitionNotAllowed,\n ProgramsQueryBuilder,\n ProgramsQueryResult,\n ProvisionProgramOptions,\n ProvisionProgramRequest,\n ProvisionProgramRequestProgramStatus,\n ProvisionProgramResponse,\n QueryProgramsRequest,\n QueryProgramsResponse,\n RenewProgramOptions,\n RenewProgramRequest,\n RenewProgramResponse,\n RestoreInfo,\n ResumeProgramOptions,\n ResumeProgramRequest,\n ResumeProgramResponse,\n SortOrder,\n Sorting,\n UpdateProgram,\n UpdateProgramRequest,\n UpdateProgramResponse,\n UpdateProgramStatusRequest,\n UpdateProgramStatusResponse,\n UpsertMigratedProgramRequest,\n UpsertMigratedProgramResponse,\n WebhookIdentityType,\n} from './benefit-programs-v1-program-programs.universal.js';\n","import {\n provisionProgram as publicProvisionProgram,\n renewProgram as publicRenewProgram,\n pauseProgram as publicPauseProgram,\n resumeProgram as publicResumeProgram,\n endProgram as publicEndProgram,\n updateProgram as publicUpdateProgram,\n getProgram as publicGetProgram,\n queryPrograms as publicQueryPrograms,\n getProgramByExternalIdAndNamespace as publicGetProgramByExternalIdAndNamespace,\n} from './benefit-programs-v1-program-programs.public.js';\nimport { createRESTModule } from '@wix/sdk-runtime/rest-modules';\nimport { BuildRESTFunction, MaybeContext } from '@wix/sdk-types';\n\nexport const provisionProgram: MaybeContext<\n BuildRESTFunction<typeof publicProvisionProgram> &\n typeof publicProvisionProgram\n> = /*#__PURE__*/ createRESTModule(publicProvisionProgram);\nexport const renewProgram: MaybeContext<\n BuildRESTFunction<typeof publicRenewProgram> & typeof publicRenewProgram\n> = /*#__PURE__*/ createRESTModule(publicRenewProgram);\nexport const pauseProgram: MaybeContext<\n BuildRESTFunction<typeof publicPauseProgram> & typeof publicPauseProgram\n> = /*#__PURE__*/ createRESTModule(publicPauseProgram);\nexport const resumeProgram: MaybeContext<\n BuildRESTFunction<typeof publicResumeProgram> & typeof publicResumeProgram\n> = /*#__PURE__*/ createRESTModule(publicResumeProgram);\nexport const endProgram: MaybeContext<\n BuildRESTFunction<typeof publicEndProgram> & typeof publicEndProgram\n> = /*#__PURE__*/ createRESTModule(publicEndProgram);\nexport const updateProgram: MaybeContext<\n BuildRESTFunction<typeof publicUpdateProgram> & typeof publicUpdateProgram\n> = /*#__PURE__*/ createRESTModule(publicUpdateProgram);\nexport const getProgram: MaybeContext<\n BuildRESTFunction<typeof publicGetProgram> & typeof publicGetProgram\n> = /*#__PURE__*/ createRESTModule(publicGetProgram);\nexport const queryPrograms: MaybeContext<\n BuildRESTFunction<typeof publicQueryPrograms> & typeof publicQueryPrograms\n> = /*#__PURE__*/ createRESTModule(publicQueryPrograms);\nexport const getProgramByExternalIdAndNamespace: MaybeContext<\n BuildRESTFunction<typeof publicGetProgramByExternalIdAndNamespace> &\n typeof publicGetProgramByExternalIdAndNamespace\n> = /*#__PURE__*/ createRESTModule(publicGetProgramByExternalIdAndNamespace);\n\nexport {\n ProgramStatus,\n IdentityType,\n ProvisionProgramRequestProgramStatus,\n OrderStatus,\n SortOrder,\n WebhookIdentityType,\n} from './benefit-programs-v1-program-programs.universal.js';\nexport {\n Program,\n CommonIdentificationData,\n CommonIdentificationDataIdOneOf,\n ExtendedFields,\n ProgramDefinitionInfo,\n ProgramProvisioned,\n ProgramRenewed,\n ProgramEnded,\n ProgramPaused,\n ProgramResumed,\n ProvisionProgramRequest,\n PoolDefinitionLookupId,\n PoolDefinitionLookupIdIdOneOf,\n ProvisionProgramResponse,\n ProgramAlreadyExists,\n RenewProgramRequest,\n RenewProgramResponse,\n PauseProgramRequest,\n PauseProgramResponse,\n ProgramStatusTransitionNotAllowed,\n ResumeProgramRequest,\n ResumeProgramResponse,\n EndProgramRequest,\n EndProgramResponse,\n UpdateProgramStatusRequest,\n UpdateProgramStatusResponse,\n UpsertMigratedProgramRequest,\n UpsertMigratedProgramResponse,\n UpdateProgramRequest,\n UpdateProgramResponse,\n GetProgramRequest,\n GetProgramResponse,\n QueryProgramsRequest,\n CursorQuery,\n CursorQueryPagingMethodOneOf,\n Sorting,\n CursorPaging,\n QueryProgramsResponse,\n CursorPagingMetadata,\n Cursors,\n GetProgramByExternalIdAndNamespaceRequest,\n GetProgramByExternalIdAndNamespaceResponse,\n DomainEvent,\n DomainEventBodyOneOf,\n EntityCreatedEvent,\n RestoreInfo,\n EntityUpdatedEvent,\n EntityDeletedEvent,\n ActionEvent,\n MessageEnvelope,\n IdentificationData,\n IdentificationDataIdOneOf,\n ProvisionProgramOptions,\n RenewProgramOptions,\n PauseProgramOptions,\n ResumeProgramOptions,\n UpdateProgram,\n ProgramsQueryResult,\n ProgramsQueryBuilder,\n GetProgramByExternalIdAndNamespaceOptions,\n} from './benefit-programs-v1-program-programs.universal.js';\nexport {\n ProgramStatusWithLiterals,\n IdentityTypeWithLiterals,\n ProvisionProgramRequestProgramStatusWithLiterals,\n OrderStatusWithLiterals,\n SortOrderWithLiterals,\n WebhookIdentityTypeWithLiterals,\n ProvisionProgramApplicationErrors,\n PauseProgramApplicationErrors,\n ResumeProgramApplicationErrors,\n EndProgramApplicationErrors,\n} from './benefit-programs-v1-program-programs.universal.js';\n"],"mappings":"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","names":["endProgram","getProgram","getProgramByExternalIdAndNamespace","pauseProgram","provisionProgram","queryPrograms","renewProgram","resumeProgram","updateProgram","import_timestamp","import_rest_modules","payload","import_transform_paths","ProgramStatus","IdentityType","ProvisionProgramRequestProgramStatus","OrderStatus","SortOrder","WebhookIdentityType","provisionProgram","sdkTransformError","renewProgram","pauseProgram","resumeProgram","endProgram","updateProgram","getProgram","queryPrograms","getProgramByExternalIdAndNamespace","provisionProgram","renewProgram","pauseProgram","resumeProgram","endProgram","updateProgram","getProgram","queryPrograms","getProgramByExternalIdAndNamespace","import_rest_modules","provisionProgram","renewProgram","pauseProgram","resumeProgram","endProgram","updateProgram","getProgram","queryPrograms","getProgramByExternalIdAndNamespace"]}
@@ -1,3 +1,5 @@
1
+ import { NonNullablePaths } from '@wix/sdk-types';
2
+
1
3
  interface Program {
2
4
  /**
3
5
  * Program ID.
@@ -141,6 +143,8 @@ declare enum IdentityType {
141
143
  /** A Wix account holder, such as a site owner or contributor. */
142
144
  WIX_USER = "WIX_USER"
143
145
  }
146
+ /** @enumType */
147
+ type IdentityTypeWithLiterals = IdentityType | 'UNKNOWN' | 'ANONYMOUS_VISITOR' | 'MEMBER' | 'WIX_USER';
144
148
  interface ExtendedFields {
145
149
  /**
146
150
  * Extended field data. Each key corresponds to the namespace of the app that created the extended fields.
@@ -663,6 +667,66 @@ declare enum WebhookIdentityType {
663
667
  }
664
668
  /** @enumType */
665
669
  type WebhookIdentityTypeWithLiterals = WebhookIdentityType | 'UNKNOWN' | 'ANONYMOUS_VISITOR' | 'MEMBER' | 'WIX_USER' | 'APP';
670
+ type ProvisionProgramApplicationErrors = {
671
+ code?: 'PROGRAM_ALREADY_EXISTS';
672
+ description?: string;
673
+ data?: ProgramAlreadyExists;
674
+ } | {
675
+ code?: 'IN_PROGRESS';
676
+ description?: string;
677
+ data?: Record<string, any>;
678
+ };
679
+ type PauseProgramApplicationErrors = {
680
+ code?: 'PROGRAM_STATUS_TRANSITION_NOT_ALLOWED';
681
+ description?: string;
682
+ data?: ProgramStatusTransitionNotAllowed;
683
+ } | {
684
+ code?: 'ALREADY_EXECUTED';
685
+ description?: string;
686
+ data?: Record<string, any>;
687
+ } | {
688
+ code?: 'IN_PROGRESS';
689
+ description?: string;
690
+ data?: Record<string, any>;
691
+ };
692
+ type ResumeProgramApplicationErrors = {
693
+ code?: 'PROGRAM_STATUS_TRANSITION_NOT_ALLOWED';
694
+ description?: string;
695
+ data?: ProgramStatusTransitionNotAllowed;
696
+ } | {
697
+ code?: 'ALREADY_EXECUTED';
698
+ description?: string;
699
+ data?: Record<string, any>;
700
+ } | {
701
+ code?: 'IN_PROGRESS';
702
+ description?: string;
703
+ data?: Record<string, any>;
704
+ };
705
+ type EndProgramApplicationErrors = {
706
+ code?: 'PROGRAM_STATUS_TRANSITION_NOT_ALLOWED';
707
+ description?: string;
708
+ data?: ProgramStatusTransitionNotAllowed;
709
+ };
710
+ /**
711
+ * Creates a program for the specified beneficiary. Creating a program is also referred to as provisioning a program.
712
+ *
713
+ * You can provision a program from a program definition or a pool definition:
714
+ * - **Program definition**: The provisioned program has pools that are created from the pool definitions in the program definition.
715
+ * - **Pool definition**: The provisioned program has 1 pool that is created from the pool definition.
716
+ * @param poolDefinitionLookupId - The program definition or pool definition to use to provision the program.
717
+ * @public
718
+ * @documentationMaturity preview
719
+ * @requiredField options.beneficiary
720
+ * @requiredField options.externalProgramId
721
+ * @requiredField options.namespace
722
+ * @requiredField poolDefinitionLookupId
723
+ * @permissionId BENEFIT_PROGRAMS.PROGRAM_PROVISION
724
+ * @applicableIdentity APP
725
+ * @fqn wix.benefit_programs.v1.program.ProgramService.ProvisionProgram
726
+ */
727
+ declare function provisionProgram(poolDefinitionLookupId: PoolDefinitionLookupId, options?: NonNullablePaths<ProvisionProgramOptions, `beneficiary` | `externalProgramId` | `namespace`, 2>): Promise<NonNullablePaths<ProvisionProgramResponse, `jobId` | `program.status` | `program.beneficiary.anonymousVisitorId` | `program.beneficiary.memberId` | `program.beneficiary.wixUserId` | `program.programDefinition._id`, 4> & {
728
+ __applicationErrorsType?: ProvisionProgramApplicationErrors;
729
+ }>;
666
730
  interface ProvisionProgramOptions {
667
731
  /** Program beneficiary. */
668
732
  beneficiary: CommonIdentificationData;
@@ -691,6 +755,21 @@ interface ProvisionProgramOptions {
691
755
  */
692
756
  externalProgramId: string;
693
757
  }
758
+ /**
759
+ * Renews the specified program.
760
+ *
761
+ * The number of available credits in each pool in the program is defined in the corresponding pool's credit configuration.
762
+ * @param programId - ID of the program to renew.
763
+ * @public
764
+ * @documentationMaturity preview
765
+ * @requiredField options
766
+ * @requiredField options.idempotencyKey
767
+ * @requiredField programId
768
+ * @permissionId BENEFIT_PROGRAMS.PROGRAM_RENEW
769
+ * @applicableIdentity APP
770
+ * @fqn wix.benefit_programs.v1.program.ProgramService.RenewProgram
771
+ */
772
+ declare function renewProgram(programId: string, options: NonNullablePaths<RenewProgramOptions, `idempotencyKey`, 2>): Promise<NonNullablePaths<RenewProgramResponse, `jobId`, 2>>;
694
773
  interface RenewProgramOptions {
695
774
  /**
696
775
  * Idempotency key to ensure that the request is processed only once.
@@ -698,6 +777,21 @@ interface RenewProgramOptions {
698
777
  */
699
778
  idempotencyKey: string;
700
779
  }
780
+ /**
781
+ * Pauses the specified program. Benefits in the program's pools can't be redeemed until the program is resumed.
782
+ * @param programId - ID of the program to pause.
783
+ * @public
784
+ * @documentationMaturity preview
785
+ * @requiredField options
786
+ * @requiredField options.idempotencyKey
787
+ * @requiredField programId
788
+ * @permissionId BENEFIT_PROGRAMS.PROGRAM_PAUSE
789
+ * @applicableIdentity APP
790
+ * @fqn wix.benefit_programs.v1.program.ProgramService.PauseProgram
791
+ */
792
+ declare function pauseProgram(programId: string, options: NonNullablePaths<PauseProgramOptions, `idempotencyKey`, 2>): Promise<NonNullablePaths<PauseProgramResponse, `jobId`, 2> & {
793
+ __applicationErrorsType?: PauseProgramApplicationErrors;
794
+ }>;
701
795
  interface PauseProgramOptions {
702
796
  /**
703
797
  * Idempotency key to ensure that the request is processed only once.
@@ -705,6 +799,23 @@ interface PauseProgramOptions {
705
799
  */
706
800
  idempotencyKey: string;
707
801
  }
802
+ /**
803
+ * Resumes the specified program.
804
+ *
805
+ * Call this method for paused programs.
806
+ * @param programId - ID of program to resume.
807
+ * @public
808
+ * @documentationMaturity preview
809
+ * @requiredField options
810
+ * @requiredField options.idempotencyKey
811
+ * @requiredField programId
812
+ * @permissionId BENEFIT_PROGRAMS.PROGRAM_RESUME
813
+ * @applicableIdentity APP
814
+ * @fqn wix.benefit_programs.v1.program.ProgramService.ResumeProgram
815
+ */
816
+ declare function resumeProgram(programId: string, options: NonNullablePaths<ResumeProgramOptions, `idempotencyKey`, 2>): Promise<NonNullablePaths<ResumeProgramResponse, `jobId`, 2> & {
817
+ __applicationErrorsType?: ResumeProgramApplicationErrors;
818
+ }>;
708
819
  interface ResumeProgramOptions {
709
820
  /**
710
821
  * Idempotency key to ensure that the request is processed only once.
@@ -712,6 +823,39 @@ interface ResumeProgramOptions {
712
823
  */
713
824
  idempotencyKey: string;
714
825
  }
826
+ /**
827
+ * Ends the specified program.
828
+ * @param programId - ID of the program to end.
829
+ * @public
830
+ * @documentationMaturity preview
831
+ * @requiredField programId
832
+ * @permissionId BENEFIT_PROGRAMS.PROGRAM_END
833
+ * @applicableIdentity APP
834
+ * @fqn wix.benefit_programs.v1.program.ProgramService.EndProgram
835
+ */
836
+ declare function endProgram(programId: string): Promise<NonNullablePaths<EndProgramResponse, `jobId`, 2> & {
837
+ __applicationErrorsType?: EndProgramApplicationErrors;
838
+ }>;
839
+ /**
840
+ * Updates a program.
841
+ *
842
+ * Each time the program definition is updated,
843
+ * `revision` increments by 1.
844
+ * The current `revision` must be passed when updating the program definition.
845
+ * This ensures you're working with the latest program definition
846
+ * and prevents unintended overwrites.
847
+ * @param _id - Program ID.
848
+ * @public
849
+ * @documentationMaturity preview
850
+ * @requiredField _id
851
+ * @requiredField program
852
+ * @requiredField program.revision
853
+ * @permissionId BENEFIT_PROGRAMS.PROGRAM_UPDATE
854
+ * @applicableIdentity APP
855
+ * @returns Updated program.
856
+ * @fqn wix.benefit_programs.v1.program.ProgramService.UpdateProgram
857
+ */
858
+ declare function updateProgram(_id: string, program: NonNullablePaths<UpdateProgram, `revision`, 2>): Promise<NonNullablePaths<Program, `status` | `beneficiary.anonymousVisitorId` | `beneficiary.memberId` | `beneficiary.wixUserId` | `programDefinition._id`, 3>>;
715
859
  interface UpdateProgram {
716
860
  /**
717
861
  * Program ID.
@@ -790,6 +934,37 @@ interface UpdateProgram {
790
934
  */
791
935
  programDefinition?: ProgramDefinitionInfo;
792
936
  }
937
+ /**
938
+ * Retrieves a program.
939
+ * @param programId - ID of the program to retrieve.
940
+ * @public
941
+ * @documentationMaturity preview
942
+ * @requiredField programId
943
+ * @permissionId BENEFIT_PROGRAMS.PROGRAM_READ
944
+ * @applicableIdentity APP
945
+ * @returns Retrieved program.
946
+ * @fqn wix.benefit_programs.v1.program.ProgramService.GetProgram
947
+ */
948
+ declare function getProgram(programId: string): Promise<NonNullablePaths<Program, `status` | `beneficiary.anonymousVisitorId` | `beneficiary.memberId` | `beneficiary.wixUserId` | `programDefinition._id`, 3>>;
949
+ /**
950
+ * Creates a query to retrieve a list of programs.
951
+ *
952
+ * The Query Programs method builds a query to retrieve a list of programs and returns a `ProgramsQueryBuilder` object.
953
+ *
954
+ * The returned object contains the query definition, which is used to run the query using the `find()` method.
955
+ *
956
+ * You can refine the query by chaining `ProgramsQueryBuilder` methods onto the query. `ProgramsQueryBuilder` methods enable you to filter, sort, and control the results that Query Programs returns.
957
+ *
958
+ * Query Programs has a default paging limit of 50, which you can override.
959
+ *
960
+ * For a full description of the item object, see the object returned for the `items` property in `ProgramsQueryResult`.
961
+ * @public
962
+ * @documentationMaturity preview
963
+ * @permissionId BENEFIT_PROGRAMS.PROGRAM_READ
964
+ * @applicableIdentity APP
965
+ * @fqn wix.benefit_programs.v1.program.ProgramService.QueryPrograms
966
+ */
967
+ declare function queryPrograms(): ProgramsQueryBuilder;
793
968
  interface QueryCursorResult {
794
969
  cursors: Cursors;
795
970
  hasNext: () => boolean;
@@ -867,6 +1042,19 @@ interface ProgramsQueryBuilder {
867
1042
  /** @documentationMaturity preview */
868
1043
  find: () => Promise<ProgramsQueryResult>;
869
1044
  }
1045
+ /**
1046
+ * Retrieves a program with the specified external ID and namespace.
1047
+ * @param namespace - Namespace for your app or site's benefit programs. Namespaces allow you to distinguish between entities that you created and entities that other apps created.
1048
+ * @public
1049
+ * @documentationMaturity preview
1050
+ * @requiredField namespace
1051
+ * @requiredField options
1052
+ * @requiredField options.externalId
1053
+ * @permissionId BENEFIT_PROGRAMS.PROGRAM_READ
1054
+ * @applicableIdentity APP
1055
+ * @fqn wix.benefit_programs.v1.program.ProgramService.GetProgramByExternalIdAndNamespace
1056
+ */
1057
+ declare function getProgramByExternalIdAndNamespace(namespace: string, options: NonNullablePaths<GetProgramByExternalIdAndNamespaceOptions, `externalId`, 2>): Promise<NonNullablePaths<GetProgramByExternalIdAndNamespaceResponse, `program.status` | `program.beneficiary.anonymousVisitorId` | `program.beneficiary.memberId` | `program.beneficiary.wixUserId` | `program.programDefinition._id`, 4>>;
870
1058
  interface GetProgramByExternalIdAndNamespaceOptions {
871
1059
  /**
872
1060
  * Program's external ID.
@@ -875,4 +1063,4 @@ interface GetProgramByExternalIdAndNamespaceOptions {
875
1063
  externalId: string;
876
1064
  }
877
1065
 
878
- export { type Cursors as $, type ResumeProgramRequest as A, type EndProgramRequest as B, type CommonIdentificationData as C, type UpdateProgramStatusRequest as D, type EndProgramResponse as E, type UpdateProgramStatusResponse as F, type GetProgramByExternalIdAndNamespaceOptions as G, type UpsertMigratedProgramRequest as H, IdentityType as I, type UpsertMigratedProgramResponse as J, type UpdateProgramRequest as K, type UpdateProgramResponse as L, type GetProgramRequest as M, type GetProgramResponse as N, OrderStatus as O, type PoolDefinitionLookupId as P, type QueryProgramsRequest as Q, type RenewProgramOptions as R, SortOrder as S, type CursorQuery as T, type UpdateProgram as U, type CursorQueryPagingMethodOneOf as V, WebhookIdentityType as W, type Sorting as X, type CursorPaging as Y, type QueryProgramsResponse as Z, type CursorPagingMetadata as _, type ProvisionProgramOptions as a, type GetProgramByExternalIdAndNamespaceRequest as a0, type DomainEvent as a1, type DomainEventBodyOneOf as a2, type EntityCreatedEvent as a3, type RestoreInfo as a4, type EntityUpdatedEvent as a5, type EntityDeletedEvent as a6, type ActionEvent as a7, type MessageEnvelope as a8, type IdentificationData as a9, type IdentificationDataIdOneOf as aa, type ProgramsQueryResult as ab, type ProvisionProgramResponse as b, type RenewProgramResponse as c, type PauseProgramOptions as d, type PauseProgramResponse as e, type ResumeProgramOptions as f, type ResumeProgramResponse as g, type Program as h, type ProgramsQueryBuilder as i, type GetProgramByExternalIdAndNamespaceResponse as j, ProgramStatus as k, ProvisionProgramRequestProgramStatus as l, type CommonIdentificationDataIdOneOf as m, type ExtendedFields as n, type ProgramDefinitionInfo as o, type ProgramProvisioned as p, type ProgramRenewed as q, type ProgramEnded as r, type ProgramPaused as s, type ProgramResumed as t, type ProvisionProgramRequest as u, type PoolDefinitionLookupIdIdOneOf as v, type ProgramAlreadyExists as w, type RenewProgramRequest as x, type PauseProgramRequest as y, type ProgramStatusTransitionNotAllowed as z };
1066
+ export { type ActionEvent, type CommonIdentificationData, type CommonIdentificationDataIdOneOf, type CursorPaging, type CursorPagingMetadata, type CursorQuery, type CursorQueryPagingMethodOneOf, type Cursors, type DomainEvent, type DomainEventBodyOneOf, type EndProgramApplicationErrors, type EndProgramRequest, type EndProgramResponse, type EntityCreatedEvent, type EntityDeletedEvent, type EntityUpdatedEvent, type ExtendedFields, type GetProgramByExternalIdAndNamespaceOptions, type GetProgramByExternalIdAndNamespaceRequest, type GetProgramByExternalIdAndNamespaceResponse, type GetProgramRequest, type GetProgramResponse, type IdentificationData, type IdentificationDataIdOneOf, IdentityType, type IdentityTypeWithLiterals, type MessageEnvelope, OrderStatus, type OrderStatusWithLiterals, type PauseProgramApplicationErrors, type PauseProgramOptions, type PauseProgramRequest, type PauseProgramResponse, type PoolDefinitionLookupId, type PoolDefinitionLookupIdIdOneOf, type Program, type ProgramAlreadyExists, type ProgramDefinitionInfo, type ProgramEnded, type ProgramPaused, type ProgramProvisioned, type ProgramRenewed, type ProgramResumed, ProgramStatus, type ProgramStatusTransitionNotAllowed, type ProgramStatusWithLiterals, type ProgramsQueryBuilder, type ProgramsQueryResult, type ProvisionProgramApplicationErrors, type ProvisionProgramOptions, type ProvisionProgramRequest, ProvisionProgramRequestProgramStatus, type ProvisionProgramRequestProgramStatusWithLiterals, type ProvisionProgramResponse, type QueryProgramsRequest, type QueryProgramsResponse, type RenewProgramOptions, type RenewProgramRequest, type RenewProgramResponse, type RestoreInfo, type ResumeProgramApplicationErrors, type ResumeProgramOptions, type ResumeProgramRequest, type ResumeProgramResponse, SortOrder, type SortOrderWithLiterals, type Sorting, type UpdateProgram, type UpdateProgramRequest, type UpdateProgramResponse, type UpdateProgramStatusRequest, type UpdateProgramStatusResponse, type UpsertMigratedProgramRequest, type UpsertMigratedProgramResponse, WebhookIdentityType, type WebhookIdentityTypeWithLiterals, endProgram, getProgram, getProgramByExternalIdAndNamespace, pauseProgram, provisionProgram, queryPrograms, renewProgram, resumeProgram, updateProgram };