declare module 'nat-upnp' { interface PortMappingOptions { public: number | { host?: string; port: number } private: number | { host?: string; port: number } ttl?: number description?: string protocol?: 'tcp' | 'udp' } interface UpnpClient { portMapping(options: PortMappingOptions, callback: (err: Error | null) => void): void portUnmapping(options: { public: number; protocol?: 'tcp' | 'udp' }, callback: (err: Error | null) => void): void externalIp(callback: (err: Error | null, ip: string) => void): void close(): void } export function createClient(): UpnpClient }