Merge pull request #15830 from mrfunkycold/add-electron-config-type-file

Added type definitions for electron-config
This commit is contained in:
Ryan Cavanaugh
2017-04-17 14:16:02 -07:00
committed by GitHub
4 changed files with 122 additions and 0 deletions
@@ -0,0 +1,29 @@
import ElectronConfig = require('electron-config');
new ElectronConfig({
defaults: {},
});
new ElectronConfig({
name: 'myConfiguration',
});
const electronConfig = new ElectronConfig();
electronConfig.set('foo', 'bar');
electronConfig.set({
foo: 'bar',
'foo2': 'bar2',
});
electronConfig.delete('foo');
electronConfig.get('foo');
electronConfig.has('foo');
electronConfig.clear();
electronConfig.size;
electronConfig.store;
electronConfig.store = {
foo: 'bar',
};
electronConfig.path;
+70
View File
@@ -0,0 +1,70 @@
// Type definitions for electron-config 0.2.1
// Project: https://github.com/sindresorhus/electron-config
// Definitions by: Jose M. Medina <https://github.com/mrfunkycold>, Daniel P. Alvarez <https://github.com/unindented>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
interface ElectronConfigOptions {
/**
* Default config.
*/
defaults?: {};
/**
* Name of the config file (without extension).
*/
name?: string;
}
declare class ElectronConfig implements Iterable<[string, string | number | boolean | symbol | {}]> {
/**
* gets the item count
*/
size: number;
/**
* Get all the config as an object or replace the current config with an object
*/
store: {};
/**
* Get the path to the config file.
*/
path: string;
constructor(options?: ElectronConfigOptions);
/**
* Sets an item
*/
set(key: string, value: any): void;
/**
* Sets multiple items at once
*/
set(object: {}): void;
/**
* deletes an item
*/
delete(key: string): void;
/**
* retrieves an item
*/
get(key: string): any;
/**
* Checks if an item exists
*/
has(key: string): boolean;
/**
* deletes all items
*/
clear(): void;
[Symbol.iterator](): Iterator<[string, string | number | boolean | symbol | {}]>;
}
declare namespace ElectronConfig {} // https://github.com/Microsoft/TypeScript/issues/5073
export = ElectronConfig;
+22
View File
@@ -0,0 +1,22 @@
{
"compilerOptions": {
"module": "commonjs",
"lib": [
"es6"
],
"noImplicitAny": true,
"noImplicitThis": true,
"strictNullChecks": true,
"baseUrl": "../",
"typeRoots": [
"../"
],
"types": [],
"noEmit": true,
"forceConsistentCasingInFileNames": true
},
"files": [
"index.d.ts",
"electron-config-tests.ts"
]
}
+1
View File
@@ -0,0 +1 @@
{ "extends": "../tslint.json" }