определение типа перезаписи пакета npm - PullRequest
2 голосов
/ 01 февраля 2020

Я использую пакет direct-vuex с vuexfire. Теперь мне нужно изменить некоторые определения типов из пакета direct-vuex для совместимости с vuexfire.

Как я могу это сделать?

Это не имеет никакого эффекта, когда я объявляю модуль direct-vuex в мой файл типов. Мой другой тип defs работает нормально.

declare module 'direct-vuex' {

  export type ToDirectStore<O extends AppStore> = ShowContent<{
    readonly state: ShowContent<DirectState<O>>
    getters: ShowContent<DirectGetters<O>>
    commit: ShowContent<DirectMutations<O>>
    dispatch: ShowContent<DirectActions<O>>
    original: VuexStore<O>
  }>

  type DirectActions<O extends StoreOrModuleOptions> =
    ToDirectActions<OrEmpty<O['actions']>>
    & GetActionsInModules<FilterNamespaced<OrEmpty<O['modules']>>>
    & MergeActionsFromModules<FilterNotNamespaced<OrEmpty<O['modules']>>>

  type ToDirectActions<T extends ActionsImpl> = {
    [K in keyof T]: Parameters<T[K]>[1] extends undefined
      ? (() => PromiseOf<ReturnType<T[K]>>)
      : ((payload >>>>>> Here i need to add a "?" sign <<<<<<<<<: Parameters<T[K]>[1]) => PromiseOf<ReturnType<T[K]>>)
  }
}

Спасибо за помощь

...