export type ModalFormFactor = { type: 'modal' } export type InlineFormFactor = { type: 'inline'; rootElement: string | HTMLElement } export type FormFactorConfig = ModalFormFactor | InlineFormFactor export type UserAttributes = Record export type InstanceAttributes = { canOpenEditor: boolean hmac?: string formFactor: FormFactorConfig } export type ContextLoader = (chosenValues?: undefined | Record) => unknown export type Metadata = Record export type CommandBarClientSDK = { boot(id: string, userAttributes?: UserAttributes, instanceAttributes?: Partial): Promise addMetadataBatch(data: Metadata, addToUserProperties?: boolean): void trackEvent(key: string, properties: Metadata): void }