Merge pull request #987 from santialbo/restangular

Restangular: Better typings for RestangularProvider method
This commit is contained in:
Diullei Gomes
2013-09-03 06:27:08 -07:00
2 changed files with 21 additions and 13 deletions

View File

@@ -88,8 +88,6 @@ function test_config() {
RestangularProvider.setDefaultHttpFields({ cache: true });
RestangularProvider.setMethodOverriders(["put", "patch"]);
RestangularProvider.setListTypeIsArray(true);
RestangularProvider.setRestangularFields({
id: "_id",
route: "restangularRoute"

View File

@@ -11,7 +11,7 @@ interface Restangular extends RestangularCustom {
one(route: string, id?: string): RestangularElement;
all(route: string): RestangularCollection;
copy(fromElement: any): RestangularElement;
withConfig(configurer: any): Restangular;
withConfig(configurer: (RestangularProvider) => any): Restangular;
}
interface RestangularElement extends Restangular {
@@ -49,16 +49,26 @@ interface RestangularCustom {
}
interface RestangularProvider {
setBaseUrl(newValue: string): void;
setExtraFields(newValues: string[]): void;
setDefaultHttpFields(newValue: any): void;
setMethodOverriders(newValue: any): void;
setResponseExtractor(newValue: any): void;
setRequestInterceptor(newValue: any): void;
setListTypeIsArray(newValue: boolean): void;
setRestangularFields(newValue: any): void;
setRequestSuffix(newValue: any): void;
addElementTransformer(type, secondArg, thirdArg): void;
setBaseUrl(baseUrl: string): void;
setExtraFields(fields: string[]): void;
setParentless(parentless: boolean, routes: string[]): void;
setDefaultHttpFields(httpFields: any): void;
addElementTransformer(route: string, transformer: Function): void;
addElementTransformer(route: string, isCollection: boolean, transformer: Function): void;
setOnElemRestangularized(callback: (elem: any, isCollection: boolean, what: string, restangular: Restangular) => any): void;
setResponseInterceptor(responseInterceptor: (data: any, operation: string, what: string, url: string, response: XMLHttpRequest, deferred: ng.IDeferred<any>) => any): void;
setResponseExtractor(responseInterceptor: (data: any, operation: string, what: string, url: string, response: XMLHttpRequest, deferred: ng.IDeferred<any>) => any): void;
setRequestInterceptor(requestInterceptor: (element: any, operation: string, what: string, url: string) => any);
setFullRequestInterceptor(fullRequestInterceptor: (element: any, operation: string, what: string, url: string, headers: any, params: any) => {element: any; headers: any; params: any});
setErrorInterceptor(errorInterceptor: (response: XMLHttpRequest) => any): void;
setRestangularFields(fields: {[fieldName: string]: string}): void;
setMethodOverriders(overriders: string[]): void;
setDefaultRequestParams(params: any): void;
setDefaultRequestParams(methods: any, params: any): void;
setFullResponse(fullResponse: boolean): void;
setDefaultHeaders(headers: any): void;
setRequestSuffix(suffix: string): void;
setUseCannonicalId(useCannonicalId: boolean): void;
}
declare var Restangular: Restangular;