feat(): Add modules options autocomplete to medusa config (#14465)

* feat(): Add modules options autocomplete to medusa config

* feat(): Add modules options autocomplete to medusa config

* Create great-lies-decide.md

* feat(): Add modules options autocomplete to medusa config
This commit is contained in:
Adrien de Peretti
2026-01-07 21:24:35 +01:00
committed by GitHub
parent b2245cc672
commit 568742826f
22 changed files with 107 additions and 0 deletions

View File

@@ -1,3 +1,4 @@
import "./types"
import { Module, Modules } from "@medusajs/framework/utils"
import AnalyticsService from "./services/analytics-service"
import loadProviders from "./loaders/providers"

View File

@@ -22,3 +22,10 @@ export type AnalyticsModuleOptions = Partial<ModuleServiceInitializeOptions> & {
options?: Record<string, unknown>
}[]
}
declare module "@medusajs/types" {
interface ModuleOptions {
"@medusajs/analytics": AnalyticsModuleOptions
"@medusajs/medusa/analytics": AnalyticsModuleOptions
}
}

View File

@@ -1,3 +1,4 @@
import "./types"
import { AuthModuleService } from "@services"
import loadProviders from "./loaders/providers"
import { Module, Modules } from "@medusajs/framework/utils"

View File

@@ -46,3 +46,10 @@ export interface MedusaCloudAuthProviderOptions {
callback_url: string
disabled: boolean
}
declare module "@medusajs/types" {
interface ModuleOptions {
"@medusajs/auth": AuthModuleOptions
"@medusajs/medusa/auth": AuthModuleOptions
}
}

View File

@@ -15,3 +15,10 @@ export type InMemoryCacheModuleOptions = {
*/
ttl?: number
}
declare module "@medusajs/types" {
interface ModuleOptions {
"@medusajs/cache-inmemory": InMemoryCacheModuleOptions
"@medusajs/medusa/cache-inmemory": InMemoryCacheModuleOptions
}
}

View File

@@ -25,3 +25,10 @@ export type RedisCacheModuleOptions = {
*/
namespace?: string
}
declare module "@medusajs/types" {
interface ModuleOptions {
"@medusajs/cache-redis": RedisCacheModuleOptions
"@medusajs/medusa/cache-redis": RedisCacheModuleOptions
}
}

View File

@@ -1,3 +1,4 @@
import "./types"
import { Module, Modules } from "@medusajs/framework/utils"
import { default as loadHash } from "./loaders/hash"
import { default as loadProviders } from "./loaders/providers"

View File

@@ -88,3 +88,10 @@ export type CachingModuleOptions = Partial<ModuleServiceInitializeOptions> & {
options?: Record<string, unknown>
}[]
}
declare module "@medusajs/types" {
interface ModuleOptions {
"@medusajs/caching": CachingModuleOptions
"@medusajs/medusa/caching": CachingModuleOptions
}
}

View File

@@ -69,3 +69,10 @@ export type EventBusRedisModuleOptions = {
*/
jobOptions?: EmitOptions
}
declare module "@medusajs/types" {
interface ModuleOptions {
"@medusajs/event-bus-redis": EventBusRedisModuleOptions
"@medusajs/medusa/event-bus-redis": EventBusRedisModuleOptions
}
}

View File

@@ -1,3 +1,4 @@
import "./types"
import { FileModuleService } from "@services"
import loadProviders from "./loaders/providers"
import { Module, Modules } from "@medusajs/framework/utils"

View File

@@ -27,3 +27,10 @@ export type FileModuleOptions = Partial<ModuleServiceInitializeOptions> & {
options?: Record<string, unknown>
}
}
declare module "@medusajs/types" {
interface ModuleOptions {
"@medusajs/file": FileModuleOptions
"@medusajs/medusa/file": FileModuleOptions
}
}

View File

@@ -1,3 +1,4 @@
import "./types"
import { FulfillmentModuleService } from "@services"
import loadProviders from "./loaders/providers"
import { Module, Modules } from "@medusajs/framework/utils"

View File

@@ -33,3 +33,10 @@ export type FulfillmentModuleOptions =
options?: Record<string, unknown>
}[]
}
declare module "@medusajs/types" {
interface ModuleOptions {
"@medusajs/fulfillment": FulfillmentModuleOptions
"@medusajs/medusa/fulfillment": FulfillmentModuleOptions
}
}

View File

@@ -1,3 +1,4 @@
import "./types"
import { Module, Modules } from "@medusajs/framework/utils"
import { default as loadProviders } from "./loaders/providers"
import LockingModuleService from "./services/locking-module"

View File

@@ -31,3 +31,10 @@ export type LockingModuleOptions = Partial<ModuleServiceInitializeOptions> & {
options?: Record<string, unknown>
}[]
}
declare module "@medusajs/types" {
interface ModuleOptions {
"@medusajs/locking": LockingModuleOptions
"@medusajs/medusa/locking": LockingModuleOptions
}
}

View File

@@ -1,3 +1,4 @@
import "./types"
import { NotificationModuleService } from "@services"
import loadProviders from "./loaders/providers"
import { Module, Modules } from "@medusajs/framework/utils"

View File

@@ -45,3 +45,10 @@ export type MedusaCloudEmailOptions = {
environment_handle?: string
sandbox_handle?: string
}
declare module "@medusajs/types" {
interface ModuleOptions {
"@medusajs/notification": NotificationModuleOptions
"@medusajs/medusa/notification": NotificationModuleOptions
}
}

View File

@@ -1,3 +1,4 @@
import "./types"
import { PaymentModuleService } from "@services"
import loadProviders from "./loaders/providers"
import { Module, Modules } from "@medusajs/framework/utils"

View File

@@ -27,3 +27,10 @@ export type PaymentModuleOptions = Partial<ModuleServiceInitializeOptions> & {
options?: Record<string, unknown>
}[]
}
declare module "@medusajs/types" {
interface ModuleOptions {
"@medusajs/payment": PaymentModuleOptions
"@medusajs/medusa/payment": PaymentModuleOptions
}
}

View File

@@ -1,3 +1,4 @@
import "./types"
import { Module, Modules } from "@medusajs/framework/utils"
import { WorkflowsModuleService } from "@services"
import { loadUtils, redisConnection } from "./loaders"

View File

@@ -177,3 +177,10 @@ export type RedisWorkflowsOptions = {
options?: RedisOptions
}
}
declare module "@medusajs/types" {
interface ModuleOptions {
"@medusajs/workflow-engine-redis": RedisWorkflowsOptions
"@medusajs/medusa/workflow-engine-redis": RedisWorkflowsOptions
}
}