/**
 * Copyright (c) 2019, salesforce.com, inc.
 * All rights reserved.
 * SPDX-License-Identifier: MIT
 * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
 */
import 'colors';
import { CommunitiesConfig } from '@communities-webruntime/common';
import { AddressableService } from '@webruntime/api';
import WebruntimeContextConfig from './webruntime-context-config';
import WebruntimeContext from './webruntime-context';
export declare class ContextService extends AddressableService {
    mappings: any;
    toSpecifier: any;
    parseUrl: any;
    projectDir: any;
    basePath: any;
    communitiesConfig: CommunitiesConfig;
    constructor({ projectDir, server: { basePath }, additionalProperties: communitiesConfig, }: {
        projectDir: any;
        server: {
            basePath?: string | undefined;
        };
        additionalProperties?: CommunitiesConfig | undefined;
    });
    initialize(): Promise<void>;
    shutdown(): Promise<void>;
    request(): void;
    /**
     * Start the Web Runtime context and compute the template version key
     * based on the given configuration by computing a hash for srcDir
     * and watching it for changes.
     *
     * @public
     * @param {Object} config The template configuration
     */
    static startContext(config: WebruntimeContextConfig): Promise<WebruntimeContext>;
    /**
     * Returns the current context
     * @public
     */
    static getContext(): WebruntimeContext;
    /**
     * Returns the current context
     * @public
     */
    static waitForContext(): Promise<WebruntimeContext>;
    /**
     * Ends the current context and stops watching srcDir for changes.
     * @public
     */
    static endContext(): void;
}
//# sourceMappingURL=context-service.d.ts.map