diff --git a/.size-limit.cjs b/.size-limit.cjs
index 6c44674..d6567c8 100644
--- a/.size-limit.cjs
+++ b/.size-limit.cjs
@@ -16,8 +16,15 @@ module.exports = [
 ]
 	.sort()
 	.filter((path) => {
-		return path && path !== "./package.json";
+		return path && path !== "./package.json" && !path.endsWith(".d.ts");
 	})
 	.map((path) => {
-		return { path };
+		return {
+			path,
+			modifyEsbuildConfig(config) {
+				config.platform = "node";
+
+				return config;
+			},
+		};
 	});
diff --git a/package-lock.json b/package-lock.json
index 47110d4..d7d2c88 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -9,10 +9,10 @@
 			"version": "2.6.1",
 			"license": "Apache-2.0",
 			"dependencies": {
-				"@prismicio/richtext": "^2.1.4"
+				"@prismicio/richtext": "^2.1.5"
 			},
 			"devDependencies": {
-				"@prismicio/client": "^7.0.0-alpha.3",
+				"@prismicio/client": "^7.0.1",
 				"@prismicio/mock": "^0.2.0",
 				"@size-limit/preset-small-lib": "^8.2.4",
 				"@testing-library/react": "^14.0.0",
@@ -1156,12 +1156,12 @@
 			"dev": true
 		},
 		"node_modules/@prismicio/client": {
-			"version": "7.0.0-alpha.3",
-			"resolved": "https://registry.npmjs.org/@prismicio/client/-/client-7.0.0-alpha.3.tgz",
-			"integrity": "sha512-/eEBKUY0D5p03zHAUE+GR/9sJi7RY9CPp9RGarXOVDTW0+oCdaV4JUZe3Y43Ub38ciJ7wIbkN+2vbYYhysm9vw==",
+			"version": "7.0.1",
+			"resolved": "https://registry.npmjs.org/@prismicio/client/-/client-7.0.1.tgz",
+			"integrity": "sha512-f4SDcDwVB2T73QKJJtzXd8LsfvDgIqOQNhC78bwsKLb1BjfPZNucsyIcRI9jGZdGxcU7lA+HStkYHw6z98ofKQ==",
 			"dev": true,
 			"dependencies": {
-				"@prismicio/richtext": "^2.1.4",
+				"@prismicio/richtext": "^2.1.5",
 				"imgix-url-builder": "^0.0.3"
 			},
 			"engines": {
@@ -1182,9 +1182,9 @@
 			}
 		},
 		"node_modules/@prismicio/richtext": {
-			"version": "2.1.4",
-			"resolved": "https://registry.npmjs.org/@prismicio/richtext/-/richtext-2.1.4.tgz",
-			"integrity": "sha512-hyC8XItj+2yMmLGNjg9xGA/lRMO5UgbPF132VFrpZHzHhtIKvHN3iYxCZxnrEoPaTcT6JjA8vWyYLjmmB49bvw==",
+			"version": "2.1.5",
+			"resolved": "https://registry.npmjs.org/@prismicio/richtext/-/richtext-2.1.5.tgz",
+			"integrity": "sha512-Sf6iCsciPmfK3uQeFmeY9RTRSuhrCVzyU39OkiJ1VJn8O0531pKapGoWS+5WGxouJtE5+jGqV8L+L2mKP7NkXQ==",
 			"dependencies": {
 				"@prismicio/types": "^0.2.7"
 			},
@@ -10336,12 +10336,12 @@
 			"dev": true
 		},
 		"@prismicio/client": {
-			"version": "7.0.0-alpha.3",
-			"resolved": "https://registry.npmjs.org/@prismicio/client/-/client-7.0.0-alpha.3.tgz",
-			"integrity": "sha512-/eEBKUY0D5p03zHAUE+GR/9sJi7RY9CPp9RGarXOVDTW0+oCdaV4JUZe3Y43Ub38ciJ7wIbkN+2vbYYhysm9vw==",
+			"version": "7.0.1",
+			"resolved": "https://registry.npmjs.org/@prismicio/client/-/client-7.0.1.tgz",
+			"integrity": "sha512-f4SDcDwVB2T73QKJJtzXd8LsfvDgIqOQNhC78bwsKLb1BjfPZNucsyIcRI9jGZdGxcU7lA+HStkYHw6z98ofKQ==",
 			"dev": true,
 			"requires": {
-				"@prismicio/richtext": "^2.1.4",
+				"@prismicio/richtext": "^2.1.5",
 				"imgix-url-builder": "^0.0.3"
 			}
 		},
@@ -10356,9 +10356,9 @@
 			}
 		},
 		"@prismicio/richtext": {
-			"version": "2.1.4",
-			"resolved": "https://registry.npmjs.org/@prismicio/richtext/-/richtext-2.1.4.tgz",
-			"integrity": "sha512-hyC8XItj+2yMmLGNjg9xGA/lRMO5UgbPF132VFrpZHzHhtIKvHN3iYxCZxnrEoPaTcT6JjA8vWyYLjmmB49bvw==",
+			"version": "2.1.5",
+			"resolved": "https://registry.npmjs.org/@prismicio/richtext/-/richtext-2.1.5.tgz",
+			"integrity": "sha512-Sf6iCsciPmfK3uQeFmeY9RTRSuhrCVzyU39OkiJ1VJn8O0531pKapGoWS+5WGxouJtE5+jGqV8L+L2mKP7NkXQ==",
 			"requires": {
 				"@prismicio/types": "^0.2.7"
 			}
diff --git a/package.json b/package.json
index 7d210c6..5999b55 100644
--- a/package.json
+++ b/package.json
@@ -19,12 +19,24 @@
 	"exports": {
 		".": {
 			"react-server": {
-				"import": "./dist/react-server.js",
-				"require": "./dist/react-server.cjs"
+				"require": {
+					"types": "./dist/react-server/index.d.ts",
+					"default": "./dist/react-server.cjs"
+				},
+				"import": {
+					"types": "./dist/react-server/index.d.ts",
+					"default": "./dist/react-server.js"
+				}
 			},
 			"default": {
-				"import": "./dist/index.js",
-				"require": "./dist/index.cjs"
+				"require": {
+					"types": "./dist/index.d.ts",
+					"default": "./dist/index.cjs"
+				},
+				"import": {
+					"types": "./dist/index.d.ts",
+					"default": "./dist/index.js"
+				}
 			}
 		},
 		"./package.json": "./package.json"
@@ -54,10 +66,10 @@
 		"test": "npm run lint && npm run types && npm run unit && npm run build && npm run size"
 	},
 	"dependencies": {
-		"@prismicio/richtext": "^2.1.4"
+		"@prismicio/richtext": "^2.1.5"
 	},
 	"devDependencies": {
-		"@prismicio/client": "^7.0.0-alpha.3",
+		"@prismicio/client": "^7.0.1",
 		"@prismicio/mock": "^0.2.0",
 		"@size-limit/preset-small-lib": "^8.2.4",
 		"@testing-library/react": "^14.0.0",
diff --git a/src/PrismicImage.tsx b/src/PrismicImage.tsx
index 66b9903..4096cff 100644
--- a/src/PrismicImage.tsx
+++ b/src/PrismicImage.tsx
@@ -116,7 +116,10 @@ export const PrismicImage = React.forwardRef(function PrismicImage(
 		...restProps
 	} = props;
 
-	if (process.env.NODE_ENV === "development") {
+	if (
+		typeof process !== "undefined" &&
+		process.env.NODE_ENV === "development"
+	) {
 		if (typeof alt === "string" && props.alt !== "") {
 			console.warn(
 				`[PrismicImage] The "alt" prop can only be used to declare an image as decorative by passing an empty string (alt="") but was provided a non-empty string. You can resolve this warning by removing the "alt" prop or changing it to alt="". For more details, see ${devMsg(
diff --git a/src/PrismicText.tsx b/src/PrismicText.tsx
index 1461a8e..dc770c0 100644
--- a/src/PrismicText.tsx
+++ b/src/PrismicText.tsx
@@ -44,7 +44,10 @@ export type PrismicTextProps = {
  * @see Learn about Rich Text fields {@link https://prismic.io/docs/core-concepts/rich-text-title}
  */
 export const PrismicText = (props: PrismicTextProps): JSX.Element | null => {
-	if (process.env.NODE_ENV === "development") {
+	if (
+		typeof process !== "undefined" &&
+		process.env.NODE_ENV === "development"
+	) {
 		if ("className" in props) {
 			console.warn(
 				`[PrismicText] className cannot be passed to <PrismicText> since it renders plain text without a wrapping component. For more details, see ${devMsg(
diff --git a/src/PrismicToolbar.tsx b/src/PrismicToolbar.tsx
index bd29329..ed7b000 100644
--- a/src/PrismicToolbar.tsx
+++ b/src/PrismicToolbar.tsx
@@ -52,7 +52,7 @@ export const PrismicToolbar = ({
 			// environments.
 			//
 			// @see https://github.com/capricorn86/happy-dom/blob/02ae081e36f990c06171eda44f9d885fd9413d73/packages/happy-dom/src/nodes/html-script-element/HTMLScriptElement.ts#L191-L209
-			if (process.env.NODE_ENV === "test") {
+			if (typeof process !== "undefined" && process.env.NODE_ENV === "test") {
 				// @ts-expect-error - `_evaluateScript` is a Happy DOM-specific property.
 				script._evaluateScript = false;
 			}
diff --git a/src/SliceZone.tsx b/src/SliceZone.tsx
index 286046b..e5b33e8 100644
--- a/src/SliceZone.tsx
+++ b/src/SliceZone.tsx
@@ -155,7 +155,10 @@ export type SliceZoneComponents<
 export const TODOSliceComponent = <TSlice extends SliceLike, TContext>({
 	slice,
 }: SliceComponentProps<TSlice, TContext>): JSX.Element | null => {
-	if (process.env.NODE_ENV === "development") {
+	if (
+		typeof process !== "undefined" &&
+		process.env.NODE_ENV === "development"
+	) {
 		const type = "slice_type" in slice ? slice.slice_type : slice.type;
 
 		console.warn(
diff --git a/src/index.ts b/src/index.ts
index ec965a4..c768122 100644
--- a/src/index.ts
+++ b/src/index.ts
@@ -1,5 +1,3 @@
-import "./lib/processPolyfill";
-
 export { PrismicProvider } from "./PrismicProvider";
 export type {
 	PrismicProviderProps,
diff --git a/src/lib/processPolyfill.ts b/src/lib/processPolyfill.ts
deleted file mode 100644
index 6f694a5..0000000
--- a/src/lib/processPolyfill.ts
+++ /dev/null
@@ -1,4 +0,0 @@
-// Polyfill `process` in environments like the browser.
-if (typeof process === "undefined") {
-	globalThis.process = { env: {} } as typeof process;
-}
diff --git a/src/react-server/PrismicLink.tsx b/src/react-server/PrismicLink.tsx
index 976906e..a6bebf2 100644
--- a/src/react-server/PrismicLink.tsx
+++ b/src/react-server/PrismicLink.tsx
@@ -107,7 +107,10 @@ export const PrismicLink = React.forwardRef(function PrismicLink<
 	}: PrismicLinkProps<InternalComponentProps, ExternalComponentProps>,
 	ref: React.ForwardedRef<Element>,
 ): JSX.Element {
-	if (process.env.NODE_ENV === "development") {
+	if (
+		typeof process !== "undefined" &&
+		process.env.NODE_ENV === "development"
+	) {
 		if (field) {
 			if (!field.link_type) {
 				console.error(
diff --git a/src/react-server/PrismicRichText.tsx b/src/react-server/PrismicRichText.tsx
index 18c94ac..e99b1a8 100644
--- a/src/react-server/PrismicRichText.tsx
+++ b/src/react-server/PrismicRichText.tsx
@@ -226,7 +226,10 @@ export function PrismicRichText<
 	...restProps
 }: PrismicRichTextProps<LinkResolverFunction>): JSX.Element | null {
 	return React.useMemo(() => {
-		if (process.env.NODE_ENV === "development") {
+		if (
+			typeof process !== "undefined" &&
+			process.env.NODE_ENV === "development"
+		) {
 			if ("className" in restProps) {
 				console.warn(
 					`[PrismicRichText] className cannot be passed to <PrismicRichText> since it renders an array without a wrapping component. For more details, see ${devMsg(