import { type ServiceDsl } from "https://deno.land/x/tappin@0.5.0/core/service.ts";
DSL used to create service
Methods
inject(...tokens: Array<symbol | string | { token: symbol | string; }>): ServiceDsl<T>
Adds dependencies to this DSL
scope(scope: Scope): ServiceDsl<T>
Sets scope
token(token: string | symbol): ServiceDsl<T>
Sets injection token
provide(f: (...deps: any[]) => Promise<T> | T): ServiceDsl<T>
Sets provider function
set<V>(key: string | symbol, value: V): ServiceDsl<T>
Sets metadata
apply(f: (dsl: ServiceDsl<T>) => ServiceDsl<T>): ServiceDsl<T>
Applies DSL