import { type RpcCallType } from '@lynx-js/web-worker-rpc'; import { postTimingFlagsEndpoint, publicComponentEventEndpoint, publishEventEndpoint, sendGlobalEventEndpoint, dispatchI18nResourceEndpoint, updateDataEndpoint, updateGlobalPropsEndpoint, updateBTSChunkEndpoint } from '../endpoints.js'; import type { Cloneable, NapiModulesMap, NativeModulesMap } from '../../types/index.js'; import { LynxCrossThreadContext } from '../LynxCrossThreadContext.js'; import { type LynxViewInstance } from './LynxViewInstance.js'; export declare class BackgroundThread implements AsyncDisposable { #private; static contextIdToBackgroundWorker: ({ worker: Worker; runningCards: number; } | undefined)[]; readonly jsContext: LynxCrossThreadContext; readonly postTimingFlags: RpcCallType; readonly sendGlobalEvent: RpcCallType; readonly publicComponentEvent: RpcCallType; readonly publishEvent: RpcCallType; readonly dispatchI18nResource: RpcCallType; readonly updateData: RpcCallType; readonly updateGlobalProps: RpcCallType; readonly updateBTSChunk: RpcCallType; constructor(lynxGroupId: number | undefined, lynxViewInstance: LynxViewInstance); startWebWorker(initData: Cloneable, globalProps: Cloneable, cardType: string, customSections: Record, nativeModulesMap: NativeModulesMap, napiModulesMap: NapiModulesMap): void; startBTS(): void; markTiming(timingKey: string, pipelineId?: string, timeStamp?: number): void; /** * Flush the timing info immediately. */ flushTimingInfo(): void; [Symbol.asyncDispose](): Promise; }