mirror of
https://github.com/FlipsideCrypto/DefinitelyTyped.git
synced 2026-02-06 19:07:08 +00:00
Merge pull request #5066 from Garciat/localforage-patch
Improve localForage typings
This commit is contained in:
commit
43a433a0bd
4
angular-localForage/angular-localForage.d.ts
vendored
4
angular-localForage/angular-localForage.d.ts
vendored
@ -22,8 +22,8 @@ declare module angular.localForage {
|
||||
}
|
||||
|
||||
interface ILocalForageService {
|
||||
setDriver(driver:string):angular.IPromise<void>;
|
||||
driver<T>():lf.ILocalForage<T>;
|
||||
driver(): LocalForageDriver;
|
||||
setDriver(name: string | string[]): angular.IPromise<void>;
|
||||
|
||||
setItem(key:string, value:any):angular.IPromise<void>;
|
||||
setItem(keys:Array<string>, values:Array<any>):angular.IPromise<void>;
|
||||
|
||||
@ -1,13 +1,6 @@
|
||||
/// <reference path="localForage.d.ts" />
|
||||
|
||||
declare var localForage: lf.ILocalForage<string>;
|
||||
declare var callback: lf.ICallback<string>;
|
||||
declare var iterateCallback: lf.IIterateCallback<string>;
|
||||
declare var errorCallback: lf.IErrorCallback;
|
||||
declare var keyCallback: lf.IKeyCallback;
|
||||
declare var keysCallback: lf.IKeysCallback;
|
||||
declare var numberCallback: lf.INumberCallback;
|
||||
declare var promise: lf.IPromise<string>;
|
||||
declare var localForage: LocalForage;
|
||||
|
||||
() => {
|
||||
localForage.clear((err: any) => {
|
||||
@ -25,7 +18,7 @@ declare var promise: lf.IPromise<string>;
|
||||
var newNumber: number = num;
|
||||
});
|
||||
|
||||
localForage.key(0,(err: any, value: string) => {
|
||||
localForage.key(0, (err: any, value: string) => {
|
||||
var newError: any = err;
|
||||
var newValue: string = value;
|
||||
});
|
||||
@ -40,9 +33,8 @@ declare var promise: lf.IPromise<string>;
|
||||
var newStr: string = str
|
||||
});
|
||||
|
||||
localForage.getItem("key").then((err: any, str: string) => {
|
||||
var newError: any = err;
|
||||
var newStr: string = str
|
||||
localForage.getItem<string>("key").then((str: string) => {
|
||||
var newStr: string = str;
|
||||
});
|
||||
|
||||
localForage.setItem("key", "value",(err: any, str: string) => {
|
||||
@ -50,8 +42,7 @@ declare var promise: lf.IPromise<string>;
|
||||
var newStr: string = str
|
||||
});
|
||||
|
||||
localForage.setItem("key", "value").then((err: any, str: string) => {
|
||||
var newError: any = err;
|
||||
localForage.setItem("key", "value").then((str: string) => {
|
||||
var newStr: string = str;
|
||||
});
|
||||
|
||||
@ -59,10 +50,6 @@ declare var promise: lf.IPromise<string>;
|
||||
var newError: any = err;
|
||||
});
|
||||
|
||||
localForage.removeItem("key").then((err: any, str: string) => {
|
||||
var newError: any = err;
|
||||
var newStr: string = str
|
||||
localForage.removeItem("key").then(() => {
|
||||
});
|
||||
|
||||
promise.then(callback);
|
||||
}
|
||||
|
||||
138
localForage/localForage.d.ts
vendored
138
localForage/localForage.d.ts
vendored
@ -3,71 +3,79 @@
|
||||
// Definitions by: yuichi david pichsenmeister <https://github.com/3x14159265>
|
||||
// Definitions: https://github.com/borisyankov/DefinitelyTyped
|
||||
|
||||
declare module lf {
|
||||
interface ILocalForage<T> {
|
||||
/**
|
||||
* Removes every key from the database, returning it to a blank slate.
|
||||
*/
|
||||
clear(callback: IErrorCallback): void
|
||||
/**
|
||||
* Iterate over all value/key pairs in datastore.
|
||||
*/
|
||||
iterate(iterateCallback: IIterateCallback<T>): void
|
||||
/**
|
||||
* Get the name of a key based on its ID.
|
||||
*/
|
||||
key(keyIndex: number, callback: IKeyCallback): void
|
||||
/**
|
||||
* Get the list of all keys in the datastore.
|
||||
*/
|
||||
keys(callback: IKeysCallback): void;
|
||||
/**
|
||||
* Gets the number of keys in the offline store (i.e. its “length”).
|
||||
*/
|
||||
length(callback: INumberCallback): void
|
||||
/**
|
||||
* Gets an item from the storage library and supplies the result to a callback.
|
||||
* If the key does not exist, getItem() will return null.
|
||||
*/
|
||||
getItem(key: string, callback: ICallback<T>): void
|
||||
getItem(key: string): IPromise<T>
|
||||
/**
|
||||
* Saves data to an offline store.
|
||||
*/
|
||||
setItem(key: string, value: T, callback: ICallback<T>): void
|
||||
setItem(key: string, value: T): IPromise<T>
|
||||
/**
|
||||
* Removes the value of a key from the offline store.
|
||||
*/
|
||||
removeItem(key: string, callback: IErrorCallback): void
|
||||
removeItem(key: string): IPromise<T>
|
||||
}
|
||||
/// <reference path="../es6-promise/es6-promise.d.ts" />
|
||||
|
||||
interface ICallback<T> {
|
||||
(err: any, value: T): void
|
||||
}
|
||||
interface LocalForageOptions {
|
||||
driver?: LocalForageDriver | LocalForageDriver[];
|
||||
|
||||
name?: string;
|
||||
|
||||
size?: number;
|
||||
|
||||
storeName?: string;
|
||||
|
||||
version?: string;
|
||||
|
||||
description?: string;
|
||||
}
|
||||
|
||||
interface IIterateCallback<T> {
|
||||
(value: T, key: string, iterationNumber: number): void
|
||||
}
|
||||
interface LocalForageDriver {
|
||||
_driver: string;
|
||||
|
||||
_initStorage(options: LocalForageOptions): void;
|
||||
|
||||
_support: boolean | Promise<boolean>;
|
||||
|
||||
clear(callback: (err: any) => void): void;
|
||||
|
||||
getItem(key: string, callback: (err: any, value: any) => void): void;
|
||||
|
||||
key(keyIndex: number, callback: (err: any, key: string) => void): void;
|
||||
|
||||
keys(callback: (err: any, keys: string[]) => void): void;
|
||||
|
||||
length(callback: (err: any, numberOfKeys: number) => void): void;
|
||||
|
||||
removeItem(key: string, callback: (err: any) => void): void;
|
||||
|
||||
setItem(key: string, value: any, callback: (err: any, value: any) => void): void;
|
||||
}
|
||||
|
||||
interface IErrorCallback {
|
||||
(err: any): void
|
||||
}
|
||||
|
||||
interface IKeyCallback {
|
||||
(err: any, keyName: string): void
|
||||
}
|
||||
|
||||
interface IKeysCallback {
|
||||
(err: any, keys: Array<string>): void
|
||||
}
|
||||
|
||||
interface INumberCallback {
|
||||
(err: any, numberOfKeys: number): void
|
||||
}
|
||||
|
||||
interface IPromise<T> {
|
||||
then(callback: ICallback<T>): void
|
||||
}
|
||||
}
|
||||
interface LocalForage {
|
||||
LOCALSTORAGE: string;
|
||||
WEBSQL: string;
|
||||
INDEXEDDB: string;
|
||||
|
||||
config(options: LocalForageOptions): void;
|
||||
|
||||
driver(): LocalForageDriver;
|
||||
setDriver(driver: string | string[]): Promise<void>;
|
||||
setDriver(driver: string | string[], callback: () => void, errorCallback: (error: any) => void): void;
|
||||
defineDriver(driver: LocalForageDriver): Promise<void>;
|
||||
defineDriver(driver: LocalForageDriver, callback: () => void, errorCallback: (error: any) => void): void;
|
||||
|
||||
getItem<T>(key: string): Promise<T>;
|
||||
getItem<T>(key: string, callback: (err: any, value: T) => void): void;
|
||||
|
||||
setItem<T>(key: string, value: T): Promise<T>;
|
||||
setItem<T>(key: string, value: T, callback: (err: any, value: T) => void): void;
|
||||
|
||||
removeItem(key: string): Promise<void>;
|
||||
removeItem(key: string, callback: (err: any) => void): void;
|
||||
|
||||
clear(): Promise<void>;
|
||||
clear(callback: (err: any) => void): void;
|
||||
|
||||
length(): Promise<number>;
|
||||
length(callback: (err: any, numberOfKeys: number) => void): void;
|
||||
|
||||
key(keyIndex: number): Promise<string>;
|
||||
key(keyIndex: number, callback: (err: any, key: string) => void): void;
|
||||
|
||||
keys(): Promise<string[]>;
|
||||
keys(callback: (err: any, keys: string[]) => void): void;
|
||||
|
||||
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;
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user