@achingbrain/nat-port-mapper
Version:
Port mapping with UPnP and NAT-PMP
41 lines • 1.16 kB
TypeScript
import type { Service } from '@achingbrain/ssdp';
import type { AbortOptions } from 'abort-error';
export interface InternetGatewayDevice {
device: GatewayDevice;
}
interface GatewayDevice {
deviceType: string;
serviceList: {
service: GatewayService[];
};
deviceList: {
device: GatewayDevice[];
};
}
interface GatewayService {
serviceType: string;
serviceId: string;
SCPDURL: string;
controlURL: string;
eventSubURL: string;
}
interface ServiceDescription {
services: GatewayService[];
devices: GatewayDevice[];
}
interface ServiceInfo {
service: string;
SCPDURL: string;
controlURL: string;
}
export declare class Device {
readonly service: Service<InternetGatewayDevice>;
private readonly shutdownController;
constructor(service: Service<InternetGatewayDevice>);
run(device: string, action: string, args: Array<[string, string | number]>, options?: AbortOptions): Promise<any>;
getService(type: string): ServiceInfo;
parseDescription(info: Record<string, any>): ServiceDescription;
close(): void;
}
export {};
//# sourceMappingURL=device.d.ts.map