UNPKG

lavva.exalushome

Version:

Library implementing communication and abstraction layers for ExalusHome system

78 lines (77 loc) 2.13 kB
import { Status } from "./DataFrame"; export interface INetworkService { GetServiceName(): string; EnableDhcpAsync(): Promise<Status>; SetStaticIpConfigurationAsync(configuration: INetworkIpv4StaticConfig): Promise<Status>; GetIpConfigurationAsync(): Promise<INetworkData | null>; RestoreDefaultConfigurationAsync(): Promise<Status>; GetDnsServersAsync(): Promise<string[]>; AddDnsServerAsync(address: string): Promise<Status>; } export interface INetworkIpv4StaticConfig { get IpAddress(): string; set IpAddress(value: string); get SubnetMask(): string; set SubnetMask(value: string); get DefaultGateway(): string; set DefaultGateway(value: string); get Broadcast(): string; set Broadcast(value: string); } export interface INetworkData { get Id(): string; get Name(): string; get Ipv4Address(): string; get Ipv4SubnetMask(): string; get Ipv4DefaultGateway(): string; get Ipv4PublicAddress(): string; get MacAddress(): string; get IsDhcpEnabled(): boolean; get InterfaceType(): NetworkInterfaceType; get OperationalStatus(): OperationalStatus; get InterfaceSpeed(): number; get Statistics(): INetworkStatistics; } export interface INetworkStatistics { get BytesReceived(): number; get BytesSent(): number; } export declare enum NetworkInterfaceType { Unknown = 1, Ethernet = 6, TokenRing = 9, Fddi = 15, BasicIsdn = 20, PrimaryIsdn = 21, Ppp = 23, Loopback = 24, Ethernet3Megabit = 26, Slip = 28, Atm = 37, GenericModem = 48, FastEthernetT = 62, Isdn = 63, FastEthernetFx = 69, Wireless80211 = 71, AsymmetricDsl = 94, RateAdaptDsl = 95, SymmetricDsl = 96, VeryHighSpeedDsl = 97, IPOverAtm = 114, GigabitEthernet = 117, Tunnel = 131, MultiRateSymmetricDsl = 143, HighPerformanceSerialBus = 144, Wman = 237, Wwanpp = 243, Wwanpp2 = 244 } export declare enum OperationalStatus { Up = 1, Down = 2, Testing = 3, Unknown = 4, Dormant = 5, NotPresent = 6, LowerLayerDown = 7 }