import type { FSWatcher } from 'fs'; import { type DependencyGraph } from './dependencyGraph'; import { type ModuleVersions } from './moduleVersionTracker'; import type { HMRWebSocket } from '../../types/websocket'; import type { BuildConfig, BuildPassError } from '../../types/build'; import { type ResolvedBuildPaths } from './configResolver'; export type HMRState = { connectedClients: Set; activeFrameworks: Set; dependencyGraph: DependencyGraph; isRebuilding: boolean; rebuildQueue: Set; rebuildTimeout: NodeJS.Timeout | null; fileChangeQueue: Map; debounceTimeout: NodeJS.Timeout | null; fileHashes: Map; watchers: FSWatcher[]; moduleVersions: ModuleVersions; sourceFileVersions: Map; config: BuildConfig; resolvedPaths: ResolvedBuildPaths; vueChangeTypes: Map; assetStore: Map; manifest: Record; rebuildCount: number; lastHmrPath?: string; lastHmrFramework?: string; lastUserEditedFiles?: Set; initialBuildFailed?: boolean; lastBuildErrors?: BuildPassError[]; svelteSurgicallyHandled?: Set; }; export declare const createHMRState: (config: BuildConfig) => HMRState; export declare const incrementSourceFileVersion: (state: HMRState, filePath: string) => number; export declare const incrementSourceFileVersions: (state: HMRState, filePaths: string[]) => void;