import type { NobjcObject } from "objc-js";
import type { _NEAppProxyFlow } from "./NEAppProxyFlow.js";
import type { _NWEndpoint } from "./NWEndpoint.js";
import type { _NSArray } from "../Foundation/NSArray.js";
import type { _NSError } from "../Foundation/NSError.js";
import type { _NSObject } from "../Foundation/NSObject.js";
export declare class _NEAppProxyUDPFlow extends _NEAppProxyFlow {
    static alloc(): _NEAppProxyUDPFlow;
    static new(): _NEAppProxyUDPFlow;
    init(): _NEAppProxyUDPFlow;
    /**
     * @method readDatagramsAndFlowEndpointsWithCompletionHandler: @discussion Read datagrams from the flow. @param completionHandler A block that will be executed when datagrams have been read from the flow. The block takes the datagrams that were read, the destination endpoints of the datagrams, and an NSError. If an error occurred while reading then the error parameter will be non-nil.
     */
    readDatagramsAndFlowEndpointsWithCompletionHandler$(completionHandler: ((datagrams: _NSArray, remoteEndpoints: NobjcObject, error: _NSError) => void) | null): void;
    /**
     * @method readDatagramsWithCompletionHandler: @discussion Read datagrams from the flow. @param completionHandler A block that will be executed when datagrams have been read from the flow. The block takes the datagrams that were read, the destination endpoints of the datagrams, and an NSError. If an error occurred while reading then the error parameter will be non-nil.
     * @deprecated readDatagramsAndFlowEndpointsWithCompletionHandler:
     */
    readDatagramsWithCompletionHandler$(completionHandler: ((datagrams: _NSArray, remoteEndpoints: _NSArray, error: _NSError) => void) | null): void;
    /**
     * @method writeDatagrams:sentByFlowEndpoints:completionHandler: @discussion Write datagrams to the flow. @param datagrams An array of NSData objects containing the data to be written. @param remoteEndpoints The source endpoints of the datagrams. @param completionHandler A block that will be executed when the datagrams have been written to the corresponding socket's receive buffer.
     */
    writeDatagrams$sentByFlowEndpoints$completionHandler$(datagrams: _NSArray, remoteEndpoints: NobjcObject, completionHandler: ((error: _NSError) => void) | null): void;
    /**
     * @method writeDatagrams:sentByEndpoint:completionHandler: @discussion Write datagrams to the flow. @param datagrams An array of NSData objects containing the data to be written. @param remoteEndpoints The source endpoints of the datagrams. @param completionHandler A block that will be executed when the datagrams have been written to the corresponding socket's receive buffer.
     * @deprecated writeDatagrams:sentByFlowEndpoints:completionHandler:
     */
    writeDatagrams$sentByEndpoints$completionHandler$(datagrams: _NSArray, remoteEndpoints: _NSArray, completionHandler: ((error: _NSError) => void) | null): void;
    /**
     * @property localFlowEndpoint @discussion An `nw_endpoint_t` object containing the local endpoint of the flow's corresponding socket.
     */
    localFlowEndpoint(): _NSObject | null;
    /**
     * @property localEndpoint @discussion An NWEndpoint object containing the local endpoint of the flow's corresponding socket.
     * @deprecated localFlowEndpoint
     */
    localEndpoint(): _NWEndpoint | null;
}
