Skip to main content
In TypeScript, types and interfaces describe the shape of objects you pass into the SDK (for example initialization, mounting, and encounter data). They document which fields exist, which are required, and how values are typed so your editor can validate usage against this reference. This page groups the Web SDK type topics below: core encounter and initialization types, UI and theme configuration, ambient session types, clinical data, and utility types. Each linked page includes an overview, a type snippet, and property details. Use the cards to jump to the full definition for the type you are implementing.

Core types

Use these types for the following purposes:
  • Encounter: Represents a clinical encounter that includes patient-related information.
  • Patient: Contains patient demographics and identifying details.
  • InitOptions: Defines configuration settings used to initialize the SDK.
  • PartnerDetails: Includes partner authentication and provider information required during initialization, as described on the Partner details page.
For ambient flows, patient.identifier and encounter.identifier (when set) must each be strings at most 36 characters (). See Patient and Encounter.

Encounter

Clinical encounter; identifiers up to 36 characters

Patient

Demographics; patient ID up to 36 characters

InitOptions

Configuration options for initializing the SDK

PartnerDetails

Partner authentication and provider information

UI & theme configuration

Use these types for the following purposes:
  • ThemeOptions: Customize the SDK’s appearance.
  • MountOptions: Mount the SDK to a DOM element and pass related options.
  • UIOptions: Configure user interface behavior and settings.
  • SectionEditingOptions: Configure section editing features within the SDK.

ThemeOptions

Configuration for customizing SDK appearance

MountOptions

Configuration for mounting SDK to DOM element

UIOptions

User interface configuration options

SectionEditingOptions

Configuration for section editing features

Ambient session types

Use these types for the following purposes:
  • AmbientOptions: Configure ambient session functionality.
  • Section: Define a clinical note section using LOINC codes for ambient sessions.
  • EmitterEvents: Handle events emitted by the Web SDK to monitor session state and process responses. See the Emitter events page for details on tracking authentication and ambient session lifecycle events.
  • NoteContent: Define the structure of clinical note content, including optional diagnosis and LOINC code.

AmbientOptions

Configuration for ambient session functionality

Section

Clinical note section using LOINC codes

EmitterEvents

Events emitted by the SDK for monitoring

NoteContent

Content structure for clinical notes

Clinical data types

Use these types for the following purposes:
  • Diagnosis: Define the structure of clinical diagnosis information, including ICD codes.

Diagnosis

Clinical diagnosis information with ICD codes

Utility types

Use these types for the following purposes:
  • LogLevel: Control debug output verbosity.
  • SukiError: Define the structure of SDK errors, including code and details. See the Suki error page for details.

LogLevel

Log levels for controlling debug output

SukiError

Error structure with codes and details

Next steps

Explore each type in detail by clicking on the cards above, or refer to the Classes section for information on available SDK classes.
Last modified on May 22, 2026