import { Analytics, AnalyticsSettings, InitOptions } from './analytics';
import { Context } from './core/context';
import { Plan } from './core/events';
import { MetricsOptions } from './core/stats/remote-metrics';
import { RemotePlugin } from './plugins/remote-loader';
import type { RoutingRule } from './plugins/routing-middleware';
export interface LegacyIntegrationConfiguration {
    type?: string;
    versionSettings?: {
        version?: string;
        override?: string;
        componentTypes?: Array<'browser' | 'android' | 'ios' | 'server'>;
    };
    bundlingStatus?: string;
    retryQueue?: boolean;
    [key: string]: any;
}
export interface LegacySettings {
    integrations: {
        [name: string]: LegacyIntegrationConfiguration;
    };
    middlewareSettings?: {
        routingRules: RoutingRule[];
    };
    enabledMiddleware?: Record<string, boolean>;
    metrics?: MetricsOptions;
    plan?: Plan;
    legacyVideoPluginsEnabled?: boolean;
    remotePlugins?: RemotePlugin[];
}
export declare function loadLegacySettings(writeKey: string): Promise<LegacySettings>;
export declare class AnalyticsBrowser {
    static load(settings: AnalyticsSettings, options?: InitOptions): Promise<[Analytics, Context]>;
    static standalone(writeKey: string, options?: InitOptions): Promise<Analytics>;
}
