Skip to content

Commit 079e2c9

Browse files
authored
chore(nextjs): Lift global type augmentations (#5017)
1 parent 796adec commit 079e2c9

File tree

4 files changed

+20
-24
lines changed

4 files changed

+20
-24
lines changed

.changeset/khaki-parrots-sniff.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
---
2+
---

packages/nextjs/src/app-router/client/ClerkProvider.tsx

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -26,17 +26,6 @@ const LazyCreateKeylessApplication = dynamic(() =>
2626
import('./keyless-creator-reader.js').then(m => m.KeylessCreatorOrReader),
2727
);
2828

29-
declare global {
30-
export interface Window {
31-
__clerk_nav_await: Array<(value: void) => void>;
32-
__clerk_nav: (to: string) => Promise<void>;
33-
__clerk_internal_invalidateCachePromise: () => void | undefined;
34-
next?: {
35-
version: string;
36-
};
37-
}
38-
}
39-
4029
const NextClientClerkProvider = (props: NextClerkProviderProps) => {
4130
if (isNextWithUnstableServerActions) {
4231
const deprecationWarning = `Clerk:\nYour current Next.js version (${nextPackage.version}) will be deprecated in the next major release of "@clerk/nextjs". Please upgrade to [email protected] or later.`;

packages/nextjs/src/app-router/client/useInternalNavFun.ts

Lines changed: 0 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -2,21 +2,8 @@ import type { AppRouterInstance } from 'next/dist/shared/lib/app-router-context.
22
import { usePathname } from 'next/navigation';
33
import { useCallback, useEffect, useTransition } from 'react';
44

5-
import type { NextClerkProviderProps } from '../../types';
65
import { removeBasePath } from '../../utils/removeBasePath';
76

8-
declare global {
9-
interface Window {
10-
__clerk_internal_navigations: Record<
11-
string,
12-
{
13-
fun: NonNullable<NextClerkProviderProps['routerPush'] | NextClerkProviderProps['routerReplace']>;
14-
promisesBuffer: Array<() => void> | undefined;
15-
}
16-
>;
17-
}
18-
}
19-
207
const getClerkNavigationObject = (name: string) => {
218
window.__clerk_internal_navigations ??= {};
229
// @ts-ignore

packages/nextjs/src/global.d.ts

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,27 @@ declare namespace NodeJS {
1414
}
1515
}
1616

17+
// eslint-disable-next-line @typescript-eslint/consistent-type-imports
18+
type NextClerkProviderProps = import('./types').NextClerkProviderProps;
19+
1720
interface Window {
21+
__clerk_internal_navigations: Record<
22+
string,
23+
{
24+
fun: NonNullable<NextClerkProviderProps['routerPush'] | NextClerkProviderProps['routerReplace']>;
25+
promisesBuffer: Array<() => void> | undefined;
26+
}
27+
>;
28+
__clerk_internal_invalidateCachePromise: () => void | undefined;
29+
__clerk_nav_await: Array<(value: void) => void>;
30+
__clerk_nav: (to: string) => Promise<void>;
31+
1832
__unstable__onBeforeSetActive: () => void | Promise<void>;
1933
__unstable__onAfterSetActive: () => void | Promise<void>;
34+
35+
next?: {
36+
version: string;
37+
};
2038
}
2139

2240
declare const PACKAGE_NAME: string;

0 commit comments

Comments
 (0)