import { I as IframeBridge, B as BridgeConfig, P as PluginsConfig } from './index-DuScrLdb.js';
export { a as BaseMessage, c as EventListener, E as EventMessage, L as Logger, f as LoggerOptions, d as MessageHandler, M as MessageType, Q as QueueManager, k as QueueOptions, R as RequestMessage, b as ResponseMessage, g as RetryManager, i as RetryOptions, e as createLogger, j as createQueueManager, h as createRetryManager } from './index-DuScrLdb.js';

/**
 * 主窗口iframe桥梁
 */

declare class HostBridge extends IframeBridge {
    private iframe;
    constructor(iframe: HTMLIFrameElement, config?: BridgeConfig);
    protected setupMessageListener(): void;
    protected getTargetWindow(): Window | null;
}

/**
 * 子窗口iframe桥梁
 */

declare class ChildBridge extends IframeBridge {
    constructor(config?: BridgeConfig);
    protected setupMessageListener(): void;
    protected getTargetWindow(): Window | null;
}

/**
 * 跨框架桥梁工厂函数
 */

interface EnhancedBridgeConfig extends BridgeConfig {
    plugins?: PluginsConfig;
}
/**
 * 创建增强的主窗口桥梁（带插件支持）
 */
declare function createEnhancedHostBridge(iframe: HTMLIFrameElement, config?: EnhancedBridgeConfig): HostBridge;
/**
 * 创建增强的子窗口桥梁（带插件支持）
 */
declare function createEnhancedChildBridge(config?: EnhancedBridgeConfig): ChildBridge;
/**
 * 自动创建增强的桥梁（根据环境判断，带插件支持）
 */
declare function createEnhancedBridge(iframeOrConfig?: HTMLIFrameElement | EnhancedBridgeConfig, config?: EnhancedBridgeConfig): HostBridge | ChildBridge;
/**
 * 创建主窗口桥梁
 */
declare function createHostBridge(iframe: HTMLIFrameElement, config?: BridgeConfig): HostBridge;
/**
 * 创建子窗口桥梁
 */
declare function createChildBridge(config?: BridgeConfig): ChildBridge;
/**
 * 自动创建桥梁（根据环境判断）
 */
declare function createAutoBridge(iframeOrConfig?: HTMLIFrameElement | BridgeConfig, config?: BridgeConfig): HostBridge | ChildBridge;

export { BridgeConfig, ChildBridge, type EnhancedBridgeConfig, HostBridge, IframeBridge, PluginsConfig, createAutoBridge, createEnhancedBridge as createBridge, createChildBridge, createEnhancedBridge, createEnhancedChildBridge, createEnhancedHostBridge, createHostBridge };
