import type { _VZVirtioSocketConnection } from "./VZVirtioSocketConnection.js";
import type { _VZVirtioSocketDevice } from "./VZVirtioSocketDevice.js";
import type { _VZVirtioSocketListener } from "./VZVirtioSocketListener.js";
export interface _VZVirtioSocketListenerDelegate {
    /**
     * @abstract Invoked when the Virtio socket device is accepting a new connection. @param listener The listener invoking the delegate method. @param connection The new connection to be established. @param socketDevice The Virtio socket device with which the new connection is to be established. @return YES if the connection should be established, NO otherwise. @discussion The VZVirtioSocketConnection object owns a file descriptor for this connection. Data can be sent and received through that file descriptor. If the connection is accepted, the implementation should keep a reference to the connection object to send and receive data.
     */
    listener$shouldAcceptNewConnection$fromSocketDevice$?(listener: _VZVirtioSocketListener, connection: _VZVirtioSocketConnection, socketDevice: _VZVirtioSocketDevice): boolean;
}
