From 674528b01e60cd6a8a503b6a1953cd245236937b Mon Sep 17 00:00:00 2001 From: "Adam A. Zerella" Date: Tue, 5 Mar 2019 15:29:24 +1100 Subject: [PATCH] Added type defs for sntp --- types/sntp/index.d.ts | 41 ++++++++++++++++++++++++++++++++++++++++ types/sntp/sntp-tests.ts | 18 ++++++++++++++++++ types/sntp/tsconfig.json | 25 ++++++++++++++++++++++++ types/sntp/tslint.json | 3 +++ 4 files changed, 87 insertions(+) create mode 100644 types/sntp/index.d.ts create mode 100644 types/sntp/sntp-tests.ts create mode 100644 types/sntp/tsconfig.json create mode 100644 types/sntp/tslint.json diff --git a/types/sntp/index.d.ts b/types/sntp/index.d.ts new file mode 100644 index 0000000000..9f94651df8 --- /dev/null +++ b/types/sntp/index.d.ts @@ -0,0 +1,41 @@ +// Type definitions for sntp 3.0 +// Project: https://github.com/hueniverse/sntp +// Definitions by: Adam Zerella +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +export interface Options { + host?: string; + port?: number; + resolveReference?: boolean; + timeout?: number; +} + +export interface TimeOptions { + isValid: boolean; + leapIndicator: string; + version: number; + mode: string; + stratum: string; + pollInterval: number; + precision: number; + rootDelay: number; + rootDispersion: number; + referenceId: string; + referenceTimestamp: number; + originateTimestamp: number; + receiveTimestamp: number; + transmitTimestamp: number; + d: number; + t: number; + receivedLocally: number; +} + +export function start(options?: Options): Promise; + +export function stop(): void; + +export function offset(): Promise; + +export function time(options?: Options): Promise; + +export function now(): number; diff --git a/types/sntp/sntp-tests.ts b/types/sntp/sntp-tests.ts new file mode 100644 index 0000000000..1e6f80d35b --- /dev/null +++ b/types/sntp/sntp-tests.ts @@ -0,0 +1,18 @@ +import Sntp = require('sntp'); + +const options = { + host: 'abc', + port: 123, +}; + +Sntp.now(); + +Sntp.start(options); +Sntp.start(); + +Sntp.stop(); + +Sntp.time(options); +Sntp.time(); + +Sntp.offset(); diff --git a/types/sntp/tsconfig.json b/types/sntp/tsconfig.json new file mode 100644 index 0000000000..4bf279440e --- /dev/null +++ b/types/sntp/tsconfig.json @@ -0,0 +1,25 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [ + + ], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "sntp-tests.ts" + ] +} diff --git a/types/sntp/tslint.json b/types/sntp/tslint.json new file mode 100644 index 0000000000..e60c15844f --- /dev/null +++ b/types/sntp/tslint.json @@ -0,0 +1,3 @@ +{ + "extends": "dtslint/dt.json" +} \ No newline at end of file