{"version":3,"sources":["../../src/online-programs-v3-step-steps.public.ts","../../src/online-programs-v3-step-steps.universal.ts","../../src/online-programs-v3-step-steps.http.ts","../../src/online-programs-v3-step-steps.context.ts"],"sourcesContent":["import { renameKeysFromRESTResponseToSDKResponse } from '@wix/sdk-runtime/rename-all-nested-keys';\nimport { transformRESTFloatToSDKFloat } from '@wix/sdk-runtime/transformations/float';\nimport { transformRESTImageToSDKImage } from '@wix/sdk-runtime/transformations/image';\nimport { transformRESTTimestampToSDKTimestamp } from '@wix/sdk-runtime/transformations/timestamp';\nimport { transformPaths } from '@wix/sdk-runtime/transformations/transform-paths';\nimport { transformRESTVideoV2ToSDKVideoV2 } from '@wix/sdk-runtime/transformations/video-v2';\nimport { EventDefinition, HttpClient, NonNullablePaths } from '@wix/sdk-types';\nimport {\n  BulkCreateStepsOptions,\n  BulkCreateStepsResponse,\n  BulkUpdateStepsOptions,\n  BulkUpdateStepsResponse,\n  CloneStepOptions,\n  CloneStepResponse,\n  CreateStepOptions,\n  GetStepOptions,\n  MaskedStep,\n  MoveStepOptions,\n  MoveStepResponse,\n  QueryStepsOptions,\n  QueryStepsResponse,\n  Step,\n  StepCreatedEnvelope,\n  StepDeletedEnvelope,\n  StepMovedEnvelope,\n  StepQuery,\n  StepUpdatedEnvelope,\n  StepsQueryBuilder,\n  UpdateStep,\n  UpdateStepOptions,\n  bulkCreateSteps as universalBulkCreateSteps,\n  bulkUpdateSteps as universalBulkUpdateSteps,\n  cloneStep as universalCloneStep,\n  createStep as universalCreateStep,\n  deleteStep as universalDeleteStep,\n  getStep as universalGetStep,\n  moveStep as universalMoveStep,\n  querySteps as universalQuerySteps,\n  typedQuerySteps as universalTypedQuerySteps,\n  updateStep as universalUpdateStep,\n} from './online-programs-v3-step-steps.universal.js';\n\nconst TRANSFORM_PATHS_0 = [\n  { path: 'entity.createdDate' },\n  { path: 'entity.updatedDate' },\n  { path: 'metadata.eventTime' },\n];\nconst TRANSFORM_PATHS_1 = [\n  { path: 'entity.ordering' },\n  { path: 'entity.videoOptions.requiredCompletionPercentage' },\n  { path: 'entity.quizOptions.passingGrade' },\n];\nconst TRANSFORM_PATHS_2 = [\n  { path: 'entity.videoOptions.video' },\n  { path: 'entity.description.video' },\n];\nconst TRANSFORM_PATHS_3 = [\n  { path: 'entity.videoOptions.coverImage' },\n  { path: 'entity.description.image' },\n];\nconst TRANSFORM_PATHS_4 = [{ path: 'data.newPosition' }];\nconst TRANSFORM_PATHS_5 = [{ path: 'metadata.eventTime' }];\nconst TRANSFORM_PATHS_6 = [\n  { path: 'entity.createdDate' },\n  { path: 'entity.updatedDate' },\n  { path: 'metadata.eventTime' },\n  { path: 'modifiedFields.createdDate' },\n  { path: 'modifiedFields.updatedDate' },\n];\nconst TRANSFORM_PATHS_7 = [\n  { path: 'entity.ordering' },\n  { path: 'entity.videoOptions.requiredCompletionPercentage' },\n  { path: 'entity.quizOptions.passingGrade' },\n  { path: 'modifiedFields.ordering' },\n  { path: 'modifiedFields.videoOptions.requiredCompletionPercentage' },\n  { path: 'modifiedFields.quizOptions.passingGrade' },\n];\nconst TRANSFORM_PATHS_8 = [\n  { path: 'entity.videoOptions.video' },\n  { path: 'entity.description.video' },\n  { path: 'modifiedFields.videoOptions.video' },\n  { path: 'modifiedFields.description.video' },\n];\nconst TRANSFORM_PATHS_9 = [\n  { path: 'entity.videoOptions.coverImage' },\n  { path: 'entity.description.image' },\n  { path: 'modifiedFields.videoOptions.coverImage' },\n  { path: 'modifiedFields.description.image' },\n];\nexport const __metadata = { PACKAGE_NAME: '@wix/online-programs' };\n\nexport function createStep(httpClient: HttpClient): CreateStepSignature {\n  return (\n    step: NonNullablePaths<Step, `sectionId`, 0>,\n    options?: CreateStepOptions\n  ) =>\n    universalCreateStep(\n      step,\n      options,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface CreateStepSignature {\n  /**\n   * Creates a step.\n   *\n   * Specify the parent section in `step.sectionId`.\n   * The service derives the parent program automatically.\n   * To create a quiz step, create or clone the quiz separately, then specify its ID in `step.quizOptions.id`.\n   *\n   * To create multiple steps in a single API call, call [BulkCreateSteps](https://dev.wix.com/docs/api-reference/business-management/online-programs/steps/bulk-create-steps).\n   * @param - Step to create.\n   * @returns Created step.\n   */\n  (\n    step: NonNullablePaths<Step, `sectionId`, 0>,\n    options?: CreateStepOptions\n  ): Promise<\n    NonNullablePaths<\n      Step,\n      | `videoOptions.wixVideo._id`\n      | `videoOptions.wixVideo.paid`\n      | `videoOptions.requiredCompletionPercentage`\n      | `videoOptions.deleted`\n      | `quizOptions._id`\n      | `quizOptions.totalQuestions`\n      | `sectionId`\n      | `description.title`\n      | `ordering`\n      | `stepType`\n      | `programId`,\n      2\n    >\n  >;\n}\n\nexport function bulkCreateSteps(\n  httpClient: HttpClient\n): BulkCreateStepsSignature {\n  return (\n    steps: NonNullablePaths<Step, `sectionId`, 0>[],\n    options?: BulkCreateStepsOptions\n  ) =>\n    universalBulkCreateSteps(\n      steps,\n      options,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface BulkCreateStepsSignature {\n  /**\n   * Creates up to 100 steps in a single API call.\n   *\n   * Specify the parent section in each step's `sectionId`.\n   * The service derives the parent program automatically.\n   * To create quiz steps, create or clone the quizzes separately, then specify their IDs in each step's `quizOptions.id`.\n   *\n   * This is the preferred bulk-create method.\n   * To create a single step, call [CreateStep](https://dev.wix.com/docs/api-reference/business-management/online-programs/steps/create-step).\n   * @param - Steps to create.\n   */\n  (\n    steps: NonNullablePaths<Step, `sectionId`, 0>[],\n    options?: BulkCreateStepsOptions\n  ): Promise<\n    NonNullablePaths<\n      BulkCreateStepsResponse,\n      | `results`\n      | `results.${number}.itemMetadata.originalIndex`\n      | `results.${number}.itemMetadata.success`\n      | `results.${number}.itemMetadata.error.code`\n      | `results.${number}.itemMetadata.error.description`\n      | `results.${number}.item.videoOptions.requiredCompletionPercentage`\n      | `results.${number}.item.videoOptions.deleted`\n      | `results.${number}.item.quizOptions._id`\n      | `results.${number}.item.quizOptions.totalQuestions`\n      | `results.${number}.item.sectionId`\n      | `results.${number}.item.description.title`\n      | `results.${number}.item.ordering`\n      | `results.${number}.item.stepType`\n      | `results.${number}.item.programId`\n      | `results.${number}.action`\n      | `bulkActionMetadata.totalSuccesses`\n      | `bulkActionMetadata.totalFailures`\n      | `bulkActionMetadata.undetailedFailures`,\n      4\n    >\n  >;\n}\n\nexport function getStep(httpClient: HttpClient): GetStepSignature {\n  return (stepId: string, options?: GetStepOptions) =>\n    universalGetStep(\n      stepId,\n      options,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface GetStepSignature {\n  /**\n   * Retrieves a step.\n   *\n   * Use `descriptionFieldSet` to control how much description content to return.\n   * Some returned fields depend on the caller's permissions.\n   * @param - Step ID.\n   * @returns Retrieved step.\n   */\n  (stepId: string, options?: GetStepOptions): Promise<\n    NonNullablePaths<\n      Step,\n      | `videoOptions.wixVideo._id`\n      | `videoOptions.wixVideo.paid`\n      | `videoOptions.requiredCompletionPercentage`\n      | `videoOptions.deleted`\n      | `quizOptions._id`\n      | `quizOptions.totalQuestions`\n      | `sectionId`\n      | `description.title`\n      | `ordering`\n      | `stepType`\n      | `programId`,\n      2\n    >\n  >;\n}\n\nexport function updateStep(httpClient: HttpClient): UpdateStepSignature {\n  return (\n    _id: string,\n    step: NonNullablePaths<UpdateStep, `revision`, 0>,\n    options?: UpdateStepOptions\n  ) =>\n    universalUpdateStep(\n      _id,\n      step,\n      options,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface UpdateStepSignature {\n  /**\n   * Updates a step.\n   *\n   * Each time the step is updated, `revision` increments by 1. The current `revision` must be passed when updating the step. This ensures you're working with the latest step and prevents unintended overwrites.\n   *\n   * Use this method to update step content and quiz settings.\n   * To move a step within a section or to another section, call [MoveStep](https://dev.wix.com/docs/api-reference/business-management/online-programs/steps/move-step) instead of updating `step.sectionId`.\n   * To attach a quiz to the step, create or clone the quiz separately, then specify its ID in `step.quizOptions.id`.\n   *\n   * To update multiple steps in a single API call, call [BulkUpdateSteps](https://dev.wix.com/docs/api-reference/business-management/online-programs/steps/bulk-update-steps).\n   * @param - Step ID.\n   * @returns Updated step.\n   */\n  (\n    _id: string,\n    step: NonNullablePaths<UpdateStep, `revision`, 0>,\n    options?: UpdateStepOptions\n  ): Promise<\n    NonNullablePaths<\n      Step,\n      | `videoOptions.wixVideo._id`\n      | `videoOptions.wixVideo.paid`\n      | `videoOptions.requiredCompletionPercentage`\n      | `videoOptions.deleted`\n      | `quizOptions._id`\n      | `quizOptions.totalQuestions`\n      | `sectionId`\n      | `description.title`\n      | `ordering`\n      | `stepType`\n      | `programId`,\n      2\n    >\n  >;\n}\n\nexport function bulkUpdateSteps(\n  httpClient: HttpClient\n): BulkUpdateStepsSignature {\n  return (\n    steps: NonNullablePaths<MaskedStep, `step._id` | `step.revision`, 1>[],\n    options?: BulkUpdateStepsOptions\n  ) =>\n    universalBulkUpdateSteps(\n      steps,\n      options,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface BulkUpdateStepsSignature {\n  /**\n   * Updates up to 100 steps in a single API call.\n   *\n   * Each time a step is updated, `revision` increments by 1. The current `revision` must be passed when updating the step. This ensures you're working with the latest step and prevents unintended overwrites.\n   *\n   * Use this method for content updates across multiple steps. Each `steps.step.revision` must be the current revision.\n   * A partial step may omit `sectionId` and `programId`; the service resolves those values from the existing step.\n   * If a requested `steps.step.id` does not identify an existing step, its result is returned as a failed item.\n   * To move a step within a section or to another section, call [MoveStep](https://dev.wix.com/docs/api-reference/business-management/online-programs/steps/move-step).\n   *\n   * To update a single step, call [UpdateStep](https://dev.wix.com/docs/api-reference/business-management/online-programs/steps/update-step).\n   * @param - Steps to update. A missing `step.id` is returned as a failed item result.\n   */\n  (\n    steps: NonNullablePaths<MaskedStep, `step._id` | `step.revision`, 1>[],\n    options?: BulkUpdateStepsOptions\n  ): Promise<\n    NonNullablePaths<\n      BulkUpdateStepsResponse,\n      | `results`\n      | `results.${number}.itemMetadata.originalIndex`\n      | `results.${number}.itemMetadata.success`\n      | `results.${number}.itemMetadata.error.code`\n      | `results.${number}.itemMetadata.error.description`\n      | `results.${number}.item.videoOptions.requiredCompletionPercentage`\n      | `results.${number}.item.videoOptions.deleted`\n      | `results.${number}.item.quizOptions._id`\n      | `results.${number}.item.quizOptions.totalQuestions`\n      | `results.${number}.item.sectionId`\n      | `results.${number}.item.description.title`\n      | `results.${number}.item.ordering`\n      | `results.${number}.item.stepType`\n      | `results.${number}.item.programId`\n      | `bulkActionMetadata.totalSuccesses`\n      | `bulkActionMetadata.totalFailures`\n      | `bulkActionMetadata.undetailedFailures`,\n      4\n    >\n  >;\n}\n\nexport function deleteStep(httpClient: HttpClient): DeleteStepSignature {\n  return (stepId: string) =>\n    universalDeleteStep(\n      stepId,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface DeleteStepSignature {\n  /**\n   * Deletes a step from active program content.\n   *\n   * The public API doesn't provide a restore flow for deleted steps.\n   *\n   * If the deleted step is the last step that references a quiz, the quiz is also deleted.\n   * @param - Step ID.\n   */\n  (stepId: string): Promise<void>;\n}\n\nexport function querySteps(httpClient: HttpClient): QueryStepsSignature {\n  return (options?: QueryStepsOptions) =>\n    universalQuerySteps(\n      options,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface QueryStepsSignature {\n  /**\n   * Retrieves a list of steps, given the provided paging, filtering, and sorting.\n   *\n   * Query Steps runs with these defaults, which you can override:\n   *\n   * - `createdDate` is sorted in `DESC` order.\n   * - `paging.offset` is `0`.\n   *\n   * For predictable response sizes, we recommend setting `paging.limit` up to `100`.\n   *\n   * If your app is already scoped to a specific program, pass `programId` in addition to the query filters. `programId` adds program context to the request and doesn't replace section-based filtering in `query`.\n   * Supported sorting fields are `createdDate`, `id`, `programId`, and `ordering`. When sorting by `ordering`, also filter by `sectionId`.\n   * Use `descriptionFieldSet` to control how much description content to return.\n   * Some returned fields depend on the caller's permissions.\n   *\n   * To learn about working with Query methods, see [API Query Language](https://dev.wix.com/docs/api-reference/articles/work-with-wix-apis/data-retrieval/about-the-wix-api-query-language), [Sorting and Paging](https://dev.wix.com/docs/api-reference/articles/work-with-wix-apis/data-retrieval/about-sorting-and-paging), and [Field Projection](https://dev.wix.com/docs/api-reference/articles/work-with-wix-apis/data-retrieval/about-field-projection).\n   */\n  (options?: QueryStepsOptions): StepsQueryBuilder;\n}\n\nexport function typedQuerySteps(\n  httpClient: HttpClient\n): TypedQueryStepsSignature {\n  return (query: StepQuery, options?: QueryStepsOptions) =>\n    universalTypedQuerySteps(\n      query,\n      options,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface TypedQueryStepsSignature {\n  /** */\n  (query: StepQuery, options?: QueryStepsOptions): Promise<\n    NonNullablePaths<\n      QueryStepsResponse,\n      | `steps`\n      | `steps.${number}.videoOptions.wixVideo._id`\n      | `steps.${number}.videoOptions.wixVideo.paid`\n      | `steps.${number}.videoOptions.requiredCompletionPercentage`\n      | `steps.${number}.videoOptions.deleted`\n      | `steps.${number}.quizOptions._id`\n      | `steps.${number}.quizOptions.totalQuestions`\n      | `steps.${number}.sectionId`\n      | `steps.${number}.description.title`\n      | `steps.${number}.ordering`\n      | `steps.${number}.stepType`\n      | `steps.${number}.programId`,\n      4\n    >\n  >;\n}\n\nexport function moveStep(httpClient: HttpClient): MoveStepSignature {\n  return (stepId: string, sectionId: string, options?: MoveStepOptions) =>\n    universalMoveStep(\n      stepId,\n      sectionId,\n      options,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface MoveStepSignature {\n  /**\n   * Moves a step within a section or to a different section.\n   *\n   * Each time the step is updated, `revision` increments by 1. Pass the current `revision` when possible to protect against conflicting updates.\n   *\n   * If `afterStepId` isn't specified, the step is moved to the beginning of the target section.\n   * The step's ordering is recalculated automatically.\n   * @param - Step ID.\n   * @param - Target section ID.\n   */\n  (stepId: string, sectionId: string, options?: MoveStepOptions): Promise<\n    NonNullablePaths<\n      MoveStepResponse,\n      | `step.videoOptions.wixVideo._id`\n      | `step.videoOptions.wixVideo.paid`\n      | `step.videoOptions.requiredCompletionPercentage`\n      | `step.videoOptions.deleted`\n      | `step.quizOptions._id`\n      | `step.quizOptions.totalQuestions`\n      | `step.sectionId`\n      | `step.description.title`\n      | `step.ordering`\n      | `step.stepType`\n      | `step.programId`,\n      3\n    >\n  >;\n}\n\nexport function cloneStep(httpClient: HttpClient): CloneStepSignature {\n  return (stepId: string, options?: CloneStepOptions) =>\n    universalCloneStep(\n      stepId,\n      options,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface CloneStepSignature {\n  /**\n   * Clones a step.\n   *\n   * The cloned step is added to the same section as the original step.\n   * If the original step is linked to a quiz, the quiz is cloned and the cloned step references the new quiz.\n   * @param - Step ID.\n   */\n  (stepId: string, options?: CloneStepOptions): Promise<\n    NonNullablePaths<\n      CloneStepResponse,\n      | `step.videoOptions.wixVideo._id`\n      | `step.videoOptions.wixVideo.paid`\n      | `step.videoOptions.requiredCompletionPercentage`\n      | `step.videoOptions.deleted`\n      | `step.quizOptions._id`\n      | `step.quizOptions.totalQuestions`\n      | `step.sectionId`\n      | `step.description.title`\n      | `step.ordering`\n      | `step.stepType`\n      | `step.programId`,\n      3\n    >\n  >;\n}\n\nexport const onStepCreated = /*#__PURE__*/ EventDefinition(\n  'wix.online_programs.v3.step_created',\n  true,\n  (event: StepCreatedEnvelope) =>\n    renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(event, [\n        {\n          transformFn: transformRESTTimestampToSDKTimestamp,\n          paths: TRANSFORM_PATHS_0,\n        },\n        {\n          transformFn: transformRESTFloatToSDKFloat,\n          paths: TRANSFORM_PATHS_1,\n        },\n        {\n          transformFn: transformRESTVideoV2ToSDKVideoV2,\n          paths: TRANSFORM_PATHS_2,\n        },\n        {\n          transformFn: transformRESTImageToSDKImage,\n          paths: TRANSFORM_PATHS_3,\n        },\n      ])\n    )\n)<StepCreatedEnvelope>();\nexport const onStepDeleted = /*#__PURE__*/ EventDefinition(\n  'wix.online_programs.v3.step_deleted',\n  true,\n  (event: StepDeletedEnvelope) =>\n    renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(event, [\n        {\n          transformFn: transformRESTTimestampToSDKTimestamp,\n          paths: TRANSFORM_PATHS_0,\n        },\n        {\n          transformFn: transformRESTFloatToSDKFloat,\n          paths: TRANSFORM_PATHS_1,\n        },\n        {\n          transformFn: transformRESTVideoV2ToSDKVideoV2,\n          paths: TRANSFORM_PATHS_2,\n        },\n        {\n          transformFn: transformRESTImageToSDKImage,\n          paths: TRANSFORM_PATHS_3,\n        },\n      ])\n    )\n)<StepDeletedEnvelope>();\nexport const onStepMoved = /*#__PURE__*/ EventDefinition(\n  'wix.online_programs.v3.step_moved',\n  true,\n  (event: StepMovedEnvelope) =>\n    renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(event, [\n        {\n          transformFn: transformRESTFloatToSDKFloat,\n          paths: TRANSFORM_PATHS_4,\n        },\n        {\n          transformFn: transformRESTTimestampToSDKTimestamp,\n          paths: TRANSFORM_PATHS_5,\n        },\n      ])\n    )\n)<StepMovedEnvelope>();\nexport const onStepUpdated = /*#__PURE__*/ EventDefinition(\n  'wix.online_programs.v3.step_updated',\n  true,\n  (event: StepUpdatedEnvelope) =>\n    renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(event, [\n        {\n          transformFn: transformRESTTimestampToSDKTimestamp,\n          paths: TRANSFORM_PATHS_6,\n        },\n        {\n          transformFn: transformRESTFloatToSDKFloat,\n          paths: TRANSFORM_PATHS_7,\n        },\n        {\n          transformFn: transformRESTVideoV2ToSDKVideoV2,\n          paths: TRANSFORM_PATHS_8,\n        },\n        {\n          transformFn: transformRESTImageToSDKImage,\n          paths: TRANSFORM_PATHS_9,\n        },\n      ])\n    )\n)<StepUpdatedEnvelope>();\n\nexport {\n  AccountInfo,\n  AccountInfoMetadata,\n  ActionEvent,\n  AddressLocation,\n  ApplicationError,\n  BaseEventMetadata,\n  BulkActionMetadata,\n  BulkActionType,\n  BulkCloneStepRequest,\n  BulkCloneStepResponse,\n  BulkCreateStepMigrationRequest,\n  BulkCreateStepMigrationResponse,\n  BulkCreateStepRequest,\n  BulkCreateStepResponse,\n  BulkCreateStepsOptions,\n  BulkCreateStepsRequest,\n  BulkCreateStepsResponse,\n  BulkStepResult,\n  BulkUpdateStepResult,\n  BulkUpdateStepsOptions,\n  BulkUpdateStepsRequest,\n  BulkUpdateStepsResponse,\n  CloneStepOptions,\n  CloneStepRequest,\n  CloneStepResponse,\n  CommonBulkActionMetadata,\n  CommonItemMetadata,\n  CreateStepOptions,\n  CreateStepRequest,\n  CreateStepResponse,\n  CursorPaging,\n  CursorPagingMetadata,\n  CursorQuery,\n  CursorQueryPagingMethodOneOf,\n  Cursors,\n  DeleteAllProgramStepsRequest,\n  DeleteAllProgramStepsResponse,\n  DeleteByFilterOperation,\n  DeleteByIdsOperation,\n  DeleteStepRequest,\n  DeleteStepResponse,\n  Description,\n  DescriptionFieldSet,\n  DescriptionMediaOneOf,\n  DocumentImage,\n  DocumentPayload,\n  DocumentUpdateOperation,\n  DomainEvent,\n  DomainEventBodyOneOf,\n  Empty,\n  EntityCreatedEvent,\n  EntityDeletedEvent,\n  EntityUpdatedEvent,\n  Enum,\n  EventMetadata,\n  ExtendedFields,\n  FocalPoint,\n  GetStepOptions,\n  GetStepOrderingNeighborsRequest,\n  GetStepOrderingNeighborsResponse,\n  GetStepRequest,\n  GetStepResponse,\n  IdentificationData,\n  IdentificationDataIdOneOf,\n  IndexDocument,\n  ItemMetadata,\n  ListAllProgramStepsRequest,\n  ListAllProgramStepsResponse,\n  ListStepOrderingMetadataRequest,\n  ListStepOrderingMetadataResponse,\n  MaskedStep,\n  MessageEnvelope,\n  MoveStepOptions,\n  MoveStepRequest,\n  MoveStepResponse,\n  Placement,\n  QueryStepsOptions,\n  QueryStepsRequest,\n  QueryStepsResponse,\n  QueryStepsWithoutPagingRequest,\n  QueryStepsWithoutPagingResponse,\n  QuizOptions,\n  RequestedFields,\n  RestoreInfo,\n  RestoreStepFromTrashRequest,\n  RestoreStepFromTrashResponse,\n  SearchIndexingNotification,\n  SortOrder,\n  Sorting,\n  State,\n  Step,\n  StepCreatedEnvelope,\n  StepDeletedEnvelope,\n  StepMoved,\n  StepMovedEnvelope,\n  StepOrderingMetadata,\n  StepQuerySpec,\n  StepStepTypeOptionsOneOf,\n  StepType,\n  StepUpdatedEnvelope,\n  StepsQueryBuilder,\n  StepsQueryResult,\n  UpdateByFilterOperation,\n  UpdateDocumentsEvent,\n  UpdateDocumentsEventOperationOneOf,\n  UpdateExistingOperation,\n  UpdateStep,\n  UpdateStepOptions,\n  UpdateStepRequest,\n  UpdateStepResponse,\n  VideoOptions,\n  VideoOptionsVideoSourceOneOf,\n  VideoResolution,\n  WebhookIdentityType,\n  WixVideo,\n  utils,\n} from './online-programs-v3-step-steps.universal.js';\n","import { transformError as sdkTransformError } from '@wix/sdk-runtime/transform-error';\nimport { queryBuilder } from '@wix/sdk-runtime/query-builder';\nimport {\n  renameKeysFromSDKRequestToRESTRequest,\n  renameKeysFromRESTResponseToSDKResponse,\n} from '@wix/sdk-runtime/rename-all-nested-keys';\nimport {\n  HttpClient,\n  HttpResponse,\n  NonNullablePaths,\n  QuerySpec,\n  Query as QuerySdkType,\n} from '@wix/sdk-types';\nimport * as ambassadorWixOnlineProgramsV3Step from './online-programs-v3-step-steps.http.js';\n// @ts-ignore\nimport { transformSDKImageToRESTImage } from '@wix/sdk-runtime/transformations/image';\nimport { transformRESTImageToSDKImage } from '@wix/sdk-runtime/transformations/image';\nimport { transformSDKVideoV2ToRESTVideoV2 } from '@wix/sdk-runtime/transformations/video-v2';\nimport { transformRESTVideoV2ToSDKVideoV2 } from '@wix/sdk-runtime/transformations/video-v2';\nimport { transformPaths } from '@wix/sdk-runtime/transformations/transform-paths';\n\nconst TRANSFORM_PATHS_0 = [\n  { path: 'step.videoOptions.video' },\n  { path: 'step.description.video' },\n];\nconst TRANSFORM_PATHS_1 = [\n  { path: 'step.videoOptions.coverImage' },\n  { path: 'step.description.image' },\n];\nconst TRANSFORM_PATHS_2 = [\n  { path: 'steps.videoOptions.video' },\n  { path: 'steps.description.video' },\n];\nconst TRANSFORM_PATHS_3 = [\n  { path: 'steps.videoOptions.coverImage' },\n  { path: 'steps.description.image' },\n];\nconst TRANSFORM_PATHS_4 = [\n  { path: 'results.item.videoOptions.video' },\n  { path: 'results.item.description.video' },\n];\nconst TRANSFORM_PATHS_5 = [\n  { path: 'results.item.videoOptions.coverImage' },\n  { path: 'results.item.description.image' },\n];\nconst TRANSFORM_PATHS_6 = [\n  { path: 'steps.step.videoOptions.video' },\n  { path: 'steps.step.description.video' },\n];\nconst TRANSFORM_PATHS_7 = [\n  { path: 'steps.step.videoOptions.coverImage' },\n  { path: 'steps.step.description.image' },\n];\n\nimport { createQueryUtils } from '@wix/sdk-runtime/query-builder-utils';\n\n/**\n * A step represents a piece of program content within a section.\n * A step can contain article, video, or quiz content.\n */\nexport interface Step extends StepStepTypeOptionsOneOf {\n  /** Video-specific settings. */\n  videoOptions?: VideoOptions;\n  /** Quiz-specific settings. */\n  quizOptions?: QuizOptions;\n  /**\n   * Step ID.\n   * @format GUID\n   * @readonly\n   */\n  _id?: string | null;\n  /**\n   * Revision number, which increments by 1 each time the step is updated. To prevent conflicting changes, the current `revision` must be passed when updating the step.\n   * @readonly\n   */\n  revision?: string | null;\n  /**\n   * Date and time the step was created.\n   * @readonly\n   */\n  _createdDate?: Date | null;\n  /**\n   * Date and time the step was updated.\n   * @readonly\n   */\n  _updatedDate?: Date | null;\n  /**\n   * Parent section ID. To move a step within a section or to another section, call `MoveStep`.\n   * @format GUID\n   * @readonly\n   */\n  sectionId?: string;\n  /** Step title, rich text content, and optional media. */\n  description?: Description;\n  /** Step position within the section. */\n  ordering?: number;\n  /** Type of content in the step. */\n  stepType?: StepTypeWithLiterals;\n  /** Custom field data for the step object. */\n  extendedFields?: ExtendedFields;\n  /**\n   * Program ID.\n   * @format GUID\n   * @readonly\n   */\n  programId?: string;\n  /**\n   * Whether this step is before the enabled program's paywall divider. Returned only\n   * when PREVIEW_AVAILABLE is requested. This classification does not grant content access.\n   * NOT-PRECEDENT: Unlike AIP-7001's event recommendation, this cross-service read-time\n   * classification is omitted from events; it is not persisted Step state.\n   * @internal\n   * @readonly\n   */\n  previewAvailable?: boolean | null;\n}\n\n/** @oneof */\nexport interface StepStepTypeOptionsOneOf {\n  /** Video-specific settings. */\n  videoOptions?: VideoOptions;\n  /** Quiz-specific settings. */\n  quizOptions?: QuizOptions;\n}\n\n/** Video details for videos hosted in Wix Video. */\nexport interface WixVideo {\n  /**\n   * Wix Video ID.\n   * @format GUID\n   */\n  _id?: string;\n  /** Whether the Wix Video is paid content. */\n  paid?: boolean;\n}\n\nexport interface VideoResolution {\n  /** Video URL. */\n  url?: string;\n  /** Video height. */\n  height?: number;\n  /** Video width. */\n  width?: number;\n  /**\n   * Deprecated. Use the `posters` property in the parent entity instead.\n   * @internal\n   * @deprecated\n   */\n  poster?: string;\n  /** Video format for example, mp4, hls. */\n  format?: string;\n  /**\n   * Deprecated. Use the `urlExpirationDate` property in the parent entity instead.\n   * @internal\n   * @deprecated\n   */\n  urlExpirationDate?: Date | null;\n  /**\n   * Deprecated. Use the `sizeInBytes` property in the parent entity instead. Size cannot be provided per resolution.\n   * @internal\n   * @format DECIMAL_VALUE\n   * @deprecated\n   */\n  sizeInBytes?: string | null;\n  /**\n   * Video quality. For example: 480p, 720p.\n   * @internal\n   */\n  quality?: string | null;\n  /**\n   * Video filename.\n   * @internal\n   */\n  filename?: string | null;\n  /**\n   * Video duration in seconds.\n   * @internal\n   * @readonly\n   * @deprecated Video duration in seconds.\n   * @replacedBy duration_in_milliseconds\n   * @targetRemovalDate 2024-08-01\n   */\n  durationInSeconds?: number | null;\n  /**\n   * Video duration in milliseconds.\n   * @internal\n   * @readonly\n   */\n  durationInMilliseconds?: number | null;\n  /**\n   * When true, this is a protected asset, and calling the URL will return a 403 error.\n   * In order to access private assets, make a request to:\n   * `GenerateFileDownloadUrl` with the WixMedia id and specify the asset_key in the request\n   * @internal\n   * @readonly\n   */\n  private?: boolean | null;\n  /**\n   * Key to identify the video resolution's relationship to the original media in WixMedia.\n   * Can be used to request a download for the specific video resolution.\n   * For example: 480p.mp4, 720p.mp4, 1080p.mp4, trailer-720p.mp4, clip-720p.mp4\n   * @internal\n   * @readonly\n   */\n  assetKey?: string | null;\n}\n\nexport interface FocalPoint {\n  /** X-coordinate of the focal point. */\n  x?: number;\n  /** Y-coordinate of the focal point. */\n  y?: number;\n  /** crop by height */\n  height?: number | null;\n  /** crop by width */\n  width?: number | null;\n}\n\nexport interface Description extends DescriptionMediaOneOf {\n  /**\n   * @internal\n   * @deprecated\n   * @replacedBy description.details\n   * @targetRemovalDate 2026-12-01\n   */\n  image?: string;\n  /**\n   * @internal\n   * @deprecated\n   * @replacedBy description.details\n   * @targetRemovalDate 2026-12-01\n   */\n  video?: string;\n  /** @maxLength 250 */\n  title?: string;\n  /** @maxLength 1000000 */\n  details?: string | null;\n}\n\n/** @oneof */\nexport interface DescriptionMediaOneOf {\n  /**\n   * @internal\n   * @deprecated\n   * @replacedBy description.details\n   * @targetRemovalDate 2026-12-01\n   */\n  image?: string;\n  /**\n   * @internal\n   * @deprecated\n   * @replacedBy description.details\n   * @targetRemovalDate 2026-12-01\n   */\n  video?: string;\n}\n\nexport enum StepType {\n  /** Text-based step. */\n  ARTICLE = 'ARTICLE',\n  /** Step with video content. */\n  VIDEO = 'VIDEO',\n  /** Step linked to a quiz. */\n  QUIZ = 'QUIZ',\n}\n\n/** @enumType */\nexport type StepTypeWithLiterals = StepType | 'ARTICLE' | 'VIDEO' | 'QUIZ';\n\n/** Additional settings for video steps. */\nexport interface VideoOptions extends VideoOptionsVideoSourceOneOf {\n  /** Video from Wix Video. */\n  wixVideo?: WixVideo;\n  /** Video uploaded with Media Manager. */\n  video?: string;\n  /** Percentage of the video that must be watched to complete the step. */\n  requiredCompletionPercentage?: number;\n  /** Cover image for the video. */\n  coverImage?: string;\n  /** Video duration in milliseconds. */\n  durationInMilliseconds?: number | null;\n  /** Whether the uploaded video was deleted from Media Manager. */\n  deleted?: boolean;\n}\n\n/** @oneof */\nexport interface VideoOptionsVideoSourceOneOf {\n  /** Video from Wix Video. */\n  wixVideo?: WixVideo;\n  /** Video uploaded with Media Manager. */\n  video?: string;\n}\n\n/** Additional settings for quiz steps. */\nexport interface QuizOptions {\n  /**\n   * Quiz ID. Provide it when creating a quiz step. After creation, the quiz reference can't be changed.\n   * @format GUID\n   * @readonly\n   * @immutable\n   */\n  _id?: string;\n  /**\n   * Total number of questions in the quiz.\n   * @readonly\n   */\n  totalQuestions?: number;\n  /** Minimum percentage required to pass the quiz. */\n  passingGrade?: number | null;\n}\n\nexport interface ExtendedFields {\n  /**\n   * Extended field data. Each key corresponds to the namespace of the app that created the extended fields.\n   * The value of each key is structured according to the schema defined when the extended fields were configured.\n   *\n   * You can only access fields for which you have the appropriate permissions.\n   *\n   * Learn more about [extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields).\n   */\n  namespaces?: Record<string, Record<string, any>>;\n}\n\nexport interface UpdateDocumentsEvent\n  extends UpdateDocumentsEventOperationOneOf {\n  /** insert/update documents */\n  update?: DocumentUpdateOperation;\n  /** delete by document ids */\n  deleteByIds?: DeleteByIdsOperation;\n  /** delete documents matching filter */\n  deleteByFilter?: DeleteByFilterOperation;\n  /** update documents matching filter */\n  updateByFilter?: UpdateByFilterOperation;\n  /** update only existing documents */\n  updateExisting?: UpdateExistingOperation;\n  /**\n   * application which owns documents\n   * @minLength 2\n   */\n  appDefId?: string | null;\n  /**\n   * type of the documents\n   * @minLength 2\n   */\n  documentType?: string | null;\n  /**\n   * language of the documents\n   * @minLength 2\n   */\n  language?: string | null;\n  /**\n   * site documents belong to\n   * @minLength 2\n   */\n  msId?: string | null;\n}\n\n/** @oneof */\nexport interface UpdateDocumentsEventOperationOneOf {\n  /** insert/update documents */\n  update?: DocumentUpdateOperation;\n  /** delete by document ids */\n  deleteByIds?: DeleteByIdsOperation;\n  /** delete documents matching filter */\n  deleteByFilter?: DeleteByFilterOperation;\n  /** update documents matching filter */\n  updateByFilter?: UpdateByFilterOperation;\n  /** update only existing documents */\n  updateExisting?: UpdateExistingOperation;\n}\n\nexport interface DocumentUpdateOperation {\n  /** documents to index or update */\n  documents?: IndexDocument[];\n}\n\nexport interface IndexDocument {\n  /** data bag with non-searchable fields (url, image) */\n  payload?: DocumentPayload;\n  /** what type of users should documents be visible to */\n  exposure?: EnumWithLiterals;\n  /** document with mandatory fields (id, title, description) and with fields specific to the type of the document */\n  document?: Record<string, any> | null;\n  /** what member groups is the document exposed to. Used only with GROUP_PROTECTED exposure */\n  permittedMemberGroups?: string[];\n  /** if true SEO is disabled for this document */\n  seoHidden?: boolean | null;\n  /** if true the page is a lightbox popup */\n  isPopup?: boolean | null;\n}\n\nexport interface DocumentPayload {\n  /** url of the page representing the document */\n  url?: string | null;\n  /** image which represents the document */\n  documentImage?: DocumentImage;\n}\n\nexport interface DocumentImage {\n  /** the name of the image */\n  name?: string;\n  /** the width of the image */\n  width?: number;\n  /** the height of the image */\n  height?: number;\n}\n\nexport enum Enum {\n  /** Default value. Means that permission not set */\n  UNKNOWN = 'UNKNOWN',\n  /** Protected exposure. Exposed to members and owners */\n  PROTECTED = 'PROTECTED',\n  /** Private exposure. Exposed to owners */\n  PRIVATE = 'PRIVATE',\n  /** Public exposure. Visible to everyone */\n  PUBLIC = 'PUBLIC',\n  /** Used for partial updates, to state that exposure is not changing */\n  UNCHANGED = 'UNCHANGED',\n  /** Protected to members of permitted groups and owners */\n  GROUP_PROTECTED = 'GROUP_PROTECTED',\n}\n\n/** @enumType */\nexport type EnumWithLiterals =\n  | Enum\n  | 'UNKNOWN'\n  | 'PROTECTED'\n  | 'PRIVATE'\n  | 'PUBLIC'\n  | 'UNCHANGED'\n  | 'GROUP_PROTECTED';\n\nexport interface DeleteByIdsOperation {\n  /** ids of the documents to delete */\n  documentIds?: string[];\n}\n\nexport interface DeleteByFilterOperation {\n  /** documents matching this filter wil be deleted. only filterable documents defined in document_type can be used for filtering */\n  filter?: Record<string, any> | null;\n}\n\nexport interface UpdateByFilterOperation {\n  /** documents matching this filter will be updated */\n  filter?: Record<string, any> | null;\n  /** partial document to apply */\n  document?: IndexDocument;\n}\n\nexport interface UpdateExistingOperation {\n  /** documents to update */\n  documents?: IndexDocument[];\n}\n\n/** Payload for the step moved webhook. */\nexport interface StepMoved {\n  /**\n   * Target section ID.\n   * @format GUID\n   */\n  sectionId?: string;\n  /**\n   * Moved step ID.\n   * @format GUID\n   */\n  stepId?: string;\n  /** New step position. */\n  newPosition?: number;\n  /**\n   * Program ID.\n   * @format GUID\n   */\n  programId?: string;\n  /**\n   * Previous section ID.\n   * @format GUID\n   */\n  prevSectionId?: string;\n}\n\nexport interface CreateStepRequest {\n  /** Step to create. */\n  step: Step;\n  /**\n   * @internal\n   * @format GUID\n   * @readonly\n   */\n  programId?: string;\n  /**\n   * Additional fields to return. Omit to preserve the standard response.\n   * @internal\n   * @maxSize 100\n   */\n  fields?: RequestedFieldsWithLiterals[];\n}\n\n/** Optional read-time fields. Unknown-only selections perform no classification. */\nexport enum RequestedFields {\n  /**\n   * Classify the step relative to its program's current paywall divider.\n   * @documentationMaturity preview\n   * @internal\n   */\n  PREVIEW_AVAILABLE = 'PREVIEW_AVAILABLE',\n}\n\n/** @enumType */\nexport type RequestedFieldsWithLiterals = RequestedFields;\n\nexport interface CreateStepResponse {\n  /** Created step. */\n  step?: Step;\n}\n\nexport interface BulkCreateStepsRequest {\n  /**\n   * Steps to create.\n   * @minSize 1\n   * @maxSize 100\n   */\n  steps: Step[];\n  /** Whether to return created steps in the response. */\n  returnEntity?: boolean;\n  /**\n   * @internal\n   * @format GUID\n   * @readonly\n   */\n  programId?: string;\n  /**\n   * Additional fields to return. Omit to preserve the standard response.\n   * @internal\n   * @maxSize 100\n   */\n  fields?: RequestedFieldsWithLiterals[];\n}\n\nexport interface BulkCreateStepsResponse {\n  /** Results for each processed step. */\n  results?: BulkStepResult[];\n  /** Metadata about the bulk action. */\n  bulkActionMetadata?: BulkActionMetadata;\n}\n\nexport interface BulkStepResult {\n  /** Metadata for the processed step. */\n  itemMetadata?: ItemMetadata;\n  /** Processed step. Empty when `returnEntity` is `false`. */\n  item?: Step;\n  /** Bulk action performed for the step. */\n  action?: BulkActionTypeWithLiterals;\n}\n\nexport interface ItemMetadata {\n  /** Item ID. Should always be available, unless it's impossible (for example, when failing to create an item). */\n  _id?: string | null;\n  /** Index of the item within the request array. Allows for correlation between request and response items. */\n  originalIndex?: number;\n  /** Whether the requested action was successful for this item. When `false`, the `error` field is populated. */\n  success?: boolean;\n  /** Details about the error in case of failure. */\n  error?: ApplicationError;\n}\n\nexport interface ApplicationError {\n  /** Error code. */\n  code?: string;\n  /** Description of the error. */\n  description?: string;\n  /** Data related to the error. */\n  data?: Record<string, any> | null;\n}\n\nexport enum BulkActionType {\n  UNKNOWN_ACTION_TYPE = 'UNKNOWN_ACTION_TYPE',\n  INSERT = 'INSERT',\n  UPDATE = 'UPDATE',\n  DELETE = 'DELETE',\n}\n\n/** @enumType */\nexport type BulkActionTypeWithLiterals =\n  | BulkActionType\n  | 'UNKNOWN_ACTION_TYPE'\n  | 'INSERT'\n  | 'UPDATE'\n  | 'DELETE';\n\nexport interface BulkActionMetadata {\n  /** Number of items that were successfully processed. */\n  totalSuccesses?: number;\n  /** Number of items that couldn't be processed. */\n  totalFailures?: number;\n  /** Number of failures without details because detailed failure threshold was exceeded. */\n  undetailedFailures?: number;\n}\n\n/**\n * NOT-PRECEDENT: AIP-7001 requests fields on all entity-returning methods.\n * This private/deprecated method intentionally does not offer preview classification.\n */\nexport interface BulkCreateStepRequest {\n  /**\n   * Steps to create.\n   * @minSize 1\n   * @maxSize 100\n   */\n  steps?: Step[];\n  /** Whether to return created steps in the response. */\n  returnEntity?: boolean;\n  /**\n   * @internal\n   * @format GUID\n   * @readonly\n   */\n  programId?: string;\n}\n\nexport interface BulkCreateStepResponse {\n  /** Results for each processed step. */\n  results?: BulkStepResult[];\n  /** Metadata about the bulk action. */\n  bulkActionMetadata?: BulkActionMetadata;\n}\n\n/**\n * NOT-PRECEDENT: AIP-7001 requests fields on all entity-returning methods.\n * This private/deprecated method intentionally does not offer preview classification.\n */\nexport interface BulkCreateStepMigrationRequest {\n  /**\n   * List of steps you want to create\n   * @minSize 1\n   * @maxSize 100\n   */\n  steps?: Step[];\n  /**\n   * Program in which steps are to be created.\n   * @format GUID\n   */\n  programId?: string;\n}\n\nexport interface BulkCreateStepMigrationResponse {\n  /** Results of bulk action. */\n  results?: BulkStepResult[];\n  /** Metadata about whole bulk action. */\n  bulkActionMetadata?: BulkActionMetadata;\n}\n\nexport interface GetStepRequest {\n  /**\n   * Step ID.\n   * @format GUID\n   */\n  stepId: string;\n  /** Predefined set of description fields to return. */\n  descriptionFieldSet?: DescriptionFieldSetWithLiterals;\n  /**\n   * Additional fields to return. Omit to preserve the standard response.\n   * @internal\n   * @maxSize 100\n   */\n  fields?: RequestedFieldsWithLiterals[];\n}\n\nexport enum DescriptionFieldSet {\n  /** Returns the standard step description fields. */\n  STANDARD = 'STANDARD',\n  /** Returns additional step description fields when they're available to the caller. */\n  EXTENDED = 'EXTENDED',\n}\n\n/** @enumType */\nexport type DescriptionFieldSetWithLiterals =\n  | DescriptionFieldSet\n  | 'STANDARD'\n  | 'EXTENDED';\n\nexport interface GetStepResponse {\n  /** Retrieved step. */\n  step?: Step;\n}\n\nexport interface UpdateStepRequest {\n  /** Step to update. May be partial. */\n  step: Step;\n  /**\n   * Set of fields to update. Fields that aren't included in `fieldMask.paths` are ignored.\n   * @internal\n   */\n  fieldMask?: string[];\n  /**\n   * Additional fields to return. Omit to preserve the standard response.\n   * @internal\n   * @maxSize 100\n   */\n  fields?: RequestedFieldsWithLiterals[];\n}\n\nexport interface UpdateStepResponse {\n  /** Updated step. */\n  step?: Step;\n}\n\nexport interface BulkUpdateStepsRequest {\n  /**\n   * Steps to update. A missing `step.id` is returned as a failed item result.\n   * @minSize 1\n   * @maxSize 100\n   */\n  steps: MaskedStep[];\n  /** Whether to return updated steps in the response. */\n  returnEntity?: boolean;\n  /**\n   * Additional fields to return. Omit to preserve the standard response.\n   * @internal\n   * @maxSize 100\n   */\n  fields?: RequestedFieldsWithLiterals[];\n}\n\nexport interface MaskedStep {\n  /** Step to update. May be partial. */\n  step?: Step;\n  /** Explicit list of fields to update. */\n  fieldMask?: string[];\n}\n\nexport interface BulkUpdateStepsResponse {\n  /**\n   * @minSize 1\n   * @maxSize 100\n   */\n  results?: BulkUpdateStepResult[];\n  /** Metadata about the bulk action. */\n  bulkActionMetadata?: CommonBulkActionMetadata;\n}\n\nexport interface CommonItemMetadata {\n  /**\n   * Item ID. Should always be available, unless it's impossible (for example, when failing to create an item).\n   * @format GUID\n   */\n  _id?: string | null;\n  /** Index of the item within the request array. Allows for correlation between request and response items. */\n  originalIndex?: number;\n  /** Whether the requested action was successful for this item. When `false`, the `error` field is populated. */\n  success?: boolean;\n  /** Details about the error in case of failure. */\n  error?: ApplicationError;\n}\n\nexport interface BulkUpdateStepResult {\n  /** Metadata for the processed step. */\n  itemMetadata?: CommonItemMetadata;\n  /** Updated step. Returned only when `returnEntity` is `true`. */\n  item?: Step;\n}\n\nexport interface CommonBulkActionMetadata {\n  /** Number of items that were successfully processed. */\n  totalSuccesses?: number;\n  /** Number of items that couldn't be processed. */\n  totalFailures?: number;\n  /** Number of failures without details because detailed failure threshold was exceeded. */\n  undetailedFailures?: number;\n}\n\nexport interface DeleteStepRequest {\n  /**\n   * Step ID.\n   * @format GUID\n   */\n  stepId: string;\n}\n\nexport interface DeleteStepResponse {}\n\nexport interface QueryStepsRequest {\n  /** Query object. */\n  query?: CursorQuery;\n  /** Predefined set of description fields to return. */\n  descriptionFieldSet?: DescriptionFieldSetWithLiterals;\n  /**\n   * Program ID.\n   * @maxLength 36\n   */\n  programId?: string;\n  /**\n   * Additional fields to return. Omit to preserve the standard response.\n   * @internal\n   * @maxSize 100\n   */\n  fields?: RequestedFieldsWithLiterals[];\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 in the following format:\n   * `\"filter\" : {\n   * \"fieldName1\": \"value1\",\n   * \"fieldName2\":{\"$operator\":\"value2\"}\n   * }`\n   * Example of operators: `$eq`, `$ne`, `$lt`, `$lte`, `$gt`, `$gte`, `$in`, `$hasSome`, `$hasAll`, `$startsWith`, `$contains`\n   */\n  filter?: Record<string, any> | null;\n  /**\n   * Sort object in the following format:\n   * `[{\"fieldName\":\"sortField1\",\"order\":\"ASC\"},{\"fieldName\":\"sortField2\",\"order\":\"DESC\"}]`\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   * Name of the field to sort by.\n   * @maxLength 512\n   */\n  fieldName?: string;\n  /** Sort order. */\n  order?: SortOrderWithLiterals;\n  /**\n   * When `field_name` is a property of repeated field that is marked as `MATCH_ITEMS` and sort should be done by\n   * a specific element from a collection, filter can/should be provided to ensure correct sort value is picked.\n   *\n   * If multiple filters are provided, they are combined with AND operator.\n   *\n   * Example:\n   * Given we have document like {\"id\": \"1\", \"nestedField\": [{\"price\": 10, \"region\": \"EU\"}, {\"price\": 20, \"region\": \"US\"}]}\n   * and `nestedField` is marked as `MATCH_ITEMS`, to ensure that sorting is done by correct region, filter should be\n   * { fieldName: \"nestedField.price\", \"select_items_by\": [{\"nestedField.region\": \"US\"}] }\n   * @internal\n   * @maxSize 10\n   */\n  selectItemsBy?: Record<string, any>[] | null;\n  /**\n   * Origin point for geo-distance sorting on a GEO field\n   * results are ordered by distance from this point (ASC = nearest first, DESC = farthest first).\n   */\n  origin?: AddressLocation;\n}\n\nexport enum SortOrder {\n  ASC = 'ASC',\n  DESC = 'DESC',\n}\n\n/** @enumType */\nexport type SortOrderWithLiterals = SortOrder | 'ASC' | 'DESC';\n\nexport interface AddressLocation {\n  /** Address latitude. */\n  latitude?: number | null;\n  /** Address longitude. */\n  longitude?: number | null;\n}\n\nexport interface CursorPaging {\n  /**\n   * Maximum number of items to return in the results.\n   * @max 500\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 QueryStepsResponse {\n  /** Retrieved steps. */\n  steps?: Step[];\n  /** Paging metadata. */\n  pagingMetadata?: CursorPagingMetadata;\n}\n\nexport interface CursorPagingMetadata {\n  /** Number of items returned in current page. */\n  count?: number | null;\n  /** Cursor strings that point to the next page, previous page, or both. */\n  cursors?: Cursors;\n  /**\n   * Whether there are more pages to retrieve following the current page.\n   *\n   * + `true`: Another page of results can be retrieved.\n   * + `false`: This is the last page.\n   */\n  hasNext?: boolean | null;\n  /**\n   * Total number of items matching the filter.\n   * Available only on the first page of *Search* results, not included in *Query* or *List* results.\n   * If the Search results span multiple pages, the value of `total` will exceed the number of items returned on the first page.\n   * @internal\n   */\n  total?: number | 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\n/**\n * NOT-PRECEDENT: AIP-7001 requests fields on all entity-returning methods.\n * This private/deprecated method intentionally does not offer preview classification.\n */\nexport interface QueryStepsWithoutPagingRequest {\n  /** WQL expression. Cursor paging is not supported in this endpoint. */\n  query?: CursorQuery;\n  /** Whenever to return description only with title or with details as well */\n  descriptionFieldSet?: DescriptionFieldSetWithLiterals;\n  /**\n   * Program id to query steps\n   * @maxLength 36\n   */\n  programId?: string;\n}\n\nexport interface QueryStepsWithoutPagingResponse {\n  /** List of Steps. */\n  steps?: Step[];\n}\n\nexport interface ListStepOrderingMetadataRequest {\n  /**\n   * Program whose Steps are listed. Authorization is checked on every page.\n   * @format GUID\n   */\n  programId?: string;\n  /**\n   * Optional Section filter. No matches returns an empty page, including for a foreign Section.\n   * @format GUID\n   */\n  sectionId?: string | null;\n  /**\n   * Cursor paging. The default limit is 100; the maximum is 500.\n   * Keep the Program and Section filters unchanged when following a cursor.\n   */\n  paging?: CursorPaging;\n}\n\nexport interface ListStepOrderingMetadataResponse {\n  /**\n   * Raw Step positions, without content or enrichment.\n   * @maxSize 500\n   */\n  steps?: StepOrderingMetadata[];\n  /** Cursors for traversing all matching Steps. */\n  pagingMetadata?: CursorPagingMetadata;\n}\n\nexport interface StepOrderingMetadata {\n  /**\n   * Step ID.\n   * @format GUID\n   */\n  stepId?: string;\n  /**\n   * Owning Program ID.\n   * @format GUID\n   */\n  programId?: string;\n  /**\n   * Containing Section ID.\n   * @format GUID\n   */\n  sectionId?: string;\n  /** Raw ordering value within the Section. Equal values are ordered by Step ID. */\n  ordering?: number;\n  /** Observed revision. It does not lock the Step or reserve the gap. */\n  revision?: string | null;\n}\n\nexport interface GetStepOrderingNeighborsRequest {\n  /**\n   * Program containing the requested gap.\n   * @format GUID\n   */\n  programId?: string;\n  /**\n   * Section containing the requested gap. Existence must be checked through Sections separately.\n   * @format GUID\n   */\n  sectionId?: string;\n  /** Requested insertion gap. */\n  placement?: PlacementWithLiterals;\n  /**\n   * Required for AFTER_STEP and forbidden for FIRST/LAST.\n   * @format GUID\n   */\n  afterStepId?: string | null;\n}\n\nexport enum Placement {\n  /** Before the first Step. */\n  FIRST = 'FIRST',\n  /** After the last Step. */\n  LAST = 'LAST',\n  /** After the anchor, including an equal-ranked successor when present. */\n  AFTER_STEP = 'AFTER_STEP',\n}\n\n/** @enumType */\nexport type PlacementWithLiterals = Placement | 'FIRST' | 'LAST' | 'AFTER_STEP';\n\nexport interface GetStepOrderingNeighborsResponse {\n  /** Anchor for AFTER_STEP, last Step for LAST, absent for FIRST or an empty container. */\n  leftNeighbor?: StepOrderingMetadata;\n  /**\n   * First Step for FIRST, immediate successor for AFTER_STEP, absent for LAST or at the end.\n   * Both neighbors are absent for an empty container; this does not prove that the Section exists.\n   */\n  rightNeighbor?: StepOrderingMetadata;\n}\n\n/**\n * NOT-PRECEDENT: AIP-7001 requests fields on all entity-returning methods.\n * This private/deprecated method intentionally does not offer preview classification.\n */\nexport interface ListAllProgramStepsRequest {\n  /**\n   * program id of requested steps\n   * @format GUID\n   */\n  programId?: string;\n  /** Whenever to return description only with title or with details as well */\n  descriptionFieldSet?: DescriptionFieldSetWithLiterals;\n}\n\nexport interface ListAllProgramStepsResponse {\n  /** List of Steps. */\n  steps?: Step[];\n}\n\nexport interface DeleteAllProgramStepsRequest {\n  /**\n   * Program id to delete steps from\n   * @format GUID\n   */\n  programId?: string;\n}\n\nexport interface DeleteAllProgramStepsResponse {\n  /** Total count of steps in the program */\n  stepsTotal?: number;\n  /** Count of successfully deleted steps */\n  successfulCount?: number;\n  /** Count of steps that failed to be deleted */\n  failedCount?: number;\n}\n\nexport interface BulkCloneStepRequest {\n  /**\n   * id of program which was cloned\n   * @format GUID\n   */\n  prototypeProgramId?: string;\n  /**\n   * id of program which was cloned\n   * @format GUID\n   */\n  clonedProgramId?: string;\n  /** mapping of original to cloned section ids */\n  prototypeIdToClonedId?: Record<string, string>;\n}\n\nexport interface BulkCloneStepResponse {\n  /**\n   * ids of newly created steps\n   * @format GUID\n   * @maxSize 100\n   */\n  createdStepIds?: string[];\n}\n\nexport interface MoveStepRequest {\n  /**\n   * Step ID.\n   * @format GUID\n   */\n  stepId: string;\n  /**\n   * Target section ID.\n   * @format GUID\n   */\n  sectionId: string;\n  /**\n   * Step ID after which to place the moved step. Leave empty to move the step to the beginning of the target section.\n   * @format GUID\n   */\n  afterStepId?: string | null;\n  /** Current revision of the step. Pass it when available to protect against conflicting updates. */\n  revision?: string;\n  /**\n   * Selects the side only when a paywall divider splits the gap after after_step_id,\n   * or the beginning gap when that anchor is omitted. True inserts after the divider;\n   * false inserts before it. Otherwise either value uses the same content gap.\n   * Omit to retain existing placement behavior. Explicit use requires enabled Freemium\n   * and a current divider. Does not assert the resulting global free/paid side.\n   * @internal\n   */\n  afterPaywallDivider?: boolean | null;\n  /**\n   * Additional fields to return. Omit to preserve the standard response.\n   * @internal\n   * @maxSize 100\n   */\n  fields?: RequestedFieldsWithLiterals[];\n}\n\nexport interface MoveStepResponse {\n  /** Moved step. */\n  step?: Step;\n}\n\nexport interface CloneStepRequest {\n  /**\n   * Step ID.\n   * @format GUID\n   */\n  stepId: string;\n  /**\n   * Additional fields to return. Omit to preserve the standard response.\n   * @internal\n   * @maxSize 100\n   */\n  fields?: RequestedFieldsWithLiterals[];\n}\n\nexport interface CloneStepResponse {\n  /** Created step. */\n  step?: Step;\n}\n\n/**\n * NOT-PRECEDENT: AIP-7001 requests fields on all entity-returning methods.\n * This private/deprecated method intentionally does not offer preview classification.\n */\nexport interface RestoreStepFromTrashRequest {\n  /**\n   * step id to restore\n   * @format GUID\n   */\n  stepId?: string;\n}\n\nexport interface RestoreStepFromTrashResponse {\n  /** restored step */\n  step?: Step;\n}\n\nexport interface DomainEvent extends DomainEventBodyOneOf {\n  createdEvent?: EntityCreatedEvent;\n  updatedEvent?: EntityUpdatedEvent;\n  deletedEvent?: EntityDeletedEvent;\n  actionEvent?: ActionEvent;\n  /** Event ID. With this ID you can easily spot duplicated events and ignore them. */\n  _id?: string;\n  /**\n   * Fully Qualified Domain Name of an entity. This is a unique identifier assigned to the API main business entities.\n   * For example, `wix.stores.catalog.product`, `wix.bookings.session`, `wix.payments.transaction`.\n   */\n  entityFqdn?: string;\n  /**\n   * Event action name, placed at the top level to make it easier for users to dispatch messages.\n   * For example: `created`/`updated`/`deleted`/`started`/`completed`/`email_opened`.\n   */\n  slug?: string;\n  /** ID of the entity associated with the event. */\n  entityId?: string;\n  /** Event timestamp in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format and UTC time. For example, `2020-04-26T13:57:50.699Z`. */\n  eventTime?: Date | null;\n  /**\n   * Whether the event was triggered as a result of a privacy regulation application\n   * (for example, GDPR).\n   */\n  triggeredByAnonymizeRequest?: boolean | null;\n  /** If present, indicates the action that triggered the event. */\n  originatedFrom?: string | null;\n  /**\n   * A sequence number that indicates the order of updates to an entity. For example, if an entity was updated at `16:00` and then again at `16:01`, the second update will always have a higher sequence number.\n   * You can use this number to make sure you're handling updates in the right order. Just save the latest sequence number on your end and compare it to the one in each new message. If the new message has an older (lower) number, you can safely ignore it.\n   */\n  entityEventSequence?: string | null;\n}\n\n/** @oneof */\nexport interface DomainEventBodyOneOf {\n  createdEvent?: EntityCreatedEvent;\n  updatedEvent?: EntityUpdatedEvent;\n  deletedEvent?: EntityDeletedEvent;\n  actionEvent?: ActionEvent;\n}\n\nexport interface EntityCreatedEvent {\n  entity?: string;\n}\n\nexport interface RestoreInfo {\n  deletedDate?: Date | null;\n}\n\nexport interface EntityUpdatedEvent {\n  /**\n   * Since platformized APIs only expose PATCH and not PUT we can't assume that the fields sent from the client are the actual diff.\n   * This means that to generate a list of changed fields (as opposed to sent fields) one needs to traverse both objects.\n   * We don't want to impose this on all developers and so we leave this traversal to the notification recipients which need it.\n   */\n  currentEntity?: string;\n}\n\nexport interface EntityDeletedEvent {\n  /** Entity that was deleted. */\n  deletedEntity?: string | null;\n}\n\nexport interface ActionEvent {\n  body?: string;\n}\n\nexport interface Empty {}\n\nexport interface SearchIndexingNotification {\n  /** new state of indexing for the site specified in ms_id */\n  indexState?: StateWithLiterals;\n  /** type of the document the notification is targeted for. Applies to all types if not provided */\n  documentType?: string | null;\n  /** languaInternalDocumentUpdateByFilterOperationge the notification is targeted for. Applies to all languages if not provided */\n  language?: string | null;\n  /**\n   * site for which notification is targeted\n   * @minLength 2\n   */\n  msId?: string | null;\n}\n\nexport enum State {\n  /** default state */\n  Unknown = 'Unknown',\n  /** metasite does not require site search indexing */\n  Off = 'Off',\n  /** metasite requires site search indexing */\n  On = 'On',\n}\n\n/** @enumType */\nexport type StateWithLiterals = State | 'Unknown' | 'Off' | 'On';\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  /** Details related to the account */\n  accountInfo?: AccountInfo;\n}\n\nexport interface IdentificationData extends IdentificationDataIdOneOf {\n  /**\n   * ID of a site visitor that has not logged in to the site.\n   * @format GUID\n   */\n  anonymousVisitorId?: string;\n  /**\n   * ID of a site visitor that has logged in to the site.\n   * @format GUID\n   */\n  memberId?: string;\n  /**\n   * ID of a Wix user (site owner, contributor, etc.).\n   * @format GUID\n   */\n  wixUserId?: string;\n  /**\n   * ID of an app.\n   * @format GUID\n   */\n  appId?: string;\n  /** @readonly */\n  identityType?: WebhookIdentityTypeWithLiterals;\n}\n\n/** @oneof */\nexport interface IdentificationDataIdOneOf {\n  /**\n   * ID of a site visitor that has not logged in to the site.\n   * @format GUID\n   */\n  anonymousVisitorId?: string;\n  /**\n   * ID of a site visitor that has logged in to the site.\n   * @format GUID\n   */\n  memberId?: string;\n  /**\n   * ID of a Wix user (site owner, contributor, etc.).\n   * @format GUID\n   */\n  wixUserId?: string;\n  /**\n   * ID of an app.\n   * @format GUID\n   */\n  appId?: string;\n}\n\nexport enum WebhookIdentityType {\n  UNKNOWN = 'UNKNOWN',\n  ANONYMOUS_VISITOR = 'ANONYMOUS_VISITOR',\n  MEMBER = 'MEMBER',\n  WIX_USER = 'WIX_USER',\n  APP = 'APP',\n}\n\n/** @enumType */\nexport type WebhookIdentityTypeWithLiterals =\n  | WebhookIdentityType\n  | 'UNKNOWN'\n  | 'ANONYMOUS_VISITOR'\n  | 'MEMBER'\n  | 'WIX_USER'\n  | 'APP';\n\nexport interface AccountInfo {\n  /**\n   * ID of the Wix account associated with the event.\n   * @format GUID\n   */\n  accountId?: string | null;\n  /**\n   * ID of the parent Wix account. Only included when accountId belongs to a child account.\n   * @format GUID\n   */\n  parentAccountId?: string | null;\n  /**\n   * ID of the Wix site associated with the event. Only included when the event is tied to a specific site.\n   * @format GUID\n   */\n  siteId?: string | null;\n}\n\nexport interface BaseEventMetadata {\n  /**\n   * App instance ID.\n   * @format GUID\n   */\n  instanceId?: string | null;\n  /**\n   * Event type.\n   * @maxLength 150\n   */\n  eventType?: string;\n  /** The identification type and identity data. */\n  identity?: IdentificationData;\n  /** Details related to the account */\n  accountInfo?: AccountInfo;\n}\n\nexport interface EventMetadata extends BaseEventMetadata {\n  /** Event ID. With this ID you can easily spot duplicated events and ignore them. */\n  _id?: string;\n  /**\n   * Fully Qualified Domain Name of an entity. This is a unique identifier assigned to the API main business entities.\n   * For example, `wix.stores.catalog.product`, `wix.bookings.session`, `wix.payments.transaction`.\n   */\n  entityFqdn?: string;\n  /**\n   * Event action name, placed at the top level to make it easier for users to dispatch messages.\n   * For example: `created`/`updated`/`deleted`/`started`/`completed`/`email_opened`.\n   */\n  slug?: string;\n  /** ID of the entity associated with the event. */\n  entityId?: string;\n  /** Event timestamp in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format and UTC time. For example, `2020-04-26T13:57:50.699Z`. */\n  eventTime?: Date | null;\n  /**\n   * Whether the event was triggered as a result of a privacy regulation application\n   * (for example, GDPR).\n   */\n  triggeredByAnonymizeRequest?: boolean | null;\n  /** If present, indicates the action that triggered the event. */\n  originatedFrom?: string | null;\n  /**\n   * A sequence number that indicates the order of updates to an entity. For example, if an entity was updated at `16:00` and then again at `16:01`, the second update will always have a higher sequence number.\n   * You can use this number to make sure you're handling updates in the right order. Just save the latest sequence number on your end and compare it to the one in each new message. If the new message has an older (lower) number, you can safely ignore it.\n   */\n  entityEventSequence?: string | null;\n  accountInfo?: AccountInfoMetadata;\n}\n\nexport interface AccountInfoMetadata {\n  /** ID of the Wix account associated with the event */\n  accountId: string;\n  /** ID of the Wix site associated with the event. Only included when the event is tied to a specific site. */\n  siteId?: string;\n  /** ID of the parent Wix account. Only included when 'accountId' belongs to a child account. */\n  parentAccountId?: string;\n}\n\nexport interface StepCreatedEnvelope {\n  entity: Step;\n  metadata: EventMetadata;\n}\n\n/**\n * Triggered when a step is created.\n * @permissionScope Manage Online Programs\n * @permissionScopeId SCOPE.CHALLENGES.MANAGE\n * @permissionId ONLINE_PROGRAMS.STEP_READ\n * @webhook\n * @eventType wix.online_programs.v3.step_created\n * @slug created\n * @documentationMaturity preview\n */\nexport declare function onStepCreated(\n  handler: (event: StepCreatedEnvelope) => void | Promise<void>\n): void;\n\nexport interface StepDeletedEnvelope {\n  entity: Step;\n  metadata: EventMetadata;\n}\n\n/**\n * Triggered when a step is deleted.\n * @permissionScope Manage Online Programs\n * @permissionScopeId SCOPE.CHALLENGES.MANAGE\n * @permissionId ONLINE_PROGRAMS.STEP_READ\n * @webhook\n * @eventType wix.online_programs.v3.step_deleted\n * @slug deleted\n * @documentationMaturity preview\n */\nexport declare function onStepDeleted(\n  handler: (event: StepDeletedEnvelope) => void | Promise<void>\n): void;\n\nexport interface StepMovedEnvelope {\n  data: StepMoved;\n  metadata: EventMetadata;\n}\n\n/**\n * Triggered when a step is moved.\n * @permissionScope Manage Online Programs\n * @permissionScopeId SCOPE.CHALLENGES.MANAGE\n * @permissionId ONLINE_PROGRAMS.STEP_READ\n * @webhook\n * @eventType wix.online_programs.v3.step_moved\n * @slug moved\n * @documentationMaturity preview\n */\nexport declare function onStepMoved(\n  handler: (event: StepMovedEnvelope) => void | Promise<void>\n): void;\n\nexport interface StepUpdatedEnvelope {\n  entity: Step;\n  metadata: EventMetadata;\n  /** @hidden */\n  modifiedFields: Record<string, any>;\n}\n\n/**\n * Triggered when a step is updated.\n * @permissionScope Manage Online Programs\n * @permissionScopeId SCOPE.CHALLENGES.MANAGE\n * @permissionId ONLINE_PROGRAMS.STEP_READ\n * @webhook\n * @eventType wix.online_programs.v3.step_updated\n * @slug updated\n * @documentationMaturity preview\n */\nexport declare function onStepUpdated(\n  handler: (event: StepUpdatedEnvelope) => void | Promise<void>\n): void;\n\n/**\n * Creates a step.\n *\n * Specify the parent section in `step.sectionId`.\n * The service derives the parent program automatically.\n * To create a quiz step, create or clone the quiz separately, then specify its ID in `step.quizOptions.id`.\n *\n * To create multiple steps in a single API call, call [BulkCreateSteps](https://dev.wix.com/docs/api-reference/business-management/online-programs/steps/bulk-create-steps).\n * @param step - Step to create.\n * @public\n * @documentationMaturity preview\n * @requiredField step\n * @requiredField step.sectionId\n * @permissionId ONLINE_PROGRAMS.STEP_CREATE\n * @applicableIdentity APP\n * @returns Created step.\n * @fqn wix.onlineprograms.steps.v3.StepsService.CreateStep\n */\nexport async function createStep(\n  step: NonNullablePaths<Step, `sectionId`, 0>,\n  options?: CreateStepOptions\n): Promise<\n  NonNullablePaths<\n    Step,\n    | `videoOptions.wixVideo._id`\n    | `videoOptions.wixVideo.paid`\n    | `videoOptions.requiredCompletionPercentage`\n    | `videoOptions.deleted`\n    | `quizOptions._id`\n    | `quizOptions.totalQuestions`\n    | `sectionId`\n    | `description.title`\n    | `ordering`\n    | `stepType`\n    | `programId`,\n    2\n  >\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[2] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = transformPaths(\n    renameKeysFromSDKRequestToRESTRequest({\n      step: step,\n      fields: options?.fields,\n    }),\n    [\n      {\n        transformFn: transformSDKVideoV2ToRESTVideoV2,\n        paths: TRANSFORM_PATHS_0,\n      },\n      {\n        transformFn: transformSDKImageToRESTImage,\n        paths: TRANSFORM_PATHS_1,\n      },\n    ]\n  );\n\n  const reqOpts = ambassadorWixOnlineProgramsV3Step.createStep(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(result.data, [\n        {\n          transformFn: transformRESTVideoV2ToSDKVideoV2,\n          paths: TRANSFORM_PATHS_0,\n        },\n        {\n          transformFn: transformRESTImageToSDKImage,\n          paths: TRANSFORM_PATHS_1,\n        },\n      ])\n    )?.step!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { step: '$[0]', fields: '$[1].fields' },\n        singleArgumentUnchanged: false,\n      },\n      ['step', 'options']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\nexport interface CreateStepOptions {\n  /**\n   * Additional fields to return. Omit to preserve the standard response.\n   * @internal\n   * @maxSize 100\n   */\n  fields?: RequestedFieldsWithLiterals[];\n}\n\n/**\n * Creates up to 100 steps in a single API call.\n *\n * Specify the parent section in each step's `sectionId`.\n * The service derives the parent program automatically.\n * To create quiz steps, create or clone the quizzes separately, then specify their IDs in each step's `quizOptions.id`.\n *\n * This is the preferred bulk-create method.\n * To create a single step, call [CreateStep](https://dev.wix.com/docs/api-reference/business-management/online-programs/steps/create-step).\n * @param steps - Steps to create.\n * @public\n * @documentationMaturity preview\n * @requiredField steps\n * @requiredField steps.sectionId\n * @permissionId ONLINE_PROGRAMS.STEP_CREATE\n * @applicableIdentity APP\n * @fqn wix.onlineprograms.steps.v3.StepsService.BulkCreateSteps\n */\nexport async function bulkCreateSteps(\n  steps: NonNullablePaths<Step, `sectionId`, 0>[],\n  options?: BulkCreateStepsOptions\n): Promise<\n  NonNullablePaths<\n    BulkCreateStepsResponse,\n    | `results`\n    | `results.${number}.itemMetadata.originalIndex`\n    | `results.${number}.itemMetadata.success`\n    | `results.${number}.itemMetadata.error.code`\n    | `results.${number}.itemMetadata.error.description`\n    | `results.${number}.item.videoOptions.requiredCompletionPercentage`\n    | `results.${number}.item.videoOptions.deleted`\n    | `results.${number}.item.quizOptions._id`\n    | `results.${number}.item.quizOptions.totalQuestions`\n    | `results.${number}.item.sectionId`\n    | `results.${number}.item.description.title`\n    | `results.${number}.item.ordering`\n    | `results.${number}.item.stepType`\n    | `results.${number}.item.programId`\n    | `results.${number}.action`\n    | `bulkActionMetadata.totalSuccesses`\n    | `bulkActionMetadata.totalFailures`\n    | `bulkActionMetadata.undetailedFailures`,\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 = transformPaths(\n    renameKeysFromSDKRequestToRESTRequest({\n      steps: steps,\n      returnEntity: options?.returnEntity,\n      fields: options?.fields,\n    }),\n    [\n      {\n        transformFn: transformSDKVideoV2ToRESTVideoV2,\n        paths: TRANSFORM_PATHS_2,\n      },\n      {\n        transformFn: transformSDKImageToRESTImage,\n        paths: TRANSFORM_PATHS_3,\n      },\n    ]\n  );\n\n  const reqOpts = ambassadorWixOnlineProgramsV3Step.bulkCreateSteps(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(result.data, [\n        {\n          transformFn: transformRESTVideoV2ToSDKVideoV2,\n          paths: TRANSFORM_PATHS_4,\n        },\n        {\n          transformFn: transformRESTImageToSDKImage,\n          paths: TRANSFORM_PATHS_5,\n        },\n      ])\n    )!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: {\n          steps: '$[0]',\n          returnEntity: '$[1].returnEntity',\n          fields: '$[1].fields',\n        },\n        singleArgumentUnchanged: false,\n      },\n      ['steps', 'options']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\nexport interface BulkCreateStepsOptions {\n  /** Whether to return created steps in the response. */\n  returnEntity?: boolean;\n  /**\n   * Additional fields to return. Omit to preserve the standard response.\n   * @internal\n   * @maxSize 100\n   */\n  fields?: RequestedFieldsWithLiterals[];\n}\n\n/**\n * Retrieves a step.\n *\n * Use `descriptionFieldSet` to control how much description content to return.\n * Some returned fields depend on the caller's permissions.\n * @param stepId - Step ID.\n * @public\n * @documentationMaturity preview\n * @requiredField stepId\n * @permissionId ONLINE_PROGRAMS.STEP_READ\n * @applicableIdentity APP\n * @returns Retrieved step.\n * @fqn wix.onlineprograms.steps.v3.StepsService.GetStep\n */\nexport async function getStep(\n  stepId: string,\n  options?: GetStepOptions\n): Promise<\n  NonNullablePaths<\n    Step,\n    | `videoOptions.wixVideo._id`\n    | `videoOptions.wixVideo.paid`\n    | `videoOptions.requiredCompletionPercentage`\n    | `videoOptions.deleted`\n    | `quizOptions._id`\n    | `quizOptions.totalQuestions`\n    | `sectionId`\n    | `description.title`\n    | `ordering`\n    | `stepType`\n    | `programId`,\n    2\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    stepId: stepId,\n    descriptionFieldSet: options?.descriptionFieldSet,\n    fields: options?.fields,\n  });\n\n  const reqOpts = ambassadorWixOnlineProgramsV3Step.getStep(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(result.data, [\n        {\n          transformFn: transformRESTVideoV2ToSDKVideoV2,\n          paths: TRANSFORM_PATHS_0,\n        },\n        {\n          transformFn: transformRESTImageToSDKImage,\n          paths: TRANSFORM_PATHS_1,\n        },\n      ])\n    )?.step!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: {\n          stepId: '$[0]',\n          descriptionFieldSet: '$[1].descriptionFieldSet',\n          fields: '$[1].fields',\n        },\n        singleArgumentUnchanged: false,\n      },\n      ['stepId', 'options']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\nexport interface GetStepOptions {\n  /** Predefined set of description fields to return. */\n  descriptionFieldSet?: DescriptionFieldSetWithLiterals;\n  /**\n   * Additional fields to return. Omit to preserve the standard response.\n   * @internal\n   * @maxSize 100\n   */\n  fields?: RequestedFieldsWithLiterals[];\n}\n\n/**\n * Updates a step.\n *\n * Each time the step is updated, `revision` increments by 1. The current `revision` must be passed when updating the step. This ensures you're working with the latest step and prevents unintended overwrites.\n *\n * Use this method to update step content and quiz settings.\n * To move a step within a section or to another section, call [MoveStep](https://dev.wix.com/docs/api-reference/business-management/online-programs/steps/move-step) instead of updating `step.sectionId`.\n * To attach a quiz to the step, create or clone the quiz separately, then specify its ID in `step.quizOptions.id`.\n *\n * To update multiple steps in a single API call, call [BulkUpdateSteps](https://dev.wix.com/docs/api-reference/business-management/online-programs/steps/bulk-update-steps).\n * @param _id - Step ID.\n * @public\n * @documentationMaturity preview\n * @requiredField _id\n * @requiredField step\n * @requiredField step.revision\n * @permissionId ONLINE_PROGRAMS.STEP_UPDATE\n * @applicableIdentity APP\n * @returns Updated step.\n * @fqn wix.onlineprograms.steps.v3.StepsService.UpdateStep\n */\nexport async function updateStep(\n  _id: string,\n  step: NonNullablePaths<UpdateStep, `revision`, 0>,\n  options?: UpdateStepOptions\n): Promise<\n  NonNullablePaths<\n    Step,\n    | `videoOptions.wixVideo._id`\n    | `videoOptions.wixVideo.paid`\n    | `videoOptions.requiredCompletionPercentage`\n    | `videoOptions.deleted`\n    | `quizOptions._id`\n    | `quizOptions.totalQuestions`\n    | `sectionId`\n    | `description.title`\n    | `ordering`\n    | `stepType`\n    | `programId`,\n    2\n  >\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[3] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = transformPaths(\n    renameKeysFromSDKRequestToRESTRequest({\n      step: { ...step, id: _id },\n      fields: options?.fields,\n    }),\n    [\n      {\n        transformFn: transformSDKVideoV2ToRESTVideoV2,\n        paths: TRANSFORM_PATHS_0,\n      },\n      {\n        transformFn: transformSDKImageToRESTImage,\n        paths: TRANSFORM_PATHS_1,\n      },\n    ]\n  );\n\n  const reqOpts = ambassadorWixOnlineProgramsV3Step.updateStep(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(result.data, [\n        {\n          transformFn: transformRESTVideoV2ToSDKVideoV2,\n          paths: TRANSFORM_PATHS_0,\n        },\n        {\n          transformFn: transformRESTImageToSDKImage,\n          paths: TRANSFORM_PATHS_1,\n        },\n      ])\n    )?.step!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: { step: '$[1]' },\n        explicitPathsToArguments: { 'step.id': '$[0]', fields: '$[2].fields' },\n        singleArgumentUnchanged: false,\n      },\n      ['_id', 'step', 'options']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\nexport interface UpdateStep {\n  /** Video-specific settings. */\n  videoOptions?: VideoOptions;\n  /** Quiz-specific settings. */\n  quizOptions?: QuizOptions;\n  /**\n   * Step ID.\n   * @format GUID\n   * @readonly\n   */\n  _id?: string | null;\n  /**\n   * Revision number, which increments by 1 each time the step is updated. To prevent conflicting changes, the current `revision` must be passed when updating the step.\n   * @readonly\n   */\n  revision?: string | null;\n  /**\n   * Date and time the step was created.\n   * @readonly\n   */\n  _createdDate?: Date | null;\n  /**\n   * Date and time the step was updated.\n   * @readonly\n   */\n  _updatedDate?: Date | null;\n  /**\n   * Parent section ID. To move a step within a section or to another section, call `MoveStep`.\n   * @format GUID\n   * @readonly\n   */\n  sectionId?: string;\n  /** Step title, rich text content, and optional media. */\n  description?: Description;\n  /** Step position within the section. */\n  ordering?: number;\n  /** Type of content in the step. */\n  stepType?: StepTypeWithLiterals;\n  /** Custom field data for the step object. */\n  extendedFields?: ExtendedFields;\n  /**\n   * Program ID.\n   * @format GUID\n   * @readonly\n   */\n  programId?: string;\n  /**\n   * Whether this step is before the enabled program's paywall divider. Returned only\n   * when PREVIEW_AVAILABLE is requested. This classification does not grant content access.\n   * NOT-PRECEDENT: Unlike AIP-7001's event recommendation, this cross-service read-time\n   * classification is omitted from events; it is not persisted Step state.\n   * @internal\n   * @readonly\n   */\n  previewAvailable?: boolean | null;\n}\n\nexport interface UpdateStepOptions {\n  /**\n   * Additional fields to return. Omit to preserve the standard response.\n   * @internal\n   * @maxSize 100\n   */\n  fields?: RequestedFieldsWithLiterals[];\n}\n\n/**\n * Updates up to 100 steps in a single API call.\n *\n * Each time a step is updated, `revision` increments by 1. The current `revision` must be passed when updating the step. This ensures you're working with the latest step and prevents unintended overwrites.\n *\n * Use this method for content updates across multiple steps. Each `steps.step.revision` must be the current revision.\n * A partial step may omit `sectionId` and `programId`; the service resolves those values from the existing step.\n * If a requested `steps.step.id` does not identify an existing step, its result is returned as a failed item.\n * To move a step within a section or to another section, call [MoveStep](https://dev.wix.com/docs/api-reference/business-management/online-programs/steps/move-step).\n *\n * To update a single step, call [UpdateStep](https://dev.wix.com/docs/api-reference/business-management/online-programs/steps/update-step).\n * @param steps - Steps to update. A missing `step.id` is returned as a failed item result.\n * @public\n * @documentationMaturity preview\n * @requiredField steps\n * @requiredField steps.step._id\n * @requiredField steps.step.revision\n * @permissionId ONLINE_PROGRAMS.STEP_UPDATE\n * @applicableIdentity APP\n * @fqn wix.onlineprograms.steps.v3.StepsService.BulkUpdateSteps\n */\nexport async function bulkUpdateSteps(\n  steps: NonNullablePaths<MaskedStep, `step._id` | `step.revision`, 1>[],\n  options?: BulkUpdateStepsOptions\n): Promise<\n  NonNullablePaths<\n    BulkUpdateStepsResponse,\n    | `results`\n    | `results.${number}.itemMetadata.originalIndex`\n    | `results.${number}.itemMetadata.success`\n    | `results.${number}.itemMetadata.error.code`\n    | `results.${number}.itemMetadata.error.description`\n    | `results.${number}.item.videoOptions.requiredCompletionPercentage`\n    | `results.${number}.item.videoOptions.deleted`\n    | `results.${number}.item.quizOptions._id`\n    | `results.${number}.item.quizOptions.totalQuestions`\n    | `results.${number}.item.sectionId`\n    | `results.${number}.item.description.title`\n    | `results.${number}.item.ordering`\n    | `results.${number}.item.stepType`\n    | `results.${number}.item.programId`\n    | `bulkActionMetadata.totalSuccesses`\n    | `bulkActionMetadata.totalFailures`\n    | `bulkActionMetadata.undetailedFailures`,\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 = transformPaths(\n    renameKeysFromSDKRequestToRESTRequest({\n      steps: steps,\n      returnEntity: options?.returnEntity,\n      fields: options?.fields,\n    }),\n    [\n      {\n        transformFn: transformSDKVideoV2ToRESTVideoV2,\n        paths: TRANSFORM_PATHS_6,\n      },\n      {\n        transformFn: transformSDKImageToRESTImage,\n        paths: TRANSFORM_PATHS_7,\n      },\n    ]\n  );\n\n  const reqOpts = ambassadorWixOnlineProgramsV3Step.bulkUpdateSteps(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(result.data, [\n        {\n          transformFn: transformRESTVideoV2ToSDKVideoV2,\n          paths: TRANSFORM_PATHS_4,\n        },\n        {\n          transformFn: transformRESTImageToSDKImage,\n          paths: TRANSFORM_PATHS_5,\n        },\n      ])\n    )!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: {\n          steps: '$[0]',\n          returnEntity: '$[1].returnEntity',\n          fields: '$[1].fields',\n        },\n        singleArgumentUnchanged: false,\n      },\n      ['steps', 'options']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\nexport interface BulkUpdateStepsOptions {\n  /** Whether to return updated steps in the response. */\n  returnEntity?: boolean;\n  /**\n   * Additional fields to return. Omit to preserve the standard response.\n   * @internal\n   * @maxSize 100\n   */\n  fields?: RequestedFieldsWithLiterals[];\n}\n\n/**\n * Deletes a step from active program content.\n *\n * The public API doesn't provide a restore flow for deleted steps.\n *\n * If the deleted step is the last step that references a quiz, the quiz is also deleted.\n * @param stepId - Step ID.\n * @public\n * @documentationMaturity preview\n * @requiredField stepId\n * @permissionId ONLINE_PROGRAMS.STEP_DELETE\n * @applicableIdentity APP\n * @fqn wix.onlineprograms.steps.v3.StepsService.DeleteStep\n */\nexport async function deleteStep(stepId: string): Promise<void> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[1] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest({ stepId: stepId });\n\n  const reqOpts = ambassadorWixOnlineProgramsV3Step.deleteStep(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { stepId: '$[0]' },\n        singleArgumentUnchanged: false,\n      },\n      ['stepId']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\n/**\n * Retrieves a list of steps, given the provided paging, filtering, and sorting.\n *\n * Query Steps runs with these defaults, which you can override:\n *\n * - `createdDate` is sorted in `DESC` order.\n * - `paging.offset` is `0`.\n *\n * For predictable response sizes, we recommend setting `paging.limit` up to `100`.\n *\n * If your app is already scoped to a specific program, pass `programId` in addition to the query filters. `programId` adds program context to the request and doesn't replace section-based filtering in `query`.\n * Supported sorting fields are `createdDate`, `id`, `programId`, and `ordering`. When sorting by `ordering`, also filter by `sectionId`.\n * Use `descriptionFieldSet` to control how much description content to return.\n * Some returned fields depend on the caller's permissions.\n *\n * To learn about working with Query methods, see [API Query Language](https://dev.wix.com/docs/api-reference/articles/work-with-wix-apis/data-retrieval/about-the-wix-api-query-language), [Sorting and Paging](https://dev.wix.com/docs/api-reference/articles/work-with-wix-apis/data-retrieval/about-sorting-and-paging), and [Field Projection](https://dev.wix.com/docs/api-reference/articles/work-with-wix-apis/data-retrieval/about-field-projection).\n * @public\n * @documentationMaturity preview\n * @permissionId ONLINE_PROGRAMS.STEP_READ\n * @applicableIdentity APP\n * @fqn wix.onlineprograms.steps.v3.StepsService.QuerySteps\n */\nexport function querySteps(options?: QueryStepsOptions): StepsQueryBuilder {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[1] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  return queryBuilder<Step, 'CURSOR', QueryStepsRequest, QueryStepsResponse>({\n    func: async (payload: QueryStepsRequest) => {\n      const reqOpts = ambassadorWixOnlineProgramsV3Step.querySteps({\n        ...payload,\n        ...(options ?? {}),\n      });\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: QueryStepsRequest['query']) => {\n      const args = [query, options] as [\n        QueryStepsRequest['query'],\n        QueryStepsOptions\n      ];\n      return renameKeysFromSDKRequestToRESTRequest({\n        ...args?.[1],\n        query: args?.[0],\n      });\n    },\n    responseTransformer: ({ data }: HttpResponse<QueryStepsResponse>) => {\n      const transformedData = renameKeysFromRESTResponseToSDKResponse(\n        transformPaths(data, [\n          {\n            transformFn: transformRESTVideoV2ToSDKVideoV2,\n            paths: TRANSFORM_PATHS_2,\n          },\n          {\n            transformFn: transformRESTImageToSDKImage,\n            paths: TRANSFORM_PATHS_3,\n          },\n        ])\n      );\n\n      return {\n        items: transformedData?.steps,\n        pagingMetadata: transformedData?.pagingMetadata,\n      };\n    },\n    errorTransformer: (err: unknown) => {\n      const transformedError = sdkTransformError(err, {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { query: '$[0]' },\n        singleArgumentUnchanged: false,\n      });\n\n      throw transformedError;\n    },\n    pagingMethod: 'CURSOR',\n    transformationPaths: {},\n  });\n}\n\nexport interface QueryStepsOptions {\n  /** Predefined set of description fields to return. */\n  descriptionFieldSet?: DescriptionFieldSetWithLiterals | undefined;\n  /**\n   * Program ID.\n   * @maxLength 36\n   */\n  programId?: string | undefined;\n  /**\n   * Additional fields to return. Omit to preserve the standard response.\n   * @internal\n   * @maxSize 100\n   */\n  fields?: RequestedFields[] | undefined;\n}\n\ninterface QueryCursorResult {\n  cursors: Cursors;\n  hasNext: () => boolean;\n  hasPrev: () => boolean;\n  length: number;\n  pageSize: number;\n}\n\nexport interface StepsQueryResult extends QueryCursorResult {\n  items: Step[];\n  query: StepsQueryBuilder;\n  next: () => Promise<StepsQueryResult>;\n  prev: () => Promise<StepsQueryResult>;\n}\n\nexport interface StepsQueryBuilder {\n  /** @param propertyName - Property whose value is compared with `value`.\n   * @param value - Value to compare against.\n   * @documentationMaturity preview\n   */\n  eq: (\n    propertyName: '_id' | 'sectionId' | 'programId',\n    value: any\n  ) => StepsQueryBuilder;\n  /** @param propertyName - Property whose value is compared with `value`.\n   * @param value - Value to compare against.\n   * @documentationMaturity preview\n   */\n  ne: (propertyName: '_id' | 'programId', value: any) => StepsQueryBuilder;\n  /** @param propertyName - Property whose value is compared with `value`.\n   * @param value - Value to compare against.\n   * @documentationMaturity preview\n   */\n  ge: (propertyName: '_id' | 'programId', value: any) => StepsQueryBuilder;\n  /** @param propertyName - Property whose value is compared with `value`.\n   * @param value - Value to compare against.\n   * @documentationMaturity preview\n   */\n  gt: (propertyName: '_id' | 'programId', value: any) => StepsQueryBuilder;\n  /** @param propertyName - Property whose value is compared with `value`.\n   * @param value - Value to compare against.\n   * @documentationMaturity preview\n   */\n  le: (propertyName: '_id' | 'programId', value: any) => StepsQueryBuilder;\n  /** @param propertyName - Property whose value is compared with `value`.\n   * @param value - Value to compare against.\n   * @documentationMaturity preview\n   */\n  lt: (propertyName: '_id' | 'programId', value: any) => StepsQueryBuilder;\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: '_id' | 'programId',\n    value: string\n  ) => StepsQueryBuilder;\n  /** @documentationMaturity preview */\n  in: (\n    propertyName: '_id' | 'sectionId' | 'programId',\n    value: any\n  ) => StepsQueryBuilder;\n  /** @documentationMaturity preview */\n  exists: (\n    propertyName: '_id' | 'programId',\n    value: boolean\n  ) => StepsQueryBuilder;\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<'_id' | '_createdDate' | 'ordering' | 'programId'>\n  ) => StepsQueryBuilder;\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<'_id' | '_createdDate' | 'ordering' | 'programId'>\n  ) => StepsQueryBuilder;\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) => StepsQueryBuilder;\n  /** @param cursor - A pointer to specific record\n   * @documentationMaturity preview\n   */\n  skipTo: (cursor: string) => StepsQueryBuilder;\n  /** @documentationMaturity preview */\n  find: () => Promise<StepsQueryResult>;\n}\n\n/**\n * @hidden\n * @fqn wix.onlineprograms.steps.v3.StepsService.QuerySteps\n * @requiredField query\n */\nexport async function typedQuerySteps(\n  query: StepQuery,\n  options?: QueryStepsOptions\n): Promise<\n  NonNullablePaths<\n    QueryStepsResponse,\n    | `steps`\n    | `steps.${number}.videoOptions.wixVideo._id`\n    | `steps.${number}.videoOptions.wixVideo.paid`\n    | `steps.${number}.videoOptions.requiredCompletionPercentage`\n    | `steps.${number}.videoOptions.deleted`\n    | `steps.${number}.quizOptions._id`\n    | `steps.${number}.quizOptions.totalQuestions`\n    | `steps.${number}.sectionId`\n    | `steps.${number}.description.title`\n    | `steps.${number}.ordering`\n    | `steps.${number}.stepType`\n    | `steps.${number}.programId`,\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    query: query,\n    ...options,\n  });\n\n  const reqOpts = ambassadorWixOnlineProgramsV3Step.querySteps(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(result.data, [\n        {\n          transformFn: transformRESTVideoV2ToSDKVideoV2,\n          paths: TRANSFORM_PATHS_2,\n        },\n        {\n          transformFn: transformRESTImageToSDKImage,\n          paths: TRANSFORM_PATHS_3,\n        },\n      ])\n    )!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { query: '$[0]' },\n        singleArgumentUnchanged: false,\n      },\n      ['query', 'options']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\nexport interface StepQuerySpec extends QuerySpec {\n  paging: 'cursor';\n  wql: [\n    {\n      fields: ['sectionId'];\n      operators: ['$eq', '$in'];\n      sort: 'NONE';\n    },\n    {\n      fields: ['_createdDate'];\n      operators: [];\n      sort: 'BOTH';\n    },\n    {\n      fields: ['ordering'];\n      operators: [];\n      sort: 'BOTH';\n    },\n    {\n      fields: ['_id', 'programId'];\n      operators: '*';\n      sort: 'BOTH';\n    }\n  ];\n}\n\nexport type CommonQueryWithEntityContext = QuerySdkType<Step, StepQuerySpec>;\nexport type StepQuery = {\n  /** \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  */\n  cursorPaging?: {\n    /** \n  Maximum number of items to return in the results. \n  @max: 500 \n  */\n    limit?:\n      | NonNullable<CommonQueryWithEntityContext['cursorPaging']>['limit']\n      | null;\n    /** \n  Pointer to the next or previous page in the list of results.\n\n  Pass the relevant cursor token from the `pagingMetadata` object in the previous call's response.\n  Not relevant for the first request. \n  @maxLength: 16000 \n  */\n    cursor?:\n      | NonNullable<CommonQueryWithEntityContext['cursorPaging']>['cursor']\n      | null;\n  };\n  /** \n  Filter object in the following format:\n  `\"filter\" : {\n  \"fieldName1\": \"value1\",\n  \"fieldName2\":{\"$operator\":\"value2\"}\n  }`\n  Example of operators: `$eq`, `$ne`, `$lt`, `$lte`, `$gt`, `$gte`, `$in`, `$hasSome`, `$hasAll`, `$startsWith`, `$contains`  \n  */\n  filter?: CommonQueryWithEntityContext['filter'] | null;\n  /** \n  Sort object in the following format:\n  `[{\"fieldName\":\"sortField1\",\"order\":\"ASC\"},{\"fieldName\":\"sortField2\",\"order\":\"DESC\"}]`  \n  */\n  sort?: {\n    /** \n  Name of the field to sort by. \n  @maxLength: 512 \n  */\n    fieldName?: NonNullable<\n      CommonQueryWithEntityContext['sort']\n    >[number]['fieldName'];\n    /** \n  Sort order.  \n  */\n    order?: NonNullable<CommonQueryWithEntityContext['sort']>[number]['order'];\n    /** \n  When `field_name` is a property of repeated field that is marked as `MATCH_ITEMS` and sort should be done by\n  a specific element from a collection, filter can/should be provided to ensure correct sort value is picked.\n\n  If multiple filters are provided, they are combined with AND operator.\n\n  Example:\n  Given we have document like {\"id\": \"1\", \"nestedField\": [{\"price\": 10, \"region\": \"EU\"}, {\"price\": 20, \"region\": \"US\"}]}\n  and `nestedField` is marked as `MATCH_ITEMS`, to ensure that sorting is done by correct region, filter should be\n  { fieldName: \"nestedField.price\", \"select_items_by\": [{\"nestedField.region\": \"US\"}] } \n  @internal: undefined,\n  @maxSize: 10 \n  */\n    selectItemsBy?:\n      | NonNullable<\n          CommonQueryWithEntityContext['sort']\n        >[number]['selectItemsBy']\n      | null;\n    /** \n  Origin point for geo-distance sorting on a GEO field\n  results are ordered by distance from this point (ASC = nearest first, DESC = farthest first).  \n  */\n    origin?: NonNullable<\n      CommonQueryWithEntityContext['sort']\n    >[number]['origin'];\n  }[];\n};\n\nexport const utils = {\n  query: /*#__PURE__*/ createQueryUtils<Step, StepQuerySpec, StepQuery>(),\n};\n\n/**\n * Moves a step within a section or to a different section.\n *\n * Each time the step is updated, `revision` increments by 1. Pass the current `revision` when possible to protect against conflicting updates.\n *\n * If `afterStepId` isn't specified, the step is moved to the beginning of the target section.\n * The step's ordering is recalculated automatically.\n * @param stepId - Step ID.\n * @param sectionId - Target section ID.\n * @public\n * @documentationMaturity preview\n * @requiredField sectionId\n * @requiredField stepId\n * @permissionId ONLINE_PROGRAMS.STEP_UPDATE\n * @applicableIdentity APP\n * @fqn wix.onlineprograms.steps.v3.StepsService.MoveStep\n */\nexport async function moveStep(\n  stepId: string,\n  sectionId: string,\n  options?: MoveStepOptions\n): Promise<\n  NonNullablePaths<\n    MoveStepResponse,\n    | `step.videoOptions.wixVideo._id`\n    | `step.videoOptions.wixVideo.paid`\n    | `step.videoOptions.requiredCompletionPercentage`\n    | `step.videoOptions.deleted`\n    | `step.quizOptions._id`\n    | `step.quizOptions.totalQuestions`\n    | `step.sectionId`\n    | `step.description.title`\n    | `step.ordering`\n    | `step.stepType`\n    | `step.programId`,\n    3\n  >\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[3] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest({\n    stepId: stepId,\n    sectionId: sectionId,\n    afterStepId: options?.afterStepId,\n    revision: options?.revision,\n    afterPaywallDivider: options?.afterPaywallDivider,\n    fields: options?.fields,\n  });\n\n  const reqOpts = ambassadorWixOnlineProgramsV3Step.moveStep(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(result.data, [\n        {\n          transformFn: transformRESTVideoV2ToSDKVideoV2,\n          paths: TRANSFORM_PATHS_0,\n        },\n        {\n          transformFn: transformRESTImageToSDKImage,\n          paths: TRANSFORM_PATHS_1,\n        },\n      ])\n    )!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: {\n          stepId: '$[0]',\n          sectionId: '$[1]',\n          afterStepId: '$[2].afterStepId',\n          revision: '$[2].revision',\n          afterPaywallDivider: '$[2].afterPaywallDivider',\n          fields: '$[2].fields',\n        },\n        singleArgumentUnchanged: false,\n      },\n      ['stepId', 'sectionId', 'options']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\nexport interface MoveStepOptions {\n  /**\n   * Step ID after which to place the moved step. Leave empty to move the step to the beginning of the target section.\n   * @format GUID\n   */\n  afterStepId?: string | null;\n  /** Current revision of the step. Pass it when available to protect against conflicting updates. */\n  revision?: string;\n  /**\n   * Selects the side only when a paywall divider splits the gap after after_step_id,\n   * or the beginning gap when that anchor is omitted. True inserts after the divider;\n   * false inserts before it. Otherwise either value uses the same content gap.\n   * Omit to retain existing placement behavior. Explicit use requires enabled Freemium\n   * and a current divider. Does not assert the resulting global free/paid side.\n   * @internal\n   */\n  afterPaywallDivider?: boolean | null;\n  /**\n   * Additional fields to return. Omit to preserve the standard response.\n   * @internal\n   * @maxSize 100\n   */\n  fields?: RequestedFieldsWithLiterals[];\n}\n\n/**\n * Clones a step.\n *\n * The cloned step is added to the same section as the original step.\n * If the original step is linked to a quiz, the quiz is cloned and the cloned step references the new quiz.\n * @param stepId - Step ID.\n * @public\n * @documentationMaturity preview\n * @requiredField stepId\n * @permissionId ONLINE_PROGRAMS.STEP_CREATE\n * @applicableIdentity APP\n * @fqn wix.onlineprograms.steps.v3.StepsService.CloneStep\n */\nexport async function cloneStep(\n  stepId: string,\n  options?: CloneStepOptions\n): Promise<\n  NonNullablePaths<\n    CloneStepResponse,\n    | `step.videoOptions.wixVideo._id`\n    | `step.videoOptions.wixVideo.paid`\n    | `step.videoOptions.requiredCompletionPercentage`\n    | `step.videoOptions.deleted`\n    | `step.quizOptions._id`\n    | `step.quizOptions.totalQuestions`\n    | `step.sectionId`\n    | `step.description.title`\n    | `step.ordering`\n    | `step.stepType`\n    | `step.programId`,\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    stepId: stepId,\n    fields: options?.fields,\n  });\n\n  const reqOpts = ambassadorWixOnlineProgramsV3Step.cloneStep(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(result.data, [\n        {\n          transformFn: transformRESTVideoV2ToSDKVideoV2,\n          paths: TRANSFORM_PATHS_0,\n        },\n        {\n          transformFn: transformRESTImageToSDKImage,\n          paths: TRANSFORM_PATHS_1,\n        },\n      ])\n    )!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { stepId: '$[0]', fields: '$[1].fields' },\n        singleArgumentUnchanged: false,\n      },\n      ['stepId', 'options']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\nexport interface CloneStepOptions {\n  /**\n   * Additional fields to return. Omit to preserve the standard response.\n   * @internal\n   * @maxSize 100\n   */\n  fields?: RequestedFieldsWithLiterals[];\n}\n","import { toURLSearchParams } from '@wix/sdk-runtime/rest-modules';\nimport { transformSDKFloatToRESTFloat } from '@wix/sdk-runtime/transformations/float';\nimport { transformRESTFloatToSDKFloat } from '@wix/sdk-runtime/transformations/float';\nimport { transformSDKTimestampToRESTTimestamp } from '@wix/sdk-runtime/transformations/timestamp';\nimport { transformRESTTimestampToSDKTimestamp } from '@wix/sdk-runtime/transformations/timestamp';\nimport { 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\nconst TRANSFORM_PATHS_0 = [\n  { path: 'step.createdDate' },\n  { path: 'step.updatedDate' },\n  { path: 'step.videoOptions.video.urlExpirationDate' },\n  { path: 'step.videoOptions.video.resolutions.urlExpirationDate' },\n  { path: 'step.videoOptions.video.resolutions.poster.urlExpirationDate' },\n  { path: 'step.videoOptions.video.posters.urlExpirationDate' },\n  { path: 'step.videoOptions.coverImage.urlExpirationDate' },\n  { path: 'step.description.image.urlExpirationDate' },\n  { path: 'step.description.video.urlExpirationDate' },\n  { path: 'step.description.video.resolutions.urlExpirationDate' },\n  { path: 'step.description.video.resolutions.poster.urlExpirationDate' },\n  { path: 'step.description.video.posters.urlExpirationDate' },\n];\nconst TRANSFORM_PATHS_1 = [\n  { path: 'step.ordering' },\n  { path: 'step.videoOptions.requiredCompletionPercentage' },\n  { path: 'step.videoOptions.video.resolutions.poster.focalPoint.x' },\n  { path: 'step.videoOptions.video.resolutions.poster.focalPoint.y' },\n  { path: 'step.videoOptions.video.posters.focalPoint.x' },\n  { path: 'step.videoOptions.video.posters.focalPoint.y' },\n  { path: 'step.videoOptions.coverImage.focalPoint.x' },\n  { path: 'step.videoOptions.coverImage.focalPoint.y' },\n  { path: 'step.description.image.focalPoint.x' },\n  { path: 'step.description.image.focalPoint.y' },\n  { path: 'step.description.video.resolutions.poster.focalPoint.x' },\n  { path: 'step.description.video.resolutions.poster.focalPoint.y' },\n  { path: 'step.description.video.posters.focalPoint.x' },\n  { path: 'step.description.video.posters.focalPoint.y' },\n  { path: 'step.quizOptions.passingGrade' },\n];\nconst TRANSFORM_PATHS_2 = [\n  { path: 'steps.createdDate' },\n  { path: 'steps.updatedDate' },\n  { path: 'steps.videoOptions.video.urlExpirationDate' },\n  { path: 'steps.videoOptions.video.resolutions.urlExpirationDate' },\n  { path: 'steps.videoOptions.video.resolutions.poster.urlExpirationDate' },\n  { path: 'steps.videoOptions.video.posters.urlExpirationDate' },\n  { path: 'steps.videoOptions.coverImage.urlExpirationDate' },\n  { path: 'steps.description.image.urlExpirationDate' },\n  { path: 'steps.description.video.urlExpirationDate' },\n  { path: 'steps.description.video.resolutions.urlExpirationDate' },\n  { path: 'steps.description.video.resolutions.poster.urlExpirationDate' },\n  { path: 'steps.description.video.posters.urlExpirationDate' },\n];\nconst TRANSFORM_PATHS_3 = [\n  { path: 'steps.ordering' },\n  { path: 'steps.videoOptions.requiredCompletionPercentage' },\n  { path: 'steps.videoOptions.video.resolutions.poster.focalPoint.x' },\n  { path: 'steps.videoOptions.video.resolutions.poster.focalPoint.y' },\n  { path: 'steps.videoOptions.video.posters.focalPoint.x' },\n  { path: 'steps.videoOptions.video.posters.focalPoint.y' },\n  { path: 'steps.videoOptions.coverImage.focalPoint.x' },\n  { path: 'steps.videoOptions.coverImage.focalPoint.y' },\n  { path: 'steps.description.image.focalPoint.x' },\n  { path: 'steps.description.image.focalPoint.y' },\n  { path: 'steps.description.video.resolutions.poster.focalPoint.x' },\n  { path: 'steps.description.video.resolutions.poster.focalPoint.y' },\n  { path: 'steps.description.video.posters.focalPoint.x' },\n  { path: 'steps.description.video.posters.focalPoint.y' },\n  { path: 'steps.quizOptions.passingGrade' },\n];\nconst TRANSFORM_PATHS_4 = [\n  { path: 'results.item.createdDate' },\n  { path: 'results.item.updatedDate' },\n  { path: 'results.item.videoOptions.video.urlExpirationDate' },\n  { path: 'results.item.videoOptions.video.resolutions.urlExpirationDate' },\n  {\n    path: 'results.item.videoOptions.video.resolutions.poster.urlExpirationDate',\n  },\n  { path: 'results.item.videoOptions.video.posters.urlExpirationDate' },\n  { path: 'results.item.videoOptions.coverImage.urlExpirationDate' },\n  { path: 'results.item.description.image.urlExpirationDate' },\n  { path: 'results.item.description.video.urlExpirationDate' },\n  { path: 'results.item.description.video.resolutions.urlExpirationDate' },\n  {\n    path: 'results.item.description.video.resolutions.poster.urlExpirationDate',\n  },\n  { path: 'results.item.description.video.posters.urlExpirationDate' },\n];\nconst TRANSFORM_PATHS_5 = [\n  { path: 'results.item.ordering' },\n  { path: 'results.item.videoOptions.requiredCompletionPercentage' },\n  { path: 'results.item.videoOptions.video.resolutions.poster.focalPoint.x' },\n  { path: 'results.item.videoOptions.video.resolutions.poster.focalPoint.y' },\n  { path: 'results.item.videoOptions.video.posters.focalPoint.x' },\n  { path: 'results.item.videoOptions.video.posters.focalPoint.y' },\n  { path: 'results.item.videoOptions.coverImage.focalPoint.x' },\n  { path: 'results.item.videoOptions.coverImage.focalPoint.y' },\n  { path: 'results.item.description.image.focalPoint.x' },\n  { path: 'results.item.description.image.focalPoint.y' },\n  { path: 'results.item.description.video.resolutions.poster.focalPoint.x' },\n  { path: 'results.item.description.video.resolutions.poster.focalPoint.y' },\n  { path: 'results.item.description.video.posters.focalPoint.x' },\n  { path: 'results.item.description.video.posters.focalPoint.y' },\n  { path: 'results.item.quizOptions.passingGrade' },\n];\nconst TRANSFORM_PATHS_6 = [{ path: 'fieldMask' }];\nconst TRANSFORM_PATHS_7 = [{ path: 'steps.fieldMask' }];\nconst TRANSFORM_PATHS_8 = [\n  { path: 'steps.step.createdDate' },\n  { path: 'steps.step.updatedDate' },\n  { path: 'steps.step.videoOptions.video.urlExpirationDate' },\n  { path: 'steps.step.videoOptions.video.resolutions.urlExpirationDate' },\n  {\n    path: 'steps.step.videoOptions.video.resolutions.poster.urlExpirationDate',\n  },\n  { path: 'steps.step.videoOptions.video.posters.urlExpirationDate' },\n  { path: 'steps.step.videoOptions.coverImage.urlExpirationDate' },\n  { path: 'steps.step.description.image.urlExpirationDate' },\n  { path: 'steps.step.description.video.urlExpirationDate' },\n  { path: 'steps.step.description.video.resolutions.urlExpirationDate' },\n  { path: 'steps.step.description.video.resolutions.poster.urlExpirationDate' },\n  { path: 'steps.step.description.video.posters.urlExpirationDate' },\n];\nconst TRANSFORM_PATHS_9 = [\n  { path: 'steps.step.ordering' },\n  { path: 'steps.step.videoOptions.requiredCompletionPercentage' },\n  { path: 'steps.step.videoOptions.video.resolutions.poster.focalPoint.x' },\n  { path: 'steps.step.videoOptions.video.resolutions.poster.focalPoint.y' },\n  { path: 'steps.step.videoOptions.video.posters.focalPoint.x' },\n  { path: 'steps.step.videoOptions.video.posters.focalPoint.y' },\n  { path: 'steps.step.videoOptions.coverImage.focalPoint.x' },\n  { path: 'steps.step.videoOptions.coverImage.focalPoint.y' },\n  { path: 'steps.step.description.image.focalPoint.x' },\n  { path: 'steps.step.description.image.focalPoint.y' },\n  { path: 'steps.step.description.video.resolutions.poster.focalPoint.x' },\n  { path: 'steps.step.description.video.resolutions.poster.focalPoint.y' },\n  { path: 'steps.step.description.video.posters.focalPoint.x' },\n  { path: 'steps.step.description.video.posters.focalPoint.y' },\n  { path: 'steps.step.quizOptions.passingGrade' },\n];\nconst TRANSFORM_PATHS_10 = [\n  { path: 'query.sort.origin.latitude' },\n  { path: 'query.sort.origin.longitude' },\n];\n\nfunction resolveWixOnlineprogramsStepsV3StepsServiceUrl(\n  opts: Omit<ResolveUrlOpts, 'domainToMappings'>\n) {\n  const domainToMappings = {\n    'bo._base_domain_': [\n      {\n        srcPath: '/program-steps-service',\n        destPath: '',\n      },\n    ],\n    'wixbo.ai': [\n      {\n        srcPath: '/program-steps-service',\n        destPath: '',\n      },\n    ],\n    'wix-bo.com': [\n      {\n        srcPath: '/program-steps-service',\n        destPath: '',\n      },\n    ],\n    'api._api_base_domain_': [\n      {\n        srcPath: '/program-steps-service',\n        destPath: '',\n      },\n    ],\n    'manage._base_domain_': [\n      {\n        srcPath: '/_api/program-steps-service',\n        destPath: '',\n      },\n    ],\n    'www._base_domain_': [\n      {\n        srcPath: '/_api/program-steps-service',\n        destPath: '',\n      },\n    ],\n    '*.dev.wix-code.com': [\n      {\n        srcPath: '/_api/program-steps-service',\n        destPath: '',\n      },\n      {\n        srcPath: '/program-steps-service',\n        destPath: '',\n      },\n      {\n        srcPath: '/online-programs/v3/steps',\n        destPath: '/v3/steps',\n      },\n    ],\n    _: [\n      {\n        srcPath: '/program-steps-service',\n        destPath: '',\n      },\n    ],\n    'editor._base_domain_': [\n      {\n        srcPath: '/_api/program-steps-service',\n        destPath: '',\n      },\n    ],\n    'blocks._base_domain_': [\n      {\n        srcPath: '/_api/program-steps-service',\n        destPath: '',\n      },\n    ],\n    'create.editorx': [\n      {\n        srcPath: '/_api/program-steps-service',\n        destPath: '',\n      },\n    ],\n    'editor.wixapps.net': [\n      {\n        srcPath: '/program-steps-service',\n        destPath: '',\n      },\n      {\n        srcPath: '/_api/program-steps-service',\n        destPath: '',\n      },\n    ],\n    'www.wixapis.com': [\n      {\n        srcPath: '/online-programs/v3/steps',\n        destPath: '/v3/steps',\n      },\n      {\n        srcPath: '/online-programs/v3/bulk/steps',\n        destPath: '/v3/bulk/steps',\n      },\n      {\n        srcPath: '/program-steps-service/v3/steps',\n        destPath: '/v3/steps',\n      },\n      {\n        srcPath: '/program-steps-service/v3/bulk/steps',\n        destPath: '/v3/bulk/steps',\n      },\n    ],\n  };\n\n  return resolveUrl(Object.assign(opts, { domainToMappings }));\n}\n\nconst PACKAGE_NAME = '@wix/auto_sdk_online-programs_steps';\n\n/**\n * Creates a step.\n *\n * Specify the parent section in `step.sectionId`.\n * The service derives the parent program automatically.\n * To create a quiz step, create or clone the quiz separately, then specify its ID in `step.quizOptions.id`.\n *\n * To create multiple steps in a single API call, call [BulkCreateSteps](https://dev.wix.com/docs/api-reference/business-management/online-programs/steps/bulk-create-steps).\n */\nexport function createStep(payload: object): RequestOptionsFactory<any> {\n  function __createStep({ host }: any) {\n    const serializedData = transformPaths(payload, [\n      {\n        transformFn: transformSDKTimestampToRESTTimestamp,\n        paths: TRANSFORM_PATHS_0,\n      },\n      {\n        transformFn: transformSDKFloatToRESTFloat,\n        paths: TRANSFORM_PATHS_1,\n      },\n    ]);\n    const metadata = {\n      entityFqdn: 'wix.online_programs.v3.step',\n      method: 'POST' as any,\n      methodFqn: 'wix.onlineprograms.steps.v3.StepsService.CreateStep',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixOnlineprogramsStepsV3StepsServiceUrl({\n        protoPath: '/v3/steps',\n        data: serializedData,\n        host,\n      }),\n      data: serializedData,\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: TRANSFORM_PATHS_0,\n          },\n          {\n            transformFn: transformRESTFloatToSDKFloat,\n            paths: TRANSFORM_PATHS_1,\n          },\n        ]),\n    };\n\n    return metadata;\n  }\n\n  return __createStep;\n}\n\n/**\n * Creates up to 100 steps in a single API call.\n *\n * Specify the parent section in each step's `sectionId`.\n * The service derives the parent program automatically.\n * To create quiz steps, create or clone the quizzes separately, then specify their IDs in each step's `quizOptions.id`.\n *\n * This is the preferred bulk-create method.\n * To create a single step, call [CreateStep](https://dev.wix.com/docs/api-reference/business-management/online-programs/steps/create-step).\n */\nexport function bulkCreateSteps(payload: object): RequestOptionsFactory<any> {\n  function __bulkCreateSteps({ host }: any) {\n    const serializedData = transformPaths(payload, [\n      {\n        transformFn: transformSDKTimestampToRESTTimestamp,\n        paths: TRANSFORM_PATHS_2,\n      },\n      {\n        transformFn: transformSDKFloatToRESTFloat,\n        paths: TRANSFORM_PATHS_3,\n      },\n    ]);\n    const metadata = {\n      entityFqdn: 'wix.online_programs.v3.step',\n      method: 'POST' as any,\n      methodFqn: 'wix.onlineprograms.steps.v3.StepsService.BulkCreateSteps',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixOnlineprogramsStepsV3StepsServiceUrl({\n        protoPath: '/v3/bulk/steps/create',\n        data: serializedData,\n        host,\n      }),\n      data: serializedData,\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: TRANSFORM_PATHS_4,\n          },\n          {\n            transformFn: transformRESTFloatToSDKFloat,\n            paths: TRANSFORM_PATHS_5,\n          },\n        ]),\n    };\n\n    return metadata;\n  }\n\n  return __bulkCreateSteps;\n}\n\n/**\n * Retrieves a step.\n *\n * Use `descriptionFieldSet` to control how much description content to return.\n * Some returned fields depend on the caller's permissions.\n */\nexport function getStep(payload: object): RequestOptionsFactory<any> {\n  function __getStep({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.online_programs.v3.step',\n      method: 'GET' as any,\n      methodFqn: 'wix.onlineprograms.steps.v3.StepsService.GetStep',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixOnlineprogramsStepsV3StepsServiceUrl({\n        protoPath: '/v3/steps/{stepId}',\n        data: payload,\n        host,\n      }),\n      params: toURLSearchParams(payload),\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: TRANSFORM_PATHS_0,\n          },\n          {\n            transformFn: transformRESTFloatToSDKFloat,\n            paths: TRANSFORM_PATHS_1,\n          },\n        ]),\n    };\n\n    return metadata;\n  }\n\n  return __getStep;\n}\n\n/**\n * Updates a step.\n *\n * Each time the step is updated, `revision` increments by 1. The current `revision` must be passed when updating the step. This ensures you're working with the latest step and prevents unintended overwrites.\n *\n * Use this method to update step content and quiz settings.\n * To move a step within a section or to another section, call [MoveStep](https://dev.wix.com/docs/api-reference/business-management/online-programs/steps/move-step) instead of updating `step.sectionId`.\n * To attach a quiz to the step, create or clone the quiz separately, then specify its ID in `step.quizOptions.id`.\n *\n * To update multiple steps in a single API call, call [BulkUpdateSteps](https://dev.wix.com/docs/api-reference/business-management/online-programs/steps/bulk-update-steps).\n */\nexport function updateStep(payload: object): RequestOptionsFactory<any> {\n  function __updateStep({ host }: any) {\n    const serializedData = transformPaths(payload, [\n      {\n        transformFn: transformSDKFieldMaskToRESTFieldMask,\n        paths: TRANSFORM_PATHS_6,\n      },\n      {\n        transformFn: transformSDKTimestampToRESTTimestamp,\n        paths: TRANSFORM_PATHS_0,\n      },\n      {\n        transformFn: transformSDKFloatToRESTFloat,\n        paths: TRANSFORM_PATHS_1,\n      },\n    ]);\n    const metadata = {\n      entityFqdn: 'wix.online_programs.v3.step',\n      method: 'PATCH' as any,\n      methodFqn: 'wix.onlineprograms.steps.v3.StepsService.UpdateStep',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixOnlineprogramsStepsV3StepsServiceUrl({\n        protoPath: '/v3/steps/{step.id}',\n        data: serializedData,\n        host,\n      }),\n      data: serializedData,\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: TRANSFORM_PATHS_0,\n          },\n          {\n            transformFn: transformRESTFloatToSDKFloat,\n            paths: TRANSFORM_PATHS_1,\n          },\n        ]),\n    };\n\n    return metadata;\n  }\n\n  return __updateStep;\n}\n\n/**\n * Updates up to 100 steps in a single API call.\n *\n * Each time a step is updated, `revision` increments by 1. The current `revision` must be passed when updating the step. This ensures you're working with the latest step and prevents unintended overwrites.\n *\n * Use this method for content updates across multiple steps. Each `steps.step.revision` must be the current revision.\n * A partial step may omit `sectionId` and `programId`; the service resolves those values from the existing step.\n * If a requested `steps.step.id` does not identify an existing step, its result is returned as a failed item.\n * To move a step within a section or to another section, call [MoveStep](https://dev.wix.com/docs/api-reference/business-management/online-programs/steps/move-step).\n *\n * To update a single step, call [UpdateStep](https://dev.wix.com/docs/api-reference/business-management/online-programs/steps/update-step).\n */\nexport function bulkUpdateSteps(payload: object): RequestOptionsFactory<any> {\n  function __bulkUpdateSteps({ host }: any) {\n    const serializedData = transformPaths(payload, [\n      {\n        transformFn: transformSDKFieldMaskToRESTFieldMask,\n        paths: TRANSFORM_PATHS_7,\n      },\n      {\n        transformFn: transformSDKTimestampToRESTTimestamp,\n        paths: TRANSFORM_PATHS_8,\n      },\n      {\n        transformFn: transformSDKFloatToRESTFloat,\n        paths: TRANSFORM_PATHS_9,\n      },\n    ]);\n    const metadata = {\n      entityFqdn: 'wix.online_programs.v3.step',\n      method: 'POST' as any,\n      methodFqn: 'wix.onlineprograms.steps.v3.StepsService.BulkUpdateSteps',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixOnlineprogramsStepsV3StepsServiceUrl({\n        protoPath: '/v3/bulk/steps/update',\n        data: serializedData,\n        host,\n      }),\n      data: serializedData,\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: TRANSFORM_PATHS_4,\n          },\n          {\n            transformFn: transformRESTFloatToSDKFloat,\n            paths: TRANSFORM_PATHS_5,\n          },\n        ]),\n    };\n\n    return metadata;\n  }\n\n  return __bulkUpdateSteps;\n}\n\n/**\n * Deletes a step from active program content.\n *\n * The public API doesn't provide a restore flow for deleted steps.\n *\n * If the deleted step is the last step that references a quiz, the quiz is also deleted.\n */\nexport function deleteStep(payload: object): RequestOptionsFactory<any> {\n  function __deleteStep({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.online_programs.v3.step',\n      method: 'DELETE' as any,\n      methodFqn: 'wix.onlineprograms.steps.v3.StepsService.DeleteStep',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixOnlineprogramsStepsV3StepsServiceUrl({\n        protoPath: '/v3/steps/{stepId}',\n        data: payload,\n        host,\n      }),\n      params: toURLSearchParams(payload),\n    };\n\n    return metadata;\n  }\n\n  return __deleteStep;\n}\n\n/**\n * Retrieves a list of steps, given the provided paging, filtering, and sorting.\n *\n * Query Steps runs with these defaults, which you can override:\n *\n * - `createdDate` is sorted in `DESC` order.\n * - `paging.offset` is `0`.\n *\n * For predictable response sizes, we recommend setting `paging.limit` up to `100`.\n *\n * If your app is already scoped to a specific program, pass `programId` in addition to the query filters. `programId` adds program context to the request and doesn't replace section-based filtering in `query`.\n * Supported sorting fields are `createdDate`, `id`, `programId`, and `ordering`. When sorting by `ordering`, also filter by `sectionId`.\n * Use `descriptionFieldSet` to control how much description content to return.\n * Some returned fields depend on the caller's permissions.\n *\n * To learn about working with Query methods, see [API Query Language](https://dev.wix.com/docs/api-reference/articles/work-with-wix-apis/data-retrieval/about-the-wix-api-query-language), [Sorting and Paging](https://dev.wix.com/docs/api-reference/articles/work-with-wix-apis/data-retrieval/about-sorting-and-paging), and [Field Projection](https://dev.wix.com/docs/api-reference/articles/work-with-wix-apis/data-retrieval/about-field-projection).\n */\nexport function querySteps(payload: object): RequestOptionsFactory<any> {\n  function __querySteps({ host }: any) {\n    const serializedData = transformPaths(payload, [\n      {\n        transformFn: transformSDKFloatToRESTFloat,\n        paths: TRANSFORM_PATHS_10,\n      },\n    ]);\n    const metadata = {\n      entityFqdn: 'wix.online_programs.v3.step',\n      method: 'POST' as any,\n      methodFqn: 'wix.onlineprograms.steps.v3.StepsService.QuerySteps',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixOnlineprogramsStepsV3StepsServiceUrl({\n        protoPath: '/v3/steps/query',\n        data: serializedData,\n        host,\n      }),\n      data: serializedData,\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: TRANSFORM_PATHS_2,\n          },\n          {\n            transformFn: transformRESTFloatToSDKFloat,\n            paths: TRANSFORM_PATHS_3,\n          },\n        ]),\n    };\n\n    return metadata;\n  }\n\n  return __querySteps;\n}\n\n/**\n * Moves a step within a section or to a different section.\n *\n * Each time the step is updated, `revision` increments by 1. Pass the current `revision` when possible to protect against conflicting updates.\n *\n * If `afterStepId` isn't specified, the step is moved to the beginning of the target section.\n * The step's ordering is recalculated automatically.\n */\nexport function moveStep(payload: object): RequestOptionsFactory<any> {\n  function __moveStep({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.online_programs.v3.step',\n      method: 'PATCH' as any,\n      methodFqn: 'wix.onlineprograms.steps.v3.StepsService.MoveStep',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixOnlineprogramsStepsV3StepsServiceUrl({\n        protoPath: '/v3/steps/{stepId}/move',\n        data: payload,\n        host,\n      }),\n      data: payload,\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: TRANSFORM_PATHS_0,\n          },\n          {\n            transformFn: transformRESTFloatToSDKFloat,\n            paths: TRANSFORM_PATHS_1,\n          },\n        ]),\n    };\n\n    return metadata;\n  }\n\n  return __moveStep;\n}\n\n/**\n * Clones a step.\n *\n * The cloned step is added to the same section as the original step.\n * If the original step is linked to a quiz, the quiz is cloned and the cloned step references the new quiz.\n */\nexport function cloneStep(payload: object): RequestOptionsFactory<any> {\n  function __cloneStep({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.online_programs.v3.step',\n      method: 'POST' as any,\n      methodFqn: 'wix.onlineprograms.steps.v3.StepsService.CloneStep',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixOnlineprogramsStepsV3StepsServiceUrl({\n        protoPath: '/v3/steps/{stepId}/clone',\n        data: payload,\n        host,\n      }),\n      data: payload,\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: TRANSFORM_PATHS_0,\n          },\n          {\n            transformFn: transformRESTFloatToSDKFloat,\n            paths: TRANSFORM_PATHS_1,\n          },\n        ]),\n    };\n\n    return metadata;\n  }\n\n  return __cloneStep;\n}\n","import {\n  createStep as publicCreateStep,\n  bulkCreateSteps as publicBulkCreateSteps,\n  getStep as publicGetStep,\n  updateStep as publicUpdateStep,\n  bulkUpdateSteps as publicBulkUpdateSteps,\n  deleteStep as publicDeleteStep,\n  querySteps as publicQuerySteps,\n  typedQuerySteps as publicTypedQuerySteps,\n  moveStep as publicMoveStep,\n  cloneStep as publicCloneStep,\n} from './online-programs-v3-step-steps.public.js';\nimport { createRESTModule } from '@wix/sdk-runtime/rest-modules';\nimport { createEventModule } from '@wix/sdk-runtime/event-definition-modules';\nimport {\n  BuildRESTFunction,\n  MaybeContext,\n  BuildEventDefinition,\n} from '@wix/sdk-types';\nimport { HttpClient } from '@wix/sdk-types';\nimport { createQueryOverloadRouter } from '@wix/sdk-runtime/query-method-router';\nimport {\n  QueryStepsOptions,\n  StepQuery,\n  StepsQueryBuilder,\n  typedQuerySteps as universalTypedQuerySteps,\n} from './online-programs-v3-step-steps.universal.js';\nimport { onStepCreated as publicOnStepCreated } from './online-programs-v3-step-steps.public.js';\nimport { onStepDeleted as publicOnStepDeleted } from './online-programs-v3-step-steps.public.js';\nimport { onStepMoved as publicOnStepMoved } from './online-programs-v3-step-steps.public.js';\nimport { onStepUpdated as publicOnStepUpdated } from './online-programs-v3-step-steps.public.js';\n\nfunction customQuerySteps(httpClient: HttpClient) {\n  const router = /*#__PURE__*/ createQueryOverloadRouter({\n    builderQueryFunction: (options?: QueryStepsOptions) =>\n      publicQuerySteps(httpClient)(options),\n    typedQueryFunction: (query: StepQuery, options?: QueryStepsOptions) =>\n      publicTypedQuerySteps(httpClient)(query, options),\n    hasOptionsParameter: true,\n  });\n\n  function overloadedQuery(\n    query: StepQuery,\n    options?: QueryStepsOptions\n  ): ReturnType<typeof universalTypedQuerySteps>;\n  function overloadedQuery(options?: QueryStepsOptions): StepsQueryBuilder;\n  function overloadedQuery(\n    queryOrOptions?: StepQuery | QueryStepsOptions,\n    options?: QueryStepsOptions\n  ): any {\n    return router(...arguments);\n  }\n\n  return overloadedQuery;\n}\n\nexport const createStep: MaybeContext<\n  BuildRESTFunction<typeof publicCreateStep> & typeof publicCreateStep\n> = /*#__PURE__*/ createRESTModule(publicCreateStep);\nexport const bulkCreateSteps: MaybeContext<\n  BuildRESTFunction<typeof publicBulkCreateSteps> & typeof publicBulkCreateSteps\n> = /*#__PURE__*/ createRESTModule(publicBulkCreateSteps);\nexport const getStep: MaybeContext<\n  BuildRESTFunction<typeof publicGetStep> & typeof publicGetStep\n> = /*#__PURE__*/ createRESTModule(publicGetStep);\nexport const updateStep: MaybeContext<\n  BuildRESTFunction<typeof publicUpdateStep> & typeof publicUpdateStep\n> = /*#__PURE__*/ createRESTModule(publicUpdateStep);\nexport const bulkUpdateSteps: MaybeContext<\n  BuildRESTFunction<typeof publicBulkUpdateSteps> & typeof publicBulkUpdateSteps\n> = /*#__PURE__*/ createRESTModule(publicBulkUpdateSteps);\nexport const deleteStep: MaybeContext<\n  BuildRESTFunction<typeof publicDeleteStep> & typeof publicDeleteStep\n> = /*#__PURE__*/ createRESTModule(publicDeleteStep);\nexport const moveStep: MaybeContext<\n  BuildRESTFunction<typeof publicMoveStep> & typeof publicMoveStep\n> = /*#__PURE__*/ createRESTModule(publicMoveStep);\nexport const cloneStep: MaybeContext<\n  BuildRESTFunction<typeof publicCloneStep> & typeof publicCloneStep\n> = /*#__PURE__*/ createRESTModule(publicCloneStep);\nexport const querySteps: MaybeContext<\n  BuildRESTFunction<typeof customQuerySteps> & typeof customQuerySteps\n> = /*#__PURE__*/ createRESTModule(customQuerySteps);\n/**\n * Triggered when a step is created.\n */\nexport const onStepCreated: BuildEventDefinition<typeof publicOnStepCreated> &\n  typeof publicOnStepCreated =\n  /*#__PURE__*/ createEventModule(publicOnStepCreated);\n/**\n * Triggered when a step is deleted.\n */\nexport const onStepDeleted: BuildEventDefinition<typeof publicOnStepDeleted> &\n  typeof publicOnStepDeleted =\n  /*#__PURE__*/ createEventModule(publicOnStepDeleted);\n/**\n * Triggered when a step is moved.\n */\nexport const onStepMoved: BuildEventDefinition<typeof publicOnStepMoved> &\n  typeof publicOnStepMoved = /*#__PURE__*/ createEventModule(publicOnStepMoved);\n/**\n * Triggered when a step is updated.\n */\nexport const onStepUpdated: BuildEventDefinition<typeof publicOnStepUpdated> &\n  typeof publicOnStepUpdated =\n  /*#__PURE__*/ createEventModule(publicOnStepUpdated);\n\nexport {\n  StepType,\n  Enum,\n  RequestedFields,\n  BulkActionType,\n  DescriptionFieldSet,\n  SortOrder,\n  Placement,\n  State,\n  WebhookIdentityType,\n} from './online-programs-v3-step-steps.universal.js';\nexport {\n  Step,\n  StepStepTypeOptionsOneOf,\n  WixVideo,\n  VideoResolution,\n  FocalPoint,\n  Description,\n  DescriptionMediaOneOf,\n  VideoOptions,\n  VideoOptionsVideoSourceOneOf,\n  QuizOptions,\n  ExtendedFields,\n  UpdateDocumentsEvent,\n  UpdateDocumentsEventOperationOneOf,\n  DocumentUpdateOperation,\n  IndexDocument,\n  DocumentPayload,\n  DocumentImage,\n  DeleteByIdsOperation,\n  DeleteByFilterOperation,\n  UpdateByFilterOperation,\n  UpdateExistingOperation,\n  StepMoved,\n  CreateStepRequest,\n  CreateStepResponse,\n  BulkCreateStepsRequest,\n  BulkCreateStepsResponse,\n  BulkStepResult,\n  ItemMetadata,\n  ApplicationError,\n  BulkActionMetadata,\n  BulkCreateStepRequest,\n  BulkCreateStepResponse,\n  BulkCreateStepMigrationRequest,\n  BulkCreateStepMigrationResponse,\n  GetStepRequest,\n  GetStepResponse,\n  UpdateStepRequest,\n  UpdateStepResponse,\n  BulkUpdateStepsRequest,\n  MaskedStep,\n  BulkUpdateStepsResponse,\n  CommonItemMetadata,\n  BulkUpdateStepResult,\n  CommonBulkActionMetadata,\n  DeleteStepRequest,\n  DeleteStepResponse,\n  QueryStepsRequest,\n  CursorQuery,\n  CursorQueryPagingMethodOneOf,\n  Sorting,\n  AddressLocation,\n  CursorPaging,\n  QueryStepsResponse,\n  CursorPagingMetadata,\n  Cursors,\n  QueryStepsWithoutPagingRequest,\n  QueryStepsWithoutPagingResponse,\n  ListStepOrderingMetadataRequest,\n  ListStepOrderingMetadataResponse,\n  StepOrderingMetadata,\n  GetStepOrderingNeighborsRequest,\n  GetStepOrderingNeighborsResponse,\n  ListAllProgramStepsRequest,\n  ListAllProgramStepsResponse,\n  DeleteAllProgramStepsRequest,\n  DeleteAllProgramStepsResponse,\n  BulkCloneStepRequest,\n  BulkCloneStepResponse,\n  MoveStepRequest,\n  MoveStepResponse,\n  CloneStepRequest,\n  CloneStepResponse,\n  RestoreStepFromTrashRequest,\n  RestoreStepFromTrashResponse,\n  DomainEvent,\n  DomainEventBodyOneOf,\n  EntityCreatedEvent,\n  RestoreInfo,\n  EntityUpdatedEvent,\n  EntityDeletedEvent,\n  ActionEvent,\n  Empty,\n  SearchIndexingNotification,\n  MessageEnvelope,\n  IdentificationData,\n  IdentificationDataIdOneOf,\n  AccountInfo,\n  BaseEventMetadata,\n  EventMetadata,\n  AccountInfoMetadata,\n  StepCreatedEnvelope,\n  StepDeletedEnvelope,\n  StepMovedEnvelope,\n  StepUpdatedEnvelope,\n  CreateStepOptions,\n  BulkCreateStepsOptions,\n  GetStepOptions,\n  UpdateStep,\n  UpdateStepOptions,\n  BulkUpdateStepsOptions,\n  QueryStepsOptions,\n  StepsQueryResult,\n  StepsQueryBuilder,\n  StepQuerySpec,\n  MoveStepOptions,\n  CloneStepOptions,\n} from './online-programs-v3-step-steps.universal.js';\nexport { utils } from './online-programs-v3-step-steps.universal.js';\nexport {\n  StepTypeWithLiterals,\n  EnumWithLiterals,\n  RequestedFieldsWithLiterals,\n  BulkActionTypeWithLiterals,\n  DescriptionFieldSetWithLiterals,\n  SortOrderWithLiterals,\n  PlacementWithLiterals,\n  StateWithLiterals,\n  WebhookIdentityTypeWithLiterals,\n  CommonQueryWithEntityContext,\n  StepQuery,\n} from './online-programs-v3-step-steps.universal.js';\n"],"mappings":"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","names":["renameKeysFromRESTResponseToSDKResponse","transformRESTFloatToSDKFloat","transformRESTImageToSDKImage","transformRESTTimestampToSDKTimestamp","transformPaths","transformRESTVideoV2ToSDKVideoV2","payload","transformPaths","TRANSFORM_PATHS_0","TRANSFORM_PATHS_1","TRANSFORM_PATHS_2","TRANSFORM_PATHS_3","TRANSFORM_PATHS_4","TRANSFORM_PATHS_5","TRANSFORM_PATHS_6","TRANSFORM_PATHS_7","StepType","Enum","RequestedFields","BulkActionType","DescriptionFieldSet","SortOrder","Placement","State","WebhookIdentityType","createStep","bulkCreateSteps","getStep","updateStep","bulkUpdateSteps","deleteStep","querySteps","moveStep","cloneStep","TRANSFORM_PATHS_0","TRANSFORM_PATHS_1","TRANSFORM_PATHS_2","TRANSFORM_PATHS_3","TRANSFORM_PATHS_4","TRANSFORM_PATHS_5","TRANSFORM_PATHS_6","TRANSFORM_PATHS_7","TRANSFORM_PATHS_8","TRANSFORM_PATHS_9","createStep","bulkCreateSteps","getStep","updateStep","bulkUpdateSteps","deleteStep","querySteps","typedQuerySteps","moveStep","cloneStep","renameKeysFromRESTResponseToSDKResponse","transformPaths","transformRESTTimestampToSDKTimestamp","TRANSFORM_PATHS_0","transformRESTFloatToSDKFloat","TRANSFORM_PATHS_1","transformRESTVideoV2ToSDKVideoV2","TRANSFORM_PATHS_2","transformRESTImageToSDKImage","TRANSFORM_PATHS_3","TRANSFORM_PATHS_4","TRANSFORM_PATHS_5","TRANSFORM_PATHS_6","TRANSFORM_PATHS_7","TRANSFORM_PATHS_8","TRANSFORM_PATHS_9","querySteps","typedQuerySteps","createStep","bulkCreateSteps","getStep","updateStep","bulkUpdateSteps","deleteStep","moveStep","cloneStep","onStepCreated","onStepDeleted","onStepMoved","onStepUpdated"]}