import '../assert_dev_env.js';
import { type BackendCapabilities } from './capabilities.js';
import type { SetupTest } from './setup.js';
/** Configuration for {@link describe_cross_process_ws_tests}. */
export interface CrossProcessWsTestOptions {
    /**
     * Per-test fixture producer (`default_cross_process_setup(handle)`).
     * The authenticated case reads the fresh-per-test keeper's session
     * cookies from `fixture.transport.cookies()` to thread onto the upgrade.
     */
    readonly setup_test: SetupTest;
    /** Backend capability flags; every case gates on `capabilities.ws`. */
    readonly capabilities: BackendCapabilities;
    /** Base URL the backend is reachable at (e.g. `http://localhost:1178`). */
    readonly base_url: string;
    /** WebSocket endpoint path on the backend (e.g. `/api/ws`). */
    readonly ws_path: string;
    /** Origin for the authenticated upgrade. Defaults to `base_url`. */
    readonly origin?: string;
    /**
     * RPC endpoint path (e.g. `/api/rpc`) used by the close-on-revoke case to
     * fire `account_session_revoke_all` over the keeper's session channel.
     * When omitted, that case is skipped — it depends on the standard account
     * actions being mounted on the RPC endpoint.
     */
    readonly rpc_path?: string;
}
/**
 * Register the cross-process WS round-trip suite. Up to four cases over a
 * real upgrade: authed `heartbeat` round-trip, anonymous-upgrade refusal,
 * disallowed-origin refusal, and — when `rpc_path` is supplied —
 * session-revocation closing the live socket.
 */
export declare const describe_cross_process_ws_tests: (options: CrossProcessWsTestOptions) => void;
//# sourceMappingURL=ws_round_trip.d.ts.map