diff --git a/keytar/keytar-tests.ts b/keytar/keytar-tests.ts new file mode 100644 index 000000000..1ad9006c6 --- /dev/null +++ b/keytar/keytar-tests.ts @@ -0,0 +1,9 @@ +/// + +import keytar = require('keytar'); + +keytar.addPassword('keytar-tests', 'username', 'password'); +keytar.deletePassword('keytar-tests', 'username'); +keytar.findPassword('keytar-tests'); +keytar.getPassword('keytar-tests', 'username'); +keytar.replacePassword('keytar-tests', 'username', 'password'); diff --git a/keytar/keytar.d.ts b/keytar/keytar.d.ts new file mode 100644 index 000000000..cee7e71bd --- /dev/null +++ b/keytar/keytar.d.ts @@ -0,0 +1,60 @@ +// Type definitions for keytar 3.0.0 +// Project: http://atom.github.io/node-keytar/ +// Definitions by: Milan Burda +// Definitions: https://github.com/borisyankov/DefinitelyTyped + +declare module 'keytar' { + /** + * Get the stored password for the service and account. + * + * @param service The string service name. + * @param account The string account name. + * + * @returns the string password or null on failures. + */ + export function getPassword(service: string, account: string): string; + + /** + * Add the password for the service and account to the keychain. + * + * @param service The string service name. + * @param account The string account name. + * @param password The string password. + * + * @returns true on success, false on failure. + */ + export function addPassword(service: string, account: string, password: string): boolean; + + /** + * Delete the stored password for the service and account. + * + * @param service The string service name. + * @param account The string account name. + * + * @returns the string password or null on failures. + */ + export function deletePassword(service: string, account: string): string; + + /** + * Replace the password for the service and account in the keychain. + * + * This is a simple convenience function that internally calls deletePassword(service, account) + * followed by addPassword(service, account, password). + * + * @param service The string service name. + * @param account The string account name. + * @param password The string password. + * + * @returns true on success, false on failure. + */ + export function replacePassword(service: string, account: string, password: string): boolean; + + /** + * Find a password for the service in the keychain. + * + * @param service The string service name. + * + * @returns the string password or null on failures. + */ + export function findPassword(service: string): string; +}