Skip to content

Commit cb17155

Browse files
committed
export Model interfaces
1 parent 1091ea4 commit cb17155

File tree

2 files changed

+11
-9
lines changed

2 files changed

+11
-9
lines changed

src/index.ts

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,9 @@ import {
2222
FeathersVuexOptions,
2323
HandleEvents,
2424
ModelStatic,
25-
ModelSetupContext
25+
ModelSetupContext,
26+
Model,
27+
ModelClone
2628
} from './service-module/types'
2729
import { initAuth, hydrateApi } from './utils'
2830
import { FeathersVuex } from './vue-plugin/vue-plugin'
@@ -54,10 +56,7 @@ declare module 'vue' {
5456
}
5557
}
5658

57-
export default function feathersVuex<DefaultBaseModelType = {}>(
58-
feathers,
59-
options: FeathersVuexOptions
60-
) {
59+
export default function feathersVuex(feathers, options: FeathersVuexOptions) {
6160
if (!feathers || !feathers.service) {
6261
throw new Error(
6362
'The first argument to feathersVuex must be a feathers client.'
@@ -86,8 +85,8 @@ export default function feathersVuex<DefaultBaseModelType = {}>(
8685

8786
return {
8887
makeServicePlugin,
89-
BaseModel: BaseModel as ModelStatic<DefaultBaseModelType>,
90-
castBaseModel: <T>() => BaseModel as ModelStatic<T>,
88+
BaseModel: BaseModel as ModelStatic,
89+
castBaseModel: <T extends {} = {}>() => BaseModel as ModelStatic<T>,
9190
makeAuthPlugin,
9291
FeathersVuex,
9392
models,
@@ -110,6 +109,9 @@ export {
110109
clients,
111110
useFind,
112111
useGet,
112+
Model,
113+
ModelClone,
114+
ModelStatic,
113115
ServiceState,
114116
ModelSetupContext
115117
}

src/service-module/types.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -115,12 +115,12 @@ export interface ModelInstanceOptions {
115115
/**
116116
* FeathersVuex Model with readonly data props
117117
*/
118-
type Model<D extends {} = {}> = ModelInstance<D> & Readonly<D>
118+
export type Model<D extends {} = {}> = ModelInstance<D> & Readonly<D>
119119

120120
/**
121121
* FeathersVuex Model clone with writeable data props
122122
*/
123-
type ModelClone<D extends {} = {}> = ModelInstanceClone<D> & D
123+
export type ModelClone<D extends {} = {}> = ModelInstanceClone<D> & D
124124

125125
/** Static Model interface */
126126
export interface ModelStatic<D extends {} = {}> extends EventEmitter {

0 commit comments

Comments
 (0)