feat: initial setup for nuxt devtools
This commit is contained in:
3
src/types/index.ts
Normal file
3
src/types/index.ts
Normal file
@ -0,0 +1,3 @@
|
||||
export * from './rpc'
|
||||
export * from './server-ctx'
|
||||
export * from './module-options'
|
||||
7
src/types/module-options.ts
Normal file
7
src/types/module-options.ts
Normal file
@ -0,0 +1,7 @@
|
||||
import type { ConnectOptions } from 'mongoose'
|
||||
|
||||
export interface ModuleOptions {
|
||||
uri: string
|
||||
devtools: boolean
|
||||
options?: ConnectOptions
|
||||
}
|
||||
7
src/types/rpc.ts
Normal file
7
src/types/rpc.ts
Normal file
@ -0,0 +1,7 @@
|
||||
export interface ServerFunctions {
|
||||
listCollections(): Promise<any>
|
||||
}
|
||||
|
||||
export interface ClientFunctions {
|
||||
refresh(type: string): void
|
||||
}
|
||||
15
src/types/server-ctx.ts
Normal file
15
src/types/server-ctx.ts
Normal file
@ -0,0 +1,15 @@
|
||||
import type { BirpcGroup } from 'birpc'
|
||||
import type { Nuxt } from 'nuxt/schema'
|
||||
import type { ClientFunctions, ServerFunctions } from './rpc'
|
||||
import type { ModuleOptions } from './module-options'
|
||||
|
||||
export interface NuxtDevtoolsServerContext {
|
||||
nuxt: Nuxt
|
||||
options: ModuleOptions
|
||||
|
||||
rpc: BirpcGroup<ClientFunctions, ServerFunctions>
|
||||
|
||||
refresh: (event: keyof ServerFunctions) => void
|
||||
|
||||
extendServerRpc: <ClientFunctions = {}, ServerFunctions = {}>(name: string, functions: ServerFunctions) => BirpcGroup<ClientFunctions, ServerFunctions>
|
||||
}
|
||||
Reference in New Issue
Block a user