/**
 * @license
 * Copyright 2022-2026 Matter.js Authors
 * SPDX-License-Identifier: Apache-2.0
 */
import { ChannelType } from "#net/Channel.js";
import { Bytes } from "#util/Bytes.js";
import { UdpChannel, UdpChannelOptions } from "../udp/UdpChannel.js";
import type { MockNetwork } from "./MockNetwork.js";
import { MockRouter } from "./MockRouter.js";
export declare class MockUdpChannel implements UdpChannel {
    #private;
    readonly maxPayloadSize: number;
    constructor(network: MockNetwork, { listeningAddress, listeningPort, netInterface, type }: UdpChannelOptions, packetManipulator?: MockRouter.PacketManipulator);
    onData(listener: UdpChannel.Callback): {
        close: () => Promise<void>;
    };
    send(host: string, port: number, payload: Bytes): Promise<void>;
    close(): Promise<void>;
    [Symbol.asyncDispose](): Promise<void>;
    get port(): number;
    supports(type: ChannelType, _address: string): type is ChannelType.UDP;
    addMembership(address: string): void;
    dropMembership(address: string): void;
}
//# sourceMappingURL=MockUdpChannel.d.ts.map