import { z } from 'zod'; import { E as EventMap, b as EventEmitter, T as Transport, c as EventEmitterOptions } from '../EventEmitter-xxG3brvI.js'; declare class HandshakeChild extends EventEmitter { handshakeOptions: Required; isConnected: boolean; constructor(transport: Transport, options?: EventEmitterWithHandshakeOptions); handshakeWithParent(): Promise; private _onAction; } declare class HandshakeParent extends EventEmitter { handshakeOptions: Required; isConnected: boolean; private _ongoingHandshakeWithChild?; constructor(transport: Transport, options?: EventEmitterWithHandshakeOptions); /** * Establishes handshake with child using single-flight pattern. * If called while another handshake is running, returns the existing promise. */ handshakeWithChild(): Promise; /** * Performs the actual handshake logic. */ private _performHandshake; private _send; private _sendAction; } interface HandshakeOptions { timeoutMs?: number; intervalMs?: number; } type EventEmitterWithHandshakeOptions = EventEmitterOptions & { handshakeOptions?: HandshakeOptions; targetOrigin?: string; }; declare const DEFAULT_HANDSHAKE_OPTIONS: Required; declare const HANDSHAKE_EVENTS: { fromChild: { readonly handshakeResponse: z.ZodObject<{ requestVerificationId: z.ZodString; }, "strip", z.ZodTypeAny, { requestVerificationId: string; }, { requestVerificationId: string; }>; }; fromParent: { readonly handshakeRequest: z.ZodObject<{ requestVerificationId: z.ZodString; }, "strip", z.ZodTypeAny, { requestVerificationId: string; }, { requestVerificationId: string; }>; readonly handshakeComplete: z.ZodObject<{ requestVerificationId: z.ZodString; }, "strip", z.ZodTypeAny, { requestVerificationId: string; }, { requestVerificationId: string; }>; }; }; type HandshakeEvents = typeof HANDSHAKE_EVENTS.fromParent & typeof HANDSHAKE_EVENTS.fromChild; type HandshakeParentEvents = typeof HANDSHAKE_EVENTS.fromParent; type HandshakeChildEvents = typeof HANDSHAKE_EVENTS.fromChild; export { DEFAULT_HANDSHAKE_OPTIONS, type EventEmitterWithHandshakeOptions, HANDSHAKE_EVENTS, HandshakeChild, type HandshakeChildEvents, type HandshakeEvents, type HandshakeOptions, HandshakeParent, type HandshakeParentEvents };