Skip to content
1 min read · 118 words

Function: defineIsolatedService()

ts
function defineIsolatedService<M, S, E>(
  input: IsolatedServiceSpecInput<M, S, E>,
): IsolatedServiceSpec<M, S, E>;

Defined in: src/batteries/isolation/validation.ts:94

Define an isolated service's spec — validates input eagerly (see validateIsolatedServiceSpecInput) then resolves it via @nhtio/adk/batteries/isolation!resolveIsolatedServiceSpec. This is the public entry point re-exported as defineIsolatedService from this battery's index.ts barrel.

Type Parameters

Type ParameterDefault type
M extends MethodMapRecord<never, never>
S extends StreamMapRecord<never, never>
E extends EventMapRecord<never, never>

Parameters

ParameterType
inputIsolatedServiceSpecInput<M, S, E>

Returns

IsolatedServiceSpec<M, S, E>

Throws

@nhtio/adk/batteries/isolation!E_INVALID_ISOLATION_OPTIONS when the spec fails validation (missing/empty name, unknown top-level key, or a name collision across methods/streams/events).