---
title: "Types and Interfaces"
description: "Types and Interfaces"
url: "https://www.contentstack.com/docs/developers/sdks/personalize-edge-sdk/javascript/reference/types-and-interfaces"
product: "Contentstack"
doc_type: "guide"
audience:
  - developers
  - admins
version: "current"
last_updated: "2026-09-08"
---

# Types and Interfaces

## Types and Interfaces

The Types and Interfaces used and exported by the Personalize Edge SDK.

## SetUserIdOptions

The SetUserIdOptions interface provides configuration options for the setUserId method.

Set to true to merge user attributes from the current user.

## InitOptions

The InitOptions interface specifies configuration options for initializing the SDK. These options allow for customization during the setup process

A web-standard Request object used to track users and extract attributes like query parameters, referrer, and geolocation in edge functions.

The user ID to be explicitly assigned.

Specifies a custom name for the variant query parameter

Specifies the custom attributes object to treat as live attributes. These attributes must be pre-configured in the Personalize project.

## ClientAttributes

The ClientAttributes type alias represents a collection of key-value pairs, where each key is an attribute key that you have defined in the Attributes module, and the corresponding value can be of the type expected by the audience rules.

## ManifestExperience

The ManifestExperience type alias defines the structure of an experience within a personalization manifest.

The unique identifier for the experience.

The unique identifier for the active variant associated with the experience; it can be null if no variant is active.

## Manifest

The Manifest type alias defines the structure of the personalization manifest

A record mapping experience short UIDs to their corresponding active variant short UIDs

An array of ManifestExperience objects, each representing an experience and its associated active variant.

## TriggerImpressionsOptions

The TriggerImpressionsOptions type alias defines the structure of the argument passed to the TriggerImpressionsOptions method.

A list of Experience Short UIDs. The corresponding active variants are picked from the Manifest.

A list of Variant Aliases. An alias consists of an Experience Short UID and a corresponding Variant Short UID.

## InitializationStatus

The InitializationStatus type alias defines in the Contentstack Personalize SDK represents the current state of the SDK's initialization process. It can have one of the following string values:

*   initializing: Indicates that the SDK is in the process of initializing.
*   success: Signifies that the SDK has successfully initialized.
*   error: Denotes that an error occurred during the initialization.

## Types and Interfaces | JavaScript Personalize Edge SDK | Contentstack

Types and Interfaces defines the type definitions exported by the Contentstack JavaScript Personalize Edge SDK for safe, consistent usage.