diff --git a/storejs/storejs-tests.ts b/storejs/storejs-tests.ts new file mode 100644 index 000000000..06387a728 --- /dev/null +++ b/storejs/storejs-tests.ts @@ -0,0 +1,23 @@ +// Tests for storagejs.d.ts +/// + +// Store 'marcus' at 'username' +store.set('username', 'marcus'); + +// Get 'username' +var userName:any = store.get('username'); + +var all: Object = store.getAll(); + +// Remove 'username' +store.remove('username'); + +// Clear all keys +store.clear(); + +// Store an object literal - store.js uses JSON.stringify under the hood +store.set('user', { name: 'marcus', likes: 'javascript' }); + +// Get the stored object - store.js uses JSON.parse under the hood +var user: any = store.get('user'); +alert(user.name + ' likes ' + user.likes); \ No newline at end of file diff --git a/storejs/storejs.d.ts b/storejs/storejs.d.ts new file mode 100644 index 000000000..3c14a99ca --- /dev/null +++ b/storejs/storejs.d.ts @@ -0,0 +1,20 @@ +// Type definitions for store.js +// store.js exposes a simple API for cross browser local storage +// Project: https://github.com/marcuswestin/store.js/ +// Definitions by: Vincent Bortone +// Definitions: https://github.com/borisyankov/DefinitelyTyped + +interface StoreJSStatic { + set(key: string, value: any): any; + get(key: string): any; + remove(key: string): void; + clear(): void; + enabled: bool; + disabled: bool; + transact(key: string, defaultValue: any, transactionFn?: (val: any) => void): void; + getAll(): any; + serialize(value: any): string; + deserialize(value: string): any; +} + +declare var store: StoreJSStatic; \ No newline at end of file