UNPKG

posthog-js

Version:

Posthog-js allows you to automatically capture usage and send events to PostHog.

38 lines (37 loc) • 1.88 kB
import type { ApiResponse, CaptureOptions as BrowserCommonCaptureOptions, CapturedEventInfo, Client, DeepReadonly, Disposable, Extension, ExtensionToken, KeyValueStore, Listener, SendRequestInit, SessionContext } from '@posthog/browser-common'; import { type Logger } from '@posthog/core'; import type { PostHog } from '../posthog-core'; import type { Properties, RemoteConfigResult } from '../types'; /** One shared extension client and lifecycle host per browser-v1 PostHog instance. */ export declare class BrowserClientAdapter implements Client, Disposable { readonly instance: PostHog; readonly kv: KeyValueStore; readonly onEvent: Listener<CapturedEventInfo>; readonly onRemoteConfig: Listener<DeepReadonly<RemoteConfigResult>>; private readonly _logger; private readonly _runtime; private _latestRemoteConfigResult; private _disposed; constructor(instance: PostHog); get logger(): Logger; get distinctId(): string; get anonymousId(): string; get deviceId(): string | undefined; get library(): { name: string; version: string; }; get initialPersonProperties(): Record<string, unknown>; get groups(): Record<string, string>; get session(): SessionContext; get canCapture(): boolean; get projectToken(): string; add(extension: Extension): Promise<void>; getExtension<T extends Extension>(token: ExtensionToken<T>): T | undefined; getExtension<T extends Extension = Extension>(name: string): T | undefined; capture(event: string, properties?: Properties | null, options?: BrowserCommonCaptureOptions): Promise<void>; registerDynamicEventProperties(producer: () => Record<string, unknown>): Disposable; handleRemoteConfig(result: RemoteConfigResult): void; sendRequest(path: string, init?: SendRequestInit): Promise<ApiResponse>; dispose(): void; }