@node-dlc/wire
Version:
Lightning Network Wire Protocol
24 lines (22 loc) • 738 B
text/typescript
import { Address } from '../../domain/Address';
import { AddressType } from '../../domain/AddressType';
import { serializeIPv4 } from './serializeIPv4';
import { serializeIPv6 } from './serializeIPv6';
import { serializeTor2 } from './serializeTor2';
import { serializeTor3 } from './serializeTor3';
/**
* Serializes an address into a Buffer that can be transmitted
* over the wire
*/
export function serializeAddress(address: Address): Buffer {
switch (address.type) {
case AddressType.IPv4:
return serializeIPv4(address);
case AddressType.IPv6:
return serializeIPv6(address);
case AddressType.TOR2:
return serializeTor2(address);
case AddressType.TOR3:
return serializeTor3(address);
}
}