import { CanBePromise, ExternalArgs } from "../../typing";
import { Context } from "./context";
import { EventEnv } from "../events/event-env";
import { InitializeOptions } from "../primno";
/**
 * Creates or gives the execution context of Primno for a given D365 event.
 * @internal
 */
export declare class ContextInitializer {
    private eventEnv;
    private contexts;
    private moduleLoader;
    constructor(initOptions: InitializeOptions, eventEnv: EventEnv);
    /**
     * Creates or gets the context associated with the dataverse event.
     * Create a context by control type.
     * @param extArgs
     * @returns
     */
    getContext(extArgs: ExternalArgs): CanBePromise<Context>;
}
