-
Notifications
You must be signed in to change notification settings - Fork 330
/
Copy pathindex.ts
91 lines (75 loc) · 2.3 KB
/
index.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
import { OptionsOfUnknownResponseBody } from 'got';
import Clerk from './instance';
const singletonInstance = Clerk.getInstance();
const allowlistIdentifiers = singletonInstance.allowlistIdentifiers;
const clients = singletonInstance.clients;
const emails = singletonInstance.emails;
const invitations = singletonInstance.invitations;
const organizations = singletonInstance.organizations;
const sessions = singletonInstance.sessions;
const smsMessages = singletonInstance.smsMessages;
const users = singletonInstance.users;
// Export a default singleton instance that should suffice for most use cases
export default singletonInstance;
// Export sub-api objects
export {
allowlistIdentifiers,
clients,
emails,
invitations,
organizations,
sessions,
smsMessages,
users,
};
// Export resources
export {
Nullable,
AllowlistIdentifier,
Client,
Email,
EmailAddress,
ExternalAccount,
IdentificationLink,
Invitation,
Organization,
OrganizationMembership,
OrganizationMembershipPublicUserData,
PhoneNumber,
Session,
SMSMessage,
User,
Verification,
} from './instance';
// Export middleware functions
const ClerkExpressWithAuth =
singletonInstance.expressWithAuth.bind(singletonInstance);
const ClerkExpressRequireAuth =
singletonInstance.expressRequireAuth.bind(singletonInstance);
const withAuth = singletonInstance.withAuth.bind(singletonInstance);
const requireAuth = singletonInstance.requireAuth.bind(singletonInstance);
export { ClerkExpressWithAuth, ClerkExpressRequireAuth, withAuth, requireAuth };
// Export wrapper types for Next.js requests
export { WithAuthProp, RequireAuthProp } from './Clerk';
// Export Errors
export {
HttpError,
ClerkServerError,
ClerkServerErrorJSON,
} from './utils/Errors';
// Export Logger
export { default as Logger } from './utils/Logger';
// Export setters for the default singleton instance
// Useful if you only have access to a sub-api instance
export function setClerkApiKey(value: string) {
Clerk.getInstance().apiKey = value;
}
export function setClerkServerApiUrl(value: string) {
Clerk.getInstance().serverApiUrl = value;
}
export function setClerkApiVersion(value: string) {
Clerk.getInstance().apiVersion = value;
}
export function setClerkHttpOptions(value: OptionsOfUnknownResponseBody) {
Clerk.getInstance().httpOptions = value;
}