import type { EcoBuildPlugin } from '../contracts/build-types.js'; import type { EcoPagesAppConfig } from '../../types/internal-types.js'; /** * Foreign JSX override plugins for mixed-integration app builds. * * Each plugin rewrites files for one `(integration, extension)` pair with that * integration's own `@jsxImportSource` so the bundler preserves the owning JSX * runtime for native extension ownership. * * Extensions are sorted longest-first so `.page.react.tsx` wins over `.tsx`. */ export declare function getJsxOwnershipPlugins(appConfig: EcoPagesAppConfig): EcoBuildPlugin[]; /** * Host-scoped JSX override plugins for one integration's client bundle graph. * * When a host integration (for example React) bundles foreign `.tsx` files, those * files must compile with the host JSX runtime instead of the project default. * Use this helper for host-owned client bundles. For app-wide transpilation that * should preserve each integration's native JSX runtime, use * {@link getJsxOwnershipPlugins} instead. */ export declare function getHostScopedJsxOwnershipPlugins(appConfig: EcoPagesAppConfig, hostIntegrationName: string, options?: { name?: string; }): EcoBuildPlugin[];