import { Framework } from "./Framework"; import { Page } from "./Page"; import { HttpRequestInput } from "./types/request-types"; import { IStore, StoreConfig, StoreConfigBase } from "./types/store-types"; import { IScope, RuiEvent, ScopeConfig, ScopeState } from "./types/rock-types"; export declare class Scope implements IScope { #private; constructor(framework: Framework, page: Page, config: ScopeConfig); setConfig(config: ScopeConfig): void; getConfig(): ScopeConfig; get config(): ScopeConfig; addStores(storeConfigs: StoreConfig[]): void; addStore(storeConfig: StoreConfig): void; updateStore(storeConfig: StoreConfig): void; removeStore(storeConfig: StoreConfig): void; getStore>(storeName: string): TStore; loadData(): Promise; loadStoreData(storeName: string, input?: HttpRequestInput): Promise; observe(callback: (state: ScopeState) => void): void; setVars(vars: Record, silent?: boolean): void; get vars(): Record; get stores(): Record>; notifyEvent(event: RuiEvent): Promise; }