import { Transform, TransformCallback } from 'stream';
import { CreateDebug } from './types';
interface MdnsWsOptions {
    app: {
        config: {
            getExternalHostname(): string;
            getExternalPort(): number;
        };
        setProviderStatus(id: string, msg: string): void;
        setProviderError(id: string, msg: string): void;
    };
    providerId: string;
    createDebug?: CreateDebug;
    host?: string;
    port?: number;
    type?: string;
    subscription?: string;
    selfHandling?: string;
    token?: string;
    remoteSelf?: string;
    ignoreServers?: string[];
    selfsignedcert?: boolean;
}
export default class MdnsWs extends Transform {
    private readonly options;
    private readonly selfHost;
    private readonly selfPort;
    private readonly remoteServers;
    private readonly debug;
    private readonly dataDebug;
    private readonly subscriptions;
    private handleContext;
    private signalkClient?;
    private isDestroying;
    private fetchedMetaPaths;
    constructor(options: MdnsWsOptions);
    private verifyRemoteToken;
    private setProviderStatus;
    private connectClient;
    private fetchMetaIfNeeded;
    _transform(chunk: unknown, encoding: BufferEncoding, done: TransformCallback): void;
    _destroy(error: Error | null, callback: (error?: Error | null) => void): void;
}
export {};
//# sourceMappingURL=mdns-ws.d.ts.map