import { RockConfig, RockPropValue, RuiEvent, PageConfig, IPage, RockMessage, HandleRockEventOptions } from "./types/rock-types"; import { StoreConfig, IStore, StoreConfigBase } from "./types/store-types"; import { HttpRequestInput } from "./types/request-types"; import { Framework } from "./Framework"; import { Scope } from "./Scope"; export declare class Page implements IPage { #private; constructor(framework: Framework, pageConfig?: PageConfig); get readyToRender(): boolean; generateComponentId(type: string): string; setConfig(pageConfig: PageConfig): void; getConfig(): PageConfig; getSerializableConfig(): PageConfig; get scope(): Scope; addStore(storeConfig: StoreConfig): void; updateStore(storeConfig: StoreConfig): void; removeStore(storeConfig: StoreConfig): void; loadData(): Promise; setScopeVars(scopeId: string | null, vars: Record, silent?: boolean): void; observe(callback: (config: PageConfig) => void): void; unsubscribe(): void; getFunctions(): Record; interpreteExpression(expressionString: string, rootVars: Record): any; addComponents(components: RockConfig[], parentComponentId?: string, slotPropName?: string, prevSiblingComponentId?: string): void; removeComponents(componentIds: string[]): void; setComponentProperty(componentId: string, propName: string, propValue: RockPropValue): void; setComponentProperties(componentId: string, props: Record): void; removeComponentProperty(componentId: string, propName: string): void; getComponentProperty(componentId: string, propName: string): any; setComponentPropertyExpression(componentId: string, propName: string, propExpression: string): void; removeComponentPropertyExpression(componentId: string, propName: string): void; interpreteComponentProperties(parentConfig: RockConfig, config: RockConfig, vars: Record): void; getComponent(componentId: string): RockConfig; attachComponent(scope: Scope, parentConfig: RockConfig, config: RockConfig): void; sendComponentMessage = RockMessage>(componentId: string, message: TRockMessage): void; getScope(scopeId: string): Scope; getStore>(storeName: string): TStore; setStorePropertyExpression(storeName: string, propName: string, propExpression: string): void; loadStoreData(storeName: string, input?: HttpRequestInput): Promise; notifyEvent(event: RuiEvent): Promise; handleEvent(options: HandleRockEventOptions): Promise; }