import { z } from 'zod/v4'; import type { Journey } from './Journey'; import type { Layer } from './Layer'; export type UserBearerTokenPayload = z.infer; export type UserCampaign = { id: string; name: string; journey: Journey; layers: Layer[]; }; export declare enum UserDevice { Mobile = "mobile", Tablet = "tablet", Desktop = "desktop" } export type User = z.infer; export type CreateUserBody = z.input; export type CreateUserArgs = z.output; export type CreateUserResponse = { token: string; userId: string; }; export type UpdateUserBody = z.input; export type UpdateUserArgs = z.output; export type GetUserAuthQuery = z.input; export type GetUserAuthParams = z.infer; export declare const userSchema: z.ZodObject<{ id: z.ZodString; customAttributes: z.ZodRecord; language: z.ZodOptional; device: z.ZodOptional>; lastReferralUrl: z.ZodString; firstReferralUrl: z.ZodString; ipAddress: z.ZodOptional>; countryCode: z.ZodNullable>; workspaceId: z.ZodString; lastVisitAt: z.ZodOptional; createdAt: z.ZodNumber; updatedAt: z.ZodNumber; }, z.core.$strip>; export declare const createUserBodySchema: z.ZodObject<{ language: z.ZodOptional; device: z.ZodOptional>; customAttributes: z.ZodRecord; ipAddress: z.ZodOptional>; countryCode: z.ZodNullable>; lastVisitAt: z.ZodOptional; referralUrl: z.ZodString; }, z.core.$strip>; export declare const updateUserBodySchema: z.ZodObject<{ language: z.ZodOptional>; device: z.ZodOptional>>; customAttributes: z.ZodOptional>; ipAddress: z.ZodOptional>>; countryCode: z.ZodOptional>>; lastVisitAt: z.ZodOptional>; referralUrl: z.ZodOptional; }, z.core.$strip>; export declare const getUserQuerySchema: z.ZodObject<{ referralUrl: z.ZodString; }, z.core.$strip>; export declare const userCollectionParamSchema: z.ZodObject<{ workspaceId: z.ZodString; }, z.core.$strip>; export declare const userItemParamSchema: z.ZodObject<{ workspaceId: z.ZodString; userId: z.ZodString; }, z.core.$strip>; export declare const setUserCompletedCampaignSchema: z.ZodObject<{ campaignId: z.ZodString; }, z.core.$strip>; export declare const userBearerTokenPayloadSchema: z.ZodObject<{ userId: z.ZodString; workspaceId: z.ZodString; }, z.core.$strip>; export declare const userCollectionSchema: z.ZodObject<{ data: z.ZodArray; language: z.ZodOptional; device: z.ZodOptional>; lastReferralUrl: z.ZodString; firstReferralUrl: z.ZodString; ipAddress: z.ZodOptional>; countryCode: z.ZodNullable>; workspaceId: z.ZodString; lastVisitAt: z.ZodOptional; createdAt: z.ZodNumber; updatedAt: z.ZodNumber; }, z.core.$strip>>; totalCount: z.ZodNumber; }, z.core.$strip>; export type UserCollection = z.infer;