import { ShowcaseScanDetails } from "../../types/showcaseProject.types.js";

//#region src/services/showcase/showcaseScan.service.d.ts
interface ShowcaseScannedInfo {
  /** Whether the intlayer bundle was detected in the page */
  hasIntlayer: boolean;
  /** Version of the core `intlayer` package if detectable from the bundle */
  intlayerVersion?: string;
  /** All detected intlayer-related packages and their versions (from bundle markers) */
  packageDetails: Record<string, string>;
  /** List of detected intlayer package names */
  libsUsed: string[];
  scanDetails: ShowcaseScanDetails;
  /** JPEG screenshot buffer taken on the same page load. Undefined if scan fails. */
  screenshotBuffer?: Buffer;
  /** Page title extracted from og:title or <title> */
  metaTitle?: string;
  /** Short description extracted from og:description or meta description */
  metaDescription?: string;
}
/** Extract all intlayer packages from a script text blob. */
declare const extractPackagesFromScript: (content: string) => Record<string, string>;
/**
 * Opens a single browser session, scans the page for Intlayer usage,
 * takes a screenshot, then closes the browser.
 * Combining both operations avoids launching Puppeteer twice.
 */
declare const scanShowcaseProject: (url: string) => Promise<ShowcaseScannedInfo>;
//#endregion
export { ShowcaseScannedInfo, extractPackagesFromScript, scanShowcaseProject };
//# sourceMappingURL=showcaseScan.service.d.ts.map