@neo-one/server-plugin
Version:
NEO•ONE Server plugin API.
28 lines (27 loc) • 1.59 kB
TypeScript
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>);
}