@accounts/mikro-orm
Version:
MikroORM adaptor for accounts
23 lines (22 loc) • 1.15 kB
TypeScript
import { type Ref, EntitySchema } from '@mikro-orm/core';
import { type IUser, type UserCtor } from './User';
export declare class Email<CustomUser extends IUser<any, any, any>> {
id: number;
user: Ref<CustomUser>;
address: string;
verified: boolean;
constructor({ address, user, verified }: EmailCtorArgs<CustomUser>);
}
export interface EmailCtorArgs<CustomUser extends IUser<any, any, any>> {
address: string;
user?: CustomUser;
verified?: boolean;
}
export type EmailCtor<CustomUser extends IUser<any, any, any>, CustomEmailCtorArgs extends EmailCtorArgs<CustomUser> = EmailCtorArgs<CustomUser>> = new (args: CustomEmailCtorArgs) => Email<CustomUser>;
export declare const getEmailCtor: <CustomUser extends IUser<any, any, any>, CustomEmailCtorArgs extends EmailCtorArgs<CustomUser> = EmailCtorArgs<CustomUser>>({ abstract, }?: {
abstract?: boolean | undefined;
}) => EmailCtor<CustomUser, CustomEmailCtorArgs>;
export declare const getEmailSchema: ({ UserEntity, abstract, }?: {
UserEntity?: UserCtor<any, any, any, any> | undefined;
abstract?: boolean | undefined;
}) => EntitySchema<Email<any>, never>;