import type { Types } from "mongoose";
import { Schema } from "mongoose";
interface User {
    _id: Types.ObjectId;
    __v: string;
    id: string;
    name: string | null;
    email: string | null;
    emailVerified: Date | null;
    image: string | null;
}
interface Account {
    _id: Types.ObjectId;
    __v: string;
    id: string;
    userId: Types.ObjectId;
    type: string;
    provider: string;
    providerAccountId: string;
    refresh_token: string;
    access_token: string | null;
    expires_at: number | null;
    token_type: string | null;
    scope: string;
    id_token: string;
    oauth_token_secret: string;
    oauth_token: string;
    session_state: string;
}
interface Session {
    _id: Types.ObjectId;
    __v: string;
    id: string;
    sessionToken: string;
    userId: Types.ObjectId;
    expires: Date;
}
interface VerificationToken {
    _id: Types.ObjectId;
    __v: string;
    id: string;
    token: string;
    identifier: string;
    expires: Date;
}
export declare const userSchema: Schema<User, import("mongoose").Model<User, any, any, any, import("mongoose").Document<unknown, any, User> & User & Required<{
    _id: Types.ObjectId;
}>, any>, {}, {}, {}, {}, import("mongoose").DefaultSchemaOptions, User, import("mongoose").Document<unknown, {}, import("mongoose").FlatRecord<User>> & import("mongoose").FlatRecord<User> & Required<{
    _id: Types.ObjectId;
}>>;
export declare const accountSchema: Schema<Account, import("mongoose").Model<Account, any, any, any, import("mongoose").Document<unknown, any, Account> & Account & Required<{
    _id: Types.ObjectId;
}>, any>, {}, {}, {}, {}, import("mongoose").DefaultSchemaOptions, Account, import("mongoose").Document<unknown, {}, import("mongoose").FlatRecord<Account>> & import("mongoose").FlatRecord<Account> & Required<{
    _id: Types.ObjectId;
}>>;
export declare const sessionSchema: Schema<Session, import("mongoose").Model<Session, any, any, any, import("mongoose").Document<unknown, any, Session> & Session & Required<{
    _id: Types.ObjectId;
}>, any>, {}, {}, {}, {}, import("mongoose").DefaultSchemaOptions, Session, import("mongoose").Document<unknown, {}, import("mongoose").FlatRecord<Session>> & import("mongoose").FlatRecord<Session> & Required<{
    _id: Types.ObjectId;
}>>;
export declare const verificationTokenSchema: Schema<VerificationToken, import("mongoose").Model<VerificationToken, any, any, any, import("mongoose").Document<unknown, any, VerificationToken> & VerificationToken & Required<{
    _id: Types.ObjectId;
}>, any>, {}, {}, {}, {}, import("mongoose").DefaultSchemaOptions, VerificationToken, import("mongoose").Document<unknown, {}, import("mongoose").FlatRecord<VerificationToken>> & import("mongoose").FlatRecord<VerificationToken> & Required<{
    _id: Types.ObjectId;
}>>;
export {};
//# sourceMappingURL=models.d.ts.map