import type { BaseInteraction, TransportOptions } from '../interface';
import { Transport } from '../transport';
export interface IFrameTransportInternalOptions extends Partial<TransportOptions> {
    /**
     * Specify what the origin of targetWindow must be for the event to be dispatched,
     * by default, it's the literal string "*" (indicating no preference).
     */
    targetOrigin?: string;
    /**
     * Whether skip connection check, false by default.
     */
    skipConnectionCheck?: boolean;
}
export interface IFrameMainTransportOptions extends Partial<TransportOptions> {
    /**
     * Pass an iframe for using data transport.
     */
    iframe?: HTMLIFrameElement;
    /**
     * Specify what the origin of targetWindow must be for the event to be dispatched,
     * by default, it's the literal string "*" (indicating no preference).
     */
    targetOrigin?: string;
    /**
     * Whether skip connection check, false by default.
     */
    skipConnectionCheck?: boolean;
}
export declare abstract class IFrameMainTransport<T extends BaseInteraction = any> extends Transport<T> {
    constructor(_options: IFrameMainTransportOptions);
}
export declare abstract class IFrameInternalTransport<T extends BaseInteraction = any> extends Transport<T> {
    constructor(_options?: IFrameTransportInternalOptions);
}
export declare const IFrameTransport: {
    Main: typeof IFrameMainTransport;
    IFrame: typeof IFrameInternalTransport;
};
//# sourceMappingURL=iframeTransport.d.ts.map