function parse
parse(text: string): Promise<WGQuickConf>

Parse a wg-quick(8) configuration file into a JavaScript object.

Examples

Parse a configuration with multiple peers

import { parse } from "@hertzg/wg-conf";
import { assertEquals } from "@std/assert";

const text = [
  '[Interface]',
  'ListenPort = 51820',
  'PrivateKey = PRIV',
  '',
  '[Peer]',
  'PublicKey = PUB',
  '',
  '[Peer]',
  'PublicKey = PUB2',
  ''
].join("\n");

assertEquals(await parse(text), {
  Interface: {
    ListenPort: 51820,
    PrivateKey: "PRIV",
  },
  Peers: [
    { PublicKey: "PUB" },
    { PublicKey: "PUB2" },
  ],
});

Parameters

text: string

The wg-quick configuration file content as a string.

Return Type

Promise<WGQuickConf>

A promise that resolves to a WGQuickConf object.

Usage

import { parse } from ".";