import type { Core } from './types';
import type { Core as BaseCore } from '@applitools/core-base';
import { type AsyncCache, type UFGClient } from '@applitools/ufg-client';
import { type NMLClient } from '@applitools/nml-client';
import { type SpecType, type SpecDriver } from '@applitools/driver';
import { type Logger } from '@applitools/logger';
type Options<TSpec extends SpecType> = {
    spec?: SpecDriver<TSpec>;
    clients?: {
        ufg?: UFGClient;
        nml?: NMLClient;
    };
    base?: BaseCore;
    concurrency?: number;
    environment?: Record<string, any>;
    agentId?: string;
    cwd?: string;
    logger?: Logger;
    asyncCache?: AsyncCache;
};
export declare function makeCore<TSpec extends SpecType>({ spec, clients, base: defaultBase, concurrency, environment: defaultEnvironment, agentId, cwd, logger: defaultLogger, asyncCache, }?: Options<TSpec>): Core<TSpec, 'classic' | 'ufg'>;
export {};
