import { type BSBServiceConstructor, type Observable } from "@bsb/base"; import * as av from "anyvali"; import { InMemoryServiceConfigStore, type BetterPortalRegistry } from "@betterportal/framework"; import { BPService, type BPServiceDefinition } from "@betterportal/plugin-bsb"; declare const Config: import("@bsb/base").BSBPluginConfigClass; configApiToken: av.OptionalSchema; controlPlaneUrl: av.OptionalSchema; serviceApiKey: av.OptionalSchema; bootstrapStatePath: av.StringSchema; scopedConfigCachePath: av.StringSchema; trustedProxyHeaders: av.BoolSchema; cfProxy: av.BoolSchema; trustedProxyIps: av.ArraySchema; }>>; defaultMode: av.EnumSchema; brandName: av.StringSchema; defaultGreetingName: av.StringSchema; }>>; declare const EventSchemas: { readonly emitEvents: {}; readonly onEvents: {}; readonly emitReturnableEvents: {}; readonly onReturnableEvents: {}; readonly emitBroadcast: {}; readonly onBroadcast: {}; }; export declare class Plugin extends BPService, typeof EventSchemas> { static Config: import("@bsb/base").BSBPluginConfigClass; configApiToken: av.OptionalSchema; controlPlaneUrl: av.OptionalSchema; serviceApiKey: av.OptionalSchema; bootstrapStatePath: av.StringSchema; scopedConfigCachePath: av.StringSchema; trustedProxyHeaders: av.BoolSchema; cfProxy: av.BoolSchema; trustedProxyIps: av.ArraySchema; }>>; defaultMode: av.EnumSchema; brandName: av.StringSchema; defaultGreetingName: av.StringSchema; }>>; static EventSchemas: { readonly emitEvents: {}; readonly onEvents: {}; readonly emitReturnableEvents: {}; readonly onReturnableEvents: {}; readonly emitBroadcast: {}; readonly onBroadcast: {}; }; protected configStore: InMemoryServiceConfigStore; constructor(cfg: BSBServiceConstructor, typeof EventSchemas>); protected definition(): BPServiceDefinition; private get betterportal(); protected headerTrustOptions(): { trustedProxyHeaders?: boolean; cfProxy?: boolean; }; protected onRegistered(_registry: BetterPortalRegistry, obs: Observable): Promise; private requirePortalConfig; private internalConfigTicket; private readStoredThemeValues; private applyThemeServiceConfig; private registerRoutes; private resolveThemeAiContext; private handleLlmsDocument; private handleAiManifest; private handleLlmsTxt; private handleLlmsApi; private handleLlmsDev; private handleLlmsUi; private handlePublicDiscovery; private resolveEffectiveTheme; private handleThemeStyle; private handleThemeBrand; private handleThemeNav; private logThemeContextResolutionFailure; private tagRequestContext; private renderBootstrapErrorPage; private buildAppNavItems; private renderConfigUiForm; private computeEffectiveAndStored; private authorizeConfigUi; private handleConfigUi; private handleConfigUiSave; private handleConfigUiReset; private handleAsset; private handleIndex; private handleManifest; } export { Config, EventSchemas }; //# sourceMappingURL=index.d.ts.map