import { FoundryPage } from "../types/index.js"; import { SetupAdapter, GameAdapter } from "./base.js"; /** * Extracts the Foundry build number from a version string, e.g. "14.366" or * "14.360.0" both yield 366/360. Returns undefined for strings with no * parseable minor component (e.g. a bare "14"). */ export declare function parseFoundryBuild(version: string): number | undefined; /** * Checks a version string's major component exactly, e.g. "14.366" and "14" * match major "14" but "140.1" does not - a plain startsWith("14") would * wrongly match "140.1" too. */ export declare function matchesMajorVersion(version: string, major: "12" | "13" | "14"): boolean; /** * Picks between V14SetupAdapter and V14LegacySetupAdapter based on build * number - see V14_USERNAME_LOGIN_BUILD. Throws on an unknown build rather * than guessing: silently defaulting to one form previously caused login to * fail on the *other* form with no clear signal why - the exact failure mode * this adapter split exists to prevent. Callers should exhaust detection * (including a live-page build probe) before reaching this with `undefined`. */ export declare function selectV14SetupAdapter(page: FoundryPage, build: number | undefined): SetupAdapter; /** * Detects the Foundry VTT version and returns the appropriate setup adapter. * Prioritizes explicit version input from parameters or environment variables. */ export declare function getSetupAdapter(page: FoundryPage, versionOverride?: string): Promise; /** * Detects the Foundry VTT version and returns the appropriate game adapter. */ export declare function getGameAdapter(page: FoundryPage, versionOverride?: string): Promise; export * from "./base.js"; export * from "./v12.js"; export * from "./v13.js"; export * from "./v14.js";