UNPKG

@digicms/cms

Version:

An open source headless CMS solution to create and manage your own API. It provides a powerful dashboard and features to make your life easier. Databases supported: MySQL, MariaDB, PostgreSQL, SQLite

26 lines (20 loc) 907 B
type Entity = object; interface BaseService { getFetchParams?(params: object): object; } export interface SingleTypeService extends BaseService { find?(params: object): Promise<Entity> | Entity; createOrUpdate?(params: object): Promise<Entity> | Entity; delete?(params: object): Promise<Entity> | Entity; } export interface CollectionTypeService extends BaseService { find?(params: object): Promise<Entity[]> | Entity; findOne?(entityId: string, params: object): Promise<Entity> | Entity; create?(params: object): Promise<Entity> | Entity; update?(entityId: string, params: object): Promise<Entity> | Entity; delete?(entityId: string, params: object): Promise<Entity> | Entity; } export type Service = SingleTypeService | CollectionTypeService; export type GenericService = Partial<Service> & { [method: string | number | symbol]: (...args: any) => any; };