Skip to content

ProviderInstance

Defined in: core/src/provider/provider.instance.ts:19

A live instance of a provider produced by a ProviderType’s setup. Owns the provider’s actions, events, entity types, and bucket declarations, and re-emits its events registry’s events as its own event.

new ProviderInstance(id): ProviderInstance;

Defined in: core/src/provider/provider.instance.ts:28

Parameter Type
id string

ProviderInstance

EventEmitter.constructor

get actions(): ActionRegistry;

Defined in: core/src/provider/provider.instance.ts:48

Actions this provider exposes.

ActionRegistry


get buckets(): BucketRegistry;

Defined in: core/src/provider/provider.instance.ts:69

Buckets this provider declares. Registering during setup is what makes a bucket known before first use — a host mounts the routes for the exposed ones at boot, so a bucket discovered lazily would be discovered too late. Unlike actions and entities, registering does not publish anything: only exposed: true does that.

BucketRegistry


get entities(): EntityTypeRegistry;

Defined in: core/src/provider/provider.instance.ts:58

Entity types this provider exposes.

EntityTypeRegistry


get events(): EventRegistry;

Defined in: core/src/provider/provider.instance.ts:53

Events this provider can publish.

EventRegistry


get id(): string;

Defined in: core/src/provider/provider.instance.ts:43

The instance’s unique id.

string


get nlpActions(): NLPActionRegistry;

Defined in: core/src/provider/provider.instance.ts:80

Intents this provider exposes to the NLP pass, with the slots they fill from.

Held per instance for the same reason the slots inside are objects: two instances of one provider type have different rooms, so they must train from different values even though the utterances are written once.

NLPActionRegistry

destroy: void;

Defined in: core/src/provider/provider.instance.ts:84

void


emit<K>(event, ...args): void;

Defined in: core/src/utils/utils.eventemitter.ts:62

Invokes all listeners for event synchronously, without awaiting async listeners.

Type Parameter
K extends "event"
Parameter Type
event K
args Parameters<ProviderInstanceEvents[K]>

void

EventEmitter.emit


emitAsync<K>(event, ...args): Promise<void>;

Defined in: core/src/utils/utils.eventemitter.ts:73

Invokes all listeners for event and awaits them concurrently via Promise.all.

Type Parameter
K extends "event"
Parameter Type
event K
args Parameters<ProviderInstanceEvents[K]>

Promise<void>

EventEmitter.emitAsync


on<K>(
event,
callback,
options?): () => void;

Defined in: core/src/utils/utils.eventemitter.ts:21

Registers callback for event. Returns an unsubscribe function; passing options.abortSignal also removes the listener when that signal aborts.

Type Parameter
K extends "event"
Parameter Type
event K
callback EventListener<Parameters<ProviderInstanceEvents[K]>>
options OnOptions

() => void

EventEmitter.on


once<K>(
event,
callback,
options?): () => void;

Defined in: core/src/utils/utils.eventemitter.ts:45

Like on, but the listener is removed after firing once.

Type Parameter
K extends "event"
Parameter Type
event K
callback EventListener<Parameters<ProviderInstanceEvents[K]>>
options OnOptions

() => void

EventEmitter.once