如何访问电子设置的未导出接口和类型

时间:2018-08-17 15:50:32

标签: typescript electron

this definition file中,set方法的返回类型指定为JsonValue

我也想给变量提供这种类型,但是我不知道如何访问JsonValue。

示例

import settings = "electron-settings";

let value:JsonValue = settings.get("abc");

1 个答案:

答案 0 :(得分:1)

最简单的解决方案是不显式键入变量,可以让编译器推断

import settings = require("electron-settings");

let value = settings.get("abc");

您可以使用类型查询和ReturnType条件类型来定义相对于value的返回类型的get类型:

import settings = require("electron-settings");

let value: ReturnType<typeof settings['get']> = settings.get("abc");

您甚至可以使用类型别名,以便轻松地在更多地方重用它:

import settings = require("electron-settings");
type JsonValue  =  ReturnType<typeof settings['get']>;
let value:JsonValue = settings.get("abc");