UPDATE localForage type definitions

This commit is contained in:
recuedav
2016-10-04 11:40:55 +02:00
parent 57ec5fbb76
commit 934f5638d4
2 changed files with 75 additions and 40 deletions

View File

@@ -1,65 +1,86 @@
/// <reference path="localForage.d.ts" />
declare var localForage: LocalForage;
declare let localForage: LocalForage;
() => {
namespace LocalForageTest {
localForage.clear((err: any) => {
var newError: any = err;
let newError: any = err;
});
localForage.iterate((str: string, key: string, num: number) => {
var newStr: string = str;
var newKey: string = key;
var newNum: number = num;
let newStr: string = str;
let newKey: string = key;
let newNum: number = num;
});
localForage.length((err: any, num: number) => {
var newError: any = err;
var newNumber: number = num;
let newError: any = err;
let newNumber: number = num;
});
localForage.key(0, (err: any, value: string) => {
var newError: any = err;
var newValue: string = value;
let newError: any = err;
let newValue: string = value;
});
localForage.keys((err: any, keys: Array<string>) => {
var newError: any = err;
var newArray: Array<string> = keys;
let newError: any = err;
let newArray: Array<string> = keys;
});
localForage.getItem("key",(err: any, str: string) => {
var newError: any = err;
var newStr: string = str
let newError: any = err;
let newStr: string = str
});
localForage.getItem<string>("key").then((str: string) => {
var newStr: string = str;
let newStr: string = str;
});
localForage.setItem("key", "value",(err: any, str: string) => {
var newError: any = err;
var newStr: string = str
let newError: any = err;
let newStr: string = str
});
localForage.setItem("key", "value").then((str: string) => {
var newStr: string = str;
let newStr: string = str;
});
localForage.removeItem("key",(err: any) => {
var newError: any = err;
let newError: any = err;
});
localForage.removeItem("key").then(() => {
});
var config = localForage.config({
name: "testyo",
driver: localForage.LOCALSTORAGE
});
var store = localForage.createInstance({
name: "da instance",
driver: localForage.LOCALSTORAGE
});
}
{
let config: boolean;
config = localForage.config({
name: "testyo",
driver: localForage.LOCALSTORAGE
});
}
{
let store: LocalForage;
store = localForage.createInstance({
name: "da instance",
driver: localForage.LOCALSTORAGE
});
}
{
let testSerializer: LocalForageSerializer;
localForage.getSerializer()
.then((serializer: LocalForageSerializer) => {
testSerializer = serializer;
});
localForage.getSerializer((serializer: LocalForageSerializer) => {
testSerializer = serializer;
});
}
}

View File

@@ -39,6 +39,16 @@ interface LocalForageDriver {
setItem(key: string, value: any, callback: (err: any, value: any) => void): void;
}
interface LocalForageSerializer {
serialize<T>(value: T | ArrayBuffer | Blob, callback: (value: string, error: any) => {}): void;
deserialize<T>(value: string): T | ArrayBuffer | Blob;
stringToBuffer(serializedString: string): ArrayBuffer;
bufferToString(buffer: ArrayBuffer): string;
}
interface LocalForage {
LOCALSTORAGE: string;
WEBSQL: string;
@@ -50,6 +60,12 @@ interface LocalForage {
* @param {ILocalForageConfig} options?
*/
config(options: LocalForageOptions): boolean;
/**
* Create a new instance of localForage to point to a different store.
* All the configuration options used by config are supported.
* @param {LocalForageOptions} options
*/
createInstance(options: LocalForageOptions): LocalForage;
driver(): string;
@@ -62,6 +78,11 @@ interface LocalForage {
defineDriver(driver: LocalForageDriver): Promise<void>;
defineDriver(driver: LocalForageDriver, callback: () => void, errorCallback: (error: any) => void): void;
getSerializer(): Promise<LocalForageSerializer>;
getSerializer(callback: (serializer: LocalForageSerializer) => void): void;
supports(driverName: string): boolean;
getItem<T>(key: string): Promise<T>;
getItem<T>(key: string, callback: (err: any, value: T) => void): void;
@@ -86,16 +107,9 @@ interface LocalForage {
iterate(iteratee: (value: any, key: string, iterationNumber: number) => any): Promise<any>;
iterate(iteratee: (value: any, key: string, iterationNumber: number) => any,
callback: (err: any, result: any) => void): void;
/**
* Create a new instance of localForage to point to a different store.
* All the configuration options used by config are supported.
* @param {LocalForageOptions} options
*/
createInstance(options: LocalForageOptions): LocalForage;
}
declare module "localforage" {
export var localforage: LocalForage;
export default localforage;
export default localforage;
}