///
import { MulticastInterface } from "../mdns/multicast_interface.js";
export type AdvertiseOpts = {
service: {
/** Unique name, e.g. "My Computer" */
name: string;
/** The type of the service, e.g. http. */
type: string;
/** A list of identifiers further identifying the kind of service provided, e.g. ["printer"]. */
subtypes?: string[];
protocol: "tcp" | "udp";
/** The address to advertise on. Automatically determined if omitted. */
host?: string;
port: number;
txt: Record;
};
multicastInterface: MulticastInterface;
/** A signal used to stop advertising. */
signal?: AbortSignal;
};
/** Advertise a service over multicast DNS.
*
* Returns a promise which will reject if fifteen failed attempts to claim a name are made within a ten second interval.
*
* If the service has to be renamed due to a conflict, a warning with the new name will be sent to the console.
*/
export declare function advertise(opts: AdvertiseOpts): Promise;