import { Config, CompanyProps, EventPayload, UserProps } from './types'; import { Logger } from '../utils/logger'; export declare class UsermavenClient { private config; private logger; private cookieManager?; private transport; private persistence; private autoCapture?; private formTracking?; private pageviewTracking?; private retryQueue; private anonymousId; private namespace; private rageClick?; private scrollDepth?; private scrollDepthVisibilityHandler?; private scrollDepthPopstateHandler?; constructor(config: Config); private initializeBrowserFeatures; private initializeScrollDepthListeners; private destroyScrollDepth; /** * Recursively merge the provided configuration with the existing defaultConfig * @param config * @param defaultConfig */ mergeConfig(config: Partial, defaultConfig: Partial): Config; init(config: Config): void; private manageCrossDomainLinking; private findClosestLink; private initializeTransport; private initializePersistence; private getOrCreateAnonymousId; id(userData: UserProps, doNotSendEvent?: boolean): Promise; track(typeName: string, payload?: EventPayload, directSend?: boolean): void; lead(payload: EventPayload, directSend?: boolean): void; private trackInternal; rawTrack(payload: any): void; group(props: CompanyProps, doNotSendEvent?: boolean): Promise; private createEventPayload; private processAutocaptureAttributes; getCookie(name: string): string | null; private getThirdPartyIds; private getUtmParams; pageview(): void; private setupPageLeaveTracking; getConfig(): Config; getLogger(): Logger; reset(resetAnonId?: boolean): Promise; set(properties: Record, opts?: { eventType?: string; persist?: boolean; }): void; setUserId(userId: string): void; unset(propertyName: string, options?: { eventType?: string; persist?: boolean; }): void; } export declare function captureInitialPageview(client: UsermavenClient): void;