import { ApiMethods } from "../api"; import { ApplicationOverrides, CustomElementOptions } from "../CustomElement"; import { RootNode } from "../dom"; export interface AppOptions { /** The root node that contains the application. */ rootNode: RootNode; /** The HTML element that embeds the application. */ hostElement: HTMLElement; /** Trails options for the application. */ elementOptions: CustomElementOptions; /** These have higher priority than the options in `elementOptions`. */ overrides: ApplicationOverrides | undefined; /** * A callback to restart the application with new options. * Currently only used for reloading with a certain locale. */ restart: (overrides?: ApplicationOverrides) => void; } export type AppState = "not-started" | "starting" | "started" | "destroyed" | "error"; export declare class AppInstance { private options; private apiPromise; private api; private state; private rootNode; private container; private appRoot; private config; private i18n; private serviceLayer; private lifecycleEvents; private themeService; private reactIntegration; private stylesWatch; constructor(options: AppOptions); start(): void; destroy(): void; private reset; whenAPI(): Promise; private startImpl; /** * Returns a signal that contains the application's styles. * During development, the signal is updated when the user edits .css files. * In production, the signal is static. */ private initStylesSignal; private initServiceLayer; private initAPI; private triggerApplicationLifecycleEvent; private checkAbort; private showErrorScreen; }