import type UserModel from '../models/User.ts'; import type { GetModelTypeFromClass } from '../modules/BaseModel.ts'; import type Server from '../server.ts'; export declare let serverInstance: Server; export declare let defaultUser: InstanceType>; export declare let defaultAuthToken: string; export declare const setServerInstance: (serverInstanceToSet: Server) => void; export declare const setDefaultUser: (userToSet: InstanceType>) => void; export declare const setDefaultAuthToken: (tokenToSet: string) => void; export declare const getTestServerURL: (urlPart?: string) => string; export declare const createDefaultTestUser: () => Promise & Omit<{ isVerified: boolean; locale: string; name?: { first?: string | null | undefined; last?: string | null | undefined; nick?: string | null | undefined; } | null | undefined; createdAt?: NativeDate | null | undefined; updatedAt?: NativeDate | null | undefined; avatar?: string | null | undefined; password?: string | null | undefined; email?: string | null | undefined; sessionTokens?: ({ token?: string | null | undefined; valid?: NativeDate | null | undefined; } & { _id: import("mongoose").Types.ObjectId; })[] | null | undefined; verificationTokens?: ({ token?: string | null | undefined; until?: NativeDate | null | undefined; } & { _id: import("mongoose").Types.ObjectId; })[] | null | undefined; passwordRecoveryTokens?: ({ token?: string | null | undefined; until?: NativeDate | null | undefined; } & { _id: import("mongoose").Types.ObjectId; })[] | null | undefined; permissions?: string[] | null | undefined; roles?: string[] | null | undefined; languages?: string[] | null | undefined; } & { _id: import("mongoose").Types.ObjectId; } & Required<{ _id: import("mongoose").Types.ObjectId; }> & { __v: number; }, "id" | "generateToken" | "sendPasswordRecoveryEmail" | "sendVerificationEmail" | "getPublic"> & import("../modules/BaseModel.ts").VirtualType<{}> & { readonly generateToken: (this: { email?: string | null; sessionTokens?: { token?: string | null; valid?: Date | null; }[] | null; save: () => Promise; }) => Promise<{ token: string; valid: Date; }>; readonly sendPasswordRecoveryEmail: (this: import("mongoose").Document & { isVerified: boolean; locale: string; name?: { first?: string | null | undefined; last?: string | null | undefined; nick?: string | null | undefined; } | null | undefined; createdAt?: NativeDate | null | undefined; updatedAt?: NativeDate | null | undefined; avatar?: string | null | undefined; password?: string | null | undefined; email?: string | null | undefined; sessionTokens?: ({ token?: string | null | undefined; valid?: NativeDate | null | undefined; } & { _id: import("mongoose").Types.ObjectId; })[] | null | undefined; verificationTokens?: ({ token?: string | null | undefined; until?: NativeDate | null | undefined; } & { _id: import("mongoose").Types.ObjectId; })[] | null | undefined; passwordRecoveryTokens?: ({ token?: string | null | undefined; until?: NativeDate | null | undefined; } & { _id: import("mongoose").Types.ObjectId; })[] | null | undefined; permissions?: string[] | null | undefined; roles?: string[] | null | undefined; languages?: string[] | null | undefined; } & { _id: import("mongoose").Types.ObjectId; } & Required<{ _id: import("mongoose").Types.ObjectId; }> & { __v: number; } & { id: string; }, i18n: { t: import("i18next").TFunction; language: string; }) => Promise; readonly sendVerificationEmail: (this: import("mongoose").Document & { isVerified: boolean; locale: string; name?: { first?: string | null | undefined; last?: string | null | undefined; nick?: string | null | undefined; } | null | undefined; createdAt?: NativeDate | null | undefined; updatedAt?: NativeDate | null | undefined; avatar?: string | null | undefined; password?: string | null | undefined; email?: string | null | undefined; sessionTokens?: ({ token?: string | null | undefined; valid?: NativeDate | null | undefined; } & { _id: import("mongoose").Types.ObjectId; })[] | null | undefined; verificationTokens?: ({ token?: string | null | undefined; until?: NativeDate | null | undefined; } & { _id: import("mongoose").Types.ObjectId; })[] | null | undefined; passwordRecoveryTokens?: ({ token?: string | null | undefined; until?: NativeDate | null | undefined; } & { _id: import("mongoose").Types.ObjectId; })[] | null | undefined; permissions?: string[] | null | undefined; roles?: string[] | null | undefined; languages?: string[] | null | undefined; } & { _id: import("mongoose").Types.ObjectId; } & Required<{ _id: import("mongoose").Types.ObjectId; }> & { __v: number; } & { id: string; }, i18n: { t: import("i18next").TFunction; language: string; }) => Promise; readonly getPublic: (this: import("mongoose").Document & { isVerified: boolean; locale: string; name?: { first?: string | null | undefined; last?: string | null | undefined; nick?: string | null | undefined; } | null | undefined; createdAt?: NativeDate | null | undefined; updatedAt?: NativeDate | null | undefined; avatar?: string | null | undefined; password?: string | null | undefined; email?: string | null | undefined; sessionTokens?: ({ token?: string | null | undefined; valid?: NativeDate | null | undefined; } & { _id: import("mongoose").Types.ObjectId; })[] | null | undefined; verificationTokens?: ({ token?: string | null | undefined; until?: NativeDate | null | undefined; } & { _id: import("mongoose").Types.ObjectId; })[] | null | undefined; passwordRecoveryTokens?: ({ token?: string | null | undefined; until?: NativeDate | null | undefined; } & { _id: import("mongoose").Types.ObjectId; })[] | null | undefined; permissions?: string[] | null | undefined; roles?: string[] | null | undefined; languages?: string[] | null | undefined; } & { _id: import("mongoose").Types.ObjectId; } & Required<{ _id: import("mongoose").Types.ObjectId; }> & { __v: number; } & { id: string; }) => { avatar: string | null | undefined; name: { first?: string | null | undefined; last?: string | null | undefined; nick?: string | null | undefined; } | null | undefined; email: string | null | undefined; id: string; isVerified: boolean; permissions: string[] | null | undefined; locale: string; }; } & { id: string; }; token: string; }>;