import type { BrowserTestDriver } from '@probe.gl/test-utils';
type BrowserTestOptions = Parameters<BrowserTestDriver['run']>[0];
/** User configuration from .ocularrc.js */
export type OcularConfig = {
    root?: string;
    aliases?: {
        [module: string]: string;
    };
    nodeAliases?: {
        [module: string]: string;
    };
    bundle?: {
        target?: string[];
        globalName?: string;
        format?: 'cjs' | 'esm' | 'umd' | 'iife';
        externals?: string[];
        globals?: {
            [pattern: string]: string;
        };
    };
    typescript?: {
        project: string;
    };
    lint?: {
        paths?: string[];
        extensions?: string[];
    };
    vite?: {
        version?: number;
        configPath?: string;
    };
    coverage?: {
        test?: 'node' | 'browser';
    };
    browserTest?: {
        server?: BrowserTestOptions['server'];
        browser?: BrowserTestOptions['browser'];
    };
    entry?: {
        test?: string;
        'test-browser'?: `${string}.html`;
        bench?: string;
        'bench-browser'?: `${string}.html`;
        size?: string[] | string;
    };
};
/** Internal type to typecheck resolved ocular config inside ocular-dev-tools */
export type MaterializedOcularConfig = {
    root: string;
    ocularPath: string;
    esm: boolean;
    aliases: {
        [module: string]: string;
    };
    bundle: {
        target?: string[];
        globalName?: string;
        format?: 'cjs' | 'esm' | 'umd' | 'iife';
        externals?: string[];
        globals: {
            [pattern: string]: string;
        };
    };
    typescript: {
        project: string;
    };
    lint: {
        paths: string[];
        extensions: string[];
    };
    vite: {
        version: number;
        configPath: string;
    };
    coverage: {
        test: 'node' | 'browser';
    };
    browserTest?: {
        server?: BrowserTestOptions['server'];
        browser?: BrowserTestOptions['browser'];
    };
    entry: {
        test: string;
        'test-browser': `${string}.html`;
        bench: string;
        'bench-browser': `${string}.html`;
        size: string[];
    };
};
export declare function getOcularConfig(options?: {
    root?: string;
    aliasMode?: 'src' | 'dist';
}): Promise<MaterializedOcularConfig>;
export {};
//# sourceMappingURL=get-ocular-config.d.ts.map