diff --git a/src/authentication/azureTokenCredentials/index.ts b/src/authentication/azureTokenCredentials/index.ts
index 6d672ef68..1c5984375 100644
--- a/src/authentication/azureTokenCredentials/index.ts
+++ b/src/authentication/azureTokenCredentials/index.ts
@@ -4,5 +4,5 @@
* See License in the project root for license information.
* -------------------------------------------------------------------------------------------
*/
-export { TokenCredentialAuthenticationProviderOptions } from "./ITokenCredentialAuthenticationProviderOptions";
+export type { TokenCredentialAuthenticationProviderOptions } from "./ITokenCredentialAuthenticationProviderOptions";
export { TokenCredentialAuthenticationProvider } from "./TokenCredentialAuthenticationProvider";
diff --git a/src/browser/index.ts b/src/browser/index.ts
index 4a25774ae..08fbe9e4c 100644
--- a/src/browser/index.ts
+++ b/src/browser/index.ts
@@ -7,47 +7,52 @@
// eslint-disable-next-line @typescript-eslint/triple-slash-reference
///
-export { BatchRequestStep, BatchRequestData, BatchRequestContent, RequestData, BatchRequestBody } from "../content/BatchRequestContent";
-export { BatchResponseBody, BatchResponseContent } from "../content/BatchResponseContent";
+export type { BatchRequestStep, BatchRequestData, RequestData, BatchRequestBody } from "../content/BatchRequestContent";
+export { BatchResponseContent } from "../content/BatchResponseContent";
export { AuthenticationHandler } from "../middleware/AuthenticationHandler";
export { HTTPMessageHandler } from "../middleware/HTTPMessageHandler";
-export { Middleware } from "../middleware/IMiddleware";
+export type { Middleware } from "../middleware/IMiddleware";
export { RetryHandler } from "../middleware/RetryHandler";
export { RedirectHandler } from "../middleware/RedirectHandler";
export { TelemetryHandler } from "../middleware/TelemetryHandler";
export { MiddlewareFactory } from "../middleware/MiddlewareFactory";
export { AuthenticationHandlerOptions } from "../middleware/options/AuthenticationHandlerOptions";
-export { MiddlewareOptions } from "../middleware/options/IMiddlewareOptions";
-export { ShouldRetry, RetryHandlerOptions } from "../middleware/options/RetryHandlerOptions";
-export { ShouldRedirect, RedirectHandlerOptions } from "../middleware/options/RedirectHandlerOptions";
+export type { MiddlewareOptions } from "../middleware/options/IMiddlewareOptions";
+export type { ShouldRetry } from "../middleware/options/RetryHandlerOptions";
+export { RetryHandlerOptions } from "../middleware/options/RetryHandlerOptions";
+export type { ShouldRedirect } from "../middleware/options/RedirectHandlerOptions";
+export { RedirectHandlerOptions } from "../middleware/options/RedirectHandlerOptions";
export { FeatureUsageFlag, TelemetryHandlerOptions } from "../middleware/options/TelemetryHandlerOptions";
export { ChaosHandlerOptions } from "../middleware/options/ChaosHandlerOptions";
export { ChaosStrategy } from "../middleware/options/ChaosStrategy";
export { ChaosHandler } from "../middleware/ChaosHandler";
-export { SliceType, LargeFileUploadTaskOptions, LargeFileUploadTask, LargeFileUploadSession, FileObject } from "../tasks/LargeFileUploadTask";
-export { OneDriveLargeFileUploadTask, OneDriveLargeFileUploadOptions } from "../tasks/OneDriveLargeFileUploadTask";
+export type { SliceType, LargeFileUploadTaskOptions, LargeFileUploadSession, FileObject } from "../tasks/LargeFileUploadTask";
+export { LargeFileUploadTask } from "../tasks/LargeFileUploadTask";
+export type { OneDriveLargeFileUploadOptions } from "../tasks/OneDriveLargeFileUploadTask";
+export { OneDriveLargeFileUploadTask } from "../tasks/OneDriveLargeFileUploadTask";
export { getValidRangeSize } from "../tasks/OneDriveLargeFileUploadTaskUtil";
export { StreamUpload } from "../tasks/FileUploadTask/FileObjectClasses/StreamUpload";
export { FileUpload } from "../tasks/FileUploadTask/FileObjectClasses/FileUpload";
export { UploadResult } from "../tasks/FileUploadTask/UploadResult";
-export { UploadEventHandlers } from "../tasks/FileUploadTask/Interfaces/IUploadEventHandlers";
+export type { UploadEventHandlers } from "../tasks/FileUploadTask/Interfaces/IUploadEventHandlers";
export { Range } from "../tasks/FileUploadTask/Range";
-export { PageIteratorCallback, PageIterator, PageCollection, GraphRequestOptions } from "../tasks/PageIterator";
+export type { PageIteratorCallback, PageCollection, GraphRequestOptions } from "../tasks/PageIterator";
+export { PageIterator } from "../tasks/PageIterator";
export { Client } from "../Client";
export { CustomAuthenticationProvider } from "../CustomAuthenticationProvider";
export { GraphError } from "../GraphError";
export { GraphClientError } from "../GraphClientError";
export { GraphRequest } from "../GraphRequest";
-export { AuthProvider } from "../IAuthProvider";
-export { AuthenticationProvider } from "../IAuthenticationProvider";
-export { AuthenticationProviderOptions } from "../IAuthenticationProviderOptions";
-export { AuthProviderCallback } from "../IAuthProviderCallback";
-export { ClientOptions } from "../IClientOptions";
-export { Context } from "../IContext";
-export { NodeFetchInit, FetchOptions } from "../IFetchOptions";
-export { GraphRequestCallback } from "../IGraphRequestCallback";
-export { Options } from "../IOptions";
+export type { AuthProvider } from "../IAuthProvider";
+export type { AuthenticationProvider } from "../IAuthenticationProvider";
+export type { AuthenticationProviderOptions } from "../IAuthenticationProviderOptions";
+export type { AuthProviderCallback } from "../IAuthProviderCallback";
+export type { ClientOptions } from "../IClientOptions";
+export type { Context } from "../IContext";
+export type { NodeFetchInit, FetchOptions } from "../IFetchOptions";
+export type { GraphRequestCallback } from "../IGraphRequestCallback";
+export type { Options } from "../IOptions";
export { ResponseType } from "../ResponseType";
diff --git a/src/index.ts b/src/index.ts
index d2505175b..aff65afd2 100644
--- a/src/index.ts
+++ b/src/index.ts
@@ -8,47 +8,55 @@
// eslint-disable-next-line @typescript-eslint/triple-slash-reference
///
-export { BatchRequestBody, RequestData, BatchRequestContent, BatchRequestData, BatchRequestStep } from "./content/BatchRequestContent";
-export { BatchResponseBody, BatchResponseContent } from "./content/BatchResponseContent";
+export type { BatchRequestBody, RequestData, BatchRequestData, BatchRequestStep } from "./content/BatchRequestContent";
+export { BatchRequestContent } from "./content/BatchRequestContent";
+export type { BatchResponseBody } from "./content/BatchResponseContent";
+export { BatchResponseContent } from "./content/BatchResponseContent";
export { AuthenticationHandler } from "./middleware/AuthenticationHandler";
export { HTTPMessageHandler } from "./middleware/HTTPMessageHandler";
-export { Middleware } from "./middleware/IMiddleware";
+export type { Middleware } from "./middleware/IMiddleware";
export { RetryHandler } from "./middleware/RetryHandler";
export { RedirectHandler } from "./middleware/RedirectHandler";
export { TelemetryHandler } from "./middleware/TelemetryHandler";
export { MiddlewareFactory } from "./middleware/MiddlewareFactory";
export { AuthenticationHandlerOptions } from "./middleware/options/AuthenticationHandlerOptions";
-export { MiddlewareOptions } from "./middleware/options/IMiddlewareOptions";
-export { RetryHandlerOptions, ShouldRetry } from "./middleware/options/RetryHandlerOptions";
-export { RedirectHandlerOptions, ShouldRedirect } from "./middleware/options/RedirectHandlerOptions";
+export type { MiddlewareOptions } from "./middleware/options/IMiddlewareOptions";
+export type { ShouldRetry } from "./middleware/options/RetryHandlerOptions";
+export { RetryHandlerOptions } from "./middleware/options/RetryHandlerOptions";
+export type { ShouldRedirect } from "./middleware/options/RedirectHandlerOptions";
+export { RedirectHandlerOptions } from "./middleware/options/RedirectHandlerOptions";
export { FeatureUsageFlag, TelemetryHandlerOptions } from "./middleware/options/TelemetryHandlerOptions";
export { ChaosHandlerOptions } from "./middleware/options/ChaosHandlerOptions";
export { ChaosStrategy } from "./middleware/options/ChaosStrategy";
export { ChaosHandler } from "./middleware/ChaosHandler";
-export { FileObject, LargeFileUploadSession, LargeFileUploadTask, LargeFileUploadTaskOptions, SliceType } from "./tasks/LargeFileUploadTask";
-export { OneDriveLargeFileUploadOptions, OneDriveLargeFileUploadTask } from "./tasks/OneDriveLargeFileUploadTask";
+export type { FileObject, LargeFileUploadSession, LargeFileUploadTaskOptions, SliceType } from "./tasks/LargeFileUploadTask";
+export { LargeFileUploadTask } from "./tasks/LargeFileUploadTask";
+export type { OneDriveLargeFileUploadOptions } from "./tasks/OneDriveLargeFileUploadTask";
+export { OneDriveLargeFileUploadTask } from "./tasks/OneDriveLargeFileUploadTask";
export { getValidRangeSize } from "./tasks/OneDriveLargeFileUploadTaskUtil";
export { StreamUpload } from "./tasks/FileUploadTask/FileObjectClasses/StreamUpload";
export { FileUpload } from "./tasks/FileUploadTask/FileObjectClasses/FileUpload";
export { UploadResult } from "./tasks/FileUploadTask/UploadResult";
-export { UploadEventHandlers } from "./tasks/FileUploadTask/Interfaces/IUploadEventHandlers";
+export type { UploadEventHandlers } from "./tasks/FileUploadTask/Interfaces/IUploadEventHandlers";
export { Range } from "./tasks/FileUploadTask/Range";
-export { GraphRequestOptions, PageCollection, PageIterator, PageIteratorCallback } from "./tasks/PageIterator";
+export type { GraphRequestOptions, PageCollection, PageIteratorCallback } from "./tasks/PageIterator";
+export { PageIterator } from "./tasks/PageIterator";
export { Client } from "./Client";
export { CustomAuthenticationProvider } from "./CustomAuthenticationProvider";
export { GraphError } from "./GraphError";
export { GraphClientError } from "./GraphClientError";
-export { GraphRequest, URLComponents } from "./GraphRequest";
-export { AuthProvider } from "./IAuthProvider";
-export { AuthenticationProvider } from "./IAuthenticationProvider";
-export { AuthenticationProviderOptions } from "./IAuthenticationProviderOptions";
-export { AuthProviderCallback } from "./IAuthProviderCallback";
-export { ClientOptions } from "./IClientOptions";
-export { Context } from "./IContext";
-export { FetchOptions, NodeFetchInit } from "./IFetchOptions";
-export { GraphRequestCallback } from "./IGraphRequestCallback";
-export { Options } from "./IOptions";
+export type { URLComponents } from "./GraphRequest";
+export { GraphRequest } from "./GraphRequest";
+export type { AuthProvider } from "./IAuthProvider";
+export type { AuthenticationProvider } from "./IAuthenticationProvider";
+export type { AuthenticationProviderOptions } from "./IAuthenticationProviderOptions";
+export type { AuthProviderCallback } from "./IAuthProviderCallback";
+export type { ClientOptions } from "./IClientOptions";
+export type { Context } from "./IContext";
+export type { FetchOptions, NodeFetchInit } from "./IFetchOptions";
+export type { GraphRequestCallback } from "./IGraphRequestCallback";
+export type { Options } from "./IOptions";
export { ResponseType } from "./ResponseType";
diff --git a/test/development/HardCodedAuthenticationProvider.ts b/test/development/HardCodedAuthenticationProvider.ts
index aabf436fe..920745f94 100644
--- a/test/development/HardCodedAuthenticationProvider.ts
+++ b/test/development/HardCodedAuthenticationProvider.ts
@@ -10,7 +10,7 @@
*/
import { AuthenticationProvider } from "../../src/IAuthenticationProvider";
-import { AccessToken } from "./secrets";
+import { AccessToken } from "./secrets.sample";
/**
* @class
diff --git a/test/tsconfig-test-development.json b/test/tsconfig-test-development.json
index 70c6c27ca..ea5c56198 100644
--- a/test/tsconfig-test-development.json
+++ b/test/tsconfig-test-development.json
@@ -6,7 +6,8 @@
"esModuleInterop": true,
"noEmitOnError": true,
"lib": ["dom", "esnext"],
- "outDir": "../lib/"
+ "outDir": "../lib/",
+ "isolatedModules": true
},
"include": ["./development/", "../src/"]
}