diff --git a/js-data-angular/js-data-angular.d.ts b/js-data-angular/js-data-angular.d.ts index 11a295562..242c6d5ab 100644 --- a/js-data-angular/js-data-angular.d.ts +++ b/js-data-angular/js-data-angular.d.ts @@ -16,15 +16,13 @@ declare module JSData { bindAll(resourceName:string, params:DSFilterParams, scope:ng.IScope, expr:string, cb?:(err:DSError, items:Array)=>void):Function; - bindOne(resourceName:string, id:string, scope:ng.IScope, expr:string, cb?:(err:DSError, item:T)=>void):Function; - bindOne(resourceName:string, id:number, scope:ng.IScope, expr:string, cb?:(err:DSError, item:T)=>void):Function; + bindOne(resourceName:string, id:string | number, scope:ng.IScope, expr:string, cb?:(err:DSError, item:T)=>void):Function; } interface DSResourceDefinition { bindAll(params:DSFilterParams, scope:ng.IScope, expr:string, cb?:(err:DSError, items:Array)=>void):Function; - bindOne(id:string, scope:ng.IScope, expr:string, cb?:(err:DSError, item:T)=>void):Function; - bindOne(id:number, scope:ng.IScope, expr:string, cb?:(err:DSError, item:T)=>void):Function; + bindOne(id:string | number, scope:ng.IScope, expr:string, cb?:(err:DSError, item:T)=>void):Function; } } \ No newline at end of file diff --git a/js-data-http/js-data-http.d.ts b/js-data-http/js-data-http.d.ts index 416aa3c8c..295e7cc6f 100644 --- a/js-data-http/js-data-http.d.ts +++ b/js-data-http/js-data-http.d.ts @@ -13,14 +13,8 @@ declare module JSData { queryTransform?: (resourceName:string, params:DSFilterParams)=>any; httpConfig?: any; forceTrailingSlash?: boolean; - log?: any; - // TODO wait for union types to be supported - // log: (message?: any, ...optionalParams: any[])=> void; - // log: boolean; - error?: any; - // TODO wait for union types to be supported - // error: (message?: any, ...optionalParams: any[])=> void; - // error: boolean; + log?: boolean | ((message?:any, ...optionalParams:any[])=> void); + error?: boolean | ((message?:any, ...optionalParams:any[])=> void); } interface DSHttpAdapterPromiseResolveType { diff --git a/js-data/js-data.d.ts b/js-data/js-data.d.ts index 7017481ee..bec41d331 100644 --- a/js-data/js-data.d.ts +++ b/js-data/js-data.d.ts @@ -1,4 +1,4 @@ -// Type definitions for JSData v1.3.0 +// Type definitions for JSData v1.5.4 // Project: https://github.com/js-data/js-data // Definitions by: Stefan Steinhart // Definitions: https://github.com/borisyankov/DefinitelyTyped @@ -34,97 +34,44 @@ declare module JSData { defaults:DSConfiguration; - changeHistory(resourceName:string, id?:string):Array; - changeHistory(resourceName:string, id?:number):Array; - - changes(resourceName:string, id:string):Object; - changes(resourceName:string, id:number):Object; - - compute(resourceName:string, id:number):T; - compute(resourceName:string, id:string):T; - compute(resourceName:string, instance:Object):T; - - create(resourceName:string, attrs:any, options?:DSConfiguration):JSDataPromise; - - createInstance(resourceName:string, attrs?:T, options?:DSAdapterOperationConfiguration):T; - - defineResource(resourceName:string):DSResourceDefinition; - defineResource(definition:DSResourceDefinitionConfiguration):DSResourceDefinition; - - destroy(resourceName:string, id:string, options?:DSAdapterOperationConfiguration):JSDataPromise; - destroy(resourceName:string, id:number, options?:DSAdapterOperationConfiguration):JSDataPromise; - + // async + create(resourceName:string, attrs:Object, options?:DSConfiguration):JSDataPromise; + destroy(resourceName:string, id:string | number, options?:DSAdapterOperationConfiguration):JSDataPromise; destroyAll(resourceName:string, params?:DSFilterParams, options?:DSAdapterOperationConfiguration):JSDataPromise; - - digest():void; - - eject(resourceName:string, id:string, options?:DSConfiguration):T; - eject(resourceName:string, id:number, options?:DSConfiguration):T; - - ejectAll(resourceName:string, params:DSFilterParams, options?:DSConfiguration):Array; - - filter(resourceName:string, params:DSFilterParams, options?:DSConfiguration):Array; - - find(resourceName:string, id:string, options?:DSAdapterOperationConfiguration):JSDataPromise; - find(resourceName:string, id:number, options?:DSAdapterOperationConfiguration):JSDataPromise; - + find(resourceName:string, id:string | number, options?:DSAdapterOperationConfiguration):JSDataPromise; findAll(resourceName:string, params?:DSFilterParams, options?:DSAdapterOperationConfiguration):JSDataPromise>; + loadRelations(resourceName:string, idOrInstance:string | number | Object, relations:string | Array, options?:DSAdapterOperationConfiguration):JSDataPromise; + update(resourceName:string, id:string | number, attrs:Object, options?:DSSaveConfiguration):JSDataPromise; + updateAll(resourceName:string, attrs:Object, params?:DSFilterParams, options?:DSAdapterOperationConfiguration):JSDataPromise>; + reap(resourceName:string, options?:DSConfiguration):JSDataPromise; + refresh(resourceName:string, id:string | number, options?:DSAdapterOperationConfiguration):JSDataPromise; + save(resourceName:string, id:string | number, options?:DSSaveConfiguration):JSDataPromise; - get(resourceName:string, id:string, options?:DSConfiguration):T; - get(resourceName:string, id:number, options?:DSConfiguration):T; - - getAll(resourceName:string, ids?:Array):Array; - getAll(resourceName:string, ids?:Array):Array; - - hasChanges(resourceName:string, id:string):boolean; - hasChanges(resourceName:string, id:number):boolean; - + // sync + changeHistory(resourceName:string, id?:string | number):Array; + changes(resourceName:string, id:string | number):Object; + compute(resourceName:string, idOrInstance:number | string | Object ):T; + createInstance(resourceName:string, attrs?:T, options?:DSAdapterOperationConfiguration):T; + defineResource(resourceNameOrDefinition:string | DSResourceDefinitionConfiguration):DSResourceDefinition; + digest():void; + eject(resourceName:string, id:string | number, options?:DSConfiguration):T; + ejectAll(resourceName:string, params:DSFilterParams, options?:DSConfiguration):Array; + filter(resourceName:string, params:DSFilterParams, options?:DSConfiguration):Array; + get(resourceName:string, id:string | number, options?:DSConfiguration):T; + getAll(resourceName:string, ids?:Array):Array; + hasChanges(resourceName:string, id:string | number):boolean; inject(resourceName:string, attrs:T, options?:DSConfiguration):T; inject(resourceName:string, items:Array, options?:DSConfiguration):Array; - is(resourceName:string, object:Object): boolean; - - lastModified(resourceName:string, id?:string):number; // timestamp - lastModified(resourceName:string, id?:number):number; // timestamp - - lastSaved(resourceName:string, id?:string):number; // timestamp - lastSaved(resourceName:string, id?:number):number; // timestamp - - link(resourceName:string, id:string, relations?:Array):T; - link(resourceName:string, id:number, relations?:Array):T; - + lastModified(resourceName:string, id?:string | number):number; // timestamp + lastSaved(resourceName:string, id?:string | number):number; // timestamp + link(resourceName:string, id:string | number, relations?:Array):T; linkAll(resourceName:string, params:DSFilterParams, relations?:Array):T; - - linkInverse(resourceName:string, id:string, relations?:Array):T; - linkInverse(resourceName:string, id:number, relations?:Array):T; - - loadRelations(resourceName:string, id:string, relations:string, options?:DSAdapterOperationConfiguration):JSDataPromise; - loadRelations(resourceName:string, id:number, relations:string, options?:DSAdapterOperationConfiguration):JSDataPromise; - loadRelations(resourceName:string, instance:Object, relations:string, options?:DSAdapterOperationConfiguration):JSDataPromise; - loadRelations(resourceName:string, id:string, relations:Array, options?:DSAdapterOperationConfiguration):JSDataPromise; - loadRelations(resourceName:string, id:number, relations:Array, options?:DSAdapterOperationConfiguration):JSDataPromise; - loadRelations(resourceName:string, instance:Object, relations:Array, options?:DSAdapterOperationConfiguration):JSDataPromise; - - previous(resourceName:string, id:string):T; - previous(resourceName:string, id:number):T; - - reap(resourceName:string, options?:DSConfiguration):JSDataPromise; - - refresh(resourceName:string, id:string, options?:DSAdapterOperationConfiguration):JSDataPromise; - refresh(resourceName:string, id:number, options?:DSAdapterOperationConfiguration):JSDataPromise; + linkInverse(resourceName:string, id:string | number, relations?:Array):T; + previous(resourceName:string, id:string | number):T; + unlinkInverse(resourceName:string, id:string | number, relations?:Array):T; registerAdapter(adapterId:string, adapter:IDSAdapter, options?:{default: boolean}):void; - - save(resourceName:string, id:string, options?:DSSaveConfiguration):JSDataPromise; - save(resourceName:string, id:number, options?:DSSaveConfiguration):JSDataPromise; - - unlinkInverse(resourceName:string, id:string, relations?:Array):T; - unlinkInverse(resourceName:string, id:number, relations?:Array):T; - - update(resourceName:string, id:string, attrs:any, options?:DSSaveConfiguration):JSDataPromise; - update(resourceName:string, id:number, attrs:any, options?:DSSaveConfiguration):JSDataPromise; - - updateAll(resourceName:string, attrs:any, params?:DSFilterParams, options?:DSAdapterOperationConfiguration):JSDataPromise>; } interface DSConfiguration extends IDSResourceLifecycleEventHandlers { @@ -139,7 +86,7 @@ declare module JSData { // TODO enable when eagerInject in DS#create is implemented //eagerInject?: boolean; endpoint?: string; - error?: (message?:any, ...optionalParams:any[])=> void; + error?: boolean | ((message?:any, ...optionalParams:any[])=> void); fallbackAdapters?: Array; findAllFallbackAdapters?: Array; findAllStrategy?: string; @@ -150,15 +97,12 @@ declare module JSData { findInverseLinks?: boolean; findStrategy?: string idAttribute?: string; - ignoredChanges?: Array; + ignoredChanges?: Array; // TODO ignoreMissing is undocumented //ignoreMissing: boolean; keepChangeHistory?: boolean; loadFromServer?: boolean; - log?: any; - // TODO wait for union types to be supported - // log: (message?: any, ...optionalParams: any[])=> void; - // log: boolean; + log?: boolean | ((message?: any, ...optionalParams: any[])=> void); maxAge?: number; notify?: boolean; reapAction?: string; @@ -191,95 +135,41 @@ declare module JSData { interface DSResourceDefinition extends DSResourceDefinitionConfiguration { - changeHistory(id?:string):Array; - changeHistory(id?:number):Array; - - changes(id:string):Object; - changes(id:number):Object; - - compute(id:number):T; - compute(id:string):T; - compute(instance:Object):T; - - create(attrs:any, options?:DSConfiguration):JSDataPromise; - - createInstance(attrs?:T, options?:DSAdapterOperationConfiguration):T; - - defineResource(resourceName:string):DSResourceDefinition; - defineResource(definition:DSResourceDefinitionConfiguration):DSResourceDefinition; - - destroy(id:string, options?:DSAdapterOperationConfiguration):JSDataPromise; - destroy(id:number, options?:DSAdapterOperationConfiguration):JSDataPromise; - + //async + create(attrs:Object, options?:DSConfiguration):JSDataPromise; + destroy(id:string | number, options?:DSAdapterOperationConfiguration):JSDataPromise; destroyAll(params?:DSFilterParams, options?:DSAdapterOperationConfiguration):JSDataPromise; - - digest():void; - - eject(id:string, options?:DSConfiguration):T; - eject(id:number, options?:DSConfiguration):T; - - ejectAll(params:DSFilterParams, options?:DSConfiguration):Array; - - filter(params:DSFilterParams, options?:DSConfiguration):Array; - - find(id:string, options?:DSAdapterOperationConfiguration):JSDataPromise; - find(id:number, options?:DSAdapterOperationConfiguration):JSDataPromise; - + find(id:string | number, options?:DSAdapterOperationConfiguration):JSDataPromise; findAll(params?:DSFilterParams, options?:DSAdapterOperationConfiguration):JSDataPromise>; + loadRelations(idOrInstance:string | number | Object, relations:string | Array, options?:DSAdapterOperationConfiguration):JSDataPromise; + update(id:string | number, attrs:Object, options?:DSSaveConfiguration):JSDataPromise; + updateAll(attrs:Object, params?:DSFilterParams, options?:DSAdapterOperationConfiguration):JSDataPromise>; + reap(resourceNametions?:DSConfiguration):JSDataPromise; + refresh(id:string | number, options?:DSAdapterOperationConfiguration):JSDataPromise; + save(id:string | number, options?:DSSaveConfiguration):JSDataPromise; - get(id:string, options?:DSConfiguration):T; - get(id:number, options?:DSConfiguration):T; - - getAll(ids?:Array):Array; - getAll(ids?:Array):Array; - - hasChanges(id:string):boolean; - hasChanges(id:number):boolean; - + // sync + changeHistory(id?:string | number):Array; + changes(id:string | number):Object; + compute(idOrInstance:number | string | Object ):T; + createInstance(attrs?:T, options?:DSAdapterOperationConfiguration):T; + digest():void; + eject(id:string | number, options?:DSConfiguration):T; + ejectAll(params:DSFilterParams, options?:DSConfiguration):Array; + filter(params:DSFilterParams, options?:DSConfiguration):Array; + get(id:string | number, options?:DSConfiguration):T; + getAll(ids?:Array):Array; + hasChanges(id:string | number):boolean; inject(attrs:T, options?:DSConfiguration):T; inject(items:Array, options?:DSConfiguration):Array; - is(object:Object): boolean; - - lastModified(id?:string):number; // timestamp - lastModified(id?:number):number; // timestamp - - lastSaved(id?:string):number; // timestamp - lastSaved(id?:number):number; // timestamp - - link(id:string, relations?:Array):T; - link(id:number, relations?:Array):T; - + lastModified(id?:string | number):number; // timestamp + lastSaved(id?:string | number):number; // timestamp + link(id:string | number, relations?:Array):T; linkAll(params:DSFilterParams, relations?:Array):T; - - linkInverse(id:string, relations?:Array):T; - linkInverse(id:number, relations?:Array):T; - - loadRelations(id:string, relations:string, options?:DSAdapterOperationConfiguration):JSDataPromise; - loadRelations(id:number, relations:string, options?:DSAdapterOperationConfiguration):JSDataPromise; - loadRelations(instance:T, relations:string, options?:DSAdapterOperationConfiguration):JSDataPromise; - loadRelations(id:string, relations:Array, options?:DSAdapterOperationConfiguration):JSDataPromise; - loadRelations(id:number, relations:Array, options?:DSAdapterOperationConfiguration):JSDataPromise; - loadRelations(instance:T, relations:Array, options?:DSAdapterOperationConfiguration):JSDataPromise; - - previous(id:string):T; - previous(id:number):T; - - reap(options?:DSConfiguration):JSDataPromise; - - refresh(id:string, options?:DSAdapterOperationConfiguration):JSDataPromise; - refresh(id:number, options?:DSAdapterOperationConfiguration):JSDataPromise; - - save(id:string, options?:DSSaveConfiguration):JSDataPromise; - save(id:number, options?:DSSaveConfiguration):JSDataPromise; - - unlinkInverse(id:string, relations?:Array):T; - unlinkInverse(id:number, relations?:Array):T; - - update(id:string, attrs:any, options?:DSSaveConfiguration):JSDataPromise; - update(id:number, attrs:any, options?:DSSaveConfiguration):JSDataPromise; - - updateAll(attrs:any, params?:DSFilterParams, options?:DSAdapterOperationConfiguration):JSDataPromise>; + linkInverse(id:string | number, relations?:Array):T; + previous(id:string | number):T; + unlinkInverse(id:string | number, relations?:Array):T; } interface DSFilterParams { @@ -290,17 +180,8 @@ declare module JSData { skip?: number; offset?: number; - orderBy?: any; - // TODO wait for union types to be supported - //orderBy?: Array>; - //orderBy?: Array; - //orderBy?: string; - - sort?: any; - // TODO wait for union types to be supported - //sort?: string; - //sort?: Array; - //sort?: Array>; + orderBy?: string | Array | Array>; + sort?: string | Array | Array>; } interface IDSResourceLifecycleValidateEventHandlers { @@ -375,22 +256,19 @@ declare module JSData { // DSAdapter interface interface IDSAdapter { - create(config:DSResourceDefinition, attrs:any, options?:DSConfiguration):JSDataPromise; + create(config:DSResourceDefinition, attrs:Object, options?:DSConfiguration):JSDataPromise; - destroy(config:DSResourceDefinition, id:string, options?:DSConfiguration):JSDataPromise; - destroy(config:DSResourceDefinition, id:number, options?:DSConfiguration):JSDataPromise; + destroy(config:DSResourceDefinition, id:string | number, options?:DSConfiguration):JSDataPromise; destroyAll(config:DSResourceDefinition, params:DSFilterParams, options?:DSConfiguration):JSDataPromise; - find(config:DSResourceDefinition, id:string, options?:DSConfiguration):JSDataPromise; - find(config:DSResourceDefinition, id:number, options?:DSConfiguration):JSDataPromise; + find(config:DSResourceDefinition, id:string | number, options?:DSConfiguration):JSDataPromise; findAll(config:DSResourceDefinition, params?:DSFilterParams, options?:DSConfiguration):JSDataPromise; - update(config:DSResourceDefinition, id:string, attrs:any, options?:DSConfiguration):JSDataPromise; - update(config:DSResourceDefinition, id:number, attrs:any, options?:DSConfiguration):JSDataPromise; + update(config:DSResourceDefinition, id:string | number, attrs:Object, options?:DSConfiguration):JSDataPromise; - updateAll(config:DSResourceDefinition, attrs:any, params?:DSFilterParams, options?:DSConfiguration):JSDataPromise; + updateAll(config:DSResourceDefinition, attrs:Object, params?:DSFilterParams, options?:DSConfiguration):JSDataPromise; } }