@corbado/observe 0.16.3 → 0.16.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.mts CHANGED
@@ -6,7 +6,7 @@ type EventType = "predefined" | "custom" | "error" | "identify";
6
6
  type AuthMethodType = "identifier-email"
7
7
  /** Neutral "enter an identifier" choice; the identifier kind is the provide-identifier spec type. */
8
8
  | "identifier" | "passkey-login-known-identifier" | "passkey-login-no-identifier" | "passkey-login-cui" | "passkey-login-immediate" | "passkey-enrollment" | "password-login" | "password-login-known-identifier" | "password-login-with-identifier" | "password-enrollment" | "email-otp" | "email-otp-login" | "email-otp-enrollment" | "email-link" | "email-link-login" | "email-link-enrollment" | "sms-otp" | "sms-otp-login" | "sms-otp-enrollment" | "social-google" | "social-apple" | "social-facebook" | "social-other" | "reset-flow" | "provide-data";
9
- type SubflowType = "trusted-device-check" | "trusted-device-enrollment" | "passkey-enrollment" | "passkey-login" | "email-otp" | "email-link" | "social-login" | "sms-otp" | "provide-identifier" | "provide-data" | "password-login" | "password-enrollment" | "totp" | "app-confirmation" | "captcha";
9
+ type SubflowType = "key-signing" | "key-registration" | "trusted-device-check" | "trusted-device-enrollment" | "passkey-enrollment" | "passkey-login" | "email-otp" | "email-link" | "social-login" | "sms-otp" | "provide-identifier" | "provide-data" | "password-login" | "password-enrollment" | "totp" | "app-confirmation" | "captcha";
10
10
  type FlowType = "login" | "signup" | "recovery" | "enrollment" | (string & {});
11
11
  type SocialLoginProviderType = "google" | "apple" | "facebook" | "github" | "microsoft" | "other";
12
12
  declare enum AuthEventName {
@@ -449,63 +449,6 @@ type SdkReliabilityConfigOverrides = Partial<Omit<SdkReliabilityConfig, "retry">
449
449
  retry?: Partial<SdkRetryConfig>;
450
450
  };
451
451
 
452
- /** Sink that escalates a diagnostic message to the telemetry stream. */
453
- type TelemetrySink = (level: TelemetryLevel, message: string) => void;
454
- interface Logger {
455
- debug(message: string, ...args: unknown[]): void;
456
- info(message: string, ...args: unknown[]): void;
457
- warn(message: string, ...args: unknown[]): void;
458
- error(message: string, ...args: unknown[]): void;
459
- critical(message: string, ...args: unknown[]): void;
460
- /**
461
- * Escalate a diagnostic message to the telemetry stream, if a sink is attached (no-op otherwise).
462
- * Unlike the level methods, telemetry is delivered to the backend regardless of the `debug` flag.
463
- * Optional so an integrator-provided custom logger stays valid without implementing it.
464
- */
465
- reportTelemetry?(level: TelemetryLevel, message: string): void;
466
- /** Attach (or clear) the telemetry sink. Called once by the tracker after the queue exists. */
467
- setTelemetrySink?(sink: TelemetrySink | undefined): void;
468
- }
469
- interface CreateLoggerOptions {
470
- debug: boolean;
471
- }
472
- declare function createLogger(options: CreateLoggerOptions): Logger;
473
-
474
- type WindowCaptureContext = Pick<LowEvent, "subflowStartEventId" | "fieldRole" | "initiator"> & {
475
- sessionId?: string;
476
- };
477
- /** One passive observer per tracker. Field/ceremony collectors register context, not DOM listeners. */
478
- declare class SharedWindowObserver {
479
- private logger;
480
- private enqueue;
481
- private flushKeepalive;
482
- private inputs;
483
- private ceremonies;
484
- private removers;
485
- private lastBlur?;
486
- private bracket?;
487
- private unrelatedPointerAt;
488
- private destroyed;
489
- private viewportContext;
490
- private resize;
491
- private scroll;
492
- constructor(logger: Logger, enqueue: (low: LowEvent, sessionId?: string) => void, flushKeepalive: () => void);
493
- registerInputs(fields: readonly HTMLInputElement[], context: () => WindowCaptureContext, flush: () => void): () => void;
494
- beginCeremony(context: WindowCaptureContext): {
495
- settle: (tailMs: number) => void;
496
- destroy: () => void;
497
- };
498
- private context;
499
- private findInput;
500
- /** Flush all registered input batches before a high-level lifecycle boundary. */
501
- flushInputs(): void;
502
- private emit;
503
- private listen;
504
- private extendViewport;
505
- private observeNavigation;
506
- destroy(): void;
507
- }
508
-
509
452
  /**
510
453
  * Where low events go. `flushKeepalive` is requested on `pagehide` teardown so lows batched after
511
454
  * the queue's own lifecycle flush still get out; operations wire it to the client's
@@ -616,6 +559,28 @@ declare function resolveRawErrorLimits(options?: SerializeRawErrorOptions): Limi
616
559
  */
617
560
  declare function serializeRawError(value: unknown, options?: SerializeRawErrorOptions): RawErrorEnvelope | undefined;
618
561
 
562
+ /** Sink that escalates a diagnostic message to the telemetry stream. */
563
+ type TelemetrySink = (level: TelemetryLevel, message: string) => void;
564
+ interface Logger {
565
+ debug(message: string, ...args: unknown[]): void;
566
+ info(message: string, ...args: unknown[]): void;
567
+ warn(message: string, ...args: unknown[]): void;
568
+ error(message: string, ...args: unknown[]): void;
569
+ critical(message: string, ...args: unknown[]): void;
570
+ /**
571
+ * Escalate a diagnostic message to the telemetry stream, if a sink is attached (no-op otherwise).
572
+ * Unlike the level methods, telemetry is delivered to the backend regardless of the `debug` flag.
573
+ * Optional so an integrator-provided custom logger stays valid without implementing it.
574
+ */
575
+ reportTelemetry?(level: TelemetryLevel, message: string): void;
576
+ /** Attach (or clear) the telemetry sink. Called once by the tracker after the queue exists. */
577
+ setTelemetrySink?(sink: TelemetrySink | undefined): void;
578
+ }
579
+ interface CreateLoggerOptions {
580
+ debug: boolean;
581
+ }
582
+ declare function createLogger(options: CreateLoggerOptions): Logger;
583
+
619
584
  /** Ceremony context lease on the shared observer. Never installs its own window listeners. */
620
585
  declare class LowEventWindowTracker {
621
586
  private logger;
@@ -733,6 +698,61 @@ declare abstract class OperationFull {
733
698
  protected defineStep<TStart = {}, TFinished = {}, TTypedError = never>(stepName: string, ignoreAsInteractionOnStart?: boolean): StepHelper<TStart, TFinished, TTypedError>;
734
699
  }
735
700
 
701
+ /** Shared configuration for direct key signing and authority registration. */
702
+ type KeyOperationConfig = {
703
+ /** Reserved for future variants; no spec types are currently defined. */
704
+ explicitSpecType?: undefined;
705
+ };
706
+ declare class KeySigningOperationFull extends OperationFull {
707
+ /** Resolve an eligible key and prepare the input for an actual signing attempt. */
708
+ readonly prepare: StepHelper;
709
+ /** Sign and assemble the usable signed artifact. Does not include submitting it. */
710
+ readonly sign: StepHelper;
711
+ constructor(tracker: CorbadoTracker, config?: KeyOperationConfig);
712
+ }
713
+ declare class KeyRegistrationOperationFull extends OperationFull {
714
+ /** Build the request that will establish the key's authority. */
715
+ readonly prepare: StepHelper;
716
+ /** Submit and await acceptance: finish only when the key is authorized and usable. */
717
+ readonly postResponse: StepHelper;
718
+ constructor(tracker: CorbadoTracker, config?: KeyOperationConfig);
719
+ }
720
+
721
+ type WindowCaptureContext = Pick<LowEvent, "subflowStartEventId" | "fieldRole" | "initiator"> & {
722
+ sessionId?: string;
723
+ };
724
+ /** One passive observer per tracker. Field/ceremony collectors register context, not DOM listeners. */
725
+ declare class SharedWindowObserver {
726
+ private logger;
727
+ private enqueue;
728
+ private flushKeepalive;
729
+ private inputs;
730
+ private ceremonies;
731
+ private removers;
732
+ private lastBlur?;
733
+ private bracket?;
734
+ private unrelatedPointerAt;
735
+ private destroyed;
736
+ private viewportContext;
737
+ private resize;
738
+ private scroll;
739
+ constructor(logger: Logger, enqueue: (low: LowEvent, sessionId?: string) => void, flushKeepalive: () => void);
740
+ registerInputs(fields: readonly HTMLInputElement[], context: () => WindowCaptureContext, flush: () => void): () => void;
741
+ beginCeremony(context: WindowCaptureContext): {
742
+ settle: (tailMs: number) => void;
743
+ destroy: () => void;
744
+ };
745
+ private context;
746
+ private findInput;
747
+ /** Flush all registered input batches before a high-level lifecycle boundary. */
748
+ flushInputs(): void;
749
+ private emit;
750
+ private listen;
751
+ private extendViewport;
752
+ private observeNavigation;
753
+ destroy(): void;
754
+ }
755
+
736
756
  type PasskeyOperationLoginExplicitSpecType = "passkey-cui" | "passkey-known-identifier" | "passkey-no-identifier"
737
757
  /**
738
758
  * The `-auto` variants are the same two ceremonies started by the integration rather than by a
@@ -1638,6 +1658,52 @@ declare class CorbadoTracker {
1638
1658
  provideDataOperationFull(config?: ProvideDataOperationConfig): ProvideDataOperationFull;
1639
1659
  socialLoginOperationFull(config?: SocialLoginOperationConfig): SocialLoginOperationFull;
1640
1660
  appConfirmationOperationFull(config?: AppConfirmationOperationConfig): AppConfirmationOperationFull;
1661
+ /**
1662
+ * Track direct key signing outside WebAuthn through prepare and sign.
1663
+ *
1664
+ * @param config - Optional configuration; explicitSpecType may only be undefined for now.
1665
+ * @remarks
1666
+ * Start prepare when resolving the eligible key and input for an actual attempt, not background
1667
+ * prefetch. Although system-driven, that work is meaningful interaction for classification.
1668
+ * Construction alone does not establish interaction. Finish sign only when the usable signed
1669
+ * artifact is ready, including assembly. Submission is outside this operation. Report failures
1670
+ * on the affected step using error(error). Never include key material, signatures or proofs.
1671
+ * WebAuthn assertions continue to use passkeyLoginFullOperation.
1672
+ * @example
1673
+ * ```ts
1674
+ * const signing = tracker.keySigningOperationFull();
1675
+ * signing.prepare.start({});
1676
+ * // Resolve an eligible key and prepare the signing input.
1677
+ * signing.prepare.finished({});
1678
+ * signing.sign.start({});
1679
+ * // Sign and assemble the artifact returned to the caller.
1680
+ * signing.sign.finished({});
1681
+ * ```
1682
+ */
1683
+ keySigningOperationFull(config?: KeyOperationConfig): KeySigningOperationFull;
1684
+ /**
1685
+ * Track establishing a key's authority through prepare and postResponse.
1686
+ *
1687
+ * @param config - Optional configuration; explicitSpecType may only be undefined for now.
1688
+ * @remarks
1689
+ * Start prepare when building an actual registration request, not background prefetch.
1690
+ * This system-driven work is meaningful interaction; construction alone is not.
1691
+ * postResponse covers submission and acceptance. Finish only when the key is authorized and
1692
+ * usable, not merely when submission returns. Report rejection, transport, execution or timeout
1693
+ * errors on the affected step using error(error). Never include key material or proofs.
1694
+ * Credential creation and any authorizing WebAuthn assertion are separate operations.
1695
+ * @example
1696
+ * ```ts
1697
+ * const registration = tracker.keyRegistrationOperationFull();
1698
+ * registration.prepare.start({});
1699
+ * // Build the registration request.
1700
+ * registration.prepare.finished({});
1701
+ * registration.postResponse.start({});
1702
+ * // Submit and await evidence that the authority is usable.
1703
+ * registration.postResponse.finished({});
1704
+ * ```
1705
+ */
1706
+ keyRegistrationOperationFull(config?: KeyOperationConfig): KeyRegistrationOperationFull;
1641
1707
  captchaOperationFull(config?: CaptchaOperationConfig): CaptchaOperationFull;
1642
1708
  /**
1643
1709
  * Track a device-trust check through getOptions, ceremony and postResponse.
@@ -2284,4 +2350,4 @@ declare function logInfo(message: string): void;
2284
2350
  declare function logError(message: string): void;
2285
2351
  declare function destroy(): Promise<void>;
2286
2352
 
2287
- export { type AppConfirmationOperationCeremonyTypedError, type AppConfirmationOperationConfig, AppConfirmationOperationFull, type AppConfirmationOperationRetryReason, type AppConfirmationOperationSpecType, type AppConfirmationOperationStart, type AuthDecisionFinished, type AuthDecisionStarted, AuthEventName, type AuthMethodDecisionFinished, type AuthMethodDecisionStarted, type AuthMethodType, type BaseEvent, CEREMONY_LOW_EVENT_TAIL_MS, CONFIG_BOUNDS, CONFIG_REQUEST_HEADER, CONFIG_STORAGE_KEY, type CaptchaOperationConfig, CaptchaOperationFull, type CaptchaOperationSpecType, type ClientCapabilities, type ClientEnvHandleMeta, type ClientEnvHandleMetaSource, type Conversion, CookieStorage, CorbadoTracker, type CreateLoggerOptions, type CustomEvent, DEFAULT_DEVICE_INFO_COLLECTOR_TIMEOUT_MS, DEFAULT_FLUSH_INTERVAL_MS, DEFAULT_MAX_ENTRIES, DEFAULT_MAX_SERIALIZED_LENGTH, DEFAULT_RELIABILITY_CONFIG, DEFAULT_SEQ_LOCK_TIMEOUT_MS, DEFAULT_SESSION_INACTIVITY_MS, type DeviceInfo, type DeviceInfoCollectionError, type DeviceInfoDataWeb, type DeviceType, type EmailLinkOperationConfig, EmailLinkOperationFull, type EmailLinkOperationPostResponseStart, type EmailLinkOperationSendStart, type EmailLinkOperationSpecType, type EmailOTPOperationConfig, type EmailOTPOperationPostResponseStart, type EmailOTPOperationSendOTPStart, type EmailOTPOperationSpecType, EmailOtpOperationFull, type ErrorStepOptions, type Event, type EventBatch, type EventBatchMeta, type EventMeta, EventStore, type EventType, type FlowAutoFinished, type FlowDecided, type FlowFinished, type FlowReset, type FlowStarted, type FlowType, type FlushReason, type JavaScriptHighEntropy, LocalStorage, type Logger, type LowEvent, type LowEventFieldRole, type LowEventInitiator, type LowEventInputEffect, type LowEventSourceKind, type MultiFlowReset, type MultiFlowStarted, NamespacedStorage, type NormalizedError, OUTBOX_LOCK_NAME, OUTBOX_STORAGE_KEY, type ObserveSdkConfigSnapshot, OperationFull, OperationFullProvideIdentifierWithCUI, type OperationFullProvideIdentifierWithCUIConfig, type OutboxEntry, type PasskeyEnrollmentCeremonyFinished, type PasskeyEnrollmentCeremonyStart, type PasskeyEnrollmentGetOptionsFinished, type PasskeyEnrollmentGetOptionsStart, type PasskeyEnrollmentOperationConfig, PasskeyEnrollmentOperationFull, type PasskeyEnrollmentPostResponseStart, type PasskeyLoginCUIGetOptionsFinished, type PasskeyLoginCUIGetOptionsStart, type PasskeyLoginCUISpecType, type PasskeyLoginCeremonyFinished, type PasskeyLoginCeremonyStart, type PasskeyLoginClientError, type PasskeyLoginFinish, type PasskeyLoginGetOptionsFinished, type PasskeyLoginGetOptionsStart, type PasskeyLoginOperationConfig, PasskeyLoginOperationFull, type PasskeyLoginPostResponseStart, type PasskeyLoginStartable, type PasskeyLoginSubmitted, type PasskeyOperationEnrollmentExplicitSpecType, type PasskeyOperationLoginExplicitSpecType, type PasswordEnrollmentConfig, PasswordEnrollmentOperationFull, type PasswordEnrollmentTypedError, type PasswordLoginCUICeremonyStart, type PasswordLoginCUIGetOptionsFinished, type PasswordLoginCUIGetOptionsStart, type PasswordLoginCUISpecType, type PasswordLoginCUITypedError, type PasswordLoginConfig, type PasswordLoginExplicitSpecType, PasswordLoginOperationFull, type PasswordLoginTypedError, type PredefinedEvent, type ProvideDataOperationConfig, ProvideDataOperationFull, type ProvideDataOperationPostResponseStart, type ProvideDataOperationSpecType, type ProvideDataOperationStart, type ProvideIdentifierError, type ProvideIdentifierFinish, type ProvideIdentifierPostResponseStart, type ProvideIdentifierSpecType, type ProvideIdentifierStart, type QueueOptions, RAW_ERROR_BOUNDS, type RawErrorEnvelope, RequestQueue, SDK_NAME, SDK_VERSION, type SdkInfo, type SdkReliabilityConfig, type SdkReliabilityConfigOverrides, type SdkRetryConfig, type SerializeRawErrorOptions, SessionStorage, type SmsOTPOperationConfig, type SmsOTPOperationPostResponseStart, type SmsOTPOperationSpecType, SmsOtpOperationFull, type SocialLoginExchangeCodeFinished, type SocialLoginExchangeCodeStart, type SocialLoginGetRedirectUrlFinished, type SocialLoginGetRedirectUrlStart, type SocialLoginOperationConfig, SocialLoginOperationFull, type SocialLoginProviderType, type SocialLoginSpecType, type StepHelper, type StepOptions, type StorageEngine, type SubflowTrigger, type SubflowType, type TelemetryEntry, type TelemetryLevel, type TelemetrySink, type TrackerOptions, type Transport, type TransportMakeRequestResponse, type TransportOptions, type TrustedDeviceBindingMetadata, type TrustedDeviceCheckConfig, TrustedDeviceCheckOperationFull, type TrustedDeviceCheckResult, type TrustedDeviceCheckStepResult, type TrustedDeviceCheckTypedError, TrustedDeviceEnrollmentOperationFull, type TrustedDeviceEnrollmentResult, type TrustedDeviceOperationConfig, type TrustedDevicePurpose, type TrustedDeviceStorage, type UserReference, cacheConfig, clearExperiment, clearExperiments, createLogger, destroy, getExperiments, getSessionId, getTracker, init, loadCachedConfig, logError, logInfo, namespacedKey, parseReliabilityConfig, resetSession, resolveRawErrorLimits, resolveReliabilityConfig, sanitizeAssertionResponse, sanitizeCreationOptions, sanitizeCreationResponse, sanitizeRequestOptions, serializeRawError, setExperiment, setExperiments, setUser, telemetry };
2353
+ export { type AppConfirmationOperationCeremonyTypedError, type AppConfirmationOperationConfig, AppConfirmationOperationFull, type AppConfirmationOperationRetryReason, type AppConfirmationOperationSpecType, type AppConfirmationOperationStart, type AuthDecisionFinished, type AuthDecisionStarted, AuthEventName, type AuthMethodDecisionFinished, type AuthMethodDecisionStarted, type AuthMethodType, type BaseEvent, CEREMONY_LOW_EVENT_TAIL_MS, CONFIG_BOUNDS, CONFIG_REQUEST_HEADER, CONFIG_STORAGE_KEY, type CaptchaOperationConfig, CaptchaOperationFull, type CaptchaOperationSpecType, type ClientCapabilities, type ClientEnvHandleMeta, type ClientEnvHandleMetaSource, type Conversion, CookieStorage, CorbadoTracker, type CreateLoggerOptions, type CustomEvent, DEFAULT_DEVICE_INFO_COLLECTOR_TIMEOUT_MS, DEFAULT_FLUSH_INTERVAL_MS, DEFAULT_MAX_ENTRIES, DEFAULT_MAX_SERIALIZED_LENGTH, DEFAULT_RELIABILITY_CONFIG, DEFAULT_SEQ_LOCK_TIMEOUT_MS, DEFAULT_SESSION_INACTIVITY_MS, type DeviceInfo, type DeviceInfoCollectionError, type DeviceInfoDataWeb, type DeviceType, type EmailLinkOperationConfig, EmailLinkOperationFull, type EmailLinkOperationPostResponseStart, type EmailLinkOperationSendStart, type EmailLinkOperationSpecType, type EmailOTPOperationConfig, type EmailOTPOperationPostResponseStart, type EmailOTPOperationSendOTPStart, type EmailOTPOperationSpecType, EmailOtpOperationFull, type ErrorStepOptions, type Event, type EventBatch, type EventBatchMeta, type EventMeta, EventStore, type EventType, type FlowAutoFinished, type FlowDecided, type FlowFinished, type FlowReset, type FlowStarted, type FlowType, type FlushReason, type JavaScriptHighEntropy, type KeyOperationConfig, KeyRegistrationOperationFull, KeySigningOperationFull, LocalStorage, type Logger, type LowEvent, type LowEventFieldRole, type LowEventInitiator, type LowEventInputEffect, type LowEventSourceKind, type MultiFlowReset, type MultiFlowStarted, NamespacedStorage, type NormalizedError, OUTBOX_LOCK_NAME, OUTBOX_STORAGE_KEY, type ObserveSdkConfigSnapshot, OperationFull, OperationFullProvideIdentifierWithCUI, type OperationFullProvideIdentifierWithCUIConfig, type OutboxEntry, type PasskeyEnrollmentCeremonyFinished, type PasskeyEnrollmentCeremonyStart, type PasskeyEnrollmentGetOptionsFinished, type PasskeyEnrollmentGetOptionsStart, type PasskeyEnrollmentOperationConfig, PasskeyEnrollmentOperationFull, type PasskeyEnrollmentPostResponseStart, type PasskeyLoginCUIGetOptionsFinished, type PasskeyLoginCUIGetOptionsStart, type PasskeyLoginCUISpecType, type PasskeyLoginCeremonyFinished, type PasskeyLoginCeremonyStart, type PasskeyLoginClientError, type PasskeyLoginFinish, type PasskeyLoginGetOptionsFinished, type PasskeyLoginGetOptionsStart, type PasskeyLoginOperationConfig, PasskeyLoginOperationFull, type PasskeyLoginPostResponseStart, type PasskeyLoginStartable, type PasskeyLoginSubmitted, type PasskeyOperationEnrollmentExplicitSpecType, type PasskeyOperationLoginExplicitSpecType, type PasswordEnrollmentConfig, PasswordEnrollmentOperationFull, type PasswordEnrollmentTypedError, type PasswordLoginCUICeremonyStart, type PasswordLoginCUIGetOptionsFinished, type PasswordLoginCUIGetOptionsStart, type PasswordLoginCUISpecType, type PasswordLoginCUITypedError, type PasswordLoginConfig, type PasswordLoginExplicitSpecType, PasswordLoginOperationFull, type PasswordLoginTypedError, type PredefinedEvent, type ProvideDataOperationConfig, ProvideDataOperationFull, type ProvideDataOperationPostResponseStart, type ProvideDataOperationSpecType, type ProvideDataOperationStart, type ProvideIdentifierError, type ProvideIdentifierFinish, type ProvideIdentifierPostResponseStart, type ProvideIdentifierSpecType, type ProvideIdentifierStart, type QueueOptions, RAW_ERROR_BOUNDS, type RawErrorEnvelope, RequestQueue, SDK_NAME, SDK_VERSION, type SdkInfo, type SdkReliabilityConfig, type SdkReliabilityConfigOverrides, type SdkRetryConfig, type SerializeRawErrorOptions, SessionStorage, type SmsOTPOperationConfig, type SmsOTPOperationPostResponseStart, type SmsOTPOperationSpecType, SmsOtpOperationFull, type SocialLoginExchangeCodeFinished, type SocialLoginExchangeCodeStart, type SocialLoginGetRedirectUrlFinished, type SocialLoginGetRedirectUrlStart, type SocialLoginOperationConfig, SocialLoginOperationFull, type SocialLoginProviderType, type SocialLoginSpecType, type StepHelper, type StepOptions, type StorageEngine, type SubflowTrigger, type SubflowType, type TelemetryEntry, type TelemetryLevel, type TelemetrySink, type TrackerOptions, type Transport, type TransportMakeRequestResponse, type TransportOptions, type TrustedDeviceBindingMetadata, type TrustedDeviceCheckConfig, TrustedDeviceCheckOperationFull, type TrustedDeviceCheckResult, type TrustedDeviceCheckStepResult, type TrustedDeviceCheckTypedError, TrustedDeviceEnrollmentOperationFull, type TrustedDeviceEnrollmentResult, type TrustedDeviceOperationConfig, type TrustedDevicePurpose, type TrustedDeviceStorage, type UserReference, cacheConfig, clearExperiment, clearExperiments, createLogger, destroy, getExperiments, getSessionId, getTracker, init, loadCachedConfig, logError, logInfo, namespacedKey, parseReliabilityConfig, resetSession, resolveRawErrorLimits, resolveReliabilityConfig, sanitizeAssertionResponse, sanitizeCreationOptions, sanitizeCreationResponse, sanitizeRequestOptions, serializeRawError, setExperiment, setExperiments, setUser, telemetry };
package/dist/index.d.ts CHANGED
@@ -6,7 +6,7 @@ type EventType = "predefined" | "custom" | "error" | "identify";
6
6
  type AuthMethodType = "identifier-email"
7
7
  /** Neutral "enter an identifier" choice; the identifier kind is the provide-identifier spec type. */
8
8
  | "identifier" | "passkey-login-known-identifier" | "passkey-login-no-identifier" | "passkey-login-cui" | "passkey-login-immediate" | "passkey-enrollment" | "password-login" | "password-login-known-identifier" | "password-login-with-identifier" | "password-enrollment" | "email-otp" | "email-otp-login" | "email-otp-enrollment" | "email-link" | "email-link-login" | "email-link-enrollment" | "sms-otp" | "sms-otp-login" | "sms-otp-enrollment" | "social-google" | "social-apple" | "social-facebook" | "social-other" | "reset-flow" | "provide-data";
9
- type SubflowType = "trusted-device-check" | "trusted-device-enrollment" | "passkey-enrollment" | "passkey-login" | "email-otp" | "email-link" | "social-login" | "sms-otp" | "provide-identifier" | "provide-data" | "password-login" | "password-enrollment" | "totp" | "app-confirmation" | "captcha";
9
+ type SubflowType = "key-signing" | "key-registration" | "trusted-device-check" | "trusted-device-enrollment" | "passkey-enrollment" | "passkey-login" | "email-otp" | "email-link" | "social-login" | "sms-otp" | "provide-identifier" | "provide-data" | "password-login" | "password-enrollment" | "totp" | "app-confirmation" | "captcha";
10
10
  type FlowType = "login" | "signup" | "recovery" | "enrollment" | (string & {});
11
11
  type SocialLoginProviderType = "google" | "apple" | "facebook" | "github" | "microsoft" | "other";
12
12
  declare enum AuthEventName {
@@ -449,63 +449,6 @@ type SdkReliabilityConfigOverrides = Partial<Omit<SdkReliabilityConfig, "retry">
449
449
  retry?: Partial<SdkRetryConfig>;
450
450
  };
451
451
 
452
- /** Sink that escalates a diagnostic message to the telemetry stream. */
453
- type TelemetrySink = (level: TelemetryLevel, message: string) => void;
454
- interface Logger {
455
- debug(message: string, ...args: unknown[]): void;
456
- info(message: string, ...args: unknown[]): void;
457
- warn(message: string, ...args: unknown[]): void;
458
- error(message: string, ...args: unknown[]): void;
459
- critical(message: string, ...args: unknown[]): void;
460
- /**
461
- * Escalate a diagnostic message to the telemetry stream, if a sink is attached (no-op otherwise).
462
- * Unlike the level methods, telemetry is delivered to the backend regardless of the `debug` flag.
463
- * Optional so an integrator-provided custom logger stays valid without implementing it.
464
- */
465
- reportTelemetry?(level: TelemetryLevel, message: string): void;
466
- /** Attach (or clear) the telemetry sink. Called once by the tracker after the queue exists. */
467
- setTelemetrySink?(sink: TelemetrySink | undefined): void;
468
- }
469
- interface CreateLoggerOptions {
470
- debug: boolean;
471
- }
472
- declare function createLogger(options: CreateLoggerOptions): Logger;
473
-
474
- type WindowCaptureContext = Pick<LowEvent, "subflowStartEventId" | "fieldRole" | "initiator"> & {
475
- sessionId?: string;
476
- };
477
- /** One passive observer per tracker. Field/ceremony collectors register context, not DOM listeners. */
478
- declare class SharedWindowObserver {
479
- private logger;
480
- private enqueue;
481
- private flushKeepalive;
482
- private inputs;
483
- private ceremonies;
484
- private removers;
485
- private lastBlur?;
486
- private bracket?;
487
- private unrelatedPointerAt;
488
- private destroyed;
489
- private viewportContext;
490
- private resize;
491
- private scroll;
492
- constructor(logger: Logger, enqueue: (low: LowEvent, sessionId?: string) => void, flushKeepalive: () => void);
493
- registerInputs(fields: readonly HTMLInputElement[], context: () => WindowCaptureContext, flush: () => void): () => void;
494
- beginCeremony(context: WindowCaptureContext): {
495
- settle: (tailMs: number) => void;
496
- destroy: () => void;
497
- };
498
- private context;
499
- private findInput;
500
- /** Flush all registered input batches before a high-level lifecycle boundary. */
501
- flushInputs(): void;
502
- private emit;
503
- private listen;
504
- private extendViewport;
505
- private observeNavigation;
506
- destroy(): void;
507
- }
508
-
509
452
  /**
510
453
  * Where low events go. `flushKeepalive` is requested on `pagehide` teardown so lows batched after
511
454
  * the queue's own lifecycle flush still get out; operations wire it to the client's
@@ -616,6 +559,28 @@ declare function resolveRawErrorLimits(options?: SerializeRawErrorOptions): Limi
616
559
  */
617
560
  declare function serializeRawError(value: unknown, options?: SerializeRawErrorOptions): RawErrorEnvelope | undefined;
618
561
 
562
+ /** Sink that escalates a diagnostic message to the telemetry stream. */
563
+ type TelemetrySink = (level: TelemetryLevel, message: string) => void;
564
+ interface Logger {
565
+ debug(message: string, ...args: unknown[]): void;
566
+ info(message: string, ...args: unknown[]): void;
567
+ warn(message: string, ...args: unknown[]): void;
568
+ error(message: string, ...args: unknown[]): void;
569
+ critical(message: string, ...args: unknown[]): void;
570
+ /**
571
+ * Escalate a diagnostic message to the telemetry stream, if a sink is attached (no-op otherwise).
572
+ * Unlike the level methods, telemetry is delivered to the backend regardless of the `debug` flag.
573
+ * Optional so an integrator-provided custom logger stays valid without implementing it.
574
+ */
575
+ reportTelemetry?(level: TelemetryLevel, message: string): void;
576
+ /** Attach (or clear) the telemetry sink. Called once by the tracker after the queue exists. */
577
+ setTelemetrySink?(sink: TelemetrySink | undefined): void;
578
+ }
579
+ interface CreateLoggerOptions {
580
+ debug: boolean;
581
+ }
582
+ declare function createLogger(options: CreateLoggerOptions): Logger;
583
+
619
584
  /** Ceremony context lease on the shared observer. Never installs its own window listeners. */
620
585
  declare class LowEventWindowTracker {
621
586
  private logger;
@@ -733,6 +698,61 @@ declare abstract class OperationFull {
733
698
  protected defineStep<TStart = {}, TFinished = {}, TTypedError = never>(stepName: string, ignoreAsInteractionOnStart?: boolean): StepHelper<TStart, TFinished, TTypedError>;
734
699
  }
735
700
 
701
+ /** Shared configuration for direct key signing and authority registration. */
702
+ type KeyOperationConfig = {
703
+ /** Reserved for future variants; no spec types are currently defined. */
704
+ explicitSpecType?: undefined;
705
+ };
706
+ declare class KeySigningOperationFull extends OperationFull {
707
+ /** Resolve an eligible key and prepare the input for an actual signing attempt. */
708
+ readonly prepare: StepHelper;
709
+ /** Sign and assemble the usable signed artifact. Does not include submitting it. */
710
+ readonly sign: StepHelper;
711
+ constructor(tracker: CorbadoTracker, config?: KeyOperationConfig);
712
+ }
713
+ declare class KeyRegistrationOperationFull extends OperationFull {
714
+ /** Build the request that will establish the key's authority. */
715
+ readonly prepare: StepHelper;
716
+ /** Submit and await acceptance: finish only when the key is authorized and usable. */
717
+ readonly postResponse: StepHelper;
718
+ constructor(tracker: CorbadoTracker, config?: KeyOperationConfig);
719
+ }
720
+
721
+ type WindowCaptureContext = Pick<LowEvent, "subflowStartEventId" | "fieldRole" | "initiator"> & {
722
+ sessionId?: string;
723
+ };
724
+ /** One passive observer per tracker. Field/ceremony collectors register context, not DOM listeners. */
725
+ declare class SharedWindowObserver {
726
+ private logger;
727
+ private enqueue;
728
+ private flushKeepalive;
729
+ private inputs;
730
+ private ceremonies;
731
+ private removers;
732
+ private lastBlur?;
733
+ private bracket?;
734
+ private unrelatedPointerAt;
735
+ private destroyed;
736
+ private viewportContext;
737
+ private resize;
738
+ private scroll;
739
+ constructor(logger: Logger, enqueue: (low: LowEvent, sessionId?: string) => void, flushKeepalive: () => void);
740
+ registerInputs(fields: readonly HTMLInputElement[], context: () => WindowCaptureContext, flush: () => void): () => void;
741
+ beginCeremony(context: WindowCaptureContext): {
742
+ settle: (tailMs: number) => void;
743
+ destroy: () => void;
744
+ };
745
+ private context;
746
+ private findInput;
747
+ /** Flush all registered input batches before a high-level lifecycle boundary. */
748
+ flushInputs(): void;
749
+ private emit;
750
+ private listen;
751
+ private extendViewport;
752
+ private observeNavigation;
753
+ destroy(): void;
754
+ }
755
+
736
756
  type PasskeyOperationLoginExplicitSpecType = "passkey-cui" | "passkey-known-identifier" | "passkey-no-identifier"
737
757
  /**
738
758
  * The `-auto` variants are the same two ceremonies started by the integration rather than by a
@@ -1638,6 +1658,52 @@ declare class CorbadoTracker {
1638
1658
  provideDataOperationFull(config?: ProvideDataOperationConfig): ProvideDataOperationFull;
1639
1659
  socialLoginOperationFull(config?: SocialLoginOperationConfig): SocialLoginOperationFull;
1640
1660
  appConfirmationOperationFull(config?: AppConfirmationOperationConfig): AppConfirmationOperationFull;
1661
+ /**
1662
+ * Track direct key signing outside WebAuthn through prepare and sign.
1663
+ *
1664
+ * @param config - Optional configuration; explicitSpecType may only be undefined for now.
1665
+ * @remarks
1666
+ * Start prepare when resolving the eligible key and input for an actual attempt, not background
1667
+ * prefetch. Although system-driven, that work is meaningful interaction for classification.
1668
+ * Construction alone does not establish interaction. Finish sign only when the usable signed
1669
+ * artifact is ready, including assembly. Submission is outside this operation. Report failures
1670
+ * on the affected step using error(error). Never include key material, signatures or proofs.
1671
+ * WebAuthn assertions continue to use passkeyLoginFullOperation.
1672
+ * @example
1673
+ * ```ts
1674
+ * const signing = tracker.keySigningOperationFull();
1675
+ * signing.prepare.start({});
1676
+ * // Resolve an eligible key and prepare the signing input.
1677
+ * signing.prepare.finished({});
1678
+ * signing.sign.start({});
1679
+ * // Sign and assemble the artifact returned to the caller.
1680
+ * signing.sign.finished({});
1681
+ * ```
1682
+ */
1683
+ keySigningOperationFull(config?: KeyOperationConfig): KeySigningOperationFull;
1684
+ /**
1685
+ * Track establishing a key's authority through prepare and postResponse.
1686
+ *
1687
+ * @param config - Optional configuration; explicitSpecType may only be undefined for now.
1688
+ * @remarks
1689
+ * Start prepare when building an actual registration request, not background prefetch.
1690
+ * This system-driven work is meaningful interaction; construction alone is not.
1691
+ * postResponse covers submission and acceptance. Finish only when the key is authorized and
1692
+ * usable, not merely when submission returns. Report rejection, transport, execution or timeout
1693
+ * errors on the affected step using error(error). Never include key material or proofs.
1694
+ * Credential creation and any authorizing WebAuthn assertion are separate operations.
1695
+ * @example
1696
+ * ```ts
1697
+ * const registration = tracker.keyRegistrationOperationFull();
1698
+ * registration.prepare.start({});
1699
+ * // Build the registration request.
1700
+ * registration.prepare.finished({});
1701
+ * registration.postResponse.start({});
1702
+ * // Submit and await evidence that the authority is usable.
1703
+ * registration.postResponse.finished({});
1704
+ * ```
1705
+ */
1706
+ keyRegistrationOperationFull(config?: KeyOperationConfig): KeyRegistrationOperationFull;
1641
1707
  captchaOperationFull(config?: CaptchaOperationConfig): CaptchaOperationFull;
1642
1708
  /**
1643
1709
  * Track a device-trust check through getOptions, ceremony and postResponse.
@@ -2284,4 +2350,4 @@ declare function logInfo(message: string): void;
2284
2350
  declare function logError(message: string): void;
2285
2351
  declare function destroy(): Promise<void>;
2286
2352
 
2287
- export { type AppConfirmationOperationCeremonyTypedError, type AppConfirmationOperationConfig, AppConfirmationOperationFull, type AppConfirmationOperationRetryReason, type AppConfirmationOperationSpecType, type AppConfirmationOperationStart, type AuthDecisionFinished, type AuthDecisionStarted, AuthEventName, type AuthMethodDecisionFinished, type AuthMethodDecisionStarted, type AuthMethodType, type BaseEvent, CEREMONY_LOW_EVENT_TAIL_MS, CONFIG_BOUNDS, CONFIG_REQUEST_HEADER, CONFIG_STORAGE_KEY, type CaptchaOperationConfig, CaptchaOperationFull, type CaptchaOperationSpecType, type ClientCapabilities, type ClientEnvHandleMeta, type ClientEnvHandleMetaSource, type Conversion, CookieStorage, CorbadoTracker, type CreateLoggerOptions, type CustomEvent, DEFAULT_DEVICE_INFO_COLLECTOR_TIMEOUT_MS, DEFAULT_FLUSH_INTERVAL_MS, DEFAULT_MAX_ENTRIES, DEFAULT_MAX_SERIALIZED_LENGTH, DEFAULT_RELIABILITY_CONFIG, DEFAULT_SEQ_LOCK_TIMEOUT_MS, DEFAULT_SESSION_INACTIVITY_MS, type DeviceInfo, type DeviceInfoCollectionError, type DeviceInfoDataWeb, type DeviceType, type EmailLinkOperationConfig, EmailLinkOperationFull, type EmailLinkOperationPostResponseStart, type EmailLinkOperationSendStart, type EmailLinkOperationSpecType, type EmailOTPOperationConfig, type EmailOTPOperationPostResponseStart, type EmailOTPOperationSendOTPStart, type EmailOTPOperationSpecType, EmailOtpOperationFull, type ErrorStepOptions, type Event, type EventBatch, type EventBatchMeta, type EventMeta, EventStore, type EventType, type FlowAutoFinished, type FlowDecided, type FlowFinished, type FlowReset, type FlowStarted, type FlowType, type FlushReason, type JavaScriptHighEntropy, LocalStorage, type Logger, type LowEvent, type LowEventFieldRole, type LowEventInitiator, type LowEventInputEffect, type LowEventSourceKind, type MultiFlowReset, type MultiFlowStarted, NamespacedStorage, type NormalizedError, OUTBOX_LOCK_NAME, OUTBOX_STORAGE_KEY, type ObserveSdkConfigSnapshot, OperationFull, OperationFullProvideIdentifierWithCUI, type OperationFullProvideIdentifierWithCUIConfig, type OutboxEntry, type PasskeyEnrollmentCeremonyFinished, type PasskeyEnrollmentCeremonyStart, type PasskeyEnrollmentGetOptionsFinished, type PasskeyEnrollmentGetOptionsStart, type PasskeyEnrollmentOperationConfig, PasskeyEnrollmentOperationFull, type PasskeyEnrollmentPostResponseStart, type PasskeyLoginCUIGetOptionsFinished, type PasskeyLoginCUIGetOptionsStart, type PasskeyLoginCUISpecType, type PasskeyLoginCeremonyFinished, type PasskeyLoginCeremonyStart, type PasskeyLoginClientError, type PasskeyLoginFinish, type PasskeyLoginGetOptionsFinished, type PasskeyLoginGetOptionsStart, type PasskeyLoginOperationConfig, PasskeyLoginOperationFull, type PasskeyLoginPostResponseStart, type PasskeyLoginStartable, type PasskeyLoginSubmitted, type PasskeyOperationEnrollmentExplicitSpecType, type PasskeyOperationLoginExplicitSpecType, type PasswordEnrollmentConfig, PasswordEnrollmentOperationFull, type PasswordEnrollmentTypedError, type PasswordLoginCUICeremonyStart, type PasswordLoginCUIGetOptionsFinished, type PasswordLoginCUIGetOptionsStart, type PasswordLoginCUISpecType, type PasswordLoginCUITypedError, type PasswordLoginConfig, type PasswordLoginExplicitSpecType, PasswordLoginOperationFull, type PasswordLoginTypedError, type PredefinedEvent, type ProvideDataOperationConfig, ProvideDataOperationFull, type ProvideDataOperationPostResponseStart, type ProvideDataOperationSpecType, type ProvideDataOperationStart, type ProvideIdentifierError, type ProvideIdentifierFinish, type ProvideIdentifierPostResponseStart, type ProvideIdentifierSpecType, type ProvideIdentifierStart, type QueueOptions, RAW_ERROR_BOUNDS, type RawErrorEnvelope, RequestQueue, SDK_NAME, SDK_VERSION, type SdkInfo, type SdkReliabilityConfig, type SdkReliabilityConfigOverrides, type SdkRetryConfig, type SerializeRawErrorOptions, SessionStorage, type SmsOTPOperationConfig, type SmsOTPOperationPostResponseStart, type SmsOTPOperationSpecType, SmsOtpOperationFull, type SocialLoginExchangeCodeFinished, type SocialLoginExchangeCodeStart, type SocialLoginGetRedirectUrlFinished, type SocialLoginGetRedirectUrlStart, type SocialLoginOperationConfig, SocialLoginOperationFull, type SocialLoginProviderType, type SocialLoginSpecType, type StepHelper, type StepOptions, type StorageEngine, type SubflowTrigger, type SubflowType, type TelemetryEntry, type TelemetryLevel, type TelemetrySink, type TrackerOptions, type Transport, type TransportMakeRequestResponse, type TransportOptions, type TrustedDeviceBindingMetadata, type TrustedDeviceCheckConfig, TrustedDeviceCheckOperationFull, type TrustedDeviceCheckResult, type TrustedDeviceCheckStepResult, type TrustedDeviceCheckTypedError, TrustedDeviceEnrollmentOperationFull, type TrustedDeviceEnrollmentResult, type TrustedDeviceOperationConfig, type TrustedDevicePurpose, type TrustedDeviceStorage, type UserReference, cacheConfig, clearExperiment, clearExperiments, createLogger, destroy, getExperiments, getSessionId, getTracker, init, loadCachedConfig, logError, logInfo, namespacedKey, parseReliabilityConfig, resetSession, resolveRawErrorLimits, resolveReliabilityConfig, sanitizeAssertionResponse, sanitizeCreationOptions, sanitizeCreationResponse, sanitizeRequestOptions, serializeRawError, setExperiment, setExperiments, setUser, telemetry };
2353
+ export { type AppConfirmationOperationCeremonyTypedError, type AppConfirmationOperationConfig, AppConfirmationOperationFull, type AppConfirmationOperationRetryReason, type AppConfirmationOperationSpecType, type AppConfirmationOperationStart, type AuthDecisionFinished, type AuthDecisionStarted, AuthEventName, type AuthMethodDecisionFinished, type AuthMethodDecisionStarted, type AuthMethodType, type BaseEvent, CEREMONY_LOW_EVENT_TAIL_MS, CONFIG_BOUNDS, CONFIG_REQUEST_HEADER, CONFIG_STORAGE_KEY, type CaptchaOperationConfig, CaptchaOperationFull, type CaptchaOperationSpecType, type ClientCapabilities, type ClientEnvHandleMeta, type ClientEnvHandleMetaSource, type Conversion, CookieStorage, CorbadoTracker, type CreateLoggerOptions, type CustomEvent, DEFAULT_DEVICE_INFO_COLLECTOR_TIMEOUT_MS, DEFAULT_FLUSH_INTERVAL_MS, DEFAULT_MAX_ENTRIES, DEFAULT_MAX_SERIALIZED_LENGTH, DEFAULT_RELIABILITY_CONFIG, DEFAULT_SEQ_LOCK_TIMEOUT_MS, DEFAULT_SESSION_INACTIVITY_MS, type DeviceInfo, type DeviceInfoCollectionError, type DeviceInfoDataWeb, type DeviceType, type EmailLinkOperationConfig, EmailLinkOperationFull, type EmailLinkOperationPostResponseStart, type EmailLinkOperationSendStart, type EmailLinkOperationSpecType, type EmailOTPOperationConfig, type EmailOTPOperationPostResponseStart, type EmailOTPOperationSendOTPStart, type EmailOTPOperationSpecType, EmailOtpOperationFull, type ErrorStepOptions, type Event, type EventBatch, type EventBatchMeta, type EventMeta, EventStore, type EventType, type FlowAutoFinished, type FlowDecided, type FlowFinished, type FlowReset, type FlowStarted, type FlowType, type FlushReason, type JavaScriptHighEntropy, type KeyOperationConfig, KeyRegistrationOperationFull, KeySigningOperationFull, LocalStorage, type Logger, type LowEvent, type LowEventFieldRole, type LowEventInitiator, type LowEventInputEffect, type LowEventSourceKind, type MultiFlowReset, type MultiFlowStarted, NamespacedStorage, type NormalizedError, OUTBOX_LOCK_NAME, OUTBOX_STORAGE_KEY, type ObserveSdkConfigSnapshot, OperationFull, OperationFullProvideIdentifierWithCUI, type OperationFullProvideIdentifierWithCUIConfig, type OutboxEntry, type PasskeyEnrollmentCeremonyFinished, type PasskeyEnrollmentCeremonyStart, type PasskeyEnrollmentGetOptionsFinished, type PasskeyEnrollmentGetOptionsStart, type PasskeyEnrollmentOperationConfig, PasskeyEnrollmentOperationFull, type PasskeyEnrollmentPostResponseStart, type PasskeyLoginCUIGetOptionsFinished, type PasskeyLoginCUIGetOptionsStart, type PasskeyLoginCUISpecType, type PasskeyLoginCeremonyFinished, type PasskeyLoginCeremonyStart, type PasskeyLoginClientError, type PasskeyLoginFinish, type PasskeyLoginGetOptionsFinished, type PasskeyLoginGetOptionsStart, type PasskeyLoginOperationConfig, PasskeyLoginOperationFull, type PasskeyLoginPostResponseStart, type PasskeyLoginStartable, type PasskeyLoginSubmitted, type PasskeyOperationEnrollmentExplicitSpecType, type PasskeyOperationLoginExplicitSpecType, type PasswordEnrollmentConfig, PasswordEnrollmentOperationFull, type PasswordEnrollmentTypedError, type PasswordLoginCUICeremonyStart, type PasswordLoginCUIGetOptionsFinished, type PasswordLoginCUIGetOptionsStart, type PasswordLoginCUISpecType, type PasswordLoginCUITypedError, type PasswordLoginConfig, type PasswordLoginExplicitSpecType, PasswordLoginOperationFull, type PasswordLoginTypedError, type PredefinedEvent, type ProvideDataOperationConfig, ProvideDataOperationFull, type ProvideDataOperationPostResponseStart, type ProvideDataOperationSpecType, type ProvideDataOperationStart, type ProvideIdentifierError, type ProvideIdentifierFinish, type ProvideIdentifierPostResponseStart, type ProvideIdentifierSpecType, type ProvideIdentifierStart, type QueueOptions, RAW_ERROR_BOUNDS, type RawErrorEnvelope, RequestQueue, SDK_NAME, SDK_VERSION, type SdkInfo, type SdkReliabilityConfig, type SdkReliabilityConfigOverrides, type SdkRetryConfig, type SerializeRawErrorOptions, SessionStorage, type SmsOTPOperationConfig, type SmsOTPOperationPostResponseStart, type SmsOTPOperationSpecType, SmsOtpOperationFull, type SocialLoginExchangeCodeFinished, type SocialLoginExchangeCodeStart, type SocialLoginGetRedirectUrlFinished, type SocialLoginGetRedirectUrlStart, type SocialLoginOperationConfig, SocialLoginOperationFull, type SocialLoginProviderType, type SocialLoginSpecType, type StepHelper, type StepOptions, type StorageEngine, type SubflowTrigger, type SubflowType, type TelemetryEntry, type TelemetryLevel, type TelemetrySink, type TrackerOptions, type Transport, type TransportMakeRequestResponse, type TransportOptions, type TrustedDeviceBindingMetadata, type TrustedDeviceCheckConfig, TrustedDeviceCheckOperationFull, type TrustedDeviceCheckResult, type TrustedDeviceCheckStepResult, type TrustedDeviceCheckTypedError, TrustedDeviceEnrollmentOperationFull, type TrustedDeviceEnrollmentResult, type TrustedDeviceOperationConfig, type TrustedDevicePurpose, type TrustedDeviceStorage, type UserReference, cacheConfig, clearExperiment, clearExperiments, createLogger, destroy, getExperiments, getSessionId, getTracker, init, loadCachedConfig, logError, logInfo, namespacedKey, parseReliabilityConfig, resetSession, resolveRawErrorLimits, resolveReliabilityConfig, sanitizeAssertionResponse, sanitizeCreationOptions, sanitizeCreationResponse, sanitizeRequestOptions, serializeRawError, setExperiment, setExperiments, setUser, telemetry };