Skip to main content

Interface: Provider

Defined in: packages/client/src/types.ts:267

Extends​

Properties​

asksFirst?​

readonly optional asksFirst?: boolean

Defined in: packages/client/src/types.ts:275

The visitor's own AI, to propose first: while it isn't ready, the chat providers after it wait until the visitor picks one (ai.chooseInstead(id)), unless the client has fallback: "auto".


connect?​

optional connect?: () => Promise<void>

Defined in: packages/client/src/types.ts:286

Resolve needs-action: pair with the engine, start a model download… Must be called from a user gesture.

Returns​

Promise<void>


createSession​

createSession: (options) => Promise<ProviderSession>

Defined in: packages/client/src/types.ts:291

Parameters​

options​

SessionOptions

Returns​

Promise<ProviderSession>


detect​

detect: () => Promise<void>

Defined in: packages/client/src/types.ts:281

Check availability. Cheap and safe to call often.

Returns​

Promise<void>


disconnect?​

optional disconnect?: () => void

Defined in: packages/client/src/types.ts:288

Forget the visitor's grant in this browser, if any.

Returns​

void


embed?​

optional embed?: (request) => Promise<EmbedResult>

Defined in: packages/client/src/types.ts:293

Embed texts; present on providers that offer embed.

Parameters​

request​

EmbedRequest

Returns​

Promise<EmbedResult>


getState​

getState: () => ProviderState

Defined in: packages/client/src/types.ts:277

Current state; the core re-reads it after onChange fires.

Returns​

ProviderState


id​

id: string

Defined in: packages/client/src/types.ts:185

Inherited from​

ProviderInfo.id


label​

label: string

Defined in: packages/client/src/types.ts:186

Inherited from​

ProviderInfo.label


locality​

locality: Locality

Defined in: packages/client/src/types.ts:187

Inherited from​

ProviderInfo.locality


manage?​

optional manage?: () => void

Defined in: packages/client/src/types.ts:290

Open the visitor's own settings for this site (their AI and model), from a click.

Returns​

void


offers?​

readonly optional offers?: readonly Service[]

Defined in: packages/client/src/types.ts:269

What it serves. Default ["chat"]; an embedder alone is ["embed"].


onChange​

onChange: (listener) => () => void

Defined in: packages/client/src/types.ts:279

Subscribe to state changes. Returns the unsubscribe function.

Parameters​

listener​

() => void

Returns​

() => void