import type { Observable, RawError, DeflateEncoderStreamId, Encoder, TrackingConsentState, BufferedData, BufferedObservable } from '@openobserve/browser-core'; import type { RumMutationRecord } from '../browser/domMutationObservable'; import { LifeCycle } from '../domain/lifeCycle'; import type { RumConfiguration } from '../domain/configuration'; import type { ViewOptions } from '../domain/view/trackViews'; import type { PageStateHistory } from '../domain/contexts/pageStateHistory'; import type { CustomVitalsState } from '../domain/vital/vitalCollection'; import type { Hooks } from '../domain/hooks'; import type { RecorderApi, ProfilerApi } from './rumPublicApi'; export type StartRum = typeof startRum; export type StartRumResult = ReturnType; export declare function startRum(configuration: RumConfiguration, recorderApi: RecorderApi, profilerApi: ProfilerApi, initialViewOptions: ViewOptions | undefined, createEncoder: (streamId: DeflateEncoderStreamId) => Encoder, trackingConsentState: TrackingConsentState, customVitalsState: CustomVitalsState, bufferedDataObservable: BufferedObservable, sdkName: 'rum' | 'rum-slim' | 'rum-synthetics' | undefined): { addAction: (action: import("../domain/action/actionCollection").CustomAction) => void; addEvent: (startTime: import("@openobserve/browser-core").RelativeTime, event: import("../domain/event/eventCollection").AllowedRawRumEvent, domainContext: import("..").RumEventDomainContext, duration?: import("@openobserve/browser-core").Duration) => void; addError: ({ error, handlingStack, componentStack, startClocks, context }: import("../domain/error/errorCollection").ProvidedError) => void; addTiming: (name: string, time?: import("@openobserve/browser-core").RelativeTime | import("@openobserve/browser-core").TimeStamp) => void; addFeatureFlagEvaluation: (key: string, value: import("@openobserve/browser-core").ContextValue) => void; startView: (options?: ViewOptions, startClocks?: import("@openobserve/browser-core").ClocksState) => void; setViewContext: (context: import("@openobserve/browser-core").Context) => void; setViewContextProperty: (key: string, value: import("@openobserve/browser-core").ContextValue) => void; getViewContext: () => import("@openobserve/browser-core").Context; setViewName: (name: string) => void; lifeCycle: import("@openobserve/browser-core").AbstractLifeCycle; viewHistory: import("../domain/contexts/viewHistory").ViewHistory; session: import("../domain/rumSessionManager").RumSessionManager; stopSession: () => void; getInternalContext: (startTime?: number) => import("@openobserve/browser-core").RumInternalContext | undefined; startDurationVital: (name: string, options?: import("../domain/vital/vitalCollection").DurationVitalOptions) => import("../domain/vital/vitalCollection").DurationVitalReference; stopDurationVital: (nameOrRef: string | import("../domain/vital/vitalCollection").DurationVitalReference, options?: import("../domain/vital/vitalCollection").DurationVitalOptions) => void; addDurationVital: (vital: import("../domain/vital/vitalCollection").DurationVital) => void; addOperationStepVital: (name: string, stepType: "start" | "end", options?: import("../domain/vital/vitalCollection").FeatureOperationOptions, failureReason?: import("../domain/vital/vitalCollection").FailureReason) => void; globalContext: { getContext: () => import("@openobserve/browser-core").Context; setContext: (newContext: unknown) => void; setContextProperty: (key: string, property: any) => void; removeContextProperty: (key: string) => void; clearContext: () => void; changeObservable: import("@openobserve/browser-core").Observable; }; userContext: { getContext: () => import("@openobserve/browser-core").Context; setContext: (newContext: unknown) => void; setContextProperty: (key: string, property: any) => void; removeContextProperty: (key: string) => void; clearContext: () => void; changeObservable: import("@openobserve/browser-core").Observable; }; accountContext: { getContext: () => import("@openobserve/browser-core").Context; setContext: (newContext: unknown) => void; setContextProperty: (key: string, property: any) => void; removeContextProperty: (key: string) => void; clearContext: () => void; changeObservable: import("@openobserve/browser-core").Observable; }; telemetry: import("@openobserve/browser-core").Telemetry; stop: () => void; hooks: { register(hookName: K, callback: import("../domain/hooks").HookCallbackMap[K]): { unregister: () => void; }; triggerHook(hookName: K, param: Parameters[0]): "DISCARDED" | Exclude, "SKIPPED"> | undefined; }; }; export declare function startRumEventCollection(lifeCycle: LifeCycle, hooks: Hooks, configuration: RumConfiguration, pageStateHistory: PageStateHistory, domMutationObservable: Observable, windowOpenObservable: Observable, reportError: (error: RawError) => void): { pageStateHistory: PageStateHistory; addAction: (action: import("../domain/action/actionCollection").CustomAction) => void; addEvent: (startTime: import("@openobserve/browser-core").RelativeTime, event: import("../domain/event/eventCollection").AllowedRawRumEvent, domainContext: import("..").RumEventDomainContext, duration?: import("@openobserve/browser-core").Duration) => void; actionContexts: import("../domain/action/trackClickActions").ActionContexts; stop: () => void; };