diff --git a/packages/medusa/src/types/common.ts b/packages/medusa/src/types/common.ts index 9837a0de1e..f094dc73b0 100644 --- a/packages/medusa/src/types/common.ts +++ b/packages/medusa/src/types/common.ts @@ -9,6 +9,20 @@ export type PartialPick = { export type Writable = { -readonly [key in keyof T]: T[key] } +export type ExtendedFindConfig = FindConfig & { + where: Partial> + withDeleted?: boolean +} + +export type Selector = { + [key in keyof TEntity]?: + | TEntity[key] + | TEntity[key][] + | DateComparisonOperator + | StringComparisonOperator + | NumericalComparisonOperator +} + export type TotalField = | "shipping_total" | "discount_total" diff --git a/packages/medusa/src/utils/build-query.ts b/packages/medusa/src/utils/build-query.ts index f116404729..f61123741d 100644 --- a/packages/medusa/src/utils/build-query.ts +++ b/packages/medusa/src/utils/build-query.ts @@ -1,20 +1,11 @@ import { - DateComparisonOperator, + ExtendedFindConfig, FindConfig, - NumericalComparisonOperator, - StringComparisonOperator, + Selector, Writable, } from "../types/common" import { FindOperator, In, Raw } from "typeorm" -type Selector = { - [key in keyof TEntity]?: TEntity[key] - | TEntity[key][] - | DateComparisonOperator - | StringComparisonOperator - | NumericalComparisonOperator -} - /** * Used to build TypeORM queries. * @param selector The selector @@ -24,10 +15,7 @@ type Selector = { export function buildQuery( selector: Selector, config: FindConfig = {} -): FindConfig & { - where: Partial> - withDeleted?: boolean -} { +): ExtendedFindConfig { const build = ( obj: Selector ): Partial> => {