import type { AutoPollOptions } from "./ConfigCatClientOptions.js"; import type { FetchResult } from "./ConfigFetcher.js"; import type { IConfigService, RefreshResult } from "./ConfigServiceBase.js"; import { ClientCacheState, ConfigServiceBase } from "./ConfigServiceBase.js"; import type { ProjectConfig } from "./ProjectConfig.js"; export declare const POLL_EXPIRATION_TOLERANCE_MS = 500; export declare class AutoPollConfigService extends ConfigServiceBase implements IConfigService { private initialized; private readonly initializationPromise; private signalInitialization; private stopToken; private readonly pollIntervalMs; private readonly pollExpirationMs; readonly readyPromise: Promise; constructor(options: AutoPollOptions); private waitForInitializationAsync; protected waitForReadyAsync(): Promise; getConfigAsync(): Promise; refreshConfigAsync(): Promise<[RefreshResult, ProjectConfig]>; dispose(): void; protected onConfigFetched(fetchResult: FetchResult, isInitiatedByUser: boolean): void; protected goOnline(): void; private startRefreshWorker; private stopRefreshWorker; private refreshWorkerLogic; getCacheState(cachedConfig: ProjectConfig): ClientCacheState; }