UNPKG

dbaas

Version:

Database as a service. Expose db to REST and GraphQL.

20 lines (19 loc) 1.17 kB
import { ItemsService } from "directus"; import type { AbstractServiceOptions } from "directus/types/services"; import type { Request } from "express"; import type Models from "../models/index.js"; import type ExtensionContext from "../types/ExtensionContext.js"; import type { ActionHookContext } from "../types/RegisterHook/ActionHookHandler.js"; import type { FilterHookContext } from "../types/RegisterHook/FilterHookHandler.js"; /** Services instance created per request or filter/action context */ declare abstract class ServicesBase { #private; constructor(extensionContext: ExtensionContext, requestOrHookContext: Request | (FilterHookContext | ActionHookContext), options?: Partial<AbstractServiceOptions>); get extensionContext(): ExtensionContext; get requestOrHookContext(): Request | (FilterHookContext | ActionHookContext); get options(): Partial<AbstractServiceOptions> | undefined; loginAsAdmin(): void; /** Get and cache the ItemsService scoped by request or hook context */ getItemsService<TCollection extends keyof Models>(collection: TCollection): ItemsService<Models[TCollection]>; } export default ServicesBase;