import type { AdapterContext, DesignReference, ReferenceAdapter } from "@design-parity/core"; import { type Rasterizer } from "./rasterizer.js"; import { type LiveRenderer, type LiveViewport } from "./live-renderer.js"; import { type LayoutExtractor } from "./layout-extractor.js"; export interface ClaudeDesignAdapterOptions { /** * How to rasterize raw HTML variants. Defaults to {@link browserRasterizer} * (headless Chrome/Chromium). Exports that ship pre-rendered `src` images * never invoke it. */ rasterizer?: Rasterizer; /** * How to live-render a prototype (a `live:`-prefixed ref) at each configured * viewport. Defaults to {@link browserLiveRenderer} (headless Chrome/Chromium); * a caller running Playwright or a hosted renderer injects its own. Only the * live-render path invokes it — a plain committed-export ref never does. */ liveRenderer?: LiveRenderer; /** * The viewports a live-render ref is captured at. Defaults to * {@link DEFAULT_LIVE_VIEWPORTS} (a single compact frame); pass a wider matrix * to capture several breakpoints, each keyed onto its `size` variant slot. */ liveViewports?: LiveViewport[]; /** * How to capture the reference's layout geometry for the structural layout * diff. Defaults to {@link puppeteerLayoutExtractor}; runs for every export * (independent of the image source) and is a no-op when it returns * `undefined` (no Chrome / `puppeteer-core`). Pass `null` to disable. */ layoutExtractor?: LayoutExtractor | null; } export declare class ClaudeDesignAdapter implements ReferenceAdapter { #private; readonly source: "claude-design"; constructor(options?: ClaudeDesignAdapterOptions); /** * Resolve a Claude Design reference from a committed HTML export, or — when * `ref` ends in `.json` — from a synced DTCG token artifact (see * {@link isSyncedTokenRef} and {@link #resolveSyncedTokens}). * * @param componentId resolver-supplied code handle (authoritative). * @param ref repo-relative path to the HTML export or the `.json` token * artifact (the `design-map` ref). * @param ctx consumer repo root + environment. * @throws if the export/artifact is missing, its handoff block is malformed, a * referenced token file or image is missing, or its `componentId` * contradicts `componentId`. */ resolve(componentId: string, ref: string, ctx: AdapterContext): Promise; } //# sourceMappingURL=adapter.d.ts.map