@sinequa/atomic

Configuration keys

Every key of AppGlobalConfig — what reads it, what it defaults to, and the three that nothing reads at all.

The same object shape whether you pass it to createAtomicClient() or to setGlobalConfig(). Every key is optional. Configuration is the guide; this is the list.

Identity of the backend

Prop

Type

Authentication

Prop

Type

These three are not settable on a client

AtomicClientConfig excludes useCredentials, useSSO and useSAML on purpose: they are getters defined on globalConfig alone, so a client has nowhere to put them. Pass an AuthMode.

auth — the authentication knobs

Prop

Type

Behaviour

Prop

Type

Keys nothing reads

Present in the type, accepted by setGlobalConfig, and never consulted by any code path in the library. Listed because their names suggest otherwise.

KeyWhat its name suggestsReality
loginPathWhere to redirect an unauthenticated userDefaults to /login and is read by nothing. Routing is yours; use recoverFromUnauthorized or the unauthorized event.
logLevelThe logger's verbosityNot read. Set the level with configureLogger({ level }).
createRoutesThe library declares routesNot read. Defaults to false and stays inert either way.

Your own keys

The type is generic, so application keys are first-class rather than tolerated:

src/config.ts
import { globalConfig } from "@sinequa/atomic";
import type { AppGlobalConfig } from "@sinequa/atomic";

type MyConfig = AppGlobalConfig<{ featureFlags: string[] }>;

const flags = (globalConfig as Partial<MyConfig>).featureFlags ?? [];

Unknown keys read back as unknown rather than any — deliberately. They used to be any, which disabled type checking on the whole object, and that is how a key nobody ever read survived in there for years.

What's next

On this page