From 0f5245a0983383521fde274df832c0e9a9762da5 Mon Sep 17 00:00:00 2001
From: Shahed Nasser <shahednasser@gmail.com>
Date: Thu, 8 Aug 2024 19:20:27 +0300
Subject: [PATCH] chore(core-flows): [16] export types and steps, add basic
 TSDocs

---
 .../core/core-flows/src/region/steps/create-regions.ts     | 3 +++
 .../core/core-flows/src/region/steps/delete-regions.ts     | 3 +++
 .../src/region/steps/set-regions-payment-providers.ts      | 3 +++
 .../core/core-flows/src/region/steps/update-regions.ts     | 5 ++++-
 .../core/core-flows/src/region/workflows/create-regions.ts | 3 +++
 .../core/core-flows/src/region/workflows/delete-regions.ts | 7 +++++--
 .../core/core-flows/src/region/workflows/update-regions.ts | 3 +++
 .../src/reservation/steps/create-reservations.ts           | 3 +++
 .../reservation/steps/delete-reservations-by-line-items.ts | 3 +++
 .../src/reservation/steps/delete-reservations.ts           | 3 +++
 .../src/reservation/steps/update-reservations.ts           | 3 +++
 .../src/reservation/workflows/create-reservations.ts       | 3 +++
 .../workflows/delete-reservations-by-line-items.ts         | 7 +++++--
 .../src/reservation/workflows/delete-reservations.ts       | 3 +++
 .../src/reservation/workflows/update-reservations.ts       | 3 +++
 .../src/return-reason/steps/create-return-reasons.ts       | 3 +++
 .../src/return-reason/steps/delete-return-reasons.ts       | 7 ++++---
 .../src/return-reason/steps/update-return-reasons.ts       | 3 +++
 .../src/return-reason/workflows/create-return-reasons.ts   | 7 +++++--
 .../src/return-reason/workflows/delete-return-reasons.ts   | 7 +++++--
 .../src/return-reason/workflows/update-return-reasons.ts   | 7 +++++--
 .../steps/associate-locations-with-channels.ts             | 7 +++++--
 .../steps/associate-products-with-channels.ts              | 7 +++++--
 .../sales-channel/steps/create-default-sales-channel.ts    | 7 +++++--
 .../src/sales-channel/steps/create-sales-channels.ts       | 7 +++++--
 .../src/sales-channel/steps/delete-sales-channels.ts       | 7 ++++---
 .../sales-channel/steps/detach-locations-from-channels.ts  | 7 +++++--
 .../steps/detach-products-from-sales-channels.ts           | 7 +++++--
 .../src/sales-channel/steps/update-sales-channels.ts       | 5 ++++-
 .../src/sales-channel/workflows/create-sales-channels.ts   | 7 +++++--
 .../src/sales-channel/workflows/delete-sales-channels.ts   | 7 +++++--
 .../workflows/link-products-to-sales-channel.ts            | 3 +++
 .../src/sales-channel/workflows/update-sales-channels.ts   | 7 +++++--
 33 files changed, 131 insertions(+), 36 deletions(-)

diff --git a/packages/core/core-flows/src/region/steps/create-regions.ts b/packages/core/core-flows/src/region/steps/create-regions.ts
index 07e100e84b131..7c708cb8cb2f4 100644
--- a/packages/core/core-flows/src/region/steps/create-regions.ts
+++ b/packages/core/core-flows/src/region/steps/create-regions.ts
@@ -3,6 +3,9 @@ import { ModuleRegistrationName } from "@medusajs/utils"
 import { StepResponse, createStep } from "@medusajs/workflows-sdk"
 
 export const createRegionsStepId = "create-regions"
+/**
+ * This step creates one or more regions.
+ */
 export const createRegionsStep = createStep(
   createRegionsStepId,
   async (data: CreateRegionDTO[], { container }) => {
diff --git a/packages/core/core-flows/src/region/steps/delete-regions.ts b/packages/core/core-flows/src/region/steps/delete-regions.ts
index ea5ac41d70f9d..16362d68e887f 100644
--- a/packages/core/core-flows/src/region/steps/delete-regions.ts
+++ b/packages/core/core-flows/src/region/steps/delete-regions.ts
@@ -3,6 +3,9 @@ import { ModuleRegistrationName } from "@medusajs/utils"
 import { StepResponse, createStep } from "@medusajs/workflows-sdk"
 
 export const deleteRegionsStepId = "delete-regions"
+/**
+ * This step deletes one or more regions.
+ */
 export const deleteRegionsStep = createStep(
   deleteRegionsStepId,
   async (ids: string[], { container }) => {
diff --git a/packages/core/core-flows/src/region/steps/set-regions-payment-providers.ts b/packages/core/core-flows/src/region/steps/set-regions-payment-providers.ts
index 0fa24d5d562c3..bfff9b77ddc66 100644
--- a/packages/core/core-flows/src/region/steps/set-regions-payment-providers.ts
+++ b/packages/core/core-flows/src/region/steps/set-regions-payment-providers.ts
@@ -92,6 +92,9 @@ async function getCurrentRegionPaymentProvidersLinks(
 
 export const setRegionsPaymentProvidersStepId =
   "add-region-payment-providers-step"
+/**
+ * This step sets the payment providers in regions.
+ */
 export const setRegionsPaymentProvidersStep = createStep(
   setRegionsPaymentProvidersStepId,
   async (data: SetRegionsPaymentProvidersStepInput, { container }) => {
diff --git a/packages/core/core-flows/src/region/steps/update-regions.ts b/packages/core/core-flows/src/region/steps/update-regions.ts
index 3236dc9be998c..085ced13b9a96 100644
--- a/packages/core/core-flows/src/region/steps/update-regions.ts
+++ b/packages/core/core-flows/src/region/steps/update-regions.ts
@@ -9,12 +9,15 @@ import {
 } from "@medusajs/utils"
 import { StepResponse, createStep } from "@medusajs/workflows-sdk"
 
-type UpdateRegionsStepInput = {
+export type UpdateRegionsStepInput = {
   selector: FilterableRegionProps
   update: UpdateRegionDTO
 }
 
 export const updateRegionsStepId = "update-region"
+/**
+ * This step updates regions matching the specified filters.
+ */
 export const updateRegionsStep = createStep(
   updateRegionsStepId,
   async (data: UpdateRegionsStepInput, { container }) => {
diff --git a/packages/core/core-flows/src/region/workflows/create-regions.ts b/packages/core/core-flows/src/region/workflows/create-regions.ts
index 03dd995d81f01..adfd1227a7393 100644
--- a/packages/core/core-flows/src/region/workflows/create-regions.ts
+++ b/packages/core/core-flows/src/region/workflows/create-regions.ts
@@ -11,6 +11,9 @@ import { setRegionsPaymentProvidersStep } from "../steps/set-regions-payment-pro
 import { createPricePreferencesWorkflow } from "../../pricing"
 
 export const createRegionsWorkflowId = "create-regions"
+/**
+ * This workflow creates one or more regions.
+ */
 export const createRegionsWorkflow = createWorkflow(
   createRegionsWorkflowId,
   (
diff --git a/packages/core/core-flows/src/region/workflows/delete-regions.ts b/packages/core/core-flows/src/region/workflows/delete-regions.ts
index cf0f58ea04f25..4d074c12bd42b 100644
--- a/packages/core/core-flows/src/region/workflows/delete-regions.ts
+++ b/packages/core/core-flows/src/region/workflows/delete-regions.ts
@@ -1,12 +1,15 @@
 import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk"
 import { deleteRegionsStep } from "../steps"
 
-type WorkflowInput = { ids: string[] }
+export type DeleteRegionsWorkflowInput = { ids: string[] }
 
 export const deleteRegionsWorkflowId = "delete-regions"
+/**
+ * This workflow deletes one or more regions.
+ */
 export const deleteRegionsWorkflow = createWorkflow(
   deleteRegionsWorkflowId,
-  (input: WorkflowData<WorkflowInput>): WorkflowData<void> => {
+  (input: WorkflowData<DeleteRegionsWorkflowInput>): WorkflowData<void> => {
     return deleteRegionsStep(input.ids)
   }
 )
diff --git a/packages/core/core-flows/src/region/workflows/update-regions.ts b/packages/core/core-flows/src/region/workflows/update-regions.ts
index 3323b04140660..54d5b14464e21 100644
--- a/packages/core/core-flows/src/region/workflows/update-regions.ts
+++ b/packages/core/core-flows/src/region/workflows/update-regions.ts
@@ -12,6 +12,9 @@ import { setRegionsPaymentProvidersStep } from "../steps/set-regions-payment-pro
 import { updatePricePreferencesWorkflow } from "../../pricing"
 
 export const updateRegionsWorkflowId = "update-regions"
+/**
+ * This workflow updates regions matching the specified filters.
+ */
 export const updateRegionsWorkflow = createWorkflow(
   updateRegionsWorkflowId,
   (
diff --git a/packages/core/core-flows/src/reservation/steps/create-reservations.ts b/packages/core/core-flows/src/reservation/steps/create-reservations.ts
index 2981369699b56..037dc6faa14eb 100644
--- a/packages/core/core-flows/src/reservation/steps/create-reservations.ts
+++ b/packages/core/core-flows/src/reservation/steps/create-reservations.ts
@@ -4,6 +4,9 @@ import { StepResponse, createStep } from "@medusajs/workflows-sdk"
 import { ModuleRegistrationName } from "@medusajs/utils"
 
 export const createReservationsStepId = "create-reservations-step"
+/**
+ * This step creates one or more reservations.
+ */
 export const createReservationsStep = createStep(
   createReservationsStepId,
   async (data: InventoryTypes.CreateReservationItemInput[], { container }) => {
diff --git a/packages/core/core-flows/src/reservation/steps/delete-reservations-by-line-items.ts b/packages/core/core-flows/src/reservation/steps/delete-reservations-by-line-items.ts
index dd9b46bcbeee2..bae8f32719840 100644
--- a/packages/core/core-flows/src/reservation/steps/delete-reservations-by-line-items.ts
+++ b/packages/core/core-flows/src/reservation/steps/delete-reservations-by-line-items.ts
@@ -5,6 +5,9 @@ import { ModuleRegistrationName } from "@medusajs/utils"
 
 export const deleteReservationsByLineItemsStepId =
   "delete-reservations-by-line-items"
+/**
+ * This step deletes reservations by their associated line items.
+ */
 export const deleteReservationsByLineItemsStep = createStep(
   deleteReservationsByLineItemsStepId,
   async (ids: string[], { container }) => {
diff --git a/packages/core/core-flows/src/reservation/steps/delete-reservations.ts b/packages/core/core-flows/src/reservation/steps/delete-reservations.ts
index 24564232c0078..ac8eb00e77edc 100644
--- a/packages/core/core-flows/src/reservation/steps/delete-reservations.ts
+++ b/packages/core/core-flows/src/reservation/steps/delete-reservations.ts
@@ -4,6 +4,9 @@ import { IInventoryService } from "@medusajs/types"
 import { ModuleRegistrationName } from "@medusajs/utils"
 
 export const deleteReservationsStepId = "delete-reservations"
+/**
+ * This step deletes one or more reservations.
+ */
 export const deleteReservationsStep = createStep(
   deleteReservationsStepId,
   async (ids: string[], { container }) => {
diff --git a/packages/core/core-flows/src/reservation/steps/update-reservations.ts b/packages/core/core-flows/src/reservation/steps/update-reservations.ts
index 09b4f312188d5..13c83532c2ca7 100644
--- a/packages/core/core-flows/src/reservation/steps/update-reservations.ts
+++ b/packages/core/core-flows/src/reservation/steps/update-reservations.ts
@@ -8,6 +8,9 @@ import { StepResponse, createStep } from "@medusajs/workflows-sdk"
 import { ModuleRegistrationName } from "@medusajs/utils"
 
 export const updateReservationsStepId = "update-reservations-step"
+/**
+ * This step updates one or more reservations.
+ */
 export const updateReservationsStep = createStep(
   updateReservationsStepId,
   async (data: InventoryTypes.UpdateReservationItemInput[], { container }) => {
diff --git a/packages/core/core-flows/src/reservation/workflows/create-reservations.ts b/packages/core/core-flows/src/reservation/workflows/create-reservations.ts
index 4c1b7a9a05d96..9540b248cae69 100644
--- a/packages/core/core-flows/src/reservation/workflows/create-reservations.ts
+++ b/packages/core/core-flows/src/reservation/workflows/create-reservations.ts
@@ -8,6 +8,9 @@ import { WorkflowTypes } from "@medusajs/types"
 import { createReservationsStep } from "../steps"
 
 export const createReservationsWorkflowId = "create-reservations-workflow"
+/**
+ * This workflow creates one or more reservations.
+ */
 export const createReservationsWorkflow = createWorkflow(
   createReservationsWorkflowId,
   (
diff --git a/packages/core/core-flows/src/reservation/workflows/delete-reservations-by-line-items.ts b/packages/core/core-flows/src/reservation/workflows/delete-reservations-by-line-items.ts
index 28db2903b231a..40e6efdb873a7 100644
--- a/packages/core/core-flows/src/reservation/workflows/delete-reservations-by-line-items.ts
+++ b/packages/core/core-flows/src/reservation/workflows/delete-reservations-by-line-items.ts
@@ -2,13 +2,16 @@ import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk"
 
 import { deleteReservationsByLineItemsStep } from "../steps"
 
-type WorkflowInput = { ids: string[] }
+export type DeleteReservationByLineItemsWorkflowInput = { ids: string[] }
 
 export const deleteReservationsByLineItemsWorkflowId =
   "delete-reservations-by-line-items"
+/**
+ * This workflow deletes reservations by their associated line items.
+ */
 export const deleteReservationsByLineItemsWorkflow = createWorkflow(
   deleteReservationsByLineItemsWorkflowId,
-  (input: WorkflowData<WorkflowInput>): WorkflowData<void> => {
+  (input: WorkflowData<DeleteReservationByLineItemsWorkflowInput>): WorkflowData<void> => {
     return deleteReservationsByLineItemsStep(input.ids)
   }
 )
diff --git a/packages/core/core-flows/src/reservation/workflows/delete-reservations.ts b/packages/core/core-flows/src/reservation/workflows/delete-reservations.ts
index 438c1f5ef25bf..941284500aff1 100644
--- a/packages/core/core-flows/src/reservation/workflows/delete-reservations.ts
+++ b/packages/core/core-flows/src/reservation/workflows/delete-reservations.ts
@@ -5,6 +5,9 @@ import { deleteReservationsStep } from "../steps"
 type WorkflowInput = { ids: string[] }
 
 export const deleteReservationsWorkflowId = "delete-reservations"
+/**
+ * This workflow deletes one or more reservations.
+ */
 export const deleteReservationsWorkflow = createWorkflow(
   deleteReservationsWorkflowId,
   (input: WorkflowData<WorkflowInput>): WorkflowData<void> => {
diff --git a/packages/core/core-flows/src/reservation/workflows/update-reservations.ts b/packages/core/core-flows/src/reservation/workflows/update-reservations.ts
index 6b8a686ddaa18..616084f19aa87 100644
--- a/packages/core/core-flows/src/reservation/workflows/update-reservations.ts
+++ b/packages/core/core-flows/src/reservation/workflows/update-reservations.ts
@@ -8,6 +8,9 @@ import { WorkflowTypes } from "@medusajs/types"
 import { updateReservationsStep } from "../steps"
 
 export const updateReservationsWorkflowId = "update-reservations-workflow"
+/**
+ * This workflow updates one or more reservations.
+ */
 export const updateReservationsWorkflow = createWorkflow(
   updateReservationsWorkflowId,
   (
diff --git a/packages/core/core-flows/src/return-reason/steps/create-return-reasons.ts b/packages/core/core-flows/src/return-reason/steps/create-return-reasons.ts
index d2cf924740952..3a0e1ef198093 100644
--- a/packages/core/core-flows/src/return-reason/steps/create-return-reasons.ts
+++ b/packages/core/core-flows/src/return-reason/steps/create-return-reasons.ts
@@ -6,6 +6,9 @@ import { ModuleRegistrationName } from "@medusajs/utils"
 import { StepResponse, createStep } from "@medusajs/workflows-sdk"
 
 export const createReturnReasonsStepId = "create-return-reasons"
+/**
+ * This step creates one or more return reasons.
+ */
 export const createReturnReasonsStep = createStep(
   createReturnReasonsStepId,
   async (data: CreateOrderReturnReasonDTO[], { container }) => {
diff --git a/packages/core/core-flows/src/return-reason/steps/delete-return-reasons.ts b/packages/core/core-flows/src/return-reason/steps/delete-return-reasons.ts
index 786ac955241fb..6fc2e31750f14 100644
--- a/packages/core/core-flows/src/return-reason/steps/delete-return-reasons.ts
+++ b/packages/core/core-flows/src/return-reason/steps/delete-return-reasons.ts
@@ -2,12 +2,13 @@ import { IOrderModuleService } from "@medusajs/types"
 import { ModuleRegistrationName } from "@medusajs/utils"
 import { createStep, StepResponse } from "@medusajs/workflows-sdk"
 
-type DeleteReturnReasonStepInput = string[]
-
 export const deleteReturnReasonStepId = "delete-return-reasons"
+/**
+ * This step deletes one or more return reasons.
+ */
 export const deleteReturnReasonStep = createStep(
   deleteReturnReasonStepId,
-  async (ids: DeleteReturnReasonStepInput, { container }) => {
+  async (ids: string[], { container }) => {
     const service = container.resolve<IOrderModuleService>(
       ModuleRegistrationName.ORDER
     )
diff --git a/packages/core/core-flows/src/return-reason/steps/update-return-reasons.ts b/packages/core/core-flows/src/return-reason/steps/update-return-reasons.ts
index bbcfe8fb333f3..e67abe59028d4 100644
--- a/packages/core/core-flows/src/return-reason/steps/update-return-reasons.ts
+++ b/packages/core/core-flows/src/return-reason/steps/update-return-reasons.ts
@@ -16,6 +16,9 @@ type UpdateReturnReasonStepInput = {
 }
 
 export const updateReturnReasonStepId = "update-return-reasons"
+/**
+ * This step updates return reasons matching the specified filters.
+ */
 export const updateReturnReasonsStep = createStep(
   updateReturnReasonStepId,
   async (data: UpdateReturnReasonStepInput, { container }) => {
diff --git a/packages/core/core-flows/src/return-reason/workflows/create-return-reasons.ts b/packages/core/core-flows/src/return-reason/workflows/create-return-reasons.ts
index dce02cefacfd3..04d882682f6a3 100644
--- a/packages/core/core-flows/src/return-reason/workflows/create-return-reasons.ts
+++ b/packages/core/core-flows/src/return-reason/workflows/create-return-reasons.ts
@@ -9,13 +9,16 @@ import {
 } from "@medusajs/workflows-sdk"
 import { createReturnReasonsStep } from "../steps"
 
-type WorkflowInput = { data: CreateOrderReturnReasonDTO[] }
+export type CreateReturnReasonsWorkflowInput = { data: CreateOrderReturnReasonDTO[] }
 
 export const createReturnReasonsWorkflowId = "create-return-reasons"
+/**
+ * This workflow creates one or more return reasons.
+ */
 export const createReturnReasonsWorkflow = createWorkflow(
   createReturnReasonsWorkflowId,
   (
-    input: WorkflowData<WorkflowInput>
+    input: WorkflowData<CreateReturnReasonsWorkflowInput>
   ): WorkflowResponse<OrderReturnReasonDTO[]> => {
     return new WorkflowResponse(createReturnReasonsStep(input.data))
   }
diff --git a/packages/core/core-flows/src/return-reason/workflows/delete-return-reasons.ts b/packages/core/core-flows/src/return-reason/workflows/delete-return-reasons.ts
index b4cb1f490f1e9..bb15dd481134a 100644
--- a/packages/core/core-flows/src/return-reason/workflows/delete-return-reasons.ts
+++ b/packages/core/core-flows/src/return-reason/workflows/delete-return-reasons.ts
@@ -1,12 +1,15 @@
 import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk"
 import { deleteReturnReasonStep } from "../steps"
 
-type WorkflowInput = { ids: string[] }
+export type DeleteReturnReasonsWorkflowInput = { ids: string[] }
 
 export const deleteReturnReasonsWorkflowId = "delete-return-reasons"
+/**
+ * This workflow deletes one or more return reasons.
+ */
 export const deleteReturnReasonsWorkflow = createWorkflow(
   deleteReturnReasonsWorkflowId,
-  (input: WorkflowData<WorkflowInput>): WorkflowData<void> => {
+  (input: WorkflowData<DeleteReturnReasonsWorkflowInput>): WorkflowData<void> => {
     return deleteReturnReasonStep(input.ids)
   }
 )
diff --git a/packages/core/core-flows/src/return-reason/workflows/update-return-reasons.ts b/packages/core/core-flows/src/return-reason/workflows/update-return-reasons.ts
index d902abda7020b..743b5bbd073b7 100644
--- a/packages/core/core-flows/src/return-reason/workflows/update-return-reasons.ts
+++ b/packages/core/core-flows/src/return-reason/workflows/update-return-reasons.ts
@@ -10,16 +10,19 @@ import {
 } from "@medusajs/workflows-sdk"
 import { updateReturnReasonsStep } from "../steps"
 
-type WorkflowInput = {
+export type UpdateReturnReasonsWorkflowInput = {
   selector: FilterableOrderReturnReasonProps
   update: ReturnReasonUpdatableFields
 }
 
 export const updateReturnReasonsWorkflowId = "update-return-reasons"
+/**
+ * This workflow updates return reasons matching the specified filters.
+ */
 export const updateReturnReasonsWorkflow = createWorkflow(
   updateReturnReasonsWorkflowId,
   (
-    input: WorkflowData<WorkflowInput>
+    input: WorkflowData<UpdateReturnReasonsWorkflowInput>
   ): WorkflowResponse<OrderReturnReasonDTO[]> => {
     return new WorkflowResponse(updateReturnReasonsStep(input))
   }
diff --git a/packages/core/core-flows/src/sales-channel/steps/associate-locations-with-channels.ts b/packages/core/core-flows/src/sales-channel/steps/associate-locations-with-channels.ts
index 26d6fb47e3290..7fd85d73f5a08 100644
--- a/packages/core/core-flows/src/sales-channel/steps/associate-locations-with-channels.ts
+++ b/packages/core/core-flows/src/sales-channel/steps/associate-locations-with-channels.ts
@@ -2,7 +2,7 @@ import { createStep, StepResponse } from "@medusajs/workflows-sdk"
 
 import { ContainerRegistrationKeys, Modules } from "@medusajs/utils"
 
-interface StepInput {
+export interface AssociateLocationsWithSalesChannelsStepInput {
   links: {
     sales_channel_id: string
     location_id: string
@@ -11,9 +11,12 @@ interface StepInput {
 
 export const associateLocationsWithSalesChannelsStepId =
   "associate-locations-with-sales-channels-step"
+/**
+ * This step creates links between locations and sales channel records.
+ */
 export const associateLocationsWithSalesChannelsStep = createStep(
   associateLocationsWithSalesChannelsStepId,
-  async (data: StepInput, { container }) => {
+  async (data: AssociateLocationsWithSalesChannelsStepInput, { container }) => {
     if (!data.links?.length) {
       return new StepResponse([], [])
     }
diff --git a/packages/core/core-flows/src/sales-channel/steps/associate-products-with-channels.ts b/packages/core/core-flows/src/sales-channel/steps/associate-products-with-channels.ts
index 9792d057814f5..b4833d021a02d 100644
--- a/packages/core/core-flows/src/sales-channel/steps/associate-products-with-channels.ts
+++ b/packages/core/core-flows/src/sales-channel/steps/associate-products-with-channels.ts
@@ -1,7 +1,7 @@
 import { ContainerRegistrationKeys, Modules } from "@medusajs/utils"
 import { createStep, StepResponse } from "@medusajs/workflows-sdk"
 
-interface StepInput {
+export interface AssociateProductsWithSalesChannelsStepInput {
   links: {
     sales_channel_id: string
     product_id: string
@@ -10,9 +10,12 @@ interface StepInput {
 
 export const associateProductsWithSalesChannelsStepId =
   "associate-products-with-channels"
+/**
+ * This step creates links between products and sales channel records.
+ */
 export const associateProductsWithSalesChannelsStep = createStep(
   associateProductsWithSalesChannelsStepId,
-  async (input: StepInput, { container }) => {
+  async (input: AssociateProductsWithSalesChannelsStepInput, { container }) => {
     if (!input.links?.length) {
       return new StepResponse([], [])
     }
diff --git a/packages/core/core-flows/src/sales-channel/steps/create-default-sales-channel.ts b/packages/core/core-flows/src/sales-channel/steps/create-default-sales-channel.ts
index 4de9a64657635..960603a10781f 100644
--- a/packages/core/core-flows/src/sales-channel/steps/create-default-sales-channel.ts
+++ b/packages/core/core-flows/src/sales-channel/steps/create-default-sales-channel.ts
@@ -5,14 +5,17 @@ import {
 import { ModuleRegistrationName } from "@medusajs/utils"
 import { StepResponse, createStep } from "@medusajs/workflows-sdk"
 
-interface StepInput {
+export interface CreateDefaultSalesChannelStepInput {
   data: CreateSalesChannelDTO
 }
 
 export const createDefaultSalesChannelStepId = "create-default-sales-channel"
+/**
+ * This step creates a default sales channel.
+ */
 export const createDefaultSalesChannelStep = createStep(
   createDefaultSalesChannelStepId,
-  async (input: StepInput, { container }) => {
+  async (input: CreateDefaultSalesChannelStepInput, { container }) => {
     const salesChannelService = container.resolve<ISalesChannelModuleService>(
       ModuleRegistrationName.SALES_CHANNEL
     )
diff --git a/packages/core/core-flows/src/sales-channel/steps/create-sales-channels.ts b/packages/core/core-flows/src/sales-channel/steps/create-sales-channels.ts
index bbd9143bbc1dc..cac37ff84a3f3 100644
--- a/packages/core/core-flows/src/sales-channel/steps/create-sales-channels.ts
+++ b/packages/core/core-flows/src/sales-channel/steps/create-sales-channels.ts
@@ -5,14 +5,17 @@ import {
 import { ModuleRegistrationName } from "@medusajs/utils"
 import { StepResponse, createStep } from "@medusajs/workflows-sdk"
 
-interface StepInput {
+export interface CreateSalesChannelsStepInput {
   data: CreateSalesChannelDTO[]
 }
 
 export const createSalesChannelsStepId = "create-sales-channels"
+/**
+ * This step creates one or more sales channels.
+ */
 export const createSalesChannelsStep = createStep(
   createSalesChannelsStepId,
-  async (input: StepInput, { container }) => {
+  async (input: CreateSalesChannelsStepInput, { container }) => {
     const salesChannelService = container.resolve<ISalesChannelModuleService>(
       ModuleRegistrationName.SALES_CHANNEL
     )
diff --git a/packages/core/core-flows/src/sales-channel/steps/delete-sales-channels.ts b/packages/core/core-flows/src/sales-channel/steps/delete-sales-channels.ts
index 32c57eeb3c7d7..2f1d204e2b7f9 100644
--- a/packages/core/core-flows/src/sales-channel/steps/delete-sales-channels.ts
+++ b/packages/core/core-flows/src/sales-channel/steps/delete-sales-channels.ts
@@ -2,12 +2,13 @@ import { ISalesChannelModuleService } from "@medusajs/types"
 import { ModuleRegistrationName } from "@medusajs/utils"
 import { StepResponse, createStep } from "@medusajs/workflows-sdk"
 
-type DeleteSalesChannelsInput = string[]
-
 export const deleteSalesChannelsStepId = "delete-sales-channels"
+/**
+ * This step deletes one or more sales channels.
+ */
 export const deleteSalesChannelsStep = createStep(
   deleteSalesChannelsStepId,
-  async (ids: DeleteSalesChannelsInput, { container }) => {
+  async (ids: string[], { container }) => {
     const service = container.resolve<ISalesChannelModuleService>(
       ModuleRegistrationName.SALES_CHANNEL
     )
diff --git a/packages/core/core-flows/src/sales-channel/steps/detach-locations-from-channels.ts b/packages/core/core-flows/src/sales-channel/steps/detach-locations-from-channels.ts
index dbb06230a9576..b168bed58382c 100644
--- a/packages/core/core-flows/src/sales-channel/steps/detach-locations-from-channels.ts
+++ b/packages/core/core-flows/src/sales-channel/steps/detach-locations-from-channels.ts
@@ -3,7 +3,7 @@ import { createStep, StepResponse } from "@medusajs/workflows-sdk"
 
 import { ContainerRegistrationKeys, Modules } from "@medusajs/utils"
 
-interface StepInput {
+export interface DetachLocationsFromSalesChannelsStepInput {
   links: {
     sales_channel_id: string
     location_id: string
@@ -12,9 +12,12 @@ interface StepInput {
 
 export const detachLocationsFromSalesChannelsStepId =
   "detach-locations-from-sales-channels"
+/**
+ * This step dismisses links between location and sales channel records.
+ */
 export const detachLocationsFromSalesChannelsStep = createStep(
   detachLocationsFromSalesChannelsStepId,
-  async (data: StepInput, { container }) => {
+  async (data: DetachLocationsFromSalesChannelsStepInput, { container }) => {
     if (!data.links?.length) {
       return new StepResponse([], [])
     }
diff --git a/packages/core/core-flows/src/sales-channel/steps/detach-products-from-sales-channels.ts b/packages/core/core-flows/src/sales-channel/steps/detach-products-from-sales-channels.ts
index 92971daed2a5f..b14743b3c7a10 100644
--- a/packages/core/core-flows/src/sales-channel/steps/detach-products-from-sales-channels.ts
+++ b/packages/core/core-flows/src/sales-channel/steps/detach-products-from-sales-channels.ts
@@ -1,7 +1,7 @@
 import { ContainerRegistrationKeys, Modules } from "@medusajs/utils"
 import { createStep, StepResponse } from "@medusajs/workflows-sdk"
 
-interface StepInput {
+export interface DetachProductsFromSalesChannelsStepInput {
   links: {
     sales_channel_id: string
     product_id: string
@@ -10,9 +10,12 @@ interface StepInput {
 
 export const detachProductsFromSalesChannelsStepId =
   "detach-products-from-sales-channels-step"
+/**
+ * This step dismisses links between product and sales channel records.
+ */
 export const detachProductsFromSalesChannelsStep = createStep(
   detachProductsFromSalesChannelsStepId,
-  async (input: StepInput, { container }) => {
+  async (input: DetachProductsFromSalesChannelsStepInput, { container }) => {
     if (!input.links?.length) {
       return new StepResponse(void 0, [])
     }
diff --git a/packages/core/core-flows/src/sales-channel/steps/update-sales-channels.ts b/packages/core/core-flows/src/sales-channel/steps/update-sales-channels.ts
index e3f42aca3fc47..c81f82bb2845e 100644
--- a/packages/core/core-flows/src/sales-channel/steps/update-sales-channels.ts
+++ b/packages/core/core-flows/src/sales-channel/steps/update-sales-channels.ts
@@ -9,12 +9,15 @@ import {
 } from "@medusajs/utils"
 import { StepResponse, createStep } from "@medusajs/workflows-sdk"
 
-type UpdateSalesChannelsStepInput = {
+export type UpdateSalesChannelsStepInput = {
   selector: FilterableSalesChannelProps
   update: UpdateSalesChannelDTO
 }
 
 export const updateSalesChannelsStepId = "update-sales-channels"
+/**
+ * This step updates sales channels matching the specified filters.
+ */
 export const updateSalesChannelsStep = createStep(
   updateSalesChannelsStepId,
   async (data: UpdateSalesChannelsStepInput, { container }) => {
diff --git a/packages/core/core-flows/src/sales-channel/workflows/create-sales-channels.ts b/packages/core/core-flows/src/sales-channel/workflows/create-sales-channels.ts
index b5da3e2b38786..8f7ad18649fd6 100644
--- a/packages/core/core-flows/src/sales-channel/workflows/create-sales-channels.ts
+++ b/packages/core/core-flows/src/sales-channel/workflows/create-sales-channels.ts
@@ -6,12 +6,15 @@ import {
 } from "@medusajs/workflows-sdk"
 import { createSalesChannelsStep } from "../steps/create-sales-channels"
 
-type WorkflowInput = { salesChannelsData: CreateSalesChannelDTO[] }
+export type CreateSalesChannelsWorkflowInput = { salesChannelsData: CreateSalesChannelDTO[] }
 
 export const createSalesChannelsWorkflowId = "create-sales-channels"
+/**
+ * This workflow creates one or more sales channels.
+ */
 export const createSalesChannelsWorkflow = createWorkflow(
   createSalesChannelsWorkflowId,
-  (input: WorkflowData<WorkflowInput>): WorkflowResponse<SalesChannelDTO[]> => {
+  (input: WorkflowData<CreateSalesChannelsWorkflowInput>): WorkflowResponse<SalesChannelDTO[]> => {
     return new WorkflowResponse(
       createSalesChannelsStep({ data: input.salesChannelsData })
     )
diff --git a/packages/core/core-flows/src/sales-channel/workflows/delete-sales-channels.ts b/packages/core/core-flows/src/sales-channel/workflows/delete-sales-channels.ts
index 6a496ffa074dd..9e57fac3237d8 100644
--- a/packages/core/core-flows/src/sales-channel/workflows/delete-sales-channels.ts
+++ b/packages/core/core-flows/src/sales-channel/workflows/delete-sales-channels.ts
@@ -4,12 +4,15 @@ import { deleteSalesChannelsStep } from "../steps/delete-sales-channels"
 import { removeRemoteLinkStep } from "../../common/steps/remove-remote-links"
 import { Modules } from "@medusajs/utils"
 
-type WorkflowInput = { ids: string[] }
+export type DeleteSalesChannelsWorkflowInput = { ids: string[] }
 
 export const deleteSalesChannelsWorkflowId = "delete-sales-channels"
+/**
+ * This workflow deletes one or more sales channels.
+ */
 export const deleteSalesChannelsWorkflow = createWorkflow(
   deleteSalesChannelsWorkflowId,
-  (input: WorkflowData<WorkflowInput>): WorkflowData<void> => {
+  (input: WorkflowData<DeleteSalesChannelsWorkflowInput>): WorkflowData<void> => {
     deleteSalesChannelsStep(input.ids)
 
     removeRemoteLinkStep({
diff --git a/packages/core/core-flows/src/sales-channel/workflows/link-products-to-sales-channel.ts b/packages/core/core-flows/src/sales-channel/workflows/link-products-to-sales-channel.ts
index 415e39a994449..7d2e8e522b1a7 100644
--- a/packages/core/core-flows/src/sales-channel/workflows/link-products-to-sales-channel.ts
+++ b/packages/core/core-flows/src/sales-channel/workflows/link-products-to-sales-channel.ts
@@ -6,6 +6,9 @@ import { detachProductsFromSalesChannelsStep } from "../steps"
 
 export const linkProductsToSalesChannelWorkflowId =
   "link-products-to-sales-channel"
+/**
+ * This workflow creates or dismisses links between product and sales channel records.
+ */
 export const linkProductsToSalesChannelWorkflow = createWorkflow(
   linkProductsToSalesChannelWorkflowId,
   (input: WorkflowData<LinkWorkflowInput>): WorkflowData<void> => {
diff --git a/packages/core/core-flows/src/sales-channel/workflows/update-sales-channels.ts b/packages/core/core-flows/src/sales-channel/workflows/update-sales-channels.ts
index 0ad0117546c73..a291a1e08a793 100644
--- a/packages/core/core-flows/src/sales-channel/workflows/update-sales-channels.ts
+++ b/packages/core/core-flows/src/sales-channel/workflows/update-sales-channels.ts
@@ -10,16 +10,19 @@ import {
 } from "@medusajs/workflows-sdk"
 import { updateSalesChannelsStep } from "../steps/update-sales-channels"
 
-type UpdateSalesChannelsStepInput = {
+export type UpdateSalesChannelsWorkflowInput = {
   selector: FilterableSalesChannelProps
   update: UpdateSalesChannelDTO
 }
 
 export const updateSalesChannelsWorkflowId = "update-sales-channels"
+/**
+ * This workflow updates sales channels matching the specified conditions.
+ */
 export const updateSalesChannelsWorkflow = createWorkflow(
   updateSalesChannelsWorkflowId,
   (
-    input: WorkflowData<UpdateSalesChannelsStepInput>
+    input: WorkflowData<UpdateSalesChannelsWorkflowInput>
   ): WorkflowResponse<SalesChannelDTO[]> => {
     return new WorkflowResponse(updateSalesChannelsStep(input))
   }