UNPKG

@neo-one/server-plugin

Version:

NEO•ONE Server plugin API.

28 lines (27 loc) 1.59 kB
import { CreateCRUD } from './CreateCRUD'; import { DeleteCRUD } from './DeleteCRUD'; import { DescribeCRUD } from './DescribeCRUD'; import { GetCRUD } from './GetCRUD'; import { ResourceType } from './ResourceType'; import { StartCRUD } from './StartCRUD'; import { StopCRUD } from './StopCRUD'; import { BaseResource, BaseResourceOptions } from './types'; export interface CRUDOptions<Resource extends BaseResource, ResourceOptions extends BaseResourceOptions> { readonly resourceType: ResourceType<Resource, ResourceOptions>; readonly start?: StartCRUD<Resource, ResourceOptions> | undefined; readonly stop?: StopCRUD<Resource, ResourceOptions> | undefined; readonly delete?: DeleteCRUD<Resource, ResourceOptions>; readonly create?: CreateCRUD<Resource, ResourceOptions>; readonly get?: GetCRUD<Resource, ResourceOptions>; readonly describe?: DescribeCRUD<Resource, ResourceOptions>; } export declare class CRUD<Resource extends BaseResource, ResourceOptions extends BaseResourceOptions> { readonly resourceType: ResourceType<Resource, ResourceOptions>; readonly start: StartCRUD<Resource, ResourceOptions> | undefined; readonly stop: StopCRUD<Resource, ResourceOptions> | undefined; readonly delete: DeleteCRUD<Resource, ResourceOptions>; readonly create: CreateCRUD<Resource, ResourceOptions>; readonly get: GetCRUD<Resource, ResourceOptions>; readonly describe: DescribeCRUD<Resource, ResourceOptions>; constructor({ resourceType, start, stop, delete: del, create, get, describe, }: CRUDOptions<Resource, ResourceOptions>); }