UNPKG

@thisisagile/easy

Version:

Straightforward library for building domain-driven microservice architectures

19 lines (18 loc) 895 B
import { Json, JsonValue } from './Json'; import { Id } from './Id'; import { PageList, PageOptions } from './PageList'; import { List } from './List'; import { Optional } from './Types'; export type FetchOptions = PageOptions; export declare abstract class Gateway<Options = FetchOptions> { all(options?: Options): Promise<PageList<Json>>; byId(id: Id, options?: Options): Promise<Optional<Json>>; by(_key: string, _value: JsonValue, _options?: Options): Promise<PageList<Json>>; byIds(..._ids: Id[]): Promise<List<Json>>; search(q: JsonValue, options?: Options): Promise<PageList<Json>>; filter(options?: Options): Promise<PageList<Json>>; exists(id: Id, options?: Options): Promise<boolean>; add(item: Json, options?: Options): Promise<Json>; update(item: Json, options?: Options): Promise<Json>; remove(id: Id, options?: Options): Promise<boolean>; }