/**
 * MCP Apps surface for Cursor / Claude — same `ui://ui9000/chart` as mcp-ui.
 * Prefer the sibling checkout's generated App View so local iframe/CSS
 * changes show up without a deploy. Fall back to
 * `https://mcp.ui9000.com/mcp-app/chart` when that file is missing
 * (published bin, other machines).
 * Do not put a bare data-link URL in tool text: hosts open it as a page (JSON).
 */
export declare const WORKSPACE_CHART_RESOURCE_URI = "ui://ui9000/chart";
export declare const MCP_APP_RESOURCE_MIME = "text/html;profile=mcp-app";
/** Same prefix mcp-ui chart-app parses from tool text (Cursor often strips `_meta`). */
export declare const UI9000_META_PREFIX = "ui9000-meta:";
/** chart-app reads `src/inspector/meta-contract.ts`. It does not invent `_meta` keys. */
export declare const HOSTED_MCP_APP_CHART_PATH = "/mcp-app/chart";
export type McpAppCsp = {
    connectDomains: string[];
    resourceDomains: string[];
    frameDomains: string[];
};
export type McpAppResource = {
    uri: string;
    name: string;
    mimeType: string;
    description?: string;
    loadHtml: () => string | Promise<string>;
    ui: {
        csp: McpAppCsp;
    };
};
export type WorkspaceAppMeta = {
    chartType: string;
    dataUrl: string;
    chartId: string;
    /** Id only. The trace payload stays on `_meta`, never in this prefix. */
    traceId?: string;
};
export declare function originFromBaseUrl(raw: string, fallback?: string): string;
export declare function buildWorkspaceChartCsp(baseUrl: string): McpAppCsp;
export declare function hostedChartAppUrl(baseUrl: string): string;
export declare function localChartAppHtmlPath(): string | undefined;
export declare function loadLocalChartAppHtml(): string | undefined;
export declare function loadChartAppHtml(baseUrl?: string, fetchImpl?: typeof fetch): Promise<string>;
export declare function loadHostedChartAppHtml(baseUrl?: string, fetchImpl?: typeof fetch): Promise<string>;
export declare function resetHostedChartAppHtmlCacheForTests(): void;
export declare function chartIdFromDataUrl(dataUrl: string): string;
export declare function formatWorkspaceAppText(summary: string, meta: WorkspaceAppMeta): string;
export declare function workspaceChartAppResource(baseUrl: string, loadHtml?: McpAppResource['loadHtml']): McpAppResource;
