import { Types } from "mongoose";
import { Role, DeviceType, SendVia } from "src/common/constant/enum.constant";
export declare class Users {
    firstName: string;
    lastName: string;
    email: string;
    password: string;
    phoneNumber: string;
    city: string;
    country: string;
    state: string;
    zipCode: string;
    address: string;
    currency: string;
    website: string;
    countryPhoneCode: string;
    otp: string | null;
    otpExpiry: Date | null;
    otpSentAt: Date | null;
    phoneVerifiedAt: Date;
    emailVerifiedAt: Date;
    lastLogin: Date;
    organizationName: string;
    isActive: boolean;
    isBlocked: boolean;
    subscriptionDate: Date;
    isOtpVerifiedForReset: boolean;
    role: Role;
    deviceType: DeviceType;
    deletedAt: Date;
    createdBy: Types.ObjectId;
    updatedBy: Types.ObjectId;
    isGuest: boolean;
    emailPreferences: {
        sendVia: SendVia;
        replyToEmail: string;
    };
    businessNumber: string;
    businessEmail: string;
    hasUnreadNotification: boolean;
    terms: string;
    googleId: string;
    appleId: string;
    shortBusinessName: string;
    licenseNumber: string;
    industry: string;
    countryCode: string;
    stripeConnected: boolean;
    chargesEnabled: boolean;
    payoutsEnabled: boolean;
    notificationsEnabled: boolean;
    profileImageUrl: string;
}
export declare const UsersSchema: import("mongoose").Schema<Users, import("mongoose").Model<Users, any, any, any, import("mongoose").Document<unknown, any, Users, any, {}> & Users & {
    _id: Types.ObjectId;
} & {
    __v: number;
}, any>, {}, {}, {}, {}, import("mongoose").DefaultSchemaOptions, Users, import("mongoose").Document<unknown, {}, import("mongoose").FlatRecord<Users>, {}, import("mongoose").ResolveSchemaOptions<import("mongoose").DefaultSchemaOptions>> & import("mongoose").FlatRecord<Users> & {
    _id: Types.ObjectId;
} & {
    __v: number;
}>;
export type UsersDocument = Users & Document;
