/**
 * Browser entry point for @formepdf/core.
 *
 * Import as `@formepdf/core/browser` — no Node APIs, works in any
 * modern browser with WebAssembly support.
 *
 * WASM is loaded via fetch() from the same origin as the importing
 * module (using import.meta.url resolution in the wasm-pack glue).
 * Bundlers like Vite, esbuild, and webpack handle this automatically.
 * For script-tag usage, call `initWasm()` with an explicit URL first.
 */
import type { InitInput } from '../pkg/forme.js';
export type { Color, EdgeValues, CornerValues, ElementStyleInfo, ElementInfo, PageInfo, LayoutInfo, RenderWithLayoutResult, RenderDocumentOptions, } from './index.js';
import type { RenderWithLayoutResult, RenderDocumentOptions } from './index.js';
/**
 * Initialize the WASM module. Called automatically on first render,
 * but you can call it early to control timing or provide a custom
 * WASM URL/bytes.
 *
 * @example
 * // Auto-resolve (works with bundlers)
 * await initWasm();
 *
 * // Explicit URL (CDN, custom path, etc.)
 * await initWasm('/wasm/forme_bg.wasm');
 * await initWasm(new URL('./forme_bg.wasm', import.meta.url));
 */
export declare function init(module?: InitInput | Promise<InitInput>): Promise<void>;
export declare function renderPdf(json: string): Promise<Uint8Array>;
export declare function renderPdfWithLayout(json: string): Promise<RenderWithLayoutResult>;
export declare function renderDocument(element: import('react').ReactElement, options?: RenderDocumentOptions): Promise<Uint8Array>;
export declare function renderDocumentWithLayout(element: import('react').ReactElement, options?: RenderDocumentOptions): Promise<RenderWithLayoutResult>;
export declare function renderTemplate(templateJson: string, dataJson: string): Promise<Uint8Array>;
export declare function renderTemplateWithLayout(templateJson: string, dataJson: string): Promise<RenderWithLayoutResult>;
/**
 * Extract embedded JSON data from a Forme-generated PDF.
 * Uses the browser-native DecompressionStream API (no node:zlib).
 */
export declare function extractData(pdfBytes: Uint8Array): Promise<unknown | null>;
