import { BtModuleKeys, BtModuleLoadConfig } from "./types";
/**
 * Safely loads BT modules by checking if the module already exists and verifying if versions mismatch
 *
 * @param loadConfig <BtModuleLoadConfig> Configuration of BT Module to load
 * @param version <string> version that should be passed from the client getVersion
 * @returns Promise<HTMLScriptElement>
 * @returns Promise<true> when BT module with same version already exists
 * @returns Promise.reject(err) when BT module already exists but versions mismatch or empty version passed in
 */
export declare function safeLoadBtModule(loadConfig: BtModuleLoadConfig, version: string, minified?: boolean): Promise<true | void | HTMLScriptElement>;
declare global {
    interface Window {
        braintree: Partial<Record<BtModuleKeys, {
            create: () => void;
            VERSION: string;
        }>> & {
            fastlane?: object;
        };
    }
}
