import { type AgentSecret } from "cojson"; import { z } from "zod/v4"; declare const ClerkUserSchema: z.ZodObject<{ fullName: z.ZodOptional>; username: z.ZodOptional>; firstName: z.ZodOptional>; lastName: z.ZodOptional>; id: z.ZodOptional; primaryEmailAddress: z.ZodOptional; }, z.core.$strip>>>; unsafeMetadata: z.ZodUnion<[z.ZodObject<{ jazzAccountID: z.ZodString; jazzAccountSecret: z.ZodString; jazzAccountSeed: z.ZodOptional>; }, z.core.$strip>, z.ZodObject<{}, z.core.$strip>]>; update: z.ZodFunction>; }, z.core.$strip>; }, z.core.$strip>], null>, z.ZodPromise>; }, z.core.$strip>; export declare const ClerkEventSchema: z.ZodObject<{ user: z.ZodOptional>; username: z.ZodOptional>; firstName: z.ZodOptional>; lastName: z.ZodOptional>; id: z.ZodOptional; primaryEmailAddress: z.ZodOptional; }, z.core.$strip>>>; unsafeMetadata: z.ZodUnion<[z.ZodObject<{ jazzAccountID: z.ZodString; jazzAccountSecret: z.ZodString; jazzAccountSeed: z.ZodOptional>; }, z.core.$strip>, z.ZodObject<{}, z.core.$strip>]>; update: z.ZodFunction>; }, z.core.$strip>; }, z.core.$strip>], null>, z.ZodPromise>; }, z.core.$strip>>>; }, z.core.$strip>; export type ClerkEventSchema = z.infer; export type ClerkUser = z.infer; type PermissiveClerkUser = Omit & { unsafeMetadata: Record; update: (args: { unsafeMetadata: Record; }) => Promise; }; export type MinimalClerkClient = { user: PermissiveClerkUser | null | undefined; signOut: () => Promise; addListener: (listener: (data: unknown) => void) => (() => void) | void; }; export type ClerkCredentials = { jazzAccountID: string; jazzAccountSecret: AgentSecret; jazzAccountSeed?: number[]; }; /** * Checks if the Clerk user metadata contains the necessary credentials for Jazz auth. * **Note**: It does not validate the credentials, only checks if the necessary fields are present in the metadata object. */ export declare function isClerkCredentials(data: Record | undefined): data is ClerkCredentials; type ClerkUserWithUnsafeMetadata = Pick | null | undefined; export declare function isClerkAuthStateEqual(previousUser: ClerkUserWithUnsafeMetadata, newUser: ClerkUserWithUnsafeMetadata): boolean; export {}; //# sourceMappingURL=types.d.ts.map