Skip to content

TraitValues

TraitValues = Record<string, unknown>

The tenant’s traits, as edgekit types pull writes them:

import type { EdgeKitTraits } from './edgekit/generated/identity';
const ek = createClient<EdgeKitDecisions['site_example'], EdgeKitTraits>({ siteId: 'site_example' });

Without generated types, or for a tenant that declares no traits, this is Record<string, unknown> and the client behaves the same at runtime. The tenant validates every trait write either way; the type catches a mistake at compile time instead.

A list trait’s value is an item id, never its label.