diff --git a/BCL.csproj b/BCL.csproj
index 836dfc5b4..adc163cd7 100644
--- a/BCL.csproj
+++ b/BCL.csproj
@@ -147,7 +147,6 @@
-
@@ -180,14 +179,14 @@
file-system-access.d.ts
-
- http-request.d.ts
-
-
- http-request.d.ts
-
+
+ http.d.ts
+
+
+ http.d.ts
+
diff --git a/http/http-common.ts b/http/http-common.ts
index b30a83701..555dd4375 100644
--- a/http/http-common.ts
+++ b/http/http-common.ts
@@ -1,13 +1,11 @@
import image = require("image-source/image-source");
import promises = require("promises/promises");
-import http = require("http/http-request");
-
-// merge request
-export var request = http.request;
+import http = require("http/http");
/**
* Gets string from url.
*/
+
export function getString(arg: any): promises.Promise {
var d = promises.defer();
diff --git a/http/http-request.d.ts b/http/http-request.d.ts
deleted file mode 100644
index ab7233df9..000000000
--- a/http/http-request.d.ts
+++ /dev/null
@@ -1,28 +0,0 @@
-/**
- * The http client interface.
- */
-import image_module = require("image-source/image-source");
-import promises = require("promises/promises");
-
-export declare function request(options: HttpRequestOptions): promises.Promise;
-
-export interface HttpRequestOptions {
- url: string;
- method: string;
- headers?: any;
- content?: any;
- timeout?: number;
-}
-
-export interface HttpResponse {
- statusCode: number;
- headers: any;
- content?: HttpContent;
-}
-
-export interface HttpContent {
- raw: any;
- toString: () => string;
- toJSON: () => any;
- toImage: () => image_module.ImageSource;
-}
\ No newline at end of file
diff --git a/http/http-request.android.ts b/http/http.android.ts
similarity index 95%
rename from http/http-request.android.ts
rename to http/http.android.ts
index 1be15e2bc..862bce5ba 100644
--- a/http/http-request.android.ts
+++ b/http/http.android.ts
@@ -1,8 +1,11 @@
/**
- * Android specific http client implementation.
+ * Android specific http request implementation.
*/
import promises = require("promises/promises");
-import http = require("http/http-request");
+import http = require("http/http");
+
+declare var exports;
+require("utils/module-merge").merge(require("http/http-common"), exports);
export function request(options: http.HttpRequestOptions): promises.Promise {
var d = promises.defer();
diff --git a/http/http.d.ts b/http/http.d.ts
index 5a453cc4f..d9fc397e3 100644
--- a/http/http.d.ts
+++ b/http/http.d.ts
@@ -1,15 +1,14 @@
import image = require("image-source/image-source");
import promises = require("promises/promises");
-import request = require("http/http-request");
export declare function getString(url: string): promises.Promise
-export declare function getString(options: request.HttpRequestOptions): promises.Promise
+export declare function getString(options: HttpRequestOptions): promises.Promise
export declare function getJSON(url: string): promises.Promise
-export declare function getJSON(options: request.HttpRequestOptions): promises.Promise
+export declare function getJSON(options: HttpRequestOptions): promises.Promise
export declare function getImage(url: string): promises.Promise
-export declare function getImage(options: request.HttpRequestOptions): promises.Promise
+export declare function getImage(options: HttpRequestOptions): promises.Promise
export declare function request(options: HttpRequestOptions): promises.Promise;
diff --git a/http/http-request.ios.ts b/http/http.ios.ts
similarity index 93%
rename from http/http-request.ios.ts
rename to http/http.ios.ts
index 1cc6bef16..3f5def2dc 100644
--- a/http/http-request.ios.ts
+++ b/http/http.ios.ts
@@ -1,8 +1,11 @@
/**
- * iOS specific http client implementation.
+ * iOS specific http request implementation.
*/
import promises = require("promises/promises");
-import http = require("http/http-request");
+import http = require("http/http");
+
+declare var exports;
+require("utils/module-merge").merge(require("http/http-common"), exports);
export function request(options: http.HttpRequestOptions): promises.Promise {
var d = promises.defer();
diff --git a/http/index.ts b/http/index.ts
index 5b9df928d..3c912a54c 100644
--- a/http/index.ts
+++ b/http/index.ts
@@ -1,2 +1,2 @@
declare var module, require;
-module.exports = require("http/http-common");
\ No newline at end of file
+module.exports = require("http/http");
\ No newline at end of file