import { DocumentNode } from "graphql" ; import { makePrismaClientClass , BaseClientOptions , Model } from "prisma-client-lib" ; import { typeDefs } from "./prisma-schema" ; export type AtLeastOne < T , U = { [ K in keyof T ] : Pick < T , K > ; } > = Partial < T > & U [ keyof U ] ; export type Maybe < T > = T | undefined | null ; export interface Exists { user : ( where ? : UserWhereInput ) => Promise < boolean > ; passwordMeta : ( where ? : PasswordMetaWhereInput ) => Promise < boolean > ; } export interface Node { } export type FragmentableArray < T > = Promise < Array < T > > & Fragmentable ; export interface Fragmentable { $fragment < T > ( fragment ) : Promise < T > ; } export interface Prisma { $exists : Exists ; $graphql : < T = any > ( query : string , variables ? : { [ key ] : any ; } ) => Promise < T > ; /**
     * Queries
     */ users : ( args ? : { where ? : UserWhereInput ; orderBy ? : UserOrderByInput ; skip ? : Int ; after ? : String ; before ? : String ; first ? : Int ; last ? : Int ; } ) => FragmentableArray < User > ; passwordMetas : ( args ? : { where ? : PasswordMetaWhereInput ; orderBy ? : PasswordMetaOrderByInput ; skip ? : Int ; after ? : String ; before ? : String ; first ? : Int ; last ? : Int ; } ) => FragmentableArray < PasswordMeta > ; user : ( where : UserWhereUniqueInput ) => UserNullablePromise ; passwordMeta : ( where : PasswordMetaWhereUniqueInput ) => PasswordMetaNullablePromise ; usersConnection : ( args ? : { where ? : UserWhereInput ; orderBy ? : UserOrderByInput ; skip ? : Int ; after ? : String ; before ? : String ; first ? : Int ; last ? : Int ; } ) => UserConnectionPromise ; passwordMetasConnection : ( args ? : { where ? : PasswordMetaWhereInput ; orderBy ? : PasswordMetaOrderByInput ; skip ? : Int ; after ? : String ; before ? : String ; first ? : Int ; last ? : Int ; } ) => PasswordMetaConnectionPromise ; node : ( args : { id : ID_Output ; } ) => Node ; /**
     * Mutations
     */ createUser : ( data : UserCreateInput ) => UserPromise ; createPasswordMeta : ( data : PasswordMetaCreateInput ) => PasswordMetaPromise ; updateUser : ( args : { data : UserUpdateInput ; where : UserWhereUniqueInput ; } ) => UserPromise ; updatePasswordMeta : ( args : { data : PasswordMetaUpdateInput ; where : PasswordMetaWhereUniqueInput ; } ) => PasswordMetaPromise ; deleteUser : ( where : UserWhereUniqueInput ) => UserPromise ; deletePasswordMeta : ( where : PasswordMetaWhereUniqueInput ) => PasswordMetaPromise ; upsertUser : ( args : { where : UserWhereUniqueInput ; create : UserCreateInput ; update : UserUpdateInput ; } ) => UserPromise ; upsertPasswordMeta : ( args : { where : PasswordMetaWhereUniqueInput ; create : PasswordMetaCreateInput ; update : PasswordMetaUpdateInput ; } ) => PasswordMetaPromise ; updateManyUsers : ( args : { data : UserUpdateManyMutationInput ; where ? : UserWhereInput ; } ) => BatchPayloadPromise ; updateManyPasswordMetas : ( args : { data : PasswordMetaUpdateManyMutationInput ; where ? : PasswordMetaWhereInput ; } ) => BatchPayloadPromise ; deleteManyUsers : ( where ? : UserWhereInput ) => BatchPayloadPromise ; deleteManyPasswordMetas : ( where ? : PasswordMetaWhereInput ) => BatchPayloadPromise ; /**
     * Subscriptions
     */ $subscribe : Subscription ; } export interface Subscription { user : ( where ? : UserSubscriptionWhereInput ) => UserSubscriptionPayloadSubscription ; passwordMeta : ( where ? : PasswordMetaSubscriptionWhereInput ) => PasswordMetaSubscriptionPayloadSubscription ; } export interface ClientConstructor < T > { new ( options ? ) : T ; } /**
 * Types
 */ export type UserOrderByInput = "id_ASC" | "id_DESC" | "createdAt_ASC" | "createdAt_DESC" | "updatedAt_ASC" | "updatedAt_DESC" | "email_ASC" | "email_DESC" | "password_ASC" | "password_DESC" | "role_ASC" | "role_DESC" | "firstName_ASC" | "firstName_DESC" | "lastName_ASC" | "lastName_DESC" | "phone_ASC" | "phone_DESC" ; export type UserRole = "USER" | "ADMIN" ; export type MutationType = "CREATED" | "UPDATED" | "DELETED" ; export type PasswordMetaOrderByInput = "id_ASC" | "id_DESC" | "createdAt_ASC" | "createdAt_DESC" | "updatedAt_ASC" | "updatedAt_DESC" | "resetToken_ASC" | "resetToken_DESC" ; export interface UserCreateInput { id ? : Maybe < ID_Input > ; email : String ; password : String ; role ? : Maybe < UserRole > ; firstName ? : Maybe < String > ; lastName ? : Maybe < String > ; phone ? : Maybe < String > ; passwordMeta ? : Maybe < PasswordMetaCreateOneInput > ; } export interface PasswordMetaUpdateInput { resetToken ? : Maybe < String > ; } export interface UserWhereInput { AND ? : Maybe < UserWhereInput [ ] | UserWhereInput > ; OR ? : Maybe < UserWhereInput [ ] | UserWhereInput > ; NOT ? : Maybe < UserWhereInput [ ] | UserWhereInput > ; id ? : Maybe < ID_Input > ; id_not ? : Maybe < ID_Input > ; id_in ? : Maybe < ID_Input [ ] | ID_Input > ; id_not_in ? : Maybe < ID_Input [ ] | ID_Input > ; id_lt ? : Maybe < ID_Input > ; id_lte ? : Maybe < ID_Input > ; id_gt ? : Maybe < ID_Input > ; id_gte ? : Maybe < ID_Input > ; id_contains ? : Maybe < ID_Input > ; id_not_contains ? : Maybe < ID_Input > ; id_starts_with ? : Maybe < ID_Input > ; id_not_starts_with ? : Maybe < ID_Input > ; id_ends_with ? : Maybe < ID_Input > ; id_not_ends_with ? : Maybe < ID_Input > ; createdAt ? : Maybe < DateTimeInput > ; createdAt_not ? : Maybe < DateTimeInput > ; createdAt_in ? : Maybe < DateTimeInput [ ] | DateTimeInput > ; createdAt_not_in ? : Maybe < DateTimeInput [ ] | DateTimeInput > ; createdAt_lt ? : Maybe < DateTimeInput > ; createdAt_lte ? : Maybe < DateTimeInput > ; createdAt_gt ? : Maybe < DateTimeInput > ; createdAt_gte ? : Maybe < DateTimeInput > ; updatedAt ? : Maybe < DateTimeInput > ; updatedAt_not ? : Maybe < DateTimeInput > ; updatedAt_in ? : Maybe < DateTimeInput [ ] | DateTimeInput > ; updatedAt_not_in ? : Maybe < DateTimeInput [ ] | DateTimeInput > ; updatedAt_lt ? : Maybe < DateTimeInput > ; updatedAt_lte ? : Maybe < DateTimeInput > ; updatedAt_gt ? : Maybe < DateTimeInput > ; updatedAt_gte ? : Maybe < DateTimeInput > ; email ? : Maybe < String > ; email_not ? : Maybe < String > ; email_in ? : Maybe < String [ ] | String > ; email_not_in ? : Maybe < String [ ] | String > ; email_lt ? : Maybe < String > ; email_lte ? : Maybe < String > ; email_gt ? : Maybe < String > ; email_gte ? : Maybe < String > ; email_contains ? : Maybe < String > ; email_not_contains ? : Maybe < String > ; email_starts_with ? : Maybe < String > ; email_not_starts_with ? : Maybe < String > ; email_ends_with ? : Maybe < String > ; email_not_ends_with ? : Maybe < String > ; password ? : Maybe < String > ; password_not ? : Maybe < String > ; password_in ? : Maybe < String [ ] | String > ; password_not_in ? : Maybe < String [ ] | String > ; password_lt ? : Maybe < String > ; password_lte ? : Maybe < String > ; password_gt ? : Maybe < String > ; password_gte ? : Maybe < String > ; password_contains ? : Maybe < String > ; password_not_contains ? : Maybe < String > ; password_starts_with ? : Maybe < String > ; password_not_starts_with ? : Maybe < String > ; password_ends_with ? : Maybe < String > ; password_not_ends_with ? : Maybe < String > ; role ? : Maybe < UserRole > ; role_not ? : Maybe < UserRole > ; role_in ? : Maybe < UserRole [ ] | UserRole > ; role_not_in ? : Maybe < UserRole [ ] | UserRole > ; firstName ? : Maybe < String > ; firstName_not ? : Maybe < String > ; firstName_in ? : Maybe < String [ ] | String > ; firstName_not_in ? : Maybe < String [ ] | String > ; firstName_lt ? : Maybe < String > ; firstName_lte ? : Maybe < String > ; firstName_gt ? : Maybe < String > ; firstName_gte ? : Maybe < String > ; firstName_contains ? : Maybe < String > ; firstName_not_contains ? : Maybe < String > ; firstName_starts_with ? : Maybe < String > ; firstName_not_starts_with ? : Maybe < String > ; firstName_ends_with ? : Maybe < String > ; firstName_not_ends_with ? : Maybe < String > ; lastName ? : Maybe < String > ; lastName_not ? : Maybe < String > ; lastName_in ? : Maybe < String [ ] | String > ; lastName_not_in ? : Maybe < String [ ] | String > ; lastName_lt ? : Maybe < String > ; lastName_lte ? : Maybe < String > ; lastName_gt ? : Maybe < String > ; lastName_gte ? : Maybe < String > ; lastName_contains ? : Maybe < String > ; lastName_not_contains ? : Maybe < String > ; lastName_starts_with ? : Maybe < String > ; lastName_not_starts_with ? : Maybe < String > ; lastName_ends_with ? : Maybe < String > ; lastName_not_ends_with ? : Maybe < String > ; phone ? : Maybe < String > ; phone_not ? : Maybe < String > ; phone_in ? : Maybe < String [ ] | String > ; phone_not_in ? : Maybe < String [ ] | String > ; phone_lt ? : Maybe < String > ; phone_lte ? : Maybe < String > ; phone_gt ? : Maybe < String > ; phone_gte ? : Maybe < String > ; phone_contains ? : Maybe < String > ; phone_not_contains ? : Maybe < String > ; phone_starts_with ? : Maybe < String > ; phone_not_starts_with ? : Maybe < String > ; phone_ends_with ? : Maybe < String > ; phone_not_ends_with ? : Maybe < String > ; passwordMeta ? : Maybe < PasswordMetaWhereInput > ; } export interface PasswordMetaUpsertNestedInput { update : PasswordMetaUpdateDataInput ; create : PasswordMetaCreateInput ; } export interface PasswordMetaWhereInput { AND ? : Maybe < PasswordMetaWhereInput [ ] | PasswordMetaWhereInput > ; OR ? : Maybe < PasswordMetaWhereInput [ ] | PasswordMetaWhereInput > ; NOT ? : Maybe < PasswordMetaWhereInput [ ] | PasswordMetaWhereInput > ; id ? : Maybe < ID_Input > ; id_not ? : Maybe < ID_Input > ; id_in ? : Maybe < ID_Input [ ] | ID_Input > ; id_not_in ? : Maybe < ID_Input [ ] | ID_Input > ; id_lt ? : Maybe < ID_Input > ; id_lte ? : Maybe < ID_Input > ; id_gt ? : Maybe < ID_Input > ; id_gte ? : Maybe < ID_Input > ; id_contains ? : Maybe < ID_Input > ; id_not_contains ? : Maybe < ID_Input > ; id_starts_with ? : Maybe < ID_Input > ; id_not_starts_with ? : Maybe < ID_Input > ; id_ends_with ? : Maybe < ID_Input > ; id_not_ends_with ? : Maybe < ID_Input > ; createdAt ? : Maybe < DateTimeInput > ; createdAt_not ? : Maybe < DateTimeInput > ; createdAt_in ? : Maybe < DateTimeInput [ ] | DateTimeInput > ; createdAt_not_in ? : Maybe < DateTimeInput [ ] | DateTimeInput > ; createdAt_lt ? : Maybe < DateTimeInput > ; createdAt_lte ? : Maybe < DateTimeInput > ; createdAt_gt ? : Maybe < DateTimeInput > ; createdAt_gte ? : Maybe < DateTimeInput > ; updatedAt ? : Maybe < DateTimeInput > ; updatedAt_not ? : Maybe < DateTimeInput > ; updatedAt_in ? : Maybe < DateTimeInput [ ] | DateTimeInput > ; updatedAt_not_in ? : Maybe < DateTimeInput [ ] | DateTimeInput > ; updatedAt_lt ? : Maybe < DateTimeInput > ; updatedAt_lte ? : Maybe < DateTimeInput > ; updatedAt_gt ? : Maybe < DateTimeInput > ; updatedAt_gte ? : Maybe < DateTimeInput > ; resetToken ? : Maybe < String > ; resetToken_not ? : Maybe < String > ; resetToken_in ? : Maybe < String [ ] | String > ; resetToken_not_in ? : Maybe < String [ ] | String > ; resetToken_lt ? : Maybe < String > ; resetToken_lte ? : Maybe < String > ; resetToken_gt ? : Maybe < String > ; resetToken_gte ? : Maybe < String > ; resetToken_contains ? : Maybe < String > ; resetToken_not_contains ? : Maybe < String > ; resetToken_starts_with ? : Maybe < String > ; resetToken_not_starts_with ? : Maybe < String > ; resetToken_ends_with ? : Maybe < String > ; resetToken_not_ends_with ? : Maybe < String > ; } export interface PasswordMetaUpdateDataInput { resetToken ? : Maybe < String > ; } export interface PasswordMetaUpdateManyMutationInput { resetToken ? : Maybe < String > ; } export interface UserUpdateManyMutationInput { email ? : Maybe < String > ; password ? : Maybe < String > ; role ? : Maybe < UserRole > ; firstName ? : Maybe < String > ; lastName ? : Maybe < String > ; phone ? : Maybe < String > ; } export interface PasswordMetaCreateOneInput { create ? : Maybe < PasswordMetaCreateInput > ; connect ? : Maybe < PasswordMetaWhereUniqueInput > ; } export interface PasswordMetaCreateInput { id ? : Maybe < ID_Input > ; resetToken : String ; } export interface UserUpdateInput { email ? : Maybe < String > ; password ? : Maybe < String > ; role ? : Maybe < UserRole > ; firstName ? : Maybe < String > ; lastName ? : Maybe < String > ; phone ? : Maybe < String > ; passwordMeta ? : Maybe < PasswordMetaUpdateOneInput > ; } export interface PasswordMetaUpdateOneInput { create ? : Maybe < PasswordMetaCreateInput > ; connect ? : Maybe < PasswordMetaWhereUniqueInput > ; disconnect ? : Maybe < Boolean > ; delete ? : Maybe < Boolean > ; update ? : Maybe < PasswordMetaUpdateDataInput > ; upsert ? : Maybe < PasswordMetaUpsertNestedInput > ; } export interface PasswordMetaSubscriptionWhereInput { AND ? : Maybe < PasswordMetaSubscriptionWhereInput [ ] | PasswordMetaSubscriptionWhereInput > ; OR ? : Maybe < PasswordMetaSubscriptionWhereInput [ ] | PasswordMetaSubscriptionWhereInput > ; NOT ? : Maybe < PasswordMetaSubscriptionWhereInput [ ] | PasswordMetaSubscriptionWhereInput > ; mutation_in ? : Maybe < MutationType [ ] | MutationType > ; updatedFields_contains ? : Maybe < String > ; updatedFields_contains_every ? : Maybe < String [ ] | String > ; updatedFields_contains_some ? : Maybe < String [ ] | String > ; node ? : Maybe < PasswordMetaWhereInput > ; } export interface UserSubscriptionWhereInput { AND ? : Maybe < UserSubscriptionWhereInput [ ] | UserSubscriptionWhereInput > ; OR ? : Maybe < UserSubscriptionWhereInput [ ] | UserSubscriptionWhereInput > ; NOT ? : Maybe < UserSubscriptionWhereInput [ ] | UserSubscriptionWhereInput > ; mutation_in ? : Maybe < MutationType [ ] | MutationType > ; updatedFields_contains ? : Maybe < String > ; updatedFields_contains_every ? : Maybe < String [ ] | String > ; updatedFields_contains_some ? : Maybe < String [ ] | String > ; node ? : Maybe < UserWhereInput > ; } export type PasswordMetaWhereUniqueInput = AtLeastOne < { id : Maybe < ID_Input > ; } > ; export type UserWhereUniqueInput = AtLeastOne < { id : Maybe < ID_Input > ; email ? : Maybe < String > ; } > ; export interface NodeNode { id : ID_Output ; } export interface PasswordMetaEdge { node : PasswordMeta ; cursor : String ; } export interface PasswordMetaEdgePromise extends Promise < PasswordMetaEdge > , Fragmentable { node : < T = PasswordMetaPromise > ( ) => T ; cursor : ( ) => Promise < String > ; } export interface PasswordMetaEdgeSubscription extends Promise < AsyncIterator < PasswordMetaEdge > > , Fragmentable { node : < T = PasswordMetaSubscription > ( ) => T ; cursor : ( ) => Promise < AsyncIterator < String > > ; } export interface BatchPayload { count : Long ; } export interface BatchPayloadPromise extends Promise < BatchPayload > , Fragmentable { count : ( ) => Promise < Long > ; } export interface BatchPayloadSubscription extends Promise < AsyncIterator < BatchPayload > > , Fragmentable { count : ( ) => Promise < AsyncIterator < Long > > ; } export interface PasswordMetaPreviousValues { id : ID_Output ; createdAt : DateTimeOutput ; updatedAt : DateTimeOutput ; resetToken : String ; } export interface PasswordMetaPreviousValuesPromise extends Promise < PasswordMetaPreviousValues > , Fragmentable { id : ( ) => Promise < ID_Output > ; createdAt : ( ) => Promise < DateTimeOutput > ; updatedAt : ( ) => Promise < DateTimeOutput > ; resetToken : ( ) => Promise < String > ; } export interface PasswordMetaPreviousValuesSubscription extends Promise < AsyncIterator < PasswordMetaPreviousValues > > , Fragmentable { id : ( ) => Promise < AsyncIterator < ID_Output > > ; createdAt : ( ) => Promise < AsyncIterator < DateTimeOutput > > ; updatedAt : ( ) => Promise < AsyncIterator < DateTimeOutput > > ; resetToken : ( ) => Promise < AsyncIterator < String > > ; } export interface AggregatePasswordMeta { count : Int ; } export interface AggregatePasswordMetaPromise extends Promise < AggregatePasswordMeta > , Fragmentable { count : ( ) => Promise < Int > ; } export interface AggregatePasswordMetaSubscription extends Promise < AsyncIterator < AggregatePasswordMeta > > , Fragmentable { count : ( ) => Promise < AsyncIterator < Int > > ; } export interface PasswordMetaConnection { pageInfo : PageInfo ; edges : PasswordMetaEdge [ ] ; } export interface PasswordMetaConnectionPromise extends Promise < PasswordMetaConnection > , Fragmentable { pageInfo : < T = PageInfoPromise > ( ) => T ; edges : < T = FragmentableArray < PasswordMetaEdge > > ( ) => T ; aggregate : < T = AggregatePasswordMetaPromise > ( ) => T ; } export interface PasswordMetaConnectionSubscription extends Promise < AsyncIterator < PasswordMetaConnection > > , Fragmentable { pageInfo : < T = PageInfoSubscription > ( ) => T ; edges : < T = Promise < AsyncIterator < PasswordMetaEdgeSubscription > > > ( ) => T ; aggregate : < T = AggregatePasswordMetaSubscription > ( ) => T ; } export interface User extends Node { id : ID_Output ; createdAt : DateTimeOutput ; updatedAt : DateTimeOutput ; email : String ; password : String ; role : UserRole ; firstName ? : String ; lastName ? : String ; phone ? : String ; } export interface UserPromise extends Promise < User > , Fragmentable , Node { id : ( ) => Promise < ID_Output > ; createdAt : ( ) => Promise < DateTimeOutput > ; updatedAt : ( ) => Promise < DateTimeOutput > ; email : ( ) => Promise < String > ; password : ( ) => Promise < String > ; role : ( ) => Promise < UserRole > ; firstName : ( ) => Promise < String > ; lastName : ( ) => Promise < String > ; phone : ( ) => Promise < String > ; passwordMeta : < T = PasswordMetaPromise > ( ) => T ; } export interface UserSubscription extends Promise < AsyncIterator < User > > , Fragmentable , Node { id : ( ) => Promise < AsyncIterator < ID_Output > > ; createdAt : ( ) => Promise < AsyncIterator < DateTimeOutput > > ; updatedAt : ( ) => Promise < AsyncIterator < DateTimeOutput > > ; email : ( ) => Promise < AsyncIterator < String > > ; password : ( ) => Promise < AsyncIterator < String > > ; role : ( ) => Promise < AsyncIterator < UserRole > > ; firstName : ( ) => Promise < AsyncIterator < String > > ; lastName : ( ) => Promise < AsyncIterator < String > > ; phone : ( ) => Promise < AsyncIterator < String > > ; passwordMeta : < T = PasswordMetaSubscription > ( ) => T ; } export interface UserNullablePromise extends Promise < User | null > , Fragmentable , Node { id : ( ) => Promise < ID_Output > ; createdAt : ( ) => Promise < DateTimeOutput > ; updatedAt : ( ) => Promise < DateTimeOutput > ; email : ( ) => Promise < String > ; password : ( ) => Promise < String > ; role : ( ) => Promise < UserRole > ; firstName : ( ) => Promise < String > ; lastName : ( ) => Promise < String > ; phone : ( ) => Promise < String > ; passwordMeta : < T = PasswordMetaPromise > ( ) => T ; } export interface UserEdge { node : User ; cursor : String ; } export interface UserEdgePromise extends Promise < UserEdge > , Fragmentable { node : < T = UserPromise > ( ) => T ; cursor : ( ) => Promise < String > ; } export interface UserEdgeSubscription extends Promise < AsyncIterator < UserEdge > > , Fragmentable { node : < T = UserSubscription > ( ) => T ; cursor : ( ) => Promise < AsyncIterator < String > > ; } export interface UserSubscriptionPayload { mutation : MutationType ; node : User ; updatedFields : String [ ] ; previousValues : UserPreviousValues ; } export interface UserSubscriptionPayloadPromise extends Promise < UserSubscriptionPayload > , Fragmentable { mutation : ( ) => Promise < MutationType > ; node : < T = UserPromise > ( ) => T ; updatedFields : ( ) => Promise < String [ ] > ; previousValues : < T = UserPreviousValuesPromise > ( ) => T ; } export interface UserSubscriptionPayloadSubscription extends Promise < AsyncIterator < UserSubscriptionPayload > > , Fragmentable { mutation : ( ) => Promise < AsyncIterator < MutationType > > ; node : < T = UserSubscription > ( ) => T ; updatedFields : ( ) => Promise < AsyncIterator < String [ ] > > ; previousValues : < T = UserPreviousValuesSubscription > ( ) => T ; } export interface UserConnection { pageInfo : PageInfo ; edges : UserEdge [ ] ; } export interface UserConnectionPromise extends Promise < UserConnection > , Fragmentable { pageInfo : < T = PageInfoPromise > ( ) => T ; edges : < T = FragmentableArray < UserEdge > > ( ) => T ; aggregate : < T = AggregateUserPromise > ( ) => T ; } export interface UserConnectionSubscription extends Promise < AsyncIterator < UserConnection > > , Fragmentable { pageInfo : < T = PageInfoSubscription > ( ) => T ; edges : < T = Promise < AsyncIterator < UserEdgeSubscription > > > ( ) => T ; aggregate : < T = AggregateUserSubscription > ( ) => T ; } export interface UserPreviousValues { id : ID_Output ; createdAt : DateTimeOutput ; updatedAt : DateTimeOutput ; email : String ; password : String ; role : UserRole ; firstName ? : String ; lastName ? : String ; phone ? : String ; } export interface UserPreviousValuesPromise extends Promise < UserPreviousValues > , Fragmentable { id : ( ) => Promise < ID_Output > ; createdAt : ( ) => Promise < DateTimeOutput > ; updatedAt : ( ) => Promise < DateTimeOutput > ; email : ( ) => Promise < String > ; password : ( ) => Promise < String > ; role : ( ) => Promise < UserRole > ; firstName : ( ) => Promise < String > ; lastName : ( ) => Promise < String > ; phone : ( ) => Promise < String > ; } export interface UserPreviousValuesSubscription extends Promise < AsyncIterator < UserPreviousValues > > , Fragmentable { id : ( ) => Promise < AsyncIterator < ID_Output > > ; createdAt : ( ) => Promise < AsyncIterator < DateTimeOutput > > ; updatedAt : ( ) => Promise < AsyncIterator < DateTimeOutput > > ; email : ( ) => Promise < AsyncIterator < String > > ; password : ( ) => Promise < AsyncIterator < String > > ; role : ( ) => Promise < AsyncIterator < UserRole > > ; firstName : ( ) => Promise < AsyncIterator < String > > ; lastName : ( ) => Promise < AsyncIterator < String > > ; phone : ( ) => Promise < AsyncIterator < String > > ; } export interface AggregateUser { count : Int ; } export interface AggregateUserPromise extends Promise < AggregateUser > , Fragmentable { count : ( ) => Promise < Int > ; } export interface AggregateUserSubscription extends Promise < AsyncIterator < AggregateUser > > , Fragmentable { count : ( ) => Promise < AsyncIterator < Int > > ; } export interface PasswordMetaSubscriptionPayload { mutation : MutationType ; node : PasswordMeta ; updatedFields : String [ ] ; previousValues : PasswordMetaPreviousValues ; } export interface PasswordMetaSubscriptionPayloadPromise extends Promise < PasswordMetaSubscriptionPayload > , Fragmentable { mutation : ( ) => Promise < MutationType > ; node : < T = PasswordMetaPromise > ( ) => T ; updatedFields : ( ) => Promise < String [ ] > ; previousValues : < T = PasswordMetaPreviousValuesPromise > ( ) => T ; } export interface PasswordMetaSubscriptionPayloadSubscription extends Promise < AsyncIterator < PasswordMetaSubscriptionPayload > > , Fragmentable { mutation : ( ) => Promise < AsyncIterator < MutationType > > ; node : < T = PasswordMetaSubscription > ( ) => T ; updatedFields : ( ) => Promise < AsyncIterator < String [ ] > > ; previousValues : < T = PasswordMetaPreviousValuesSubscription > ( ) => T ; } export interface PasswordMeta extends Node { id : ID_Output ; createdAt : DateTimeOutput ; updatedAt : DateTimeOutput ; resetToken : String ; } export interface PasswordMetaPromise extends Promise < PasswordMeta > , Fragmentable , Node { id : ( ) => Promise < ID_Output > ; createdAt : ( ) => Promise < DateTimeOutput > ; updatedAt : ( ) => Promise < DateTimeOutput > ; resetToken : ( ) => Promise < String > ; } export interface PasswordMetaSubscription extends Promise < AsyncIterator < PasswordMeta > > , Fragmentable , Node { id : ( ) => Promise < AsyncIterator < ID_Output > > ; createdAt : ( ) => Promise < AsyncIterator < DateTimeOutput > > ; updatedAt : ( ) => Promise < AsyncIterator < DateTimeOutput > > ; resetToken : ( ) => Promise < AsyncIterator < String > > ; } export interface PasswordMetaNullablePromise extends Promise < PasswordMeta | null > , Fragmentable , Node { id : ( ) => Promise < ID_Output > ; createdAt : ( ) => Promise < DateTimeOutput > ; updatedAt : ( ) => Promise < DateTimeOutput > ; resetToken : ( ) => Promise < String > ; } export interface PageInfo { hasNextPage : Boolean ; hasPreviousPage : Boolean ; startCursor ? : String ; endCursor ? : String ; } export interface PageInfoPromise extends Promise < PageInfo > , Fragmentable { hasNextPage : ( ) => Promise < Boolean > ; hasPreviousPage : ( ) => Promise < Boolean > ; startCursor : ( ) => Promise < String > ; endCursor : ( ) => Promise < String > ; } export interface PageInfoSubscription extends Promise < AsyncIterator < PageInfo > > , Fragmentable { hasNextPage : ( ) => Promise < AsyncIterator < Boolean > > ; hasPreviousPage : ( ) => Promise < AsyncIterator < Boolean > > ; startCursor : ( ) => Promise < AsyncIterator < String > > ; endCursor : ( ) => Promise < AsyncIterator < String > > ; } export type Int = number ; export type Long = string ; export type ID_Input = string | number ; export type ID_Output = string ; export type DateTimeInput = Date | string ; export type DateTimeOutput = string ; export type Boolean = boolean ; export type String = string ; /**
 * Model Metadata
 */ export const models = [ { name : "UserRole" , embedded : false } , { name : "User" , embedded : false } , { name : "PasswordMeta" , embedded : false } ] ; /**
 * Type Defs
 */ export const Prisma = makePrismaClientClass < ClientConstructor < Prisma > > ( { typeDefs , models , endpoint : `${ process . env [ "PRISMA_ENDPOINT" ] }` , secret : `${ process . env [ "PRISMA_SECRET" ] }` } ) ; export const prisma = new Prisma ( ) ;