ProductVariationsModule: { addVariationOption: ((productVariationId: string, data: { inputData: { title: string; value: string }; localeContext: Locale }, userId?: string) => Promise<ProductVariation>); create: ((doc: ProductVariation & { locale?: string; title?: string }, userId?: string) => Promise<ProductVariation>); delete: ((productVariationId: string, userId?: string) => Promise<number>); deleteVariations: ((params: { excludedProductVariationIds: _ID[]; productId: string }) => Promise<number>); findProductVariation: ((query: { productVariationId: string }) => Promise<ProductVariation>); findProductVariationByKey: ((query: { key: string; productId: string }) => Promise<ProductVariation>); findProductVariations: ((query: { limit?: number; offset?: number; productId: string; tags?: string[] }) => Promise<ProductVariation[]>); option: ((productVariation: ProductVariation, productVariationOptionValue: string) => { _id: string; productVariationOption: string }); removeVariationOption: ((productVariationId: string, productVariationOptionValue: string, userId?: string) => Promise<void>); texts: { findLocalizedVariationText: ((query: { locale: string; productVariationId: string; productVariationOptionValue?: string }) => Promise<ProductVariationText>); findVariationTexts: ((query: { productVariationId: string; productVariationOptionValue?: string }) => Promise<ProductVariationText[]>); updateVariationTexts: ((productVariationId: string, texts: Omit<ProductVariationText, "authorId" | "productVariationId" | "productVariationOptionValue">[], productVariationOptionValue?: string, userId?: string) => Promise<ProductVariationText[]>); upsertLocalizedText: ((params: { productVariationId: string; productVariationOptionValue?: string }, locale: string, text: Omit<ProductVariationText, "authorId" | "locale" | "productVariationId" | "productVariationOptionValue">, userId?: string) => Promise<ProductVariationText>) }; update: ((productMediaId: string, doc: ProductVariation) => Promise<ProductVariation>) }

Type declaration

  • addVariationOption: ((productVariationId: string, data: { inputData: { title: string; value: string }; localeContext: Locale }, userId?: string) => Promise<ProductVariation>)
      • (productVariationId: string, data: { inputData: { title: string; value: string }; localeContext: Locale }, userId?: string): Promise<ProductVariation>
      • Parameters

        • productVariationId: string
        • data: { inputData: { title: string; value: string }; localeContext: Locale }
          • inputData: { title: string; value: string }
            • title: string
            • value: string
          • localeContext: Locale
        • Optional userId: string

        Returns Promise<ProductVariation>

  • create: ((doc: ProductVariation & { locale?: string; title?: string }, userId?: string) => Promise<ProductVariation>)
  • delete: ((productVariationId: string, userId?: string) => Promise<number>)
      • (productVariationId: string, userId?: string): Promise<number>
      • Parameters

        • productVariationId: string
        • Optional userId: string

        Returns Promise<number>

  • deleteVariations: ((params: { excludedProductVariationIds: _ID[]; productId: string }) => Promise<number>)
      • (params: { excludedProductVariationIds: _ID[]; productId: string }): Promise<number>
      • Parameters

        • params: { excludedProductVariationIds: _ID[]; productId: string }
          • excludedProductVariationIds: _ID[]
          • productId: string

        Returns Promise<number>

  • findProductVariation: ((query: { productVariationId: string }) => Promise<ProductVariation>)
      • (query: { productVariationId: string }): Promise<ProductVariation>
      • Parameters

        • query: { productVariationId: string }
          • productVariationId: string

        Returns Promise<ProductVariation>

  • findProductVariationByKey: ((query: { key: string; productId: string }) => Promise<ProductVariation>)
      • (query: { key: string; productId: string }): Promise<ProductVariation>
      • Parameters

        • query: { key: string; productId: string }
          • key: string
          • productId: string

        Returns Promise<ProductVariation>

  • findProductVariations: ((query: { limit?: number; offset?: number; productId: string; tags?: string[] }) => Promise<ProductVariation[]>)
      • (query: { limit?: number; offset?: number; productId: string; tags?: string[] }): Promise<ProductVariation[]>
      • Parameters

        • query: { limit?: number; offset?: number; productId: string; tags?: string[] }
          • Optional limit?: number
          • Optional offset?: number
          • productId: string
          • Optional tags?: string[]

        Returns Promise<ProductVariation[]>

  • option: ((productVariation: ProductVariation, productVariationOptionValue: string) => { _id: string; productVariationOption: string })
      • (productVariation: ProductVariation, productVariationOptionValue: string): { _id: string; productVariationOption: string }
      • Parameters

        Returns { _id: string; productVariationOption: string }

        • _id: string
        • productVariationOption: string
  • removeVariationOption: ((productVariationId: string, productVariationOptionValue: string, userId?: string) => Promise<void>)
      • (productVariationId: string, productVariationOptionValue: string, userId?: string): Promise<void>
      • Parameters

        • productVariationId: string
        • productVariationOptionValue: string
        • Optional userId: string

        Returns Promise<void>

  • texts: { findLocalizedVariationText: ((query: { locale: string; productVariationId: string; productVariationOptionValue?: string }) => Promise<ProductVariationText>); findVariationTexts: ((query: { productVariationId: string; productVariationOptionValue?: string }) => Promise<ProductVariationText[]>); updateVariationTexts: ((productVariationId: string, texts: Omit<ProductVariationText, "authorId" | "productVariationId" | "productVariationOptionValue">[], productVariationOptionValue?: string, userId?: string) => Promise<ProductVariationText[]>); upsertLocalizedText: ((params: { productVariationId: string; productVariationOptionValue?: string }, locale: string, text: Omit<ProductVariationText, "authorId" | "locale" | "productVariationId" | "productVariationOptionValue">, userId?: string) => Promise<ProductVariationText>) }
    • findLocalizedVariationText: ((query: { locale: string; productVariationId: string; productVariationOptionValue?: string }) => Promise<ProductVariationText>)
        • (query: { locale: string; productVariationId: string; productVariationOptionValue?: string }): Promise<ProductVariationText>
        • Parameters

          • query: { locale: string; productVariationId: string; productVariationOptionValue?: string }
            • locale: string
            • productVariationId: string
            • Optional productVariationOptionValue?: string

          Returns Promise<ProductVariationText>

    • findVariationTexts: ((query: { productVariationId: string; productVariationOptionValue?: string }) => Promise<ProductVariationText[]>)
        • (query: { productVariationId: string; productVariationOptionValue?: string }): Promise<ProductVariationText[]>
        • Parameters

          • query: { productVariationId: string; productVariationOptionValue?: string }
            • productVariationId: string
            • Optional productVariationOptionValue?: string

          Returns Promise<ProductVariationText[]>

    • updateVariationTexts: ((productVariationId: string, texts: Omit<ProductVariationText, "authorId" | "productVariationId" | "productVariationOptionValue">[], productVariationOptionValue?: string, userId?: string) => Promise<ProductVariationText[]>)
        • (productVariationId: string, texts: Omit<ProductVariationText, "authorId" | "productVariationId" | "productVariationOptionValue">[], productVariationOptionValue?: string, userId?: string): Promise<ProductVariationText[]>
        • Parameters

          • productVariationId: string
          • texts: Omit<ProductVariationText, "authorId" | "productVariationId" | "productVariationOptionValue">[]
          • Optional productVariationOptionValue: string
          • Optional userId: string

          Returns Promise<ProductVariationText[]>

    • upsertLocalizedText: ((params: { productVariationId: string; productVariationOptionValue?: string }, locale: string, text: Omit<ProductVariationText, "authorId" | "locale" | "productVariationId" | "productVariationOptionValue">, userId?: string) => Promise<ProductVariationText>)
        • (params: { productVariationId: string; productVariationOptionValue?: string }, locale: string, text: Omit<ProductVariationText, "authorId" | "locale" | "productVariationId" | "productVariationOptionValue">, userId?: string): Promise<ProductVariationText>
        • Parameters

          • params: { productVariationId: string; productVariationOptionValue?: string }
            • productVariationId: string
            • Optional productVariationOptionValue?: string
          • locale: string
          • text: Omit<ProductVariationText, "authorId" | "locale" | "productVariationId" | "productVariationOptionValue">
          • Optional userId: string

          Returns Promise<ProductVariationText>

  • update: ((productMediaId: string, doc: ProductVariation) => Promise<ProductVariation>)