import { AbstractFuseAPIFactory } from './AbstractFuseAPIFactory';
import { Platform } from "./Platform";
import { FuseRuntime, TPauseCallbackHandler, TResumeCallbackHandler } from './plugins/FuseRuntime';
import { Version } from './Version';
import { IFuseLogger } from './IFuseLogger';
import { FuseMemoryStore } from './plugins/FuseMemoryStore';
/**
 * A context class that holds Fuse Framework state
 */
export declare abstract class FuseContext {
    private $platform;
    private $runtime;
    private $runtimeVersion;
    private $runtimeInfo;
    private $defaultAPIFactory;
    private $logger;
    private $memStore;
    constructor(platform: Platform, apiFactory: AbstractFuseAPIFactory, logger: IFuseLogger);
    getLogger(): IFuseLogger;
    getDefaultAPIFactory(): AbstractFuseAPIFactory;
    getPlatform(): Platform;
    protected _getRuntime(): FuseRuntime;
    private $getRuntimeInfo;
    getPlatformVersion(): Promise<Version>;
    isDebugMode(): Promise<boolean>;
    registerPauseHandler(callback: TPauseCallbackHandler): Promise<string>;
    unregisterPauseHandler(callbackID: string): Promise<void>;
    registerResumeHandler(callback: TResumeCallbackHandler): Promise<string>;
    unregisterResumeHandler(callbackID: string): Promise<void>;
    getMemoryStore(): FuseMemoryStore;
    abstract onWebviewReady(): Promise<void>;
}
