/** * @license * Copyright 2022-2026 Matter.js Authors * SPDX-License-Identifier: Apache-2.0 */ import { DnsMessage, DnsMessageType } from "#codec/DnsCodec.js"; import { Network } from "#net/Network.js"; import { UdpMulticastServer } from "#net/udp/UdpMulticastServer.js"; import { Lifetime } from "#util/Lifetime.js"; import { AsyncObservable } from "#util/Observable.js"; /** * Manages the UDP socket for other components that implement MDNS logic. */ export declare class MdnsSocket { #private; static create(network: Network, options?: { enableIpv4?: boolean; netInterface?: string; lifetime?: Lifetime.Owner; }): Promise; constructor(socket: UdpMulticastServer); get network(): Network; get supportsIpv4(): boolean; get netInterface(): string | undefined; get receipt(): AsyncObservable<[message: MdnsSocket.Message], void>; send(message: Partial & { messageType: DnsMessageType; }, intf?: string, unicastDest?: string): Promise; close(): Promise; } export declare namespace MdnsSocket { interface Message extends DnsMessage { sourceIp: string; sourceIntf: string; } const BROADCAST_IPV4 = "224.0.0.251"; const BROADCAST_IPV6 = "ff02::fb"; const BROADCAST_PORT = 5353; } //# sourceMappingURL=MdnsSocket.d.ts.map