/** * The framework-free half of the Ekklesia shell: how it talks to the platform and how it builds a * module UI host context. Deliberately the only public surface of this package. * * The React shell itself (`src/browser/`) is not exported. It is an application, bundled straight to * a browser artifact by this package's own build; exporting components would invite another package * to depend on Ekklesia's shell internals, which is exactly the coupling the surface boundary * exists to prevent. What *is* exported is the protocol — validated wire parsing, context * construction, module API resolution — so the end-to-end test can drive the real host code against * a real server instead of a reimplementation of it. */ export { bootstrapHost, bootstrapDisplayHost, type DashboardNavigation, type DashboardNavigationEntry, type DashboardNavigationGroup, type DisplayHostBootstrap, type EkklesiaHostConfig, type HostBootstrap, type HostEventSourceFactory, type HostEventSourceOptions, type HostModuleDisplayResponse, type HostModuleUiDescriptor, HostProtocolError, type HostProtocolErrorCode, loadDashboardNavigation, loadHostPrincipal, loadModuleDisplay, moduleDisplayDescriptorPath, parseDashboardNavigation, parseDisplayRoute, parseHostModuleDisplay, parseHostPrincipal, resolveApiOrigin, resolveApiUrl, } from "./host-protocol.js"; export { type CreateModuleUiContextOptions, createModuleUiContext, moduleUiSourceUrl, } from "./module-context.js"; export { HostAuthError, type HostAuthErrorCode, type HostSignInCredentials, signInWithEmail, signOutHost, } from "./auth-protocol.js";