Files
DentalManagementE/packages/db/generated/prisma/index.d.ts
2025-05-08 21:27:29 +05:30

6674 lines
230 KiB
TypeScript

/**
* Client
**/
import * as runtime from './runtime/library.js';
import $Types = runtime.Types // general types
import $Public = runtime.Types.Public
import $Utils = runtime.Types.Utils
import $Extensions = runtime.Types.Extensions
import $Result = runtime.Types.Result
export type PrismaPromise<T> = $Public.PrismaPromise<T>
/**
* Model User
*
*/
export type User = $Result.DefaultSelection<Prisma.$UserPayload>
/**
* Model Patient
*
*/
export type Patient = $Result.DefaultSelection<Prisma.$PatientPayload>
/**
* Model Appointment
*
*/
export type Appointment = $Result.DefaultSelection<Prisma.$AppointmentPayload>
/**
* ## Prisma Client ʲˢ
*
* Type-safe database client for TypeScript & Node.js
* @example
* ```
* const prisma = new PrismaClient()
* // Fetch zero or more Users
* const users = await prisma.user.findMany()
* ```
*
*
* Read more in our [docs](https://www.prisma.io/docs/reference/tools-and-interfaces/prisma-client).
*/
export class PrismaClient<
ClientOptions extends Prisma.PrismaClientOptions = Prisma.PrismaClientOptions,
U = 'log' extends keyof ClientOptions ? ClientOptions['log'] extends Array<Prisma.LogLevel | Prisma.LogDefinition> ? Prisma.GetEvents<ClientOptions['log']> : never : never,
ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs
> {
[K: symbol]: { types: Prisma.TypeMap<ExtArgs>['other'] }
/**
* ## Prisma Client ʲˢ
*
* Type-safe database client for TypeScript & Node.js
* @example
* ```
* const prisma = new PrismaClient()
* // Fetch zero or more Users
* const users = await prisma.user.findMany()
* ```
*
*
* Read more in our [docs](https://www.prisma.io/docs/reference/tools-and-interfaces/prisma-client).
*/
constructor(optionsArg ?: Prisma.Subset<ClientOptions, Prisma.PrismaClientOptions>);
$on<V extends U>(eventType: V, callback: (event: V extends 'query' ? Prisma.QueryEvent : Prisma.LogEvent) => void): PrismaClient;
/**
* Connect with the database
*/
$connect(): $Utils.JsPromise<void>;
/**
* Disconnect from the database
*/
$disconnect(): $Utils.JsPromise<void>;
/**
* Add a middleware
* @deprecated since 4.16.0. For new code, prefer client extensions instead.
* @see https://pris.ly/d/extensions
*/
$use(cb: Prisma.Middleware): void
/**
* Executes a prepared raw query and returns the number of affected rows.
* @example
* ```
* const result = await prisma.$executeRaw`UPDATE User SET cool = ${true} WHERE email = ${'user@email.com'};`
* ```
*
* Read more in our [docs](https://www.prisma.io/docs/reference/tools-and-interfaces/prisma-client/raw-database-access).
*/
$executeRaw<T = unknown>(query: TemplateStringsArray | Prisma.Sql, ...values: any[]): Prisma.PrismaPromise<number>;
/**
* Executes a raw query and returns the number of affected rows.
* Susceptible to SQL injections, see documentation.
* @example
* ```
* const result = await prisma.$executeRawUnsafe('UPDATE User SET cool = $1 WHERE email = $2 ;', true, 'user@email.com')
* ```
*
* Read more in our [docs](https://www.prisma.io/docs/reference/tools-and-interfaces/prisma-client/raw-database-access).
*/
$executeRawUnsafe<T = unknown>(query: string, ...values: any[]): Prisma.PrismaPromise<number>;
/**
* Performs a prepared raw query and returns the `SELECT` data.
* @example
* ```
* const result = await prisma.$queryRaw`SELECT * FROM User WHERE id = ${1} OR email = ${'user@email.com'};`
* ```
*
* Read more in our [docs](https://www.prisma.io/docs/reference/tools-and-interfaces/prisma-client/raw-database-access).
*/
$queryRaw<T = unknown>(query: TemplateStringsArray | Prisma.Sql, ...values: any[]): Prisma.PrismaPromise<T>;
/**
* Performs a raw query and returns the `SELECT` data.
* Susceptible to SQL injections, see documentation.
* @example
* ```
* const result = await prisma.$queryRawUnsafe('SELECT * FROM User WHERE id = $1 OR email = $2;', 1, 'user@email.com')
* ```
*
* Read more in our [docs](https://www.prisma.io/docs/reference/tools-and-interfaces/prisma-client/raw-database-access).
*/
$queryRawUnsafe<T = unknown>(query: string, ...values: any[]): Prisma.PrismaPromise<T>;
/**
* Allows the running of a sequence of read/write operations that are guaranteed to either succeed or fail as a whole.
* @example
* ```
* const [george, bob, alice] = await prisma.$transaction([
* prisma.user.create({ data: { name: 'George' } }),
* prisma.user.create({ data: { name: 'Bob' } }),
* prisma.user.create({ data: { name: 'Alice' } }),
* ])
* ```
*
* Read more in our [docs](https://www.prisma.io/docs/concepts/components/prisma-client/transactions).
*/
$transaction<P extends Prisma.PrismaPromise<any>[]>(arg: [...P], options?: { isolationLevel?: Prisma.TransactionIsolationLevel }): $Utils.JsPromise<runtime.Types.Utils.UnwrapTuple<P>>
$transaction<R>(fn: (prisma: Omit<PrismaClient, runtime.ITXClientDenyList>) => $Utils.JsPromise<R>, options?: { maxWait?: number, timeout?: number, isolationLevel?: Prisma.TransactionIsolationLevel }): $Utils.JsPromise<R>
$extends: $Extensions.ExtendsHook<"extends", Prisma.TypeMapCb<ClientOptions>, ExtArgs, $Utils.Call<Prisma.TypeMapCb<ClientOptions>, {
extArgs: ExtArgs
}>>
/**
* `prisma.user`: Exposes CRUD operations for the **User** model.
* Example usage:
* ```ts
* // Fetch zero or more Users
* const users = await prisma.user.findMany()
* ```
*/
get user(): Prisma.UserDelegate<ExtArgs, ClientOptions>;
/**
* `prisma.patient`: Exposes CRUD operations for the **Patient** model.
* Example usage:
* ```ts
* // Fetch zero or more Patients
* const patients = await prisma.patient.findMany()
* ```
*/
get patient(): Prisma.PatientDelegate<ExtArgs, ClientOptions>;
/**
* `prisma.appointment`: Exposes CRUD operations for the **Appointment** model.
* Example usage:
* ```ts
* // Fetch zero or more Appointments
* const appointments = await prisma.appointment.findMany()
* ```
*/
get appointment(): Prisma.AppointmentDelegate<ExtArgs, ClientOptions>;
}
export namespace Prisma {
export import DMMF = runtime.DMMF
export type PrismaPromise<T> = $Public.PrismaPromise<T>
/**
* Validator
*/
export import validator = runtime.Public.validator
/**
* Prisma Errors
*/
export import PrismaClientKnownRequestError = runtime.PrismaClientKnownRequestError
export import PrismaClientUnknownRequestError = runtime.PrismaClientUnknownRequestError
export import PrismaClientRustPanicError = runtime.PrismaClientRustPanicError
export import PrismaClientInitializationError = runtime.PrismaClientInitializationError
export import PrismaClientValidationError = runtime.PrismaClientValidationError
/**
* Re-export of sql-template-tag
*/
export import sql = runtime.sqltag
export import empty = runtime.empty
export import join = runtime.join
export import raw = runtime.raw
export import Sql = runtime.Sql
/**
* Decimal.js
*/
export import Decimal = runtime.Decimal
export type DecimalJsLike = runtime.DecimalJsLike
/**
* Metrics
*/
export type Metrics = runtime.Metrics
export type Metric<T> = runtime.Metric<T>
export type MetricHistogram = runtime.MetricHistogram
export type MetricHistogramBucket = runtime.MetricHistogramBucket
/**
* Extensions
*/
export import Extension = $Extensions.UserArgs
export import getExtensionContext = runtime.Extensions.getExtensionContext
export import Args = $Public.Args
export import Payload = $Public.Payload
export import Result = $Public.Result
export import Exact = $Public.Exact
/**
* Prisma Client JS version: 6.7.0
* Query Engine version: 3cff47a7f5d65c3ea74883f1d736e41d68ce91ed
*/
export type PrismaVersion = {
client: string
}
export const prismaVersion: PrismaVersion
/**
* Utility Types
*/
export import JsonObject = runtime.JsonObject
export import JsonArray = runtime.JsonArray
export import JsonValue = runtime.JsonValue
export import InputJsonObject = runtime.InputJsonObject
export import InputJsonArray = runtime.InputJsonArray
export import InputJsonValue = runtime.InputJsonValue
/**
* Types of the values used to represent different kinds of `null` values when working with JSON fields.
*
* @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-on-a-json-field
*/
namespace NullTypes {
/**
* Type of `Prisma.DbNull`.
*
* You cannot use other instances of this class. Please use the `Prisma.DbNull` value.
*
* @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-on-a-json-field
*/
class DbNull {
private DbNull: never
private constructor()
}
/**
* Type of `Prisma.JsonNull`.
*
* You cannot use other instances of this class. Please use the `Prisma.JsonNull` value.
*
* @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-on-a-json-field
*/
class JsonNull {
private JsonNull: never
private constructor()
}
/**
* Type of `Prisma.AnyNull`.
*
* You cannot use other instances of this class. Please use the `Prisma.AnyNull` value.
*
* @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-on-a-json-field
*/
class AnyNull {
private AnyNull: never
private constructor()
}
}
/**
* Helper for filtering JSON entries that have `null` on the database (empty on the db)
*
* @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-on-a-json-field
*/
export const DbNull: NullTypes.DbNull
/**
* Helper for filtering JSON entries that have JSON `null` values (not empty on the db)
*
* @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-on-a-json-field
*/
export const JsonNull: NullTypes.JsonNull
/**
* Helper for filtering JSON entries that are `Prisma.DbNull` or `Prisma.JsonNull`
*
* @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-on-a-json-field
*/
export const AnyNull: NullTypes.AnyNull
type SelectAndInclude = {
select: any
include: any
}
type SelectAndOmit = {
select: any
omit: any
}
/**
* Get the type of the value, that the Promise holds.
*/
export type PromiseType<T extends PromiseLike<any>> = T extends PromiseLike<infer U> ? U : T;
/**
* Get the return type of a function which returns a Promise.
*/
export type PromiseReturnType<T extends (...args: any) => $Utils.JsPromise<any>> = PromiseType<ReturnType<T>>
/**
* From T, pick a set of properties whose keys are in the union K
*/
type Prisma__Pick<T, K extends keyof T> = {
[P in K]: T[P];
};
export type Enumerable<T> = T | Array<T>;
export type RequiredKeys<T> = {
[K in keyof T]-?: {} extends Prisma__Pick<T, K> ? never : K
}[keyof T]
export type TruthyKeys<T> = keyof {
[K in keyof T as T[K] extends false | undefined | null ? never : K]: K
}
export type TrueKeys<T> = TruthyKeys<Prisma__Pick<T, RequiredKeys<T>>>
/**
* Subset
* @desc From `T` pick properties that exist in `U`. Simple version of Intersection
*/
export type Subset<T, U> = {
[key in keyof T]: key extends keyof U ? T[key] : never;
};
/**
* SelectSubset
* @desc From `T` pick properties that exist in `U`. Simple version of Intersection.
* Additionally, it validates, if both select and include are present. If the case, it errors.
*/
export type SelectSubset<T, U> = {
[key in keyof T]: key extends keyof U ? T[key] : never
} &
(T extends SelectAndInclude
? 'Please either choose `select` or `include`.'
: T extends SelectAndOmit
? 'Please either choose `select` or `omit`.'
: {})
/**
* Subset + Intersection
* @desc From `T` pick properties that exist in `U` and intersect `K`
*/
export type SubsetIntersection<T, U, K> = {
[key in keyof T]: key extends keyof U ? T[key] : never
} &
K
type Without<T, U> = { [P in Exclude<keyof T, keyof U>]?: never };
/**
* XOR is needed to have a real mutually exclusive union type
* https://stackoverflow.com/questions/42123407/does-typescript-support-mutually-exclusive-types
*/
type XOR<T, U> =
T extends object ?
U extends object ?
(Without<T, U> & U) | (Without<U, T> & T)
: U : T
/**
* Is T a Record?
*/
type IsObject<T extends any> = T extends Array<any>
? False
: T extends Date
? False
: T extends Uint8Array
? False
: T extends BigInt
? False
: T extends object
? True
: False
/**
* If it's T[], return T
*/
export type UnEnumerate<T extends unknown> = T extends Array<infer U> ? U : T
/**
* From ts-toolbelt
*/
type __Either<O extends object, K extends Key> = Omit<O, K> &
{
// Merge all but K
[P in K]: Prisma__Pick<O, P & keyof O> // With K possibilities
}[K]
type EitherStrict<O extends object, K extends Key> = Strict<__Either<O, K>>
type EitherLoose<O extends object, K extends Key> = ComputeRaw<__Either<O, K>>
type _Either<
O extends object,
K extends Key,
strict extends Boolean
> = {
1: EitherStrict<O, K>
0: EitherLoose<O, K>
}[strict]
type Either<
O extends object,
K extends Key,
strict extends Boolean = 1
> = O extends unknown ? _Either<O, K, strict> : never
export type Union = any
type PatchUndefined<O extends object, O1 extends object> = {
[K in keyof O]: O[K] extends undefined ? At<O1, K> : O[K]
} & {}
/** Helper Types for "Merge" **/
export type IntersectOf<U extends Union> = (
U extends unknown ? (k: U) => void : never
) extends (k: infer I) => void
? I
: never
export type Overwrite<O extends object, O1 extends object> = {
[K in keyof O]: K extends keyof O1 ? O1[K] : O[K];
} & {};
type _Merge<U extends object> = IntersectOf<Overwrite<U, {
[K in keyof U]-?: At<U, K>;
}>>;
type Key = string | number | symbol;
type AtBasic<O extends object, K extends Key> = K extends keyof O ? O[K] : never;
type AtStrict<O extends object, K extends Key> = O[K & keyof O];
type AtLoose<O extends object, K extends Key> = O extends unknown ? AtStrict<O, K> : never;
export type At<O extends object, K extends Key, strict extends Boolean = 1> = {
1: AtStrict<O, K>;
0: AtLoose<O, K>;
}[strict];
export type ComputeRaw<A extends any> = A extends Function ? A : {
[K in keyof A]: A[K];
} & {};
export type OptionalFlat<O> = {
[K in keyof O]?: O[K];
} & {};
type _Record<K extends keyof any, T> = {
[P in K]: T;
};
// cause typescript not to expand types and preserve names
type NoExpand<T> = T extends unknown ? T : never;
// this type assumes the passed object is entirely optional
type AtLeast<O extends object, K extends string> = NoExpand<
O extends unknown
? | (K extends keyof O ? { [P in K]: O[P] } & O : O)
| {[P in keyof O as P extends K ? P : never]-?: O[P]} & O
: never>;
type _Strict<U, _U = U> = U extends unknown ? U & OptionalFlat<_Record<Exclude<Keys<_U>, keyof U>, never>> : never;
export type Strict<U extends object> = ComputeRaw<_Strict<U>>;
/** End Helper Types for "Merge" **/
export type Merge<U extends object> = ComputeRaw<_Merge<Strict<U>>>;
/**
A [[Boolean]]
*/
export type Boolean = True | False
// /**
// 1
// */
export type True = 1
/**
0
*/
export type False = 0
export type Not<B extends Boolean> = {
0: 1
1: 0
}[B]
export type Extends<A1 extends any, A2 extends any> = [A1] extends [never]
? 0 // anything `never` is false
: A1 extends A2
? 1
: 0
export type Has<U extends Union, U1 extends Union> = Not<
Extends<Exclude<U1, U>, U1>
>
export type Or<B1 extends Boolean, B2 extends Boolean> = {
0: {
0: 0
1: 1
}
1: {
0: 1
1: 1
}
}[B1][B2]
export type Keys<U extends Union> = U extends unknown ? keyof U : never
type Cast<A, B> = A extends B ? A : B;
export const type: unique symbol;
/**
* Used by group by
*/
export type GetScalarType<T, O> = O extends object ? {
[P in keyof T]: P extends keyof O
? O[P]
: never
} : never
type FieldPaths<
T,
U = Omit<T, '_avg' | '_sum' | '_count' | '_min' | '_max'>
> = IsObject<T> extends True ? U : T
type GetHavingFields<T> = {
[K in keyof T]: Or<
Or<Extends<'OR', K>, Extends<'AND', K>>,
Extends<'NOT', K>
> extends True
? // infer is only needed to not hit TS limit
// based on the brilliant idea of Pierre-Antoine Mills
// https://github.com/microsoft/TypeScript/issues/30188#issuecomment-478938437
T[K] extends infer TK
? GetHavingFields<UnEnumerate<TK> extends object ? Merge<UnEnumerate<TK>> : never>
: never
: {} extends FieldPaths<T[K]>
? never
: K
}[keyof T]
/**
* Convert tuple to union
*/
type _TupleToUnion<T> = T extends (infer E)[] ? E : never
type TupleToUnion<K extends readonly any[]> = _TupleToUnion<K>
type MaybeTupleToUnion<T> = T extends any[] ? TupleToUnion<T> : T
/**
* Like `Pick`, but additionally can also accept an array of keys
*/
type PickEnumerable<T, K extends Enumerable<keyof T> | keyof T> = Prisma__Pick<T, MaybeTupleToUnion<K>>
/**
* Exclude all keys with underscores
*/
type ExcludeUnderscoreKeys<T extends string> = T extends `_${string}` ? never : T
export type FieldRef<Model, FieldType> = runtime.FieldRef<Model, FieldType>
type FieldRefInputType<Model, FieldType> = Model extends never ? never : FieldRef<Model, FieldType>
export const ModelName: {
User: 'User',
Patient: 'Patient',
Appointment: 'Appointment'
};
export type ModelName = (typeof ModelName)[keyof typeof ModelName]
export type Datasources = {
db?: Datasource
}
interface TypeMapCb<ClientOptions = {}> extends $Utils.Fn<{extArgs: $Extensions.InternalArgs }, $Utils.Record<string, any>> {
returns: Prisma.TypeMap<this['params']['extArgs'], ClientOptions extends { omit: infer OmitOptions } ? OmitOptions : {}>
}
export type TypeMap<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, GlobalOmitOptions = {}> = {
globalOmitOptions: {
omit: GlobalOmitOptions
}
meta: {
modelProps: "user" | "patient" | "appointment"
txIsolationLevel: Prisma.TransactionIsolationLevel
}
model: {
User: {
payload: Prisma.$UserPayload<ExtArgs>
fields: Prisma.UserFieldRefs
operations: {
findUnique: {
args: Prisma.UserFindUniqueArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$UserPayload> | null
}
findUniqueOrThrow: {
args: Prisma.UserFindUniqueOrThrowArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$UserPayload>
}
findFirst: {
args: Prisma.UserFindFirstArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$UserPayload> | null
}
findFirstOrThrow: {
args: Prisma.UserFindFirstOrThrowArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$UserPayload>
}
findMany: {
args: Prisma.UserFindManyArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$UserPayload>[]
}
create: {
args: Prisma.UserCreateArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$UserPayload>
}
createMany: {
args: Prisma.UserCreateManyArgs<ExtArgs>
result: BatchPayload
}
createManyAndReturn: {
args: Prisma.UserCreateManyAndReturnArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$UserPayload>[]
}
delete: {
args: Prisma.UserDeleteArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$UserPayload>
}
update: {
args: Prisma.UserUpdateArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$UserPayload>
}
deleteMany: {
args: Prisma.UserDeleteManyArgs<ExtArgs>
result: BatchPayload
}
updateMany: {
args: Prisma.UserUpdateManyArgs<ExtArgs>
result: BatchPayload
}
updateManyAndReturn: {
args: Prisma.UserUpdateManyAndReturnArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$UserPayload>[]
}
upsert: {
args: Prisma.UserUpsertArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$UserPayload>
}
aggregate: {
args: Prisma.UserAggregateArgs<ExtArgs>
result: $Utils.Optional<AggregateUser>
}
groupBy: {
args: Prisma.UserGroupByArgs<ExtArgs>
result: $Utils.Optional<UserGroupByOutputType>[]
}
count: {
args: Prisma.UserCountArgs<ExtArgs>
result: $Utils.Optional<UserCountAggregateOutputType> | number
}
}
}
Patient: {
payload: Prisma.$PatientPayload<ExtArgs>
fields: Prisma.PatientFieldRefs
operations: {
findUnique: {
args: Prisma.PatientFindUniqueArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$PatientPayload> | null
}
findUniqueOrThrow: {
args: Prisma.PatientFindUniqueOrThrowArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$PatientPayload>
}
findFirst: {
args: Prisma.PatientFindFirstArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$PatientPayload> | null
}
findFirstOrThrow: {
args: Prisma.PatientFindFirstOrThrowArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$PatientPayload>
}
findMany: {
args: Prisma.PatientFindManyArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$PatientPayload>[]
}
create: {
args: Prisma.PatientCreateArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$PatientPayload>
}
createMany: {
args: Prisma.PatientCreateManyArgs<ExtArgs>
result: BatchPayload
}
createManyAndReturn: {
args: Prisma.PatientCreateManyAndReturnArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$PatientPayload>[]
}
delete: {
args: Prisma.PatientDeleteArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$PatientPayload>
}
update: {
args: Prisma.PatientUpdateArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$PatientPayload>
}
deleteMany: {
args: Prisma.PatientDeleteManyArgs<ExtArgs>
result: BatchPayload
}
updateMany: {
args: Prisma.PatientUpdateManyArgs<ExtArgs>
result: BatchPayload
}
updateManyAndReturn: {
args: Prisma.PatientUpdateManyAndReturnArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$PatientPayload>[]
}
upsert: {
args: Prisma.PatientUpsertArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$PatientPayload>
}
aggregate: {
args: Prisma.PatientAggregateArgs<ExtArgs>
result: $Utils.Optional<AggregatePatient>
}
groupBy: {
args: Prisma.PatientGroupByArgs<ExtArgs>
result: $Utils.Optional<PatientGroupByOutputType>[]
}
count: {
args: Prisma.PatientCountArgs<ExtArgs>
result: $Utils.Optional<PatientCountAggregateOutputType> | number
}
}
}
Appointment: {
payload: Prisma.$AppointmentPayload<ExtArgs>
fields: Prisma.AppointmentFieldRefs
operations: {
findUnique: {
args: Prisma.AppointmentFindUniqueArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$AppointmentPayload> | null
}
findUniqueOrThrow: {
args: Prisma.AppointmentFindUniqueOrThrowArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$AppointmentPayload>
}
findFirst: {
args: Prisma.AppointmentFindFirstArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$AppointmentPayload> | null
}
findFirstOrThrow: {
args: Prisma.AppointmentFindFirstOrThrowArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$AppointmentPayload>
}
findMany: {
args: Prisma.AppointmentFindManyArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$AppointmentPayload>[]
}
create: {
args: Prisma.AppointmentCreateArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$AppointmentPayload>
}
createMany: {
args: Prisma.AppointmentCreateManyArgs<ExtArgs>
result: BatchPayload
}
createManyAndReturn: {
args: Prisma.AppointmentCreateManyAndReturnArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$AppointmentPayload>[]
}
delete: {
args: Prisma.AppointmentDeleteArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$AppointmentPayload>
}
update: {
args: Prisma.AppointmentUpdateArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$AppointmentPayload>
}
deleteMany: {
args: Prisma.AppointmentDeleteManyArgs<ExtArgs>
result: BatchPayload
}
updateMany: {
args: Prisma.AppointmentUpdateManyArgs<ExtArgs>
result: BatchPayload
}
updateManyAndReturn: {
args: Prisma.AppointmentUpdateManyAndReturnArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$AppointmentPayload>[]
}
upsert: {
args: Prisma.AppointmentUpsertArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$AppointmentPayload>
}
aggregate: {
args: Prisma.AppointmentAggregateArgs<ExtArgs>
result: $Utils.Optional<AggregateAppointment>
}
groupBy: {
args: Prisma.AppointmentGroupByArgs<ExtArgs>
result: $Utils.Optional<AppointmentGroupByOutputType>[]
}
count: {
args: Prisma.AppointmentCountArgs<ExtArgs>
result: $Utils.Optional<AppointmentCountAggregateOutputType> | number
}
}
}
}
} & {
other: {
payload: any
operations: {
$executeRaw: {
args: [query: TemplateStringsArray | Prisma.Sql, ...values: any[]],
result: any
}
$executeRawUnsafe: {
args: [query: string, ...values: any[]],
result: any
}
$queryRaw: {
args: [query: TemplateStringsArray | Prisma.Sql, ...values: any[]],
result: any
}
$queryRawUnsafe: {
args: [query: string, ...values: any[]],
result: any
}
}
}
}
export const defineExtension: $Extensions.ExtendsHook<"define", Prisma.TypeMapCb, $Extensions.DefaultArgs>
export type DefaultPrismaClient = PrismaClient
export type ErrorFormat = 'pretty' | 'colorless' | 'minimal'
export interface PrismaClientOptions {
/**
* Overwrites the datasource url from your schema.prisma file
*/
datasources?: Datasources
/**
* Overwrites the datasource url from your schema.prisma file
*/
datasourceUrl?: string
/**
* @default "colorless"
*/
errorFormat?: ErrorFormat
/**
* @example
* ```
* // Defaults to stdout
* log: ['query', 'info', 'warn', 'error']
*
* // Emit as events
* log: [
* { emit: 'stdout', level: 'query' },
* { emit: 'stdout', level: 'info' },
* { emit: 'stdout', level: 'warn' }
* { emit: 'stdout', level: 'error' }
* ]
* ```
* Read more in our [docs](https://www.prisma.io/docs/reference/tools-and-interfaces/prisma-client/logging#the-log-option).
*/
log?: (LogLevel | LogDefinition)[]
/**
* The default values for transactionOptions
* maxWait ?= 2000
* timeout ?= 5000
*/
transactionOptions?: {
maxWait?: number
timeout?: number
isolationLevel?: Prisma.TransactionIsolationLevel
}
/**
* Global configuration for omitting model fields by default.
*
* @example
* ```
* const prisma = new PrismaClient({
* omit: {
* user: {
* password: true
* }
* }
* })
* ```
*/
omit?: Prisma.GlobalOmitConfig
}
export type GlobalOmitConfig = {
user?: UserOmit
patient?: PatientOmit
appointment?: AppointmentOmit
}
/* Types for Logging */
export type LogLevel = 'info' | 'query' | 'warn' | 'error'
export type LogDefinition = {
level: LogLevel
emit: 'stdout' | 'event'
}
export type GetLogType<T extends LogLevel | LogDefinition> = T extends LogDefinition ? T['emit'] extends 'event' ? T['level'] : never : never
export type GetEvents<T extends any> = T extends Array<LogLevel | LogDefinition> ?
GetLogType<T[0]> | GetLogType<T[1]> | GetLogType<T[2]> | GetLogType<T[3]>
: never
export type QueryEvent = {
timestamp: Date
query: string
params: string
duration: number
target: string
}
export type LogEvent = {
timestamp: Date
message: string
target: string
}
/* End Types for Logging */
export type PrismaAction =
| 'findUnique'
| 'findUniqueOrThrow'
| 'findMany'
| 'findFirst'
| 'findFirstOrThrow'
| 'create'
| 'createMany'
| 'createManyAndReturn'
| 'update'
| 'updateMany'
| 'updateManyAndReturn'
| 'upsert'
| 'delete'
| 'deleteMany'
| 'executeRaw'
| 'queryRaw'
| 'aggregate'
| 'count'
| 'runCommandRaw'
| 'findRaw'
| 'groupBy'
/**
* These options are being passed into the middleware as "params"
*/
export type MiddlewareParams = {
model?: ModelName
action: PrismaAction
args: any
dataPath: string[]
runInTransaction: boolean
}
/**
* The `T` type makes sure, that the `return proceed` is not forgotten in the middleware implementation
*/
export type Middleware<T = any> = (
params: MiddlewareParams,
next: (params: MiddlewareParams) => $Utils.JsPromise<T>,
) => $Utils.JsPromise<T>
// tested in getLogLevel.test.ts
export function getLogLevel(log: Array<LogLevel | LogDefinition>): LogLevel | undefined;
/**
* `PrismaClient` proxy available in interactive transactions.
*/
export type TransactionClient = Omit<Prisma.DefaultPrismaClient, runtime.ITXClientDenyList>
export type Datasource = {
url?: string
}
/**
* Count Types
*/
/**
* Count Type UserCountOutputType
*/
export type UserCountOutputType = {
patients: number
appointments: number
}
export type UserCountOutputTypeSelect<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
patients?: boolean | UserCountOutputTypeCountPatientsArgs
appointments?: boolean | UserCountOutputTypeCountAppointmentsArgs
}
// Custom InputTypes
/**
* UserCountOutputType without action
*/
export type UserCountOutputTypeDefaultArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the UserCountOutputType
*/
select?: UserCountOutputTypeSelect<ExtArgs> | null
}
/**
* UserCountOutputType without action
*/
export type UserCountOutputTypeCountPatientsArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
where?: PatientWhereInput
}
/**
* UserCountOutputType without action
*/
export type UserCountOutputTypeCountAppointmentsArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
where?: AppointmentWhereInput
}
/**
* Count Type PatientCountOutputType
*/
export type PatientCountOutputType = {
appointments: number
}
export type PatientCountOutputTypeSelect<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
appointments?: boolean | PatientCountOutputTypeCountAppointmentsArgs
}
// Custom InputTypes
/**
* PatientCountOutputType without action
*/
export type PatientCountOutputTypeDefaultArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the PatientCountOutputType
*/
select?: PatientCountOutputTypeSelect<ExtArgs> | null
}
/**
* PatientCountOutputType without action
*/
export type PatientCountOutputTypeCountAppointmentsArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
where?: AppointmentWhereInput
}
/**
* Models
*/
/**
* Model User
*/
export type AggregateUser = {
_count: UserCountAggregateOutputType | null
_avg: UserAvgAggregateOutputType | null
_sum: UserSumAggregateOutputType | null
_min: UserMinAggregateOutputType | null
_max: UserMaxAggregateOutputType | null
}
export type UserAvgAggregateOutputType = {
id: number | null
}
export type UserSumAggregateOutputType = {
id: number | null
}
export type UserMinAggregateOutputType = {
id: number | null
username: string | null
password: string | null
}
export type UserMaxAggregateOutputType = {
id: number | null
username: string | null
password: string | null
}
export type UserCountAggregateOutputType = {
id: number
username: number
password: number
_all: number
}
export type UserAvgAggregateInputType = {
id?: true
}
export type UserSumAggregateInputType = {
id?: true
}
export type UserMinAggregateInputType = {
id?: true
username?: true
password?: true
}
export type UserMaxAggregateInputType = {
id?: true
username?: true
password?: true
}
export type UserCountAggregateInputType = {
id?: true
username?: true
password?: true
_all?: true
}
export type UserAggregateArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Filter which User to aggregate.
*/
where?: UserWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of Users to fetch.
*/
orderBy?: UserOrderByWithRelationInput | UserOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the start position
*/
cursor?: UserWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` Users from the position of the cursor.
*/
take?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Skip the first `n` Users.
*/
skip?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Count returned Users
**/
_count?: true | UserCountAggregateInputType
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Select which fields to average
**/
_avg?: UserAvgAggregateInputType
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Select which fields to sum
**/
_sum?: UserSumAggregateInputType
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Select which fields to find the minimum value
**/
_min?: UserMinAggregateInputType
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Select which fields to find the maximum value
**/
_max?: UserMaxAggregateInputType
}
export type GetUserAggregateType<T extends UserAggregateArgs> = {
[P in keyof T & keyof AggregateUser]: P extends '_count' | 'count'
? T[P] extends true
? number
: GetScalarType<T[P], AggregateUser[P]>
: GetScalarType<T[P], AggregateUser[P]>
}
export type UserGroupByArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
where?: UserWhereInput
orderBy?: UserOrderByWithAggregationInput | UserOrderByWithAggregationInput[]
by: UserScalarFieldEnum[] | UserScalarFieldEnum
having?: UserScalarWhereWithAggregatesInput
take?: number
skip?: number
_count?: UserCountAggregateInputType | true
_avg?: UserAvgAggregateInputType
_sum?: UserSumAggregateInputType
_min?: UserMinAggregateInputType
_max?: UserMaxAggregateInputType
}
export type UserGroupByOutputType = {
id: number
username: string
password: string
_count: UserCountAggregateOutputType | null
_avg: UserAvgAggregateOutputType | null
_sum: UserSumAggregateOutputType | null
_min: UserMinAggregateOutputType | null
_max: UserMaxAggregateOutputType | null
}
type GetUserGroupByPayload<T extends UserGroupByArgs> = Prisma.PrismaPromise<
Array<
PickEnumerable<UserGroupByOutputType, T['by']> &
{
[P in ((keyof T) & (keyof UserGroupByOutputType))]: P extends '_count'
? T[P] extends boolean
? number
: GetScalarType<T[P], UserGroupByOutputType[P]>
: GetScalarType<T[P], UserGroupByOutputType[P]>
}
>
>
export type UserSelect<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
id?: boolean
username?: boolean
password?: boolean
patients?: boolean | User$patientsArgs<ExtArgs>
appointments?: boolean | User$appointmentsArgs<ExtArgs>
_count?: boolean | UserCountOutputTypeDefaultArgs<ExtArgs>
}, ExtArgs["result"]["user"]>
export type UserSelectCreateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
id?: boolean
username?: boolean
password?: boolean
}, ExtArgs["result"]["user"]>
export type UserSelectUpdateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
id?: boolean
username?: boolean
password?: boolean
}, ExtArgs["result"]["user"]>
export type UserSelectScalar = {
id?: boolean
username?: boolean
password?: boolean
}
export type UserOmit<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetOmit<"id" | "username" | "password", ExtArgs["result"]["user"]>
export type UserInclude<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
patients?: boolean | User$patientsArgs<ExtArgs>
appointments?: boolean | User$appointmentsArgs<ExtArgs>
_count?: boolean | UserCountOutputTypeDefaultArgs<ExtArgs>
}
export type UserIncludeCreateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {}
export type UserIncludeUpdateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {}
export type $UserPayload<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
name: "User"
objects: {
patients: Prisma.$PatientPayload<ExtArgs>[]
appointments: Prisma.$AppointmentPayload<ExtArgs>[]
}
scalars: $Extensions.GetPayloadResult<{
id: number
username: string
password: string
}, ExtArgs["result"]["user"]>
composites: {}
}
type UserGetPayload<S extends boolean | null | undefined | UserDefaultArgs> = $Result.GetResult<Prisma.$UserPayload, S>
type UserCountArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> =
Omit<UserFindManyArgs, 'select' | 'include' | 'distinct' | 'omit'> & {
select?: UserCountAggregateInputType | true
}
export interface UserDelegate<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, GlobalOmitOptions = {}> {
[K: symbol]: { types: Prisma.TypeMap<ExtArgs>['model']['User'], meta: { name: 'User' } }
/**
* Find zero or one User that matches the filter.
* @param {UserFindUniqueArgs} args - Arguments to find a User
* @example
* // Get one User
* const user = await prisma.user.findUnique({
* where: {
* // ... provide filter here
* }
* })
*/
findUnique<T extends UserFindUniqueArgs>(args: SelectSubset<T, UserFindUniqueArgs<ExtArgs>>): Prisma__UserClient<$Result.GetResult<Prisma.$UserPayload<ExtArgs>, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
/**
* Find one User that matches the filter or throw an error with `error.code='P2025'`
* if no matches were found.
* @param {UserFindUniqueOrThrowArgs} args - Arguments to find a User
* @example
* // Get one User
* const user = await prisma.user.findUniqueOrThrow({
* where: {
* // ... provide filter here
* }
* })
*/
findUniqueOrThrow<T extends UserFindUniqueOrThrowArgs>(args: SelectSubset<T, UserFindUniqueOrThrowArgs<ExtArgs>>): Prisma__UserClient<$Result.GetResult<Prisma.$UserPayload<ExtArgs>, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Find the first User that matches the filter.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {UserFindFirstArgs} args - Arguments to find a User
* @example
* // Get one User
* const user = await prisma.user.findFirst({
* where: {
* // ... provide filter here
* }
* })
*/
findFirst<T extends UserFindFirstArgs>(args?: SelectSubset<T, UserFindFirstArgs<ExtArgs>>): Prisma__UserClient<$Result.GetResult<Prisma.$UserPayload<ExtArgs>, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
/**
* Find the first User that matches the filter or
* throw `PrismaKnownClientError` with `P2025` code if no matches were found.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {UserFindFirstOrThrowArgs} args - Arguments to find a User
* @example
* // Get one User
* const user = await prisma.user.findFirstOrThrow({
* where: {
* // ... provide filter here
* }
* })
*/
findFirstOrThrow<T extends UserFindFirstOrThrowArgs>(args?: SelectSubset<T, UserFindFirstOrThrowArgs<ExtArgs>>): Prisma__UserClient<$Result.GetResult<Prisma.$UserPayload<ExtArgs>, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Find zero or more Users that matches the filter.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {UserFindManyArgs} args - Arguments to filter and select certain fields only.
* @example
* // Get all Users
* const users = await prisma.user.findMany()
*
* // Get first 10 Users
* const users = await prisma.user.findMany({ take: 10 })
*
* // Only select the `id`
* const userWithIdOnly = await prisma.user.findMany({ select: { id: true } })
*
*/
findMany<T extends UserFindManyArgs>(args?: SelectSubset<T, UserFindManyArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$UserPayload<ExtArgs>, T, "findMany", GlobalOmitOptions>>
/**
* Create a User.
* @param {UserCreateArgs} args - Arguments to create a User.
* @example
* // Create one User
* const User = await prisma.user.create({
* data: {
* // ... data to create a User
* }
* })
*
*/
create<T extends UserCreateArgs>(args: SelectSubset<T, UserCreateArgs<ExtArgs>>): Prisma__UserClient<$Result.GetResult<Prisma.$UserPayload<ExtArgs>, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Create many Users.
* @param {UserCreateManyArgs} args - Arguments to create many Users.
* @example
* // Create many Users
* const user = await prisma.user.createMany({
* data: [
* // ... provide data here
* ]
* })
*
*/
createMany<T extends UserCreateManyArgs>(args?: SelectSubset<T, UserCreateManyArgs<ExtArgs>>): Prisma.PrismaPromise<BatchPayload>
/**
* Create many Users and returns the data saved in the database.
* @param {UserCreateManyAndReturnArgs} args - Arguments to create many Users.
* @example
* // Create many Users
* const user = await prisma.user.createManyAndReturn({
* data: [
* // ... provide data here
* ]
* })
*
* // Create many Users and only return the `id`
* const userWithIdOnly = await prisma.user.createManyAndReturn({
* select: { id: true },
* data: [
* // ... provide data here
* ]
* })
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
*
*/
createManyAndReturn<T extends UserCreateManyAndReturnArgs>(args?: SelectSubset<T, UserCreateManyAndReturnArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$UserPayload<ExtArgs>, T, "createManyAndReturn", GlobalOmitOptions>>
/**
* Delete a User.
* @param {UserDeleteArgs} args - Arguments to delete one User.
* @example
* // Delete one User
* const User = await prisma.user.delete({
* where: {
* // ... filter to delete one User
* }
* })
*
*/
delete<T extends UserDeleteArgs>(args: SelectSubset<T, UserDeleteArgs<ExtArgs>>): Prisma__UserClient<$Result.GetResult<Prisma.$UserPayload<ExtArgs>, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Update one User.
* @param {UserUpdateArgs} args - Arguments to update one User.
* @example
* // Update one User
* const user = await prisma.user.update({
* where: {
* // ... provide filter here
* },
* data: {
* // ... provide data here
* }
* })
*
*/
update<T extends UserUpdateArgs>(args: SelectSubset<T, UserUpdateArgs<ExtArgs>>): Prisma__UserClient<$Result.GetResult<Prisma.$UserPayload<ExtArgs>, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Delete zero or more Users.
* @param {UserDeleteManyArgs} args - Arguments to filter Users to delete.
* @example
* // Delete a few Users
* const { count } = await prisma.user.deleteMany({
* where: {
* // ... provide filter here
* }
* })
*
*/
deleteMany<T extends UserDeleteManyArgs>(args?: SelectSubset<T, UserDeleteManyArgs<ExtArgs>>): Prisma.PrismaPromise<BatchPayload>
/**
* Update zero or more Users.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {UserUpdateManyArgs} args - Arguments to update one or more rows.
* @example
* // Update many Users
* const user = await prisma.user.updateMany({
* where: {
* // ... provide filter here
* },
* data: {
* // ... provide data here
* }
* })
*
*/
updateMany<T extends UserUpdateManyArgs>(args: SelectSubset<T, UserUpdateManyArgs<ExtArgs>>): Prisma.PrismaPromise<BatchPayload>
/**
* Update zero or more Users and returns the data updated in the database.
* @param {UserUpdateManyAndReturnArgs} args - Arguments to update many Users.
* @example
* // Update many Users
* const user = await prisma.user.updateManyAndReturn({
* where: {
* // ... provide filter here
* },
* data: [
* // ... provide data here
* ]
* })
*
* // Update zero or more Users and only return the `id`
* const userWithIdOnly = await prisma.user.updateManyAndReturn({
* select: { id: true },
* where: {
* // ... provide filter here
* },
* data: [
* // ... provide data here
* ]
* })
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
*
*/
updateManyAndReturn<T extends UserUpdateManyAndReturnArgs>(args: SelectSubset<T, UserUpdateManyAndReturnArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$UserPayload<ExtArgs>, T, "updateManyAndReturn", GlobalOmitOptions>>
/**
* Create or update one User.
* @param {UserUpsertArgs} args - Arguments to update or create a User.
* @example
* // Update or create a User
* const user = await prisma.user.upsert({
* create: {
* // ... data to create a User
* },
* update: {
* // ... in case it already exists, update
* },
* where: {
* // ... the filter for the User we want to update
* }
* })
*/
upsert<T extends UserUpsertArgs>(args: SelectSubset<T, UserUpsertArgs<ExtArgs>>): Prisma__UserClient<$Result.GetResult<Prisma.$UserPayload<ExtArgs>, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Count the number of Users.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {UserCountArgs} args - Arguments to filter Users to count.
* @example
* // Count the number of Users
* const count = await prisma.user.count({
* where: {
* // ... the filter for the Users we want to count
* }
* })
**/
count<T extends UserCountArgs>(
args?: Subset<T, UserCountArgs>,
): Prisma.PrismaPromise<
T extends $Utils.Record<'select', any>
? T['select'] extends true
? number
: GetScalarType<T['select'], UserCountAggregateOutputType>
: number
>
/**
* Allows you to perform aggregations operations on a User.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {UserAggregateArgs} args - Select which aggregations you would like to apply and on what fields.
* @example
* // Ordered by age ascending
* // Where email contains prisma.io
* // Limited to the 10 users
* const aggregations = await prisma.user.aggregate({
* _avg: {
* age: true,
* },
* where: {
* email: {
* contains: "prisma.io",
* },
* },
* orderBy: {
* age: "asc",
* },
* take: 10,
* })
**/
aggregate<T extends UserAggregateArgs>(args: Subset<T, UserAggregateArgs>): Prisma.PrismaPromise<GetUserAggregateType<T>>
/**
* Group by User.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {UserGroupByArgs} args - Group by arguments.
* @example
* // Group by city, order by createdAt, get count
* const result = await prisma.user.groupBy({
* by: ['city', 'createdAt'],
* orderBy: {
* createdAt: true
* },
* _count: {
* _all: true
* },
* })
*
**/
groupBy<
T extends UserGroupByArgs,
HasSelectOrTake extends Or<
Extends<'skip', Keys<T>>,
Extends<'take', Keys<T>>
>,
OrderByArg extends True extends HasSelectOrTake
? { orderBy: UserGroupByArgs['orderBy'] }
: { orderBy?: UserGroupByArgs['orderBy'] },
OrderFields extends ExcludeUnderscoreKeys<Keys<MaybeTupleToUnion<T['orderBy']>>>,
ByFields extends MaybeTupleToUnion<T['by']>,
ByValid extends Has<ByFields, OrderFields>,
HavingFields extends GetHavingFields<T['having']>,
HavingValid extends Has<ByFields, HavingFields>,
ByEmpty extends T['by'] extends never[] ? True : False,
InputErrors extends ByEmpty extends True
? `Error: "by" must not be empty.`
: HavingValid extends False
? {
[P in HavingFields]: P extends ByFields
? never
: P extends string
? `Error: Field "${P}" used in "having" needs to be provided in "by".`
: [
Error,
'Field ',
P,
` in "having" needs to be provided in "by"`,
]
}[HavingFields]
: 'take' extends Keys<T>
? 'orderBy' extends Keys<T>
? ByValid extends True
? {}
: {
[P in OrderFields]: P extends ByFields
? never
: `Error: Field "${P}" in "orderBy" needs to be provided in "by"`
}[OrderFields]
: 'Error: If you provide "take", you also need to provide "orderBy"'
: 'skip' extends Keys<T>
? 'orderBy' extends Keys<T>
? ByValid extends True
? {}
: {
[P in OrderFields]: P extends ByFields
? never
: `Error: Field "${P}" in "orderBy" needs to be provided in "by"`
}[OrderFields]
: 'Error: If you provide "skip", you also need to provide "orderBy"'
: ByValid extends True
? {}
: {
[P in OrderFields]: P extends ByFields
? never
: `Error: Field "${P}" in "orderBy" needs to be provided in "by"`
}[OrderFields]
>(args: SubsetIntersection<T, UserGroupByArgs, OrderByArg> & InputErrors): {} extends InputErrors ? GetUserGroupByPayload<T> : Prisma.PrismaPromise<InputErrors>
/**
* Fields of the User model
*/
readonly fields: UserFieldRefs;
}
/**
* The delegate class that acts as a "Promise-like" for User.
* Why is this prefixed with `Prisma__`?
* Because we want to prevent naming conflicts as mentioned in
* https://github.com/prisma/prisma-client-js/issues/707
*/
export interface Prisma__UserClient<T, Null = never, ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, GlobalOmitOptions = {}> extends Prisma.PrismaPromise<T> {
readonly [Symbol.toStringTag]: "PrismaPromise"
patients<T extends User$patientsArgs<ExtArgs> = {}>(args?: Subset<T, User$patientsArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$PatientPayload<ExtArgs>, T, "findMany", GlobalOmitOptions> | Null>
appointments<T extends User$appointmentsArgs<ExtArgs> = {}>(args?: Subset<T, User$appointmentsArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$AppointmentPayload<ExtArgs>, T, "findMany", GlobalOmitOptions> | Null>
/**
* Attaches callbacks for the resolution and/or rejection of the Promise.
* @param onfulfilled The callback to execute when the Promise is resolved.
* @param onrejected The callback to execute when the Promise is rejected.
* @returns A Promise for the completion of which ever callback is executed.
*/
then<TResult1 = T, TResult2 = never>(onfulfilled?: ((value: T) => TResult1 | PromiseLike<TResult1>) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike<TResult2>) | undefined | null): $Utils.JsPromise<TResult1 | TResult2>
/**
* Attaches a callback for only the rejection of the Promise.
* @param onrejected The callback to execute when the Promise is rejected.
* @returns A Promise for the completion of the callback.
*/
catch<TResult = never>(onrejected?: ((reason: any) => TResult | PromiseLike<TResult>) | undefined | null): $Utils.JsPromise<T | TResult>
/**
* Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The
* resolved value cannot be modified from the callback.
* @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected).
* @returns A Promise for the completion of the callback.
*/
finally(onfinally?: (() => void) | undefined | null): $Utils.JsPromise<T>
}
/**
* Fields of the User model
*/
interface UserFieldRefs {
readonly id: FieldRef<"User", 'Int'>
readonly username: FieldRef<"User", 'String'>
readonly password: FieldRef<"User", 'String'>
}
// Custom InputTypes
/**
* User findUnique
*/
export type UserFindUniqueArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the User
*/
select?: UserSelect<ExtArgs> | null
/**
* Omit specific fields from the User
*/
omit?: UserOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: UserInclude<ExtArgs> | null
/**
* Filter, which User to fetch.
*/
where: UserWhereUniqueInput
}
/**
* User findUniqueOrThrow
*/
export type UserFindUniqueOrThrowArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the User
*/
select?: UserSelect<ExtArgs> | null
/**
* Omit specific fields from the User
*/
omit?: UserOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: UserInclude<ExtArgs> | null
/**
* Filter, which User to fetch.
*/
where: UserWhereUniqueInput
}
/**
* User findFirst
*/
export type UserFindFirstArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the User
*/
select?: UserSelect<ExtArgs> | null
/**
* Omit specific fields from the User
*/
omit?: UserOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: UserInclude<ExtArgs> | null
/**
* Filter, which User to fetch.
*/
where?: UserWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of Users to fetch.
*/
orderBy?: UserOrderByWithRelationInput | UserOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the position for searching for Users.
*/
cursor?: UserWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` Users from the position of the cursor.
*/
take?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Skip the first `n` Users.
*/
skip?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
*
* Filter by unique combinations of Users.
*/
distinct?: UserScalarFieldEnum | UserScalarFieldEnum[]
}
/**
* User findFirstOrThrow
*/
export type UserFindFirstOrThrowArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the User
*/
select?: UserSelect<ExtArgs> | null
/**
* Omit specific fields from the User
*/
omit?: UserOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: UserInclude<ExtArgs> | null
/**
* Filter, which User to fetch.
*/
where?: UserWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of Users to fetch.
*/
orderBy?: UserOrderByWithRelationInput | UserOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the position for searching for Users.
*/
cursor?: UserWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` Users from the position of the cursor.
*/
take?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Skip the first `n` Users.
*/
skip?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
*
* Filter by unique combinations of Users.
*/
distinct?: UserScalarFieldEnum | UserScalarFieldEnum[]
}
/**
* User findMany
*/
export type UserFindManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the User
*/
select?: UserSelect<ExtArgs> | null
/**
* Omit specific fields from the User
*/
omit?: UserOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: UserInclude<ExtArgs> | null
/**
* Filter, which Users to fetch.
*/
where?: UserWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of Users to fetch.
*/
orderBy?: UserOrderByWithRelationInput | UserOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the position for listing Users.
*/
cursor?: UserWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` Users from the position of the cursor.
*/
take?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Skip the first `n` Users.
*/
skip?: number
distinct?: UserScalarFieldEnum | UserScalarFieldEnum[]
}
/**
* User create
*/
export type UserCreateArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the User
*/
select?: UserSelect<ExtArgs> | null
/**
* Omit specific fields from the User
*/
omit?: UserOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: UserInclude<ExtArgs> | null
/**
* The data needed to create a User.
*/
data: XOR<UserCreateInput, UserUncheckedCreateInput>
}
/**
* User createMany
*/
export type UserCreateManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* The data used to create many Users.
*/
data: UserCreateManyInput | UserCreateManyInput[]
skipDuplicates?: boolean
}
/**
* User createManyAndReturn
*/
export type UserCreateManyAndReturnArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the User
*/
select?: UserSelectCreateManyAndReturn<ExtArgs> | null
/**
* Omit specific fields from the User
*/
omit?: UserOmit<ExtArgs> | null
/**
* The data used to create many Users.
*/
data: UserCreateManyInput | UserCreateManyInput[]
skipDuplicates?: boolean
}
/**
* User update
*/
export type UserUpdateArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the User
*/
select?: UserSelect<ExtArgs> | null
/**
* Omit specific fields from the User
*/
omit?: UserOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: UserInclude<ExtArgs> | null
/**
* The data needed to update a User.
*/
data: XOR<UserUpdateInput, UserUncheckedUpdateInput>
/**
* Choose, which User to update.
*/
where: UserWhereUniqueInput
}
/**
* User updateMany
*/
export type UserUpdateManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* The data used to update Users.
*/
data: XOR<UserUpdateManyMutationInput, UserUncheckedUpdateManyInput>
/**
* Filter which Users to update
*/
where?: UserWhereInput
/**
* Limit how many Users to update.
*/
limit?: number
}
/**
* User updateManyAndReturn
*/
export type UserUpdateManyAndReturnArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the User
*/
select?: UserSelectUpdateManyAndReturn<ExtArgs> | null
/**
* Omit specific fields from the User
*/
omit?: UserOmit<ExtArgs> | null
/**
* The data used to update Users.
*/
data: XOR<UserUpdateManyMutationInput, UserUncheckedUpdateManyInput>
/**
* Filter which Users to update
*/
where?: UserWhereInput
/**
* Limit how many Users to update.
*/
limit?: number
}
/**
* User upsert
*/
export type UserUpsertArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the User
*/
select?: UserSelect<ExtArgs> | null
/**
* Omit specific fields from the User
*/
omit?: UserOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: UserInclude<ExtArgs> | null
/**
* The filter to search for the User to update in case it exists.
*/
where: UserWhereUniqueInput
/**
* In case the User found by the `where` argument doesn't exist, create a new User with this data.
*/
create: XOR<UserCreateInput, UserUncheckedCreateInput>
/**
* In case the User was found with the provided `where` argument, update it with this data.
*/
update: XOR<UserUpdateInput, UserUncheckedUpdateInput>
}
/**
* User delete
*/
export type UserDeleteArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the User
*/
select?: UserSelect<ExtArgs> | null
/**
* Omit specific fields from the User
*/
omit?: UserOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: UserInclude<ExtArgs> | null
/**
* Filter which User to delete.
*/
where: UserWhereUniqueInput
}
/**
* User deleteMany
*/
export type UserDeleteManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Filter which Users to delete
*/
where?: UserWhereInput
/**
* Limit how many Users to delete.
*/
limit?: number
}
/**
* User.patients
*/
export type User$patientsArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Patient
*/
select?: PatientSelect<ExtArgs> | null
/**
* Omit specific fields from the Patient
*/
omit?: PatientOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: PatientInclude<ExtArgs> | null
where?: PatientWhereInput
orderBy?: PatientOrderByWithRelationInput | PatientOrderByWithRelationInput[]
cursor?: PatientWhereUniqueInput
take?: number
skip?: number
distinct?: PatientScalarFieldEnum | PatientScalarFieldEnum[]
}
/**
* User.appointments
*/
export type User$appointmentsArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Appointment
*/
select?: AppointmentSelect<ExtArgs> | null
/**
* Omit specific fields from the Appointment
*/
omit?: AppointmentOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: AppointmentInclude<ExtArgs> | null
where?: AppointmentWhereInput
orderBy?: AppointmentOrderByWithRelationInput | AppointmentOrderByWithRelationInput[]
cursor?: AppointmentWhereUniqueInput
take?: number
skip?: number
distinct?: AppointmentScalarFieldEnum | AppointmentScalarFieldEnum[]
}
/**
* User without action
*/
export type UserDefaultArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the User
*/
select?: UserSelect<ExtArgs> | null
/**
* Omit specific fields from the User
*/
omit?: UserOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: UserInclude<ExtArgs> | null
}
/**
* Model Patient
*/
export type AggregatePatient = {
_count: PatientCountAggregateOutputType | null
_avg: PatientAvgAggregateOutputType | null
_sum: PatientSumAggregateOutputType | null
_min: PatientMinAggregateOutputType | null
_max: PatientMaxAggregateOutputType | null
}
export type PatientAvgAggregateOutputType = {
id: number | null
userId: number | null
}
export type PatientSumAggregateOutputType = {
id: number | null
userId: number | null
}
export type PatientMinAggregateOutputType = {
id: number | null
firstName: string | null
lastName: string | null
dateOfBirth: Date | null
gender: string | null
phone: string | null
email: string | null
address: string | null
city: string | null
zipCode: string | null
insuranceProvider: string | null
insuranceId: string | null
groupNumber: string | null
policyHolder: string | null
allergies: string | null
medicalConditions: string | null
status: string | null
userId: number | null
createdAt: Date | null
}
export type PatientMaxAggregateOutputType = {
id: number | null
firstName: string | null
lastName: string | null
dateOfBirth: Date | null
gender: string | null
phone: string | null
email: string | null
address: string | null
city: string | null
zipCode: string | null
insuranceProvider: string | null
insuranceId: string | null
groupNumber: string | null
policyHolder: string | null
allergies: string | null
medicalConditions: string | null
status: string | null
userId: number | null
createdAt: Date | null
}
export type PatientCountAggregateOutputType = {
id: number
firstName: number
lastName: number
dateOfBirth: number
gender: number
phone: number
email: number
address: number
city: number
zipCode: number
insuranceProvider: number
insuranceId: number
groupNumber: number
policyHolder: number
allergies: number
medicalConditions: number
status: number
userId: number
createdAt: number
_all: number
}
export type PatientAvgAggregateInputType = {
id?: true
userId?: true
}
export type PatientSumAggregateInputType = {
id?: true
userId?: true
}
export type PatientMinAggregateInputType = {
id?: true
firstName?: true
lastName?: true
dateOfBirth?: true
gender?: true
phone?: true
email?: true
address?: true
city?: true
zipCode?: true
insuranceProvider?: true
insuranceId?: true
groupNumber?: true
policyHolder?: true
allergies?: true
medicalConditions?: true
status?: true
userId?: true
createdAt?: true
}
export type PatientMaxAggregateInputType = {
id?: true
firstName?: true
lastName?: true
dateOfBirth?: true
gender?: true
phone?: true
email?: true
address?: true
city?: true
zipCode?: true
insuranceProvider?: true
insuranceId?: true
groupNumber?: true
policyHolder?: true
allergies?: true
medicalConditions?: true
status?: true
userId?: true
createdAt?: true
}
export type PatientCountAggregateInputType = {
id?: true
firstName?: true
lastName?: true
dateOfBirth?: true
gender?: true
phone?: true
email?: true
address?: true
city?: true
zipCode?: true
insuranceProvider?: true
insuranceId?: true
groupNumber?: true
policyHolder?: true
allergies?: true
medicalConditions?: true
status?: true
userId?: true
createdAt?: true
_all?: true
}
export type PatientAggregateArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Filter which Patient to aggregate.
*/
where?: PatientWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of Patients to fetch.
*/
orderBy?: PatientOrderByWithRelationInput | PatientOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the start position
*/
cursor?: PatientWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` Patients from the position of the cursor.
*/
take?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Skip the first `n` Patients.
*/
skip?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Count returned Patients
**/
_count?: true | PatientCountAggregateInputType
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Select which fields to average
**/
_avg?: PatientAvgAggregateInputType
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Select which fields to sum
**/
_sum?: PatientSumAggregateInputType
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Select which fields to find the minimum value
**/
_min?: PatientMinAggregateInputType
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Select which fields to find the maximum value
**/
_max?: PatientMaxAggregateInputType
}
export type GetPatientAggregateType<T extends PatientAggregateArgs> = {
[P in keyof T & keyof AggregatePatient]: P extends '_count' | 'count'
? T[P] extends true
? number
: GetScalarType<T[P], AggregatePatient[P]>
: GetScalarType<T[P], AggregatePatient[P]>
}
export type PatientGroupByArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
where?: PatientWhereInput
orderBy?: PatientOrderByWithAggregationInput | PatientOrderByWithAggregationInput[]
by: PatientScalarFieldEnum[] | PatientScalarFieldEnum
having?: PatientScalarWhereWithAggregatesInput
take?: number
skip?: number
_count?: PatientCountAggregateInputType | true
_avg?: PatientAvgAggregateInputType
_sum?: PatientSumAggregateInputType
_min?: PatientMinAggregateInputType
_max?: PatientMaxAggregateInputType
}
export type PatientGroupByOutputType = {
id: number
firstName: string
lastName: string
dateOfBirth: Date
gender: string
phone: string
email: string | null
address: string | null
city: string | null
zipCode: string | null
insuranceProvider: string | null
insuranceId: string | null
groupNumber: string | null
policyHolder: string | null
allergies: string | null
medicalConditions: string | null
status: string
userId: number
createdAt: Date
_count: PatientCountAggregateOutputType | null
_avg: PatientAvgAggregateOutputType | null
_sum: PatientSumAggregateOutputType | null
_min: PatientMinAggregateOutputType | null
_max: PatientMaxAggregateOutputType | null
}
type GetPatientGroupByPayload<T extends PatientGroupByArgs> = Prisma.PrismaPromise<
Array<
PickEnumerable<PatientGroupByOutputType, T['by']> &
{
[P in ((keyof T) & (keyof PatientGroupByOutputType))]: P extends '_count'
? T[P] extends boolean
? number
: GetScalarType<T[P], PatientGroupByOutputType[P]>
: GetScalarType<T[P], PatientGroupByOutputType[P]>
}
>
>
export type PatientSelect<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
id?: boolean
firstName?: boolean
lastName?: boolean
dateOfBirth?: boolean
gender?: boolean
phone?: boolean
email?: boolean
address?: boolean
city?: boolean
zipCode?: boolean
insuranceProvider?: boolean
insuranceId?: boolean
groupNumber?: boolean
policyHolder?: boolean
allergies?: boolean
medicalConditions?: boolean
status?: boolean
userId?: boolean
createdAt?: boolean
user?: boolean | UserDefaultArgs<ExtArgs>
appointments?: boolean | Patient$appointmentsArgs<ExtArgs>
_count?: boolean | PatientCountOutputTypeDefaultArgs<ExtArgs>
}, ExtArgs["result"]["patient"]>
export type PatientSelectCreateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
id?: boolean
firstName?: boolean
lastName?: boolean
dateOfBirth?: boolean
gender?: boolean
phone?: boolean
email?: boolean
address?: boolean
city?: boolean
zipCode?: boolean
insuranceProvider?: boolean
insuranceId?: boolean
groupNumber?: boolean
policyHolder?: boolean
allergies?: boolean
medicalConditions?: boolean
status?: boolean
userId?: boolean
createdAt?: boolean
user?: boolean | UserDefaultArgs<ExtArgs>
}, ExtArgs["result"]["patient"]>
export type PatientSelectUpdateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
id?: boolean
firstName?: boolean
lastName?: boolean
dateOfBirth?: boolean
gender?: boolean
phone?: boolean
email?: boolean
address?: boolean
city?: boolean
zipCode?: boolean
insuranceProvider?: boolean
insuranceId?: boolean
groupNumber?: boolean
policyHolder?: boolean
allergies?: boolean
medicalConditions?: boolean
status?: boolean
userId?: boolean
createdAt?: boolean
user?: boolean | UserDefaultArgs<ExtArgs>
}, ExtArgs["result"]["patient"]>
export type PatientSelectScalar = {
id?: boolean
firstName?: boolean
lastName?: boolean
dateOfBirth?: boolean
gender?: boolean
phone?: boolean
email?: boolean
address?: boolean
city?: boolean
zipCode?: boolean
insuranceProvider?: boolean
insuranceId?: boolean
groupNumber?: boolean
policyHolder?: boolean
allergies?: boolean
medicalConditions?: boolean
status?: boolean
userId?: boolean
createdAt?: boolean
}
export type PatientOmit<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetOmit<"id" | "firstName" | "lastName" | "dateOfBirth" | "gender" | "phone" | "email" | "address" | "city" | "zipCode" | "insuranceProvider" | "insuranceId" | "groupNumber" | "policyHolder" | "allergies" | "medicalConditions" | "status" | "userId" | "createdAt", ExtArgs["result"]["patient"]>
export type PatientInclude<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
user?: boolean | UserDefaultArgs<ExtArgs>
appointments?: boolean | Patient$appointmentsArgs<ExtArgs>
_count?: boolean | PatientCountOutputTypeDefaultArgs<ExtArgs>
}
export type PatientIncludeCreateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
user?: boolean | UserDefaultArgs<ExtArgs>
}
export type PatientIncludeUpdateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
user?: boolean | UserDefaultArgs<ExtArgs>
}
export type $PatientPayload<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
name: "Patient"
objects: {
user: Prisma.$UserPayload<ExtArgs>
appointments: Prisma.$AppointmentPayload<ExtArgs>[]
}
scalars: $Extensions.GetPayloadResult<{
id: number
firstName: string
lastName: string
dateOfBirth: Date
gender: string
phone: string
email: string | null
address: string | null
city: string | null
zipCode: string | null
insuranceProvider: string | null
insuranceId: string | null
groupNumber: string | null
policyHolder: string | null
allergies: string | null
medicalConditions: string | null
status: string
userId: number
createdAt: Date
}, ExtArgs["result"]["patient"]>
composites: {}
}
type PatientGetPayload<S extends boolean | null | undefined | PatientDefaultArgs> = $Result.GetResult<Prisma.$PatientPayload, S>
type PatientCountArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> =
Omit<PatientFindManyArgs, 'select' | 'include' | 'distinct' | 'omit'> & {
select?: PatientCountAggregateInputType | true
}
export interface PatientDelegate<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, GlobalOmitOptions = {}> {
[K: symbol]: { types: Prisma.TypeMap<ExtArgs>['model']['Patient'], meta: { name: 'Patient' } }
/**
* Find zero or one Patient that matches the filter.
* @param {PatientFindUniqueArgs} args - Arguments to find a Patient
* @example
* // Get one Patient
* const patient = await prisma.patient.findUnique({
* where: {
* // ... provide filter here
* }
* })
*/
findUnique<T extends PatientFindUniqueArgs>(args: SelectSubset<T, PatientFindUniqueArgs<ExtArgs>>): Prisma__PatientClient<$Result.GetResult<Prisma.$PatientPayload<ExtArgs>, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
/**
* Find one Patient that matches the filter or throw an error with `error.code='P2025'`
* if no matches were found.
* @param {PatientFindUniqueOrThrowArgs} args - Arguments to find a Patient
* @example
* // Get one Patient
* const patient = await prisma.patient.findUniqueOrThrow({
* where: {
* // ... provide filter here
* }
* })
*/
findUniqueOrThrow<T extends PatientFindUniqueOrThrowArgs>(args: SelectSubset<T, PatientFindUniqueOrThrowArgs<ExtArgs>>): Prisma__PatientClient<$Result.GetResult<Prisma.$PatientPayload<ExtArgs>, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Find the first Patient that matches the filter.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {PatientFindFirstArgs} args - Arguments to find a Patient
* @example
* // Get one Patient
* const patient = await prisma.patient.findFirst({
* where: {
* // ... provide filter here
* }
* })
*/
findFirst<T extends PatientFindFirstArgs>(args?: SelectSubset<T, PatientFindFirstArgs<ExtArgs>>): Prisma__PatientClient<$Result.GetResult<Prisma.$PatientPayload<ExtArgs>, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
/**
* Find the first Patient that matches the filter or
* throw `PrismaKnownClientError` with `P2025` code if no matches were found.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {PatientFindFirstOrThrowArgs} args - Arguments to find a Patient
* @example
* // Get one Patient
* const patient = await prisma.patient.findFirstOrThrow({
* where: {
* // ... provide filter here
* }
* })
*/
findFirstOrThrow<T extends PatientFindFirstOrThrowArgs>(args?: SelectSubset<T, PatientFindFirstOrThrowArgs<ExtArgs>>): Prisma__PatientClient<$Result.GetResult<Prisma.$PatientPayload<ExtArgs>, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Find zero or more Patients that matches the filter.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {PatientFindManyArgs} args - Arguments to filter and select certain fields only.
* @example
* // Get all Patients
* const patients = await prisma.patient.findMany()
*
* // Get first 10 Patients
* const patients = await prisma.patient.findMany({ take: 10 })
*
* // Only select the `id`
* const patientWithIdOnly = await prisma.patient.findMany({ select: { id: true } })
*
*/
findMany<T extends PatientFindManyArgs>(args?: SelectSubset<T, PatientFindManyArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$PatientPayload<ExtArgs>, T, "findMany", GlobalOmitOptions>>
/**
* Create a Patient.
* @param {PatientCreateArgs} args - Arguments to create a Patient.
* @example
* // Create one Patient
* const Patient = await prisma.patient.create({
* data: {
* // ... data to create a Patient
* }
* })
*
*/
create<T extends PatientCreateArgs>(args: SelectSubset<T, PatientCreateArgs<ExtArgs>>): Prisma__PatientClient<$Result.GetResult<Prisma.$PatientPayload<ExtArgs>, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Create many Patients.
* @param {PatientCreateManyArgs} args - Arguments to create many Patients.
* @example
* // Create many Patients
* const patient = await prisma.patient.createMany({
* data: [
* // ... provide data here
* ]
* })
*
*/
createMany<T extends PatientCreateManyArgs>(args?: SelectSubset<T, PatientCreateManyArgs<ExtArgs>>): Prisma.PrismaPromise<BatchPayload>
/**
* Create many Patients and returns the data saved in the database.
* @param {PatientCreateManyAndReturnArgs} args - Arguments to create many Patients.
* @example
* // Create many Patients
* const patient = await prisma.patient.createManyAndReturn({
* data: [
* // ... provide data here
* ]
* })
*
* // Create many Patients and only return the `id`
* const patientWithIdOnly = await prisma.patient.createManyAndReturn({
* select: { id: true },
* data: [
* // ... provide data here
* ]
* })
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
*
*/
createManyAndReturn<T extends PatientCreateManyAndReturnArgs>(args?: SelectSubset<T, PatientCreateManyAndReturnArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$PatientPayload<ExtArgs>, T, "createManyAndReturn", GlobalOmitOptions>>
/**
* Delete a Patient.
* @param {PatientDeleteArgs} args - Arguments to delete one Patient.
* @example
* // Delete one Patient
* const Patient = await prisma.patient.delete({
* where: {
* // ... filter to delete one Patient
* }
* })
*
*/
delete<T extends PatientDeleteArgs>(args: SelectSubset<T, PatientDeleteArgs<ExtArgs>>): Prisma__PatientClient<$Result.GetResult<Prisma.$PatientPayload<ExtArgs>, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Update one Patient.
* @param {PatientUpdateArgs} args - Arguments to update one Patient.
* @example
* // Update one Patient
* const patient = await prisma.patient.update({
* where: {
* // ... provide filter here
* },
* data: {
* // ... provide data here
* }
* })
*
*/
update<T extends PatientUpdateArgs>(args: SelectSubset<T, PatientUpdateArgs<ExtArgs>>): Prisma__PatientClient<$Result.GetResult<Prisma.$PatientPayload<ExtArgs>, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Delete zero or more Patients.
* @param {PatientDeleteManyArgs} args - Arguments to filter Patients to delete.
* @example
* // Delete a few Patients
* const { count } = await prisma.patient.deleteMany({
* where: {
* // ... provide filter here
* }
* })
*
*/
deleteMany<T extends PatientDeleteManyArgs>(args?: SelectSubset<T, PatientDeleteManyArgs<ExtArgs>>): Prisma.PrismaPromise<BatchPayload>
/**
* Update zero or more Patients.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {PatientUpdateManyArgs} args - Arguments to update one or more rows.
* @example
* // Update many Patients
* const patient = await prisma.patient.updateMany({
* where: {
* // ... provide filter here
* },
* data: {
* // ... provide data here
* }
* })
*
*/
updateMany<T extends PatientUpdateManyArgs>(args: SelectSubset<T, PatientUpdateManyArgs<ExtArgs>>): Prisma.PrismaPromise<BatchPayload>
/**
* Update zero or more Patients and returns the data updated in the database.
* @param {PatientUpdateManyAndReturnArgs} args - Arguments to update many Patients.
* @example
* // Update many Patients
* const patient = await prisma.patient.updateManyAndReturn({
* where: {
* // ... provide filter here
* },
* data: [
* // ... provide data here
* ]
* })
*
* // Update zero or more Patients and only return the `id`
* const patientWithIdOnly = await prisma.patient.updateManyAndReturn({
* select: { id: true },
* where: {
* // ... provide filter here
* },
* data: [
* // ... provide data here
* ]
* })
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
*
*/
updateManyAndReturn<T extends PatientUpdateManyAndReturnArgs>(args: SelectSubset<T, PatientUpdateManyAndReturnArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$PatientPayload<ExtArgs>, T, "updateManyAndReturn", GlobalOmitOptions>>
/**
* Create or update one Patient.
* @param {PatientUpsertArgs} args - Arguments to update or create a Patient.
* @example
* // Update or create a Patient
* const patient = await prisma.patient.upsert({
* create: {
* // ... data to create a Patient
* },
* update: {
* // ... in case it already exists, update
* },
* where: {
* // ... the filter for the Patient we want to update
* }
* })
*/
upsert<T extends PatientUpsertArgs>(args: SelectSubset<T, PatientUpsertArgs<ExtArgs>>): Prisma__PatientClient<$Result.GetResult<Prisma.$PatientPayload<ExtArgs>, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Count the number of Patients.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {PatientCountArgs} args - Arguments to filter Patients to count.
* @example
* // Count the number of Patients
* const count = await prisma.patient.count({
* where: {
* // ... the filter for the Patients we want to count
* }
* })
**/
count<T extends PatientCountArgs>(
args?: Subset<T, PatientCountArgs>,
): Prisma.PrismaPromise<
T extends $Utils.Record<'select', any>
? T['select'] extends true
? number
: GetScalarType<T['select'], PatientCountAggregateOutputType>
: number
>
/**
* Allows you to perform aggregations operations on a Patient.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {PatientAggregateArgs} args - Select which aggregations you would like to apply and on what fields.
* @example
* // Ordered by age ascending
* // Where email contains prisma.io
* // Limited to the 10 users
* const aggregations = await prisma.user.aggregate({
* _avg: {
* age: true,
* },
* where: {
* email: {
* contains: "prisma.io",
* },
* },
* orderBy: {
* age: "asc",
* },
* take: 10,
* })
**/
aggregate<T extends PatientAggregateArgs>(args: Subset<T, PatientAggregateArgs>): Prisma.PrismaPromise<GetPatientAggregateType<T>>
/**
* Group by Patient.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {PatientGroupByArgs} args - Group by arguments.
* @example
* // Group by city, order by createdAt, get count
* const result = await prisma.user.groupBy({
* by: ['city', 'createdAt'],
* orderBy: {
* createdAt: true
* },
* _count: {
* _all: true
* },
* })
*
**/
groupBy<
T extends PatientGroupByArgs,
HasSelectOrTake extends Or<
Extends<'skip', Keys<T>>,
Extends<'take', Keys<T>>
>,
OrderByArg extends True extends HasSelectOrTake
? { orderBy: PatientGroupByArgs['orderBy'] }
: { orderBy?: PatientGroupByArgs['orderBy'] },
OrderFields extends ExcludeUnderscoreKeys<Keys<MaybeTupleToUnion<T['orderBy']>>>,
ByFields extends MaybeTupleToUnion<T['by']>,
ByValid extends Has<ByFields, OrderFields>,
HavingFields extends GetHavingFields<T['having']>,
HavingValid extends Has<ByFields, HavingFields>,
ByEmpty extends T['by'] extends never[] ? True : False,
InputErrors extends ByEmpty extends True
? `Error: "by" must not be empty.`
: HavingValid extends False
? {
[P in HavingFields]: P extends ByFields
? never
: P extends string
? `Error: Field "${P}" used in "having" needs to be provided in "by".`
: [
Error,
'Field ',
P,
` in "having" needs to be provided in "by"`,
]
}[HavingFields]
: 'take' extends Keys<T>
? 'orderBy' extends Keys<T>
? ByValid extends True
? {}
: {
[P in OrderFields]: P extends ByFields
? never
: `Error: Field "${P}" in "orderBy" needs to be provided in "by"`
}[OrderFields]
: 'Error: If you provide "take", you also need to provide "orderBy"'
: 'skip' extends Keys<T>
? 'orderBy' extends Keys<T>
? ByValid extends True
? {}
: {
[P in OrderFields]: P extends ByFields
? never
: `Error: Field "${P}" in "orderBy" needs to be provided in "by"`
}[OrderFields]
: 'Error: If you provide "skip", you also need to provide "orderBy"'
: ByValid extends True
? {}
: {
[P in OrderFields]: P extends ByFields
? never
: `Error: Field "${P}" in "orderBy" needs to be provided in "by"`
}[OrderFields]
>(args: SubsetIntersection<T, PatientGroupByArgs, OrderByArg> & InputErrors): {} extends InputErrors ? GetPatientGroupByPayload<T> : Prisma.PrismaPromise<InputErrors>
/**
* Fields of the Patient model
*/
readonly fields: PatientFieldRefs;
}
/**
* The delegate class that acts as a "Promise-like" for Patient.
* Why is this prefixed with `Prisma__`?
* Because we want to prevent naming conflicts as mentioned in
* https://github.com/prisma/prisma-client-js/issues/707
*/
export interface Prisma__PatientClient<T, Null = never, ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, GlobalOmitOptions = {}> extends Prisma.PrismaPromise<T> {
readonly [Symbol.toStringTag]: "PrismaPromise"
user<T extends UserDefaultArgs<ExtArgs> = {}>(args?: Subset<T, UserDefaultArgs<ExtArgs>>): Prisma__UserClient<$Result.GetResult<Prisma.$UserPayload<ExtArgs>, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions>
appointments<T extends Patient$appointmentsArgs<ExtArgs> = {}>(args?: Subset<T, Patient$appointmentsArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$AppointmentPayload<ExtArgs>, T, "findMany", GlobalOmitOptions> | Null>
/**
* Attaches callbacks for the resolution and/or rejection of the Promise.
* @param onfulfilled The callback to execute when the Promise is resolved.
* @param onrejected The callback to execute when the Promise is rejected.
* @returns A Promise for the completion of which ever callback is executed.
*/
then<TResult1 = T, TResult2 = never>(onfulfilled?: ((value: T) => TResult1 | PromiseLike<TResult1>) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike<TResult2>) | undefined | null): $Utils.JsPromise<TResult1 | TResult2>
/**
* Attaches a callback for only the rejection of the Promise.
* @param onrejected The callback to execute when the Promise is rejected.
* @returns A Promise for the completion of the callback.
*/
catch<TResult = never>(onrejected?: ((reason: any) => TResult | PromiseLike<TResult>) | undefined | null): $Utils.JsPromise<T | TResult>
/**
* Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The
* resolved value cannot be modified from the callback.
* @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected).
* @returns A Promise for the completion of the callback.
*/
finally(onfinally?: (() => void) | undefined | null): $Utils.JsPromise<T>
}
/**
* Fields of the Patient model
*/
interface PatientFieldRefs {
readonly id: FieldRef<"Patient", 'Int'>
readonly firstName: FieldRef<"Patient", 'String'>
readonly lastName: FieldRef<"Patient", 'String'>
readonly dateOfBirth: FieldRef<"Patient", 'DateTime'>
readonly gender: FieldRef<"Patient", 'String'>
readonly phone: FieldRef<"Patient", 'String'>
readonly email: FieldRef<"Patient", 'String'>
readonly address: FieldRef<"Patient", 'String'>
readonly city: FieldRef<"Patient", 'String'>
readonly zipCode: FieldRef<"Patient", 'String'>
readonly insuranceProvider: FieldRef<"Patient", 'String'>
readonly insuranceId: FieldRef<"Patient", 'String'>
readonly groupNumber: FieldRef<"Patient", 'String'>
readonly policyHolder: FieldRef<"Patient", 'String'>
readonly allergies: FieldRef<"Patient", 'String'>
readonly medicalConditions: FieldRef<"Patient", 'String'>
readonly status: FieldRef<"Patient", 'String'>
readonly userId: FieldRef<"Patient", 'Int'>
readonly createdAt: FieldRef<"Patient", 'DateTime'>
}
// Custom InputTypes
/**
* Patient findUnique
*/
export type PatientFindUniqueArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Patient
*/
select?: PatientSelect<ExtArgs> | null
/**
* Omit specific fields from the Patient
*/
omit?: PatientOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: PatientInclude<ExtArgs> | null
/**
* Filter, which Patient to fetch.
*/
where: PatientWhereUniqueInput
}
/**
* Patient findUniqueOrThrow
*/
export type PatientFindUniqueOrThrowArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Patient
*/
select?: PatientSelect<ExtArgs> | null
/**
* Omit specific fields from the Patient
*/
omit?: PatientOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: PatientInclude<ExtArgs> | null
/**
* Filter, which Patient to fetch.
*/
where: PatientWhereUniqueInput
}
/**
* Patient findFirst
*/
export type PatientFindFirstArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Patient
*/
select?: PatientSelect<ExtArgs> | null
/**
* Omit specific fields from the Patient
*/
omit?: PatientOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: PatientInclude<ExtArgs> | null
/**
* Filter, which Patient to fetch.
*/
where?: PatientWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of Patients to fetch.
*/
orderBy?: PatientOrderByWithRelationInput | PatientOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the position for searching for Patients.
*/
cursor?: PatientWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` Patients from the position of the cursor.
*/
take?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Skip the first `n` Patients.
*/
skip?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
*
* Filter by unique combinations of Patients.
*/
distinct?: PatientScalarFieldEnum | PatientScalarFieldEnum[]
}
/**
* Patient findFirstOrThrow
*/
export type PatientFindFirstOrThrowArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Patient
*/
select?: PatientSelect<ExtArgs> | null
/**
* Omit specific fields from the Patient
*/
omit?: PatientOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: PatientInclude<ExtArgs> | null
/**
* Filter, which Patient to fetch.
*/
where?: PatientWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of Patients to fetch.
*/
orderBy?: PatientOrderByWithRelationInput | PatientOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the position for searching for Patients.
*/
cursor?: PatientWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` Patients from the position of the cursor.
*/
take?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Skip the first `n` Patients.
*/
skip?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
*
* Filter by unique combinations of Patients.
*/
distinct?: PatientScalarFieldEnum | PatientScalarFieldEnum[]
}
/**
* Patient findMany
*/
export type PatientFindManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Patient
*/
select?: PatientSelect<ExtArgs> | null
/**
* Omit specific fields from the Patient
*/
omit?: PatientOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: PatientInclude<ExtArgs> | null
/**
* Filter, which Patients to fetch.
*/
where?: PatientWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of Patients to fetch.
*/
orderBy?: PatientOrderByWithRelationInput | PatientOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the position for listing Patients.
*/
cursor?: PatientWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` Patients from the position of the cursor.
*/
take?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Skip the first `n` Patients.
*/
skip?: number
distinct?: PatientScalarFieldEnum | PatientScalarFieldEnum[]
}
/**
* Patient create
*/
export type PatientCreateArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Patient
*/
select?: PatientSelect<ExtArgs> | null
/**
* Omit specific fields from the Patient
*/
omit?: PatientOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: PatientInclude<ExtArgs> | null
/**
* The data needed to create a Patient.
*/
data: XOR<PatientCreateInput, PatientUncheckedCreateInput>
}
/**
* Patient createMany
*/
export type PatientCreateManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* The data used to create many Patients.
*/
data: PatientCreateManyInput | PatientCreateManyInput[]
skipDuplicates?: boolean
}
/**
* Patient createManyAndReturn
*/
export type PatientCreateManyAndReturnArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Patient
*/
select?: PatientSelectCreateManyAndReturn<ExtArgs> | null
/**
* Omit specific fields from the Patient
*/
omit?: PatientOmit<ExtArgs> | null
/**
* The data used to create many Patients.
*/
data: PatientCreateManyInput | PatientCreateManyInput[]
skipDuplicates?: boolean
/**
* Choose, which related nodes to fetch as well
*/
include?: PatientIncludeCreateManyAndReturn<ExtArgs> | null
}
/**
* Patient update
*/
export type PatientUpdateArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Patient
*/
select?: PatientSelect<ExtArgs> | null
/**
* Omit specific fields from the Patient
*/
omit?: PatientOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: PatientInclude<ExtArgs> | null
/**
* The data needed to update a Patient.
*/
data: XOR<PatientUpdateInput, PatientUncheckedUpdateInput>
/**
* Choose, which Patient to update.
*/
where: PatientWhereUniqueInput
}
/**
* Patient updateMany
*/
export type PatientUpdateManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* The data used to update Patients.
*/
data: XOR<PatientUpdateManyMutationInput, PatientUncheckedUpdateManyInput>
/**
* Filter which Patients to update
*/
where?: PatientWhereInput
/**
* Limit how many Patients to update.
*/
limit?: number
}
/**
* Patient updateManyAndReturn
*/
export type PatientUpdateManyAndReturnArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Patient
*/
select?: PatientSelectUpdateManyAndReturn<ExtArgs> | null
/**
* Omit specific fields from the Patient
*/
omit?: PatientOmit<ExtArgs> | null
/**
* The data used to update Patients.
*/
data: XOR<PatientUpdateManyMutationInput, PatientUncheckedUpdateManyInput>
/**
* Filter which Patients to update
*/
where?: PatientWhereInput
/**
* Limit how many Patients to update.
*/
limit?: number
/**
* Choose, which related nodes to fetch as well
*/
include?: PatientIncludeUpdateManyAndReturn<ExtArgs> | null
}
/**
* Patient upsert
*/
export type PatientUpsertArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Patient
*/
select?: PatientSelect<ExtArgs> | null
/**
* Omit specific fields from the Patient
*/
omit?: PatientOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: PatientInclude<ExtArgs> | null
/**
* The filter to search for the Patient to update in case it exists.
*/
where: PatientWhereUniqueInput
/**
* In case the Patient found by the `where` argument doesn't exist, create a new Patient with this data.
*/
create: XOR<PatientCreateInput, PatientUncheckedCreateInput>
/**
* In case the Patient was found with the provided `where` argument, update it with this data.
*/
update: XOR<PatientUpdateInput, PatientUncheckedUpdateInput>
}
/**
* Patient delete
*/
export type PatientDeleteArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Patient
*/
select?: PatientSelect<ExtArgs> | null
/**
* Omit specific fields from the Patient
*/
omit?: PatientOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: PatientInclude<ExtArgs> | null
/**
* Filter which Patient to delete.
*/
where: PatientWhereUniqueInput
}
/**
* Patient deleteMany
*/
export type PatientDeleteManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Filter which Patients to delete
*/
where?: PatientWhereInput
/**
* Limit how many Patients to delete.
*/
limit?: number
}
/**
* Patient.appointments
*/
export type Patient$appointmentsArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Appointment
*/
select?: AppointmentSelect<ExtArgs> | null
/**
* Omit specific fields from the Appointment
*/
omit?: AppointmentOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: AppointmentInclude<ExtArgs> | null
where?: AppointmentWhereInput
orderBy?: AppointmentOrderByWithRelationInput | AppointmentOrderByWithRelationInput[]
cursor?: AppointmentWhereUniqueInput
take?: number
skip?: number
distinct?: AppointmentScalarFieldEnum | AppointmentScalarFieldEnum[]
}
/**
* Patient without action
*/
export type PatientDefaultArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Patient
*/
select?: PatientSelect<ExtArgs> | null
/**
* Omit specific fields from the Patient
*/
omit?: PatientOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: PatientInclude<ExtArgs> | null
}
/**
* Model Appointment
*/
export type AggregateAppointment = {
_count: AppointmentCountAggregateOutputType | null
_avg: AppointmentAvgAggregateOutputType | null
_sum: AppointmentSumAggregateOutputType | null
_min: AppointmentMinAggregateOutputType | null
_max: AppointmentMaxAggregateOutputType | null
}
export type AppointmentAvgAggregateOutputType = {
id: number | null
patientId: number | null
userId: number | null
}
export type AppointmentSumAggregateOutputType = {
id: number | null
patientId: number | null
userId: number | null
}
export type AppointmentMinAggregateOutputType = {
id: number | null
patientId: number | null
userId: number | null
title: string | null
date: Date | null
startTime: Date | null
endTime: Date | null
type: string | null
notes: string | null
status: string | null
createdAt: Date | null
}
export type AppointmentMaxAggregateOutputType = {
id: number | null
patientId: number | null
userId: number | null
title: string | null
date: Date | null
startTime: Date | null
endTime: Date | null
type: string | null
notes: string | null
status: string | null
createdAt: Date | null
}
export type AppointmentCountAggregateOutputType = {
id: number
patientId: number
userId: number
title: number
date: number
startTime: number
endTime: number
type: number
notes: number
status: number
createdAt: number
_all: number
}
export type AppointmentAvgAggregateInputType = {
id?: true
patientId?: true
userId?: true
}
export type AppointmentSumAggregateInputType = {
id?: true
patientId?: true
userId?: true
}
export type AppointmentMinAggregateInputType = {
id?: true
patientId?: true
userId?: true
title?: true
date?: true
startTime?: true
endTime?: true
type?: true
notes?: true
status?: true
createdAt?: true
}
export type AppointmentMaxAggregateInputType = {
id?: true
patientId?: true
userId?: true
title?: true
date?: true
startTime?: true
endTime?: true
type?: true
notes?: true
status?: true
createdAt?: true
}
export type AppointmentCountAggregateInputType = {
id?: true
patientId?: true
userId?: true
title?: true
date?: true
startTime?: true
endTime?: true
type?: true
notes?: true
status?: true
createdAt?: true
_all?: true
}
export type AppointmentAggregateArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Filter which Appointment to aggregate.
*/
where?: AppointmentWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of Appointments to fetch.
*/
orderBy?: AppointmentOrderByWithRelationInput | AppointmentOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the start position
*/
cursor?: AppointmentWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` Appointments from the position of the cursor.
*/
take?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Skip the first `n` Appointments.
*/
skip?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Count returned Appointments
**/
_count?: true | AppointmentCountAggregateInputType
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Select which fields to average
**/
_avg?: AppointmentAvgAggregateInputType
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Select which fields to sum
**/
_sum?: AppointmentSumAggregateInputType
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Select which fields to find the minimum value
**/
_min?: AppointmentMinAggregateInputType
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Select which fields to find the maximum value
**/
_max?: AppointmentMaxAggregateInputType
}
export type GetAppointmentAggregateType<T extends AppointmentAggregateArgs> = {
[P in keyof T & keyof AggregateAppointment]: P extends '_count' | 'count'
? T[P] extends true
? number
: GetScalarType<T[P], AggregateAppointment[P]>
: GetScalarType<T[P], AggregateAppointment[P]>
}
export type AppointmentGroupByArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
where?: AppointmentWhereInput
orderBy?: AppointmentOrderByWithAggregationInput | AppointmentOrderByWithAggregationInput[]
by: AppointmentScalarFieldEnum[] | AppointmentScalarFieldEnum
having?: AppointmentScalarWhereWithAggregatesInput
take?: number
skip?: number
_count?: AppointmentCountAggregateInputType | true
_avg?: AppointmentAvgAggregateInputType
_sum?: AppointmentSumAggregateInputType
_min?: AppointmentMinAggregateInputType
_max?: AppointmentMaxAggregateInputType
}
export type AppointmentGroupByOutputType = {
id: number
patientId: number
userId: number
title: string
date: Date
startTime: Date
endTime: Date
type: string
notes: string | null
status: string
createdAt: Date
_count: AppointmentCountAggregateOutputType | null
_avg: AppointmentAvgAggregateOutputType | null
_sum: AppointmentSumAggregateOutputType | null
_min: AppointmentMinAggregateOutputType | null
_max: AppointmentMaxAggregateOutputType | null
}
type GetAppointmentGroupByPayload<T extends AppointmentGroupByArgs> = Prisma.PrismaPromise<
Array<
PickEnumerable<AppointmentGroupByOutputType, T['by']> &
{
[P in ((keyof T) & (keyof AppointmentGroupByOutputType))]: P extends '_count'
? T[P] extends boolean
? number
: GetScalarType<T[P], AppointmentGroupByOutputType[P]>
: GetScalarType<T[P], AppointmentGroupByOutputType[P]>
}
>
>
export type AppointmentSelect<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
id?: boolean
patientId?: boolean
userId?: boolean
title?: boolean
date?: boolean
startTime?: boolean
endTime?: boolean
type?: boolean
notes?: boolean
status?: boolean
createdAt?: boolean
patient?: boolean | PatientDefaultArgs<ExtArgs>
user?: boolean | UserDefaultArgs<ExtArgs>
}, ExtArgs["result"]["appointment"]>
export type AppointmentSelectCreateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
id?: boolean
patientId?: boolean
userId?: boolean
title?: boolean
date?: boolean
startTime?: boolean
endTime?: boolean
type?: boolean
notes?: boolean
status?: boolean
createdAt?: boolean
patient?: boolean | PatientDefaultArgs<ExtArgs>
user?: boolean | UserDefaultArgs<ExtArgs>
}, ExtArgs["result"]["appointment"]>
export type AppointmentSelectUpdateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
id?: boolean
patientId?: boolean
userId?: boolean
title?: boolean
date?: boolean
startTime?: boolean
endTime?: boolean
type?: boolean
notes?: boolean
status?: boolean
createdAt?: boolean
patient?: boolean | PatientDefaultArgs<ExtArgs>
user?: boolean | UserDefaultArgs<ExtArgs>
}, ExtArgs["result"]["appointment"]>
export type AppointmentSelectScalar = {
id?: boolean
patientId?: boolean
userId?: boolean
title?: boolean
date?: boolean
startTime?: boolean
endTime?: boolean
type?: boolean
notes?: boolean
status?: boolean
createdAt?: boolean
}
export type AppointmentOmit<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetOmit<"id" | "patientId" | "userId" | "title" | "date" | "startTime" | "endTime" | "type" | "notes" | "status" | "createdAt", ExtArgs["result"]["appointment"]>
export type AppointmentInclude<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
patient?: boolean | PatientDefaultArgs<ExtArgs>
user?: boolean | UserDefaultArgs<ExtArgs>
}
export type AppointmentIncludeCreateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
patient?: boolean | PatientDefaultArgs<ExtArgs>
user?: boolean | UserDefaultArgs<ExtArgs>
}
export type AppointmentIncludeUpdateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
patient?: boolean | PatientDefaultArgs<ExtArgs>
user?: boolean | UserDefaultArgs<ExtArgs>
}
export type $AppointmentPayload<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
name: "Appointment"
objects: {
patient: Prisma.$PatientPayload<ExtArgs>
user: Prisma.$UserPayload<ExtArgs>
}
scalars: $Extensions.GetPayloadResult<{
id: number
patientId: number
userId: number
title: string
date: Date
startTime: Date
endTime: Date
type: string
notes: string | null
status: string
createdAt: Date
}, ExtArgs["result"]["appointment"]>
composites: {}
}
type AppointmentGetPayload<S extends boolean | null | undefined | AppointmentDefaultArgs> = $Result.GetResult<Prisma.$AppointmentPayload, S>
type AppointmentCountArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> =
Omit<AppointmentFindManyArgs, 'select' | 'include' | 'distinct' | 'omit'> & {
select?: AppointmentCountAggregateInputType | true
}
export interface AppointmentDelegate<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, GlobalOmitOptions = {}> {
[K: symbol]: { types: Prisma.TypeMap<ExtArgs>['model']['Appointment'], meta: { name: 'Appointment' } }
/**
* Find zero or one Appointment that matches the filter.
* @param {AppointmentFindUniqueArgs} args - Arguments to find a Appointment
* @example
* // Get one Appointment
* const appointment = await prisma.appointment.findUnique({
* where: {
* // ... provide filter here
* }
* })
*/
findUnique<T extends AppointmentFindUniqueArgs>(args: SelectSubset<T, AppointmentFindUniqueArgs<ExtArgs>>): Prisma__AppointmentClient<$Result.GetResult<Prisma.$AppointmentPayload<ExtArgs>, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
/**
* Find one Appointment that matches the filter or throw an error with `error.code='P2025'`
* if no matches were found.
* @param {AppointmentFindUniqueOrThrowArgs} args - Arguments to find a Appointment
* @example
* // Get one Appointment
* const appointment = await prisma.appointment.findUniqueOrThrow({
* where: {
* // ... provide filter here
* }
* })
*/
findUniqueOrThrow<T extends AppointmentFindUniqueOrThrowArgs>(args: SelectSubset<T, AppointmentFindUniqueOrThrowArgs<ExtArgs>>): Prisma__AppointmentClient<$Result.GetResult<Prisma.$AppointmentPayload<ExtArgs>, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Find the first Appointment that matches the filter.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {AppointmentFindFirstArgs} args - Arguments to find a Appointment
* @example
* // Get one Appointment
* const appointment = await prisma.appointment.findFirst({
* where: {
* // ... provide filter here
* }
* })
*/
findFirst<T extends AppointmentFindFirstArgs>(args?: SelectSubset<T, AppointmentFindFirstArgs<ExtArgs>>): Prisma__AppointmentClient<$Result.GetResult<Prisma.$AppointmentPayload<ExtArgs>, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
/**
* Find the first Appointment that matches the filter or
* throw `PrismaKnownClientError` with `P2025` code if no matches were found.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {AppointmentFindFirstOrThrowArgs} args - Arguments to find a Appointment
* @example
* // Get one Appointment
* const appointment = await prisma.appointment.findFirstOrThrow({
* where: {
* // ... provide filter here
* }
* })
*/
findFirstOrThrow<T extends AppointmentFindFirstOrThrowArgs>(args?: SelectSubset<T, AppointmentFindFirstOrThrowArgs<ExtArgs>>): Prisma__AppointmentClient<$Result.GetResult<Prisma.$AppointmentPayload<ExtArgs>, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Find zero or more Appointments that matches the filter.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {AppointmentFindManyArgs} args - Arguments to filter and select certain fields only.
* @example
* // Get all Appointments
* const appointments = await prisma.appointment.findMany()
*
* // Get first 10 Appointments
* const appointments = await prisma.appointment.findMany({ take: 10 })
*
* // Only select the `id`
* const appointmentWithIdOnly = await prisma.appointment.findMany({ select: { id: true } })
*
*/
findMany<T extends AppointmentFindManyArgs>(args?: SelectSubset<T, AppointmentFindManyArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$AppointmentPayload<ExtArgs>, T, "findMany", GlobalOmitOptions>>
/**
* Create a Appointment.
* @param {AppointmentCreateArgs} args - Arguments to create a Appointment.
* @example
* // Create one Appointment
* const Appointment = await prisma.appointment.create({
* data: {
* // ... data to create a Appointment
* }
* })
*
*/
create<T extends AppointmentCreateArgs>(args: SelectSubset<T, AppointmentCreateArgs<ExtArgs>>): Prisma__AppointmentClient<$Result.GetResult<Prisma.$AppointmentPayload<ExtArgs>, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Create many Appointments.
* @param {AppointmentCreateManyArgs} args - Arguments to create many Appointments.
* @example
* // Create many Appointments
* const appointment = await prisma.appointment.createMany({
* data: [
* // ... provide data here
* ]
* })
*
*/
createMany<T extends AppointmentCreateManyArgs>(args?: SelectSubset<T, AppointmentCreateManyArgs<ExtArgs>>): Prisma.PrismaPromise<BatchPayload>
/**
* Create many Appointments and returns the data saved in the database.
* @param {AppointmentCreateManyAndReturnArgs} args - Arguments to create many Appointments.
* @example
* // Create many Appointments
* const appointment = await prisma.appointment.createManyAndReturn({
* data: [
* // ... provide data here
* ]
* })
*
* // Create many Appointments and only return the `id`
* const appointmentWithIdOnly = await prisma.appointment.createManyAndReturn({
* select: { id: true },
* data: [
* // ... provide data here
* ]
* })
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
*
*/
createManyAndReturn<T extends AppointmentCreateManyAndReturnArgs>(args?: SelectSubset<T, AppointmentCreateManyAndReturnArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$AppointmentPayload<ExtArgs>, T, "createManyAndReturn", GlobalOmitOptions>>
/**
* Delete a Appointment.
* @param {AppointmentDeleteArgs} args - Arguments to delete one Appointment.
* @example
* // Delete one Appointment
* const Appointment = await prisma.appointment.delete({
* where: {
* // ... filter to delete one Appointment
* }
* })
*
*/
delete<T extends AppointmentDeleteArgs>(args: SelectSubset<T, AppointmentDeleteArgs<ExtArgs>>): Prisma__AppointmentClient<$Result.GetResult<Prisma.$AppointmentPayload<ExtArgs>, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Update one Appointment.
* @param {AppointmentUpdateArgs} args - Arguments to update one Appointment.
* @example
* // Update one Appointment
* const appointment = await prisma.appointment.update({
* where: {
* // ... provide filter here
* },
* data: {
* // ... provide data here
* }
* })
*
*/
update<T extends AppointmentUpdateArgs>(args: SelectSubset<T, AppointmentUpdateArgs<ExtArgs>>): Prisma__AppointmentClient<$Result.GetResult<Prisma.$AppointmentPayload<ExtArgs>, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Delete zero or more Appointments.
* @param {AppointmentDeleteManyArgs} args - Arguments to filter Appointments to delete.
* @example
* // Delete a few Appointments
* const { count } = await prisma.appointment.deleteMany({
* where: {
* // ... provide filter here
* }
* })
*
*/
deleteMany<T extends AppointmentDeleteManyArgs>(args?: SelectSubset<T, AppointmentDeleteManyArgs<ExtArgs>>): Prisma.PrismaPromise<BatchPayload>
/**
* Update zero or more Appointments.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {AppointmentUpdateManyArgs} args - Arguments to update one or more rows.
* @example
* // Update many Appointments
* const appointment = await prisma.appointment.updateMany({
* where: {
* // ... provide filter here
* },
* data: {
* // ... provide data here
* }
* })
*
*/
updateMany<T extends AppointmentUpdateManyArgs>(args: SelectSubset<T, AppointmentUpdateManyArgs<ExtArgs>>): Prisma.PrismaPromise<BatchPayload>
/**
* Update zero or more Appointments and returns the data updated in the database.
* @param {AppointmentUpdateManyAndReturnArgs} args - Arguments to update many Appointments.
* @example
* // Update many Appointments
* const appointment = await prisma.appointment.updateManyAndReturn({
* where: {
* // ... provide filter here
* },
* data: [
* // ... provide data here
* ]
* })
*
* // Update zero or more Appointments and only return the `id`
* const appointmentWithIdOnly = await prisma.appointment.updateManyAndReturn({
* select: { id: true },
* where: {
* // ... provide filter here
* },
* data: [
* // ... provide data here
* ]
* })
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
*
*/
updateManyAndReturn<T extends AppointmentUpdateManyAndReturnArgs>(args: SelectSubset<T, AppointmentUpdateManyAndReturnArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$AppointmentPayload<ExtArgs>, T, "updateManyAndReturn", GlobalOmitOptions>>
/**
* Create or update one Appointment.
* @param {AppointmentUpsertArgs} args - Arguments to update or create a Appointment.
* @example
* // Update or create a Appointment
* const appointment = await prisma.appointment.upsert({
* create: {
* // ... data to create a Appointment
* },
* update: {
* // ... in case it already exists, update
* },
* where: {
* // ... the filter for the Appointment we want to update
* }
* })
*/
upsert<T extends AppointmentUpsertArgs>(args: SelectSubset<T, AppointmentUpsertArgs<ExtArgs>>): Prisma__AppointmentClient<$Result.GetResult<Prisma.$AppointmentPayload<ExtArgs>, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Count the number of Appointments.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {AppointmentCountArgs} args - Arguments to filter Appointments to count.
* @example
* // Count the number of Appointments
* const count = await prisma.appointment.count({
* where: {
* // ... the filter for the Appointments we want to count
* }
* })
**/
count<T extends AppointmentCountArgs>(
args?: Subset<T, AppointmentCountArgs>,
): Prisma.PrismaPromise<
T extends $Utils.Record<'select', any>
? T['select'] extends true
? number
: GetScalarType<T['select'], AppointmentCountAggregateOutputType>
: number
>
/**
* Allows you to perform aggregations operations on a Appointment.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {AppointmentAggregateArgs} args - Select which aggregations you would like to apply and on what fields.
* @example
* // Ordered by age ascending
* // Where email contains prisma.io
* // Limited to the 10 users
* const aggregations = await prisma.user.aggregate({
* _avg: {
* age: true,
* },
* where: {
* email: {
* contains: "prisma.io",
* },
* },
* orderBy: {
* age: "asc",
* },
* take: 10,
* })
**/
aggregate<T extends AppointmentAggregateArgs>(args: Subset<T, AppointmentAggregateArgs>): Prisma.PrismaPromise<GetAppointmentAggregateType<T>>
/**
* Group by Appointment.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {AppointmentGroupByArgs} args - Group by arguments.
* @example
* // Group by city, order by createdAt, get count
* const result = await prisma.user.groupBy({
* by: ['city', 'createdAt'],
* orderBy: {
* createdAt: true
* },
* _count: {
* _all: true
* },
* })
*
**/
groupBy<
T extends AppointmentGroupByArgs,
HasSelectOrTake extends Or<
Extends<'skip', Keys<T>>,
Extends<'take', Keys<T>>
>,
OrderByArg extends True extends HasSelectOrTake
? { orderBy: AppointmentGroupByArgs['orderBy'] }
: { orderBy?: AppointmentGroupByArgs['orderBy'] },
OrderFields extends ExcludeUnderscoreKeys<Keys<MaybeTupleToUnion<T['orderBy']>>>,
ByFields extends MaybeTupleToUnion<T['by']>,
ByValid extends Has<ByFields, OrderFields>,
HavingFields extends GetHavingFields<T['having']>,
HavingValid extends Has<ByFields, HavingFields>,
ByEmpty extends T['by'] extends never[] ? True : False,
InputErrors extends ByEmpty extends True
? `Error: "by" must not be empty.`
: HavingValid extends False
? {
[P in HavingFields]: P extends ByFields
? never
: P extends string
? `Error: Field "${P}" used in "having" needs to be provided in "by".`
: [
Error,
'Field ',
P,
` in "having" needs to be provided in "by"`,
]
}[HavingFields]
: 'take' extends Keys<T>
? 'orderBy' extends Keys<T>
? ByValid extends True
? {}
: {
[P in OrderFields]: P extends ByFields
? never
: `Error: Field "${P}" in "orderBy" needs to be provided in "by"`
}[OrderFields]
: 'Error: If you provide "take", you also need to provide "orderBy"'
: 'skip' extends Keys<T>
? 'orderBy' extends Keys<T>
? ByValid extends True
? {}
: {
[P in OrderFields]: P extends ByFields
? never
: `Error: Field "${P}" in "orderBy" needs to be provided in "by"`
}[OrderFields]
: 'Error: If you provide "skip", you also need to provide "orderBy"'
: ByValid extends True
? {}
: {
[P in OrderFields]: P extends ByFields
? never
: `Error: Field "${P}" in "orderBy" needs to be provided in "by"`
}[OrderFields]
>(args: SubsetIntersection<T, AppointmentGroupByArgs, OrderByArg> & InputErrors): {} extends InputErrors ? GetAppointmentGroupByPayload<T> : Prisma.PrismaPromise<InputErrors>
/**
* Fields of the Appointment model
*/
readonly fields: AppointmentFieldRefs;
}
/**
* The delegate class that acts as a "Promise-like" for Appointment.
* Why is this prefixed with `Prisma__`?
* Because we want to prevent naming conflicts as mentioned in
* https://github.com/prisma/prisma-client-js/issues/707
*/
export interface Prisma__AppointmentClient<T, Null = never, ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, GlobalOmitOptions = {}> extends Prisma.PrismaPromise<T> {
readonly [Symbol.toStringTag]: "PrismaPromise"
patient<T extends PatientDefaultArgs<ExtArgs> = {}>(args?: Subset<T, PatientDefaultArgs<ExtArgs>>): Prisma__PatientClient<$Result.GetResult<Prisma.$PatientPayload<ExtArgs>, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions>
user<T extends UserDefaultArgs<ExtArgs> = {}>(args?: Subset<T, UserDefaultArgs<ExtArgs>>): Prisma__UserClient<$Result.GetResult<Prisma.$UserPayload<ExtArgs>, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions>
/**
* Attaches callbacks for the resolution and/or rejection of the Promise.
* @param onfulfilled The callback to execute when the Promise is resolved.
* @param onrejected The callback to execute when the Promise is rejected.
* @returns A Promise for the completion of which ever callback is executed.
*/
then<TResult1 = T, TResult2 = never>(onfulfilled?: ((value: T) => TResult1 | PromiseLike<TResult1>) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike<TResult2>) | undefined | null): $Utils.JsPromise<TResult1 | TResult2>
/**
* Attaches a callback for only the rejection of the Promise.
* @param onrejected The callback to execute when the Promise is rejected.
* @returns A Promise for the completion of the callback.
*/
catch<TResult = never>(onrejected?: ((reason: any) => TResult | PromiseLike<TResult>) | undefined | null): $Utils.JsPromise<T | TResult>
/**
* Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The
* resolved value cannot be modified from the callback.
* @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected).
* @returns A Promise for the completion of the callback.
*/
finally(onfinally?: (() => void) | undefined | null): $Utils.JsPromise<T>
}
/**
* Fields of the Appointment model
*/
interface AppointmentFieldRefs {
readonly id: FieldRef<"Appointment", 'Int'>
readonly patientId: FieldRef<"Appointment", 'Int'>
readonly userId: FieldRef<"Appointment", 'Int'>
readonly title: FieldRef<"Appointment", 'String'>
readonly date: FieldRef<"Appointment", 'DateTime'>
readonly startTime: FieldRef<"Appointment", 'DateTime'>
readonly endTime: FieldRef<"Appointment", 'DateTime'>
readonly type: FieldRef<"Appointment", 'String'>
readonly notes: FieldRef<"Appointment", 'String'>
readonly status: FieldRef<"Appointment", 'String'>
readonly createdAt: FieldRef<"Appointment", 'DateTime'>
}
// Custom InputTypes
/**
* Appointment findUnique
*/
export type AppointmentFindUniqueArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Appointment
*/
select?: AppointmentSelect<ExtArgs> | null
/**
* Omit specific fields from the Appointment
*/
omit?: AppointmentOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: AppointmentInclude<ExtArgs> | null
/**
* Filter, which Appointment to fetch.
*/
where: AppointmentWhereUniqueInput
}
/**
* Appointment findUniqueOrThrow
*/
export type AppointmentFindUniqueOrThrowArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Appointment
*/
select?: AppointmentSelect<ExtArgs> | null
/**
* Omit specific fields from the Appointment
*/
omit?: AppointmentOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: AppointmentInclude<ExtArgs> | null
/**
* Filter, which Appointment to fetch.
*/
where: AppointmentWhereUniqueInput
}
/**
* Appointment findFirst
*/
export type AppointmentFindFirstArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Appointment
*/
select?: AppointmentSelect<ExtArgs> | null
/**
* Omit specific fields from the Appointment
*/
omit?: AppointmentOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: AppointmentInclude<ExtArgs> | null
/**
* Filter, which Appointment to fetch.
*/
where?: AppointmentWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of Appointments to fetch.
*/
orderBy?: AppointmentOrderByWithRelationInput | AppointmentOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the position for searching for Appointments.
*/
cursor?: AppointmentWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` Appointments from the position of the cursor.
*/
take?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Skip the first `n` Appointments.
*/
skip?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
*
* Filter by unique combinations of Appointments.
*/
distinct?: AppointmentScalarFieldEnum | AppointmentScalarFieldEnum[]
}
/**
* Appointment findFirstOrThrow
*/
export type AppointmentFindFirstOrThrowArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Appointment
*/
select?: AppointmentSelect<ExtArgs> | null
/**
* Omit specific fields from the Appointment
*/
omit?: AppointmentOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: AppointmentInclude<ExtArgs> | null
/**
* Filter, which Appointment to fetch.
*/
where?: AppointmentWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of Appointments to fetch.
*/
orderBy?: AppointmentOrderByWithRelationInput | AppointmentOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the position for searching for Appointments.
*/
cursor?: AppointmentWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` Appointments from the position of the cursor.
*/
take?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Skip the first `n` Appointments.
*/
skip?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
*
* Filter by unique combinations of Appointments.
*/
distinct?: AppointmentScalarFieldEnum | AppointmentScalarFieldEnum[]
}
/**
* Appointment findMany
*/
export type AppointmentFindManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Appointment
*/
select?: AppointmentSelect<ExtArgs> | null
/**
* Omit specific fields from the Appointment
*/
omit?: AppointmentOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: AppointmentInclude<ExtArgs> | null
/**
* Filter, which Appointments to fetch.
*/
where?: AppointmentWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of Appointments to fetch.
*/
orderBy?: AppointmentOrderByWithRelationInput | AppointmentOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the position for listing Appointments.
*/
cursor?: AppointmentWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` Appointments from the position of the cursor.
*/
take?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Skip the first `n` Appointments.
*/
skip?: number
distinct?: AppointmentScalarFieldEnum | AppointmentScalarFieldEnum[]
}
/**
* Appointment create
*/
export type AppointmentCreateArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Appointment
*/
select?: AppointmentSelect<ExtArgs> | null
/**
* Omit specific fields from the Appointment
*/
omit?: AppointmentOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: AppointmentInclude<ExtArgs> | null
/**
* The data needed to create a Appointment.
*/
data: XOR<AppointmentCreateInput, AppointmentUncheckedCreateInput>
}
/**
* Appointment createMany
*/
export type AppointmentCreateManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* The data used to create many Appointments.
*/
data: AppointmentCreateManyInput | AppointmentCreateManyInput[]
skipDuplicates?: boolean
}
/**
* Appointment createManyAndReturn
*/
export type AppointmentCreateManyAndReturnArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Appointment
*/
select?: AppointmentSelectCreateManyAndReturn<ExtArgs> | null
/**
* Omit specific fields from the Appointment
*/
omit?: AppointmentOmit<ExtArgs> | null
/**
* The data used to create many Appointments.
*/
data: AppointmentCreateManyInput | AppointmentCreateManyInput[]
skipDuplicates?: boolean
/**
* Choose, which related nodes to fetch as well
*/
include?: AppointmentIncludeCreateManyAndReturn<ExtArgs> | null
}
/**
* Appointment update
*/
export type AppointmentUpdateArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Appointment
*/
select?: AppointmentSelect<ExtArgs> | null
/**
* Omit specific fields from the Appointment
*/
omit?: AppointmentOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: AppointmentInclude<ExtArgs> | null
/**
* The data needed to update a Appointment.
*/
data: XOR<AppointmentUpdateInput, AppointmentUncheckedUpdateInput>
/**
* Choose, which Appointment to update.
*/
where: AppointmentWhereUniqueInput
}
/**
* Appointment updateMany
*/
export type AppointmentUpdateManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* The data used to update Appointments.
*/
data: XOR<AppointmentUpdateManyMutationInput, AppointmentUncheckedUpdateManyInput>
/**
* Filter which Appointments to update
*/
where?: AppointmentWhereInput
/**
* Limit how many Appointments to update.
*/
limit?: number
}
/**
* Appointment updateManyAndReturn
*/
export type AppointmentUpdateManyAndReturnArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Appointment
*/
select?: AppointmentSelectUpdateManyAndReturn<ExtArgs> | null
/**
* Omit specific fields from the Appointment
*/
omit?: AppointmentOmit<ExtArgs> | null
/**
* The data used to update Appointments.
*/
data: XOR<AppointmentUpdateManyMutationInput, AppointmentUncheckedUpdateManyInput>
/**
* Filter which Appointments to update
*/
where?: AppointmentWhereInput
/**
* Limit how many Appointments to update.
*/
limit?: number
/**
* Choose, which related nodes to fetch as well
*/
include?: AppointmentIncludeUpdateManyAndReturn<ExtArgs> | null
}
/**
* Appointment upsert
*/
export type AppointmentUpsertArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Appointment
*/
select?: AppointmentSelect<ExtArgs> | null
/**
* Omit specific fields from the Appointment
*/
omit?: AppointmentOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: AppointmentInclude<ExtArgs> | null
/**
* The filter to search for the Appointment to update in case it exists.
*/
where: AppointmentWhereUniqueInput
/**
* In case the Appointment found by the `where` argument doesn't exist, create a new Appointment with this data.
*/
create: XOR<AppointmentCreateInput, AppointmentUncheckedCreateInput>
/**
* In case the Appointment was found with the provided `where` argument, update it with this data.
*/
update: XOR<AppointmentUpdateInput, AppointmentUncheckedUpdateInput>
}
/**
* Appointment delete
*/
export type AppointmentDeleteArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Appointment
*/
select?: AppointmentSelect<ExtArgs> | null
/**
* Omit specific fields from the Appointment
*/
omit?: AppointmentOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: AppointmentInclude<ExtArgs> | null
/**
* Filter which Appointment to delete.
*/
where: AppointmentWhereUniqueInput
}
/**
* Appointment deleteMany
*/
export type AppointmentDeleteManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Filter which Appointments to delete
*/
where?: AppointmentWhereInput
/**
* Limit how many Appointments to delete.
*/
limit?: number
}
/**
* Appointment without action
*/
export type AppointmentDefaultArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Appointment
*/
select?: AppointmentSelect<ExtArgs> | null
/**
* Omit specific fields from the Appointment
*/
omit?: AppointmentOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: AppointmentInclude<ExtArgs> | null
}
/**
* Enums
*/
export const TransactionIsolationLevel: {
ReadUncommitted: 'ReadUncommitted',
ReadCommitted: 'ReadCommitted',
RepeatableRead: 'RepeatableRead',
Serializable: 'Serializable'
};
export type TransactionIsolationLevel = (typeof TransactionIsolationLevel)[keyof typeof TransactionIsolationLevel]
export const UserScalarFieldEnum: {
id: 'id',
username: 'username',
password: 'password'
};
export type UserScalarFieldEnum = (typeof UserScalarFieldEnum)[keyof typeof UserScalarFieldEnum]
export const PatientScalarFieldEnum: {
id: 'id',
firstName: 'firstName',
lastName: 'lastName',
dateOfBirth: 'dateOfBirth',
gender: 'gender',
phone: 'phone',
email: 'email',
address: 'address',
city: 'city',
zipCode: 'zipCode',
insuranceProvider: 'insuranceProvider',
insuranceId: 'insuranceId',
groupNumber: 'groupNumber',
policyHolder: 'policyHolder',
allergies: 'allergies',
medicalConditions: 'medicalConditions',
status: 'status',
userId: 'userId',
createdAt: 'createdAt'
};
export type PatientScalarFieldEnum = (typeof PatientScalarFieldEnum)[keyof typeof PatientScalarFieldEnum]
export const AppointmentScalarFieldEnum: {
id: 'id',
patientId: 'patientId',
userId: 'userId',
title: 'title',
date: 'date',
startTime: 'startTime',
endTime: 'endTime',
type: 'type',
notes: 'notes',
status: 'status',
createdAt: 'createdAt'
};
export type AppointmentScalarFieldEnum = (typeof AppointmentScalarFieldEnum)[keyof typeof AppointmentScalarFieldEnum]
export const SortOrder: {
asc: 'asc',
desc: 'desc'
};
export type SortOrder = (typeof SortOrder)[keyof typeof SortOrder]
export const QueryMode: {
default: 'default',
insensitive: 'insensitive'
};
export type QueryMode = (typeof QueryMode)[keyof typeof QueryMode]
export const NullsOrder: {
first: 'first',
last: 'last'
};
export type NullsOrder = (typeof NullsOrder)[keyof typeof NullsOrder]
/**
* Field references
*/
/**
* Reference to a field of type 'Int'
*/
export type IntFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'Int'>
/**
* Reference to a field of type 'Int[]'
*/
export type ListIntFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'Int[]'>
/**
* Reference to a field of type 'String'
*/
export type StringFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'String'>
/**
* Reference to a field of type 'String[]'
*/
export type ListStringFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'String[]'>
/**
* Reference to a field of type 'DateTime'
*/
export type DateTimeFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'DateTime'>
/**
* Reference to a field of type 'DateTime[]'
*/
export type ListDateTimeFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'DateTime[]'>
/**
* Reference to a field of type 'Float'
*/
export type FloatFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'Float'>
/**
* Reference to a field of type 'Float[]'
*/
export type ListFloatFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'Float[]'>
/**
* Deep Input Types
*/
export type UserWhereInput = {
AND?: UserWhereInput | UserWhereInput[]
OR?: UserWhereInput[]
NOT?: UserWhereInput | UserWhereInput[]
id?: IntFilter<"User"> | number
username?: StringFilter<"User"> | string
password?: StringFilter<"User"> | string
patients?: PatientListRelationFilter
appointments?: AppointmentListRelationFilter
}
export type UserOrderByWithRelationInput = {
id?: SortOrder
username?: SortOrder
password?: SortOrder
patients?: PatientOrderByRelationAggregateInput
appointments?: AppointmentOrderByRelationAggregateInput
}
export type UserWhereUniqueInput = Prisma.AtLeast<{
id?: number
username?: string
AND?: UserWhereInput | UserWhereInput[]
OR?: UserWhereInput[]
NOT?: UserWhereInput | UserWhereInput[]
password?: StringFilter<"User"> | string
patients?: PatientListRelationFilter
appointments?: AppointmentListRelationFilter
}, "id" | "username">
export type UserOrderByWithAggregationInput = {
id?: SortOrder
username?: SortOrder
password?: SortOrder
_count?: UserCountOrderByAggregateInput
_avg?: UserAvgOrderByAggregateInput
_max?: UserMaxOrderByAggregateInput
_min?: UserMinOrderByAggregateInput
_sum?: UserSumOrderByAggregateInput
}
export type UserScalarWhereWithAggregatesInput = {
AND?: UserScalarWhereWithAggregatesInput | UserScalarWhereWithAggregatesInput[]
OR?: UserScalarWhereWithAggregatesInput[]
NOT?: UserScalarWhereWithAggregatesInput | UserScalarWhereWithAggregatesInput[]
id?: IntWithAggregatesFilter<"User"> | number
username?: StringWithAggregatesFilter<"User"> | string
password?: StringWithAggregatesFilter<"User"> | string
}
export type PatientWhereInput = {
AND?: PatientWhereInput | PatientWhereInput[]
OR?: PatientWhereInput[]
NOT?: PatientWhereInput | PatientWhereInput[]
id?: IntFilter<"Patient"> | number
firstName?: StringFilter<"Patient"> | string
lastName?: StringFilter<"Patient"> | string
dateOfBirth?: DateTimeFilter<"Patient"> | Date | string
gender?: StringFilter<"Patient"> | string
phone?: StringFilter<"Patient"> | string
email?: StringNullableFilter<"Patient"> | string | null
address?: StringNullableFilter<"Patient"> | string | null
city?: StringNullableFilter<"Patient"> | string | null
zipCode?: StringNullableFilter<"Patient"> | string | null
insuranceProvider?: StringNullableFilter<"Patient"> | string | null
insuranceId?: StringNullableFilter<"Patient"> | string | null
groupNumber?: StringNullableFilter<"Patient"> | string | null
policyHolder?: StringNullableFilter<"Patient"> | string | null
allergies?: StringNullableFilter<"Patient"> | string | null
medicalConditions?: StringNullableFilter<"Patient"> | string | null
status?: StringFilter<"Patient"> | string
userId?: IntFilter<"Patient"> | number
createdAt?: DateTimeFilter<"Patient"> | Date | string
user?: XOR<UserScalarRelationFilter, UserWhereInput>
appointments?: AppointmentListRelationFilter
}
export type PatientOrderByWithRelationInput = {
id?: SortOrder
firstName?: SortOrder
lastName?: SortOrder
dateOfBirth?: SortOrder
gender?: SortOrder
phone?: SortOrder
email?: SortOrderInput | SortOrder
address?: SortOrderInput | SortOrder
city?: SortOrderInput | SortOrder
zipCode?: SortOrderInput | SortOrder
insuranceProvider?: SortOrderInput | SortOrder
insuranceId?: SortOrderInput | SortOrder
groupNumber?: SortOrderInput | SortOrder
policyHolder?: SortOrderInput | SortOrder
allergies?: SortOrderInput | SortOrder
medicalConditions?: SortOrderInput | SortOrder
status?: SortOrder
userId?: SortOrder
createdAt?: SortOrder
user?: UserOrderByWithRelationInput
appointments?: AppointmentOrderByRelationAggregateInput
}
export type PatientWhereUniqueInput = Prisma.AtLeast<{
id?: number
AND?: PatientWhereInput | PatientWhereInput[]
OR?: PatientWhereInput[]
NOT?: PatientWhereInput | PatientWhereInput[]
firstName?: StringFilter<"Patient"> | string
lastName?: StringFilter<"Patient"> | string
dateOfBirth?: DateTimeFilter<"Patient"> | Date | string
gender?: StringFilter<"Patient"> | string
phone?: StringFilter<"Patient"> | string
email?: StringNullableFilter<"Patient"> | string | null
address?: StringNullableFilter<"Patient"> | string | null
city?: StringNullableFilter<"Patient"> | string | null
zipCode?: StringNullableFilter<"Patient"> | string | null
insuranceProvider?: StringNullableFilter<"Patient"> | string | null
insuranceId?: StringNullableFilter<"Patient"> | string | null
groupNumber?: StringNullableFilter<"Patient"> | string | null
policyHolder?: StringNullableFilter<"Patient"> | string | null
allergies?: StringNullableFilter<"Patient"> | string | null
medicalConditions?: StringNullableFilter<"Patient"> | string | null
status?: StringFilter<"Patient"> | string
userId?: IntFilter<"Patient"> | number
createdAt?: DateTimeFilter<"Patient"> | Date | string
user?: XOR<UserScalarRelationFilter, UserWhereInput>
appointments?: AppointmentListRelationFilter
}, "id">
export type PatientOrderByWithAggregationInput = {
id?: SortOrder
firstName?: SortOrder
lastName?: SortOrder
dateOfBirth?: SortOrder
gender?: SortOrder
phone?: SortOrder
email?: SortOrderInput | SortOrder
address?: SortOrderInput | SortOrder
city?: SortOrderInput | SortOrder
zipCode?: SortOrderInput | SortOrder
insuranceProvider?: SortOrderInput | SortOrder
insuranceId?: SortOrderInput | SortOrder
groupNumber?: SortOrderInput | SortOrder
policyHolder?: SortOrderInput | SortOrder
allergies?: SortOrderInput | SortOrder
medicalConditions?: SortOrderInput | SortOrder
status?: SortOrder
userId?: SortOrder
createdAt?: SortOrder
_count?: PatientCountOrderByAggregateInput
_avg?: PatientAvgOrderByAggregateInput
_max?: PatientMaxOrderByAggregateInput
_min?: PatientMinOrderByAggregateInput
_sum?: PatientSumOrderByAggregateInput
}
export type PatientScalarWhereWithAggregatesInput = {
AND?: PatientScalarWhereWithAggregatesInput | PatientScalarWhereWithAggregatesInput[]
OR?: PatientScalarWhereWithAggregatesInput[]
NOT?: PatientScalarWhereWithAggregatesInput | PatientScalarWhereWithAggregatesInput[]
id?: IntWithAggregatesFilter<"Patient"> | number
firstName?: StringWithAggregatesFilter<"Patient"> | string
lastName?: StringWithAggregatesFilter<"Patient"> | string
dateOfBirth?: DateTimeWithAggregatesFilter<"Patient"> | Date | string
gender?: StringWithAggregatesFilter<"Patient"> | string
phone?: StringWithAggregatesFilter<"Patient"> | string
email?: StringNullableWithAggregatesFilter<"Patient"> | string | null
address?: StringNullableWithAggregatesFilter<"Patient"> | string | null
city?: StringNullableWithAggregatesFilter<"Patient"> | string | null
zipCode?: StringNullableWithAggregatesFilter<"Patient"> | string | null
insuranceProvider?: StringNullableWithAggregatesFilter<"Patient"> | string | null
insuranceId?: StringNullableWithAggregatesFilter<"Patient"> | string | null
groupNumber?: StringNullableWithAggregatesFilter<"Patient"> | string | null
policyHolder?: StringNullableWithAggregatesFilter<"Patient"> | string | null
allergies?: StringNullableWithAggregatesFilter<"Patient"> | string | null
medicalConditions?: StringNullableWithAggregatesFilter<"Patient"> | string | null
status?: StringWithAggregatesFilter<"Patient"> | string
userId?: IntWithAggregatesFilter<"Patient"> | number
createdAt?: DateTimeWithAggregatesFilter<"Patient"> | Date | string
}
export type AppointmentWhereInput = {
AND?: AppointmentWhereInput | AppointmentWhereInput[]
OR?: AppointmentWhereInput[]
NOT?: AppointmentWhereInput | AppointmentWhereInput[]
id?: IntFilter<"Appointment"> | number
patientId?: IntFilter<"Appointment"> | number
userId?: IntFilter<"Appointment"> | number
title?: StringFilter<"Appointment"> | string
date?: DateTimeFilter<"Appointment"> | Date | string
startTime?: DateTimeFilter<"Appointment"> | Date | string
endTime?: DateTimeFilter<"Appointment"> | Date | string
type?: StringFilter<"Appointment"> | string
notes?: StringNullableFilter<"Appointment"> | string | null
status?: StringFilter<"Appointment"> | string
createdAt?: DateTimeFilter<"Appointment"> | Date | string
patient?: XOR<PatientScalarRelationFilter, PatientWhereInput>
user?: XOR<UserScalarRelationFilter, UserWhereInput>
}
export type AppointmentOrderByWithRelationInput = {
id?: SortOrder
patientId?: SortOrder
userId?: SortOrder
title?: SortOrder
date?: SortOrder
startTime?: SortOrder
endTime?: SortOrder
type?: SortOrder
notes?: SortOrderInput | SortOrder
status?: SortOrder
createdAt?: SortOrder
patient?: PatientOrderByWithRelationInput
user?: UserOrderByWithRelationInput
}
export type AppointmentWhereUniqueInput = Prisma.AtLeast<{
id?: number
AND?: AppointmentWhereInput | AppointmentWhereInput[]
OR?: AppointmentWhereInput[]
NOT?: AppointmentWhereInput | AppointmentWhereInput[]
patientId?: IntFilter<"Appointment"> | number
userId?: IntFilter<"Appointment"> | number
title?: StringFilter<"Appointment"> | string
date?: DateTimeFilter<"Appointment"> | Date | string
startTime?: DateTimeFilter<"Appointment"> | Date | string
endTime?: DateTimeFilter<"Appointment"> | Date | string
type?: StringFilter<"Appointment"> | string
notes?: StringNullableFilter<"Appointment"> | string | null
status?: StringFilter<"Appointment"> | string
createdAt?: DateTimeFilter<"Appointment"> | Date | string
patient?: XOR<PatientScalarRelationFilter, PatientWhereInput>
user?: XOR<UserScalarRelationFilter, UserWhereInput>
}, "id">
export type AppointmentOrderByWithAggregationInput = {
id?: SortOrder
patientId?: SortOrder
userId?: SortOrder
title?: SortOrder
date?: SortOrder
startTime?: SortOrder
endTime?: SortOrder
type?: SortOrder
notes?: SortOrderInput | SortOrder
status?: SortOrder
createdAt?: SortOrder
_count?: AppointmentCountOrderByAggregateInput
_avg?: AppointmentAvgOrderByAggregateInput
_max?: AppointmentMaxOrderByAggregateInput
_min?: AppointmentMinOrderByAggregateInput
_sum?: AppointmentSumOrderByAggregateInput
}
export type AppointmentScalarWhereWithAggregatesInput = {
AND?: AppointmentScalarWhereWithAggregatesInput | AppointmentScalarWhereWithAggregatesInput[]
OR?: AppointmentScalarWhereWithAggregatesInput[]
NOT?: AppointmentScalarWhereWithAggregatesInput | AppointmentScalarWhereWithAggregatesInput[]
id?: IntWithAggregatesFilter<"Appointment"> | number
patientId?: IntWithAggregatesFilter<"Appointment"> | number
userId?: IntWithAggregatesFilter<"Appointment"> | number
title?: StringWithAggregatesFilter<"Appointment"> | string
date?: DateTimeWithAggregatesFilter<"Appointment"> | Date | string
startTime?: DateTimeWithAggregatesFilter<"Appointment"> | Date | string
endTime?: DateTimeWithAggregatesFilter<"Appointment"> | Date | string
type?: StringWithAggregatesFilter<"Appointment"> | string
notes?: StringNullableWithAggregatesFilter<"Appointment"> | string | null
status?: StringWithAggregatesFilter<"Appointment"> | string
createdAt?: DateTimeWithAggregatesFilter<"Appointment"> | Date | string
}
export type UserCreateInput = {
username: string
password: string
patients?: PatientCreateNestedManyWithoutUserInput
appointments?: AppointmentCreateNestedManyWithoutUserInput
}
export type UserUncheckedCreateInput = {
id?: number
username: string
password: string
patients?: PatientUncheckedCreateNestedManyWithoutUserInput
appointments?: AppointmentUncheckedCreateNestedManyWithoutUserInput
}
export type UserUpdateInput = {
username?: StringFieldUpdateOperationsInput | string
password?: StringFieldUpdateOperationsInput | string
patients?: PatientUpdateManyWithoutUserNestedInput
appointments?: AppointmentUpdateManyWithoutUserNestedInput
}
export type UserUncheckedUpdateInput = {
id?: IntFieldUpdateOperationsInput | number
username?: StringFieldUpdateOperationsInput | string
password?: StringFieldUpdateOperationsInput | string
patients?: PatientUncheckedUpdateManyWithoutUserNestedInput
appointments?: AppointmentUncheckedUpdateManyWithoutUserNestedInput
}
export type UserCreateManyInput = {
id?: number
username: string
password: string
}
export type UserUpdateManyMutationInput = {
username?: StringFieldUpdateOperationsInput | string
password?: StringFieldUpdateOperationsInput | string
}
export type UserUncheckedUpdateManyInput = {
id?: IntFieldUpdateOperationsInput | number
username?: StringFieldUpdateOperationsInput | string
password?: StringFieldUpdateOperationsInput | string
}
export type PatientCreateInput = {
firstName: string
lastName: string
dateOfBirth: Date | string
gender: string
phone: string
email?: string | null
address?: string | null
city?: string | null
zipCode?: string | null
insuranceProvider?: string | null
insuranceId?: string | null
groupNumber?: string | null
policyHolder?: string | null
allergies?: string | null
medicalConditions?: string | null
status?: string
createdAt?: Date | string
user: UserCreateNestedOneWithoutPatientsInput
appointments?: AppointmentCreateNestedManyWithoutPatientInput
}
export type PatientUncheckedCreateInput = {
id?: number
firstName: string
lastName: string
dateOfBirth: Date | string
gender: string
phone: string
email?: string | null
address?: string | null
city?: string | null
zipCode?: string | null
insuranceProvider?: string | null
insuranceId?: string | null
groupNumber?: string | null
policyHolder?: string | null
allergies?: string | null
medicalConditions?: string | null
status?: string
userId: number
createdAt?: Date | string
appointments?: AppointmentUncheckedCreateNestedManyWithoutPatientInput
}
export type PatientUpdateInput = {
firstName?: StringFieldUpdateOperationsInput | string
lastName?: StringFieldUpdateOperationsInput | string
dateOfBirth?: DateTimeFieldUpdateOperationsInput | Date | string
gender?: StringFieldUpdateOperationsInput | string
phone?: StringFieldUpdateOperationsInput | string
email?: NullableStringFieldUpdateOperationsInput | string | null
address?: NullableStringFieldUpdateOperationsInput | string | null
city?: NullableStringFieldUpdateOperationsInput | string | null
zipCode?: NullableStringFieldUpdateOperationsInput | string | null
insuranceProvider?: NullableStringFieldUpdateOperationsInput | string | null
insuranceId?: NullableStringFieldUpdateOperationsInput | string | null
groupNumber?: NullableStringFieldUpdateOperationsInput | string | null
policyHolder?: NullableStringFieldUpdateOperationsInput | string | null
allergies?: NullableStringFieldUpdateOperationsInput | string | null
medicalConditions?: NullableStringFieldUpdateOperationsInput | string | null
status?: StringFieldUpdateOperationsInput | string
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
user?: UserUpdateOneRequiredWithoutPatientsNestedInput
appointments?: AppointmentUpdateManyWithoutPatientNestedInput
}
export type PatientUncheckedUpdateInput = {
id?: IntFieldUpdateOperationsInput | number
firstName?: StringFieldUpdateOperationsInput | string
lastName?: StringFieldUpdateOperationsInput | string
dateOfBirth?: DateTimeFieldUpdateOperationsInput | Date | string
gender?: StringFieldUpdateOperationsInput | string
phone?: StringFieldUpdateOperationsInput | string
email?: NullableStringFieldUpdateOperationsInput | string | null
address?: NullableStringFieldUpdateOperationsInput | string | null
city?: NullableStringFieldUpdateOperationsInput | string | null
zipCode?: NullableStringFieldUpdateOperationsInput | string | null
insuranceProvider?: NullableStringFieldUpdateOperationsInput | string | null
insuranceId?: NullableStringFieldUpdateOperationsInput | string | null
groupNumber?: NullableStringFieldUpdateOperationsInput | string | null
policyHolder?: NullableStringFieldUpdateOperationsInput | string | null
allergies?: NullableStringFieldUpdateOperationsInput | string | null
medicalConditions?: NullableStringFieldUpdateOperationsInput | string | null
status?: StringFieldUpdateOperationsInput | string
userId?: IntFieldUpdateOperationsInput | number
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
appointments?: AppointmentUncheckedUpdateManyWithoutPatientNestedInput
}
export type PatientCreateManyInput = {
id?: number
firstName: string
lastName: string
dateOfBirth: Date | string
gender: string
phone: string
email?: string | null
address?: string | null
city?: string | null
zipCode?: string | null
insuranceProvider?: string | null
insuranceId?: string | null
groupNumber?: string | null
policyHolder?: string | null
allergies?: string | null
medicalConditions?: string | null
status?: string
userId: number
createdAt?: Date | string
}
export type PatientUpdateManyMutationInput = {
firstName?: StringFieldUpdateOperationsInput | string
lastName?: StringFieldUpdateOperationsInput | string
dateOfBirth?: DateTimeFieldUpdateOperationsInput | Date | string
gender?: StringFieldUpdateOperationsInput | string
phone?: StringFieldUpdateOperationsInput | string
email?: NullableStringFieldUpdateOperationsInput | string | null
address?: NullableStringFieldUpdateOperationsInput | string | null
city?: NullableStringFieldUpdateOperationsInput | string | null
zipCode?: NullableStringFieldUpdateOperationsInput | string | null
insuranceProvider?: NullableStringFieldUpdateOperationsInput | string | null
insuranceId?: NullableStringFieldUpdateOperationsInput | string | null
groupNumber?: NullableStringFieldUpdateOperationsInput | string | null
policyHolder?: NullableStringFieldUpdateOperationsInput | string | null
allergies?: NullableStringFieldUpdateOperationsInput | string | null
medicalConditions?: NullableStringFieldUpdateOperationsInput | string | null
status?: StringFieldUpdateOperationsInput | string
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type PatientUncheckedUpdateManyInput = {
id?: IntFieldUpdateOperationsInput | number
firstName?: StringFieldUpdateOperationsInput | string
lastName?: StringFieldUpdateOperationsInput | string
dateOfBirth?: DateTimeFieldUpdateOperationsInput | Date | string
gender?: StringFieldUpdateOperationsInput | string
phone?: StringFieldUpdateOperationsInput | string
email?: NullableStringFieldUpdateOperationsInput | string | null
address?: NullableStringFieldUpdateOperationsInput | string | null
city?: NullableStringFieldUpdateOperationsInput | string | null
zipCode?: NullableStringFieldUpdateOperationsInput | string | null
insuranceProvider?: NullableStringFieldUpdateOperationsInput | string | null
insuranceId?: NullableStringFieldUpdateOperationsInput | string | null
groupNumber?: NullableStringFieldUpdateOperationsInput | string | null
policyHolder?: NullableStringFieldUpdateOperationsInput | string | null
allergies?: NullableStringFieldUpdateOperationsInput | string | null
medicalConditions?: NullableStringFieldUpdateOperationsInput | string | null
status?: StringFieldUpdateOperationsInput | string
userId?: IntFieldUpdateOperationsInput | number
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type AppointmentCreateInput = {
title: string
date: Date | string
startTime: Date | string
endTime: Date | string
type: string
notes?: string | null
status?: string
createdAt?: Date | string
patient: PatientCreateNestedOneWithoutAppointmentsInput
user: UserCreateNestedOneWithoutAppointmentsInput
}
export type AppointmentUncheckedCreateInput = {
id?: number
patientId: number
userId: number
title: string
date: Date | string
startTime: Date | string
endTime: Date | string
type: string
notes?: string | null
status?: string
createdAt?: Date | string
}
export type AppointmentUpdateInput = {
title?: StringFieldUpdateOperationsInput | string
date?: DateTimeFieldUpdateOperationsInput | Date | string
startTime?: DateTimeFieldUpdateOperationsInput | Date | string
endTime?: DateTimeFieldUpdateOperationsInput | Date | string
type?: StringFieldUpdateOperationsInput | string
notes?: NullableStringFieldUpdateOperationsInput | string | null
status?: StringFieldUpdateOperationsInput | string
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
patient?: PatientUpdateOneRequiredWithoutAppointmentsNestedInput
user?: UserUpdateOneRequiredWithoutAppointmentsNestedInput
}
export type AppointmentUncheckedUpdateInput = {
id?: IntFieldUpdateOperationsInput | number
patientId?: IntFieldUpdateOperationsInput | number
userId?: IntFieldUpdateOperationsInput | number
title?: StringFieldUpdateOperationsInput | string
date?: DateTimeFieldUpdateOperationsInput | Date | string
startTime?: DateTimeFieldUpdateOperationsInput | Date | string
endTime?: DateTimeFieldUpdateOperationsInput | Date | string
type?: StringFieldUpdateOperationsInput | string
notes?: NullableStringFieldUpdateOperationsInput | string | null
status?: StringFieldUpdateOperationsInput | string
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type AppointmentCreateManyInput = {
id?: number
patientId: number
userId: number
title: string
date: Date | string
startTime: Date | string
endTime: Date | string
type: string
notes?: string | null
status?: string
createdAt?: Date | string
}
export type AppointmentUpdateManyMutationInput = {
title?: StringFieldUpdateOperationsInput | string
date?: DateTimeFieldUpdateOperationsInput | Date | string
startTime?: DateTimeFieldUpdateOperationsInput | Date | string
endTime?: DateTimeFieldUpdateOperationsInput | Date | string
type?: StringFieldUpdateOperationsInput | string
notes?: NullableStringFieldUpdateOperationsInput | string | null
status?: StringFieldUpdateOperationsInput | string
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type AppointmentUncheckedUpdateManyInput = {
id?: IntFieldUpdateOperationsInput | number
patientId?: IntFieldUpdateOperationsInput | number
userId?: IntFieldUpdateOperationsInput | number
title?: StringFieldUpdateOperationsInput | string
date?: DateTimeFieldUpdateOperationsInput | Date | string
startTime?: DateTimeFieldUpdateOperationsInput | Date | string
endTime?: DateTimeFieldUpdateOperationsInput | Date | string
type?: StringFieldUpdateOperationsInput | string
notes?: NullableStringFieldUpdateOperationsInput | string | null
status?: StringFieldUpdateOperationsInput | string
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type IntFilter<$PrismaModel = never> = {
equals?: number | IntFieldRefInput<$PrismaModel>
in?: number[] | ListIntFieldRefInput<$PrismaModel>
notIn?: number[] | ListIntFieldRefInput<$PrismaModel>
lt?: number | IntFieldRefInput<$PrismaModel>
lte?: number | IntFieldRefInput<$PrismaModel>
gt?: number | IntFieldRefInput<$PrismaModel>
gte?: number | IntFieldRefInput<$PrismaModel>
not?: NestedIntFilter<$PrismaModel> | number
}
export type StringFilter<$PrismaModel = never> = {
equals?: string | StringFieldRefInput<$PrismaModel>
in?: string[] | ListStringFieldRefInput<$PrismaModel>
notIn?: string[] | ListStringFieldRefInput<$PrismaModel>
lt?: string | StringFieldRefInput<$PrismaModel>
lte?: string | StringFieldRefInput<$PrismaModel>
gt?: string | StringFieldRefInput<$PrismaModel>
gte?: string | StringFieldRefInput<$PrismaModel>
contains?: string | StringFieldRefInput<$PrismaModel>
startsWith?: string | StringFieldRefInput<$PrismaModel>
endsWith?: string | StringFieldRefInput<$PrismaModel>
mode?: QueryMode
not?: NestedStringFilter<$PrismaModel> | string
}
export type PatientListRelationFilter = {
every?: PatientWhereInput
some?: PatientWhereInput
none?: PatientWhereInput
}
export type AppointmentListRelationFilter = {
every?: AppointmentWhereInput
some?: AppointmentWhereInput
none?: AppointmentWhereInput
}
export type PatientOrderByRelationAggregateInput = {
_count?: SortOrder
}
export type AppointmentOrderByRelationAggregateInput = {
_count?: SortOrder
}
export type UserCountOrderByAggregateInput = {
id?: SortOrder
username?: SortOrder
password?: SortOrder
}
export type UserAvgOrderByAggregateInput = {
id?: SortOrder
}
export type UserMaxOrderByAggregateInput = {
id?: SortOrder
username?: SortOrder
password?: SortOrder
}
export type UserMinOrderByAggregateInput = {
id?: SortOrder
username?: SortOrder
password?: SortOrder
}
export type UserSumOrderByAggregateInput = {
id?: SortOrder
}
export type IntWithAggregatesFilter<$PrismaModel = never> = {
equals?: number | IntFieldRefInput<$PrismaModel>
in?: number[] | ListIntFieldRefInput<$PrismaModel>
notIn?: number[] | ListIntFieldRefInput<$PrismaModel>
lt?: number | IntFieldRefInput<$PrismaModel>
lte?: number | IntFieldRefInput<$PrismaModel>
gt?: number | IntFieldRefInput<$PrismaModel>
gte?: number | IntFieldRefInput<$PrismaModel>
not?: NestedIntWithAggregatesFilter<$PrismaModel> | number
_count?: NestedIntFilter<$PrismaModel>
_avg?: NestedFloatFilter<$PrismaModel>
_sum?: NestedIntFilter<$PrismaModel>
_min?: NestedIntFilter<$PrismaModel>
_max?: NestedIntFilter<$PrismaModel>
}
export type StringWithAggregatesFilter<$PrismaModel = never> = {
equals?: string | StringFieldRefInput<$PrismaModel>
in?: string[] | ListStringFieldRefInput<$PrismaModel>
notIn?: string[] | ListStringFieldRefInput<$PrismaModel>
lt?: string | StringFieldRefInput<$PrismaModel>
lte?: string | StringFieldRefInput<$PrismaModel>
gt?: string | StringFieldRefInput<$PrismaModel>
gte?: string | StringFieldRefInput<$PrismaModel>
contains?: string | StringFieldRefInput<$PrismaModel>
startsWith?: string | StringFieldRefInput<$PrismaModel>
endsWith?: string | StringFieldRefInput<$PrismaModel>
mode?: QueryMode
not?: NestedStringWithAggregatesFilter<$PrismaModel> | string
_count?: NestedIntFilter<$PrismaModel>
_min?: NestedStringFilter<$PrismaModel>
_max?: NestedStringFilter<$PrismaModel>
}
export type DateTimeFilter<$PrismaModel = never> = {
equals?: Date | string | DateTimeFieldRefInput<$PrismaModel>
in?: Date[] | string[] | ListDateTimeFieldRefInput<$PrismaModel>
notIn?: Date[] | string[] | ListDateTimeFieldRefInput<$PrismaModel>
lt?: Date | string | DateTimeFieldRefInput<$PrismaModel>
lte?: Date | string | DateTimeFieldRefInput<$PrismaModel>
gt?: Date | string | DateTimeFieldRefInput<$PrismaModel>
gte?: Date | string | DateTimeFieldRefInput<$PrismaModel>
not?: NestedDateTimeFilter<$PrismaModel> | Date | string
}
export type StringNullableFilter<$PrismaModel = never> = {
equals?: string | StringFieldRefInput<$PrismaModel> | null
in?: string[] | ListStringFieldRefInput<$PrismaModel> | null
notIn?: string[] | ListStringFieldRefInput<$PrismaModel> | null
lt?: string | StringFieldRefInput<$PrismaModel>
lte?: string | StringFieldRefInput<$PrismaModel>
gt?: string | StringFieldRefInput<$PrismaModel>
gte?: string | StringFieldRefInput<$PrismaModel>
contains?: string | StringFieldRefInput<$PrismaModel>
startsWith?: string | StringFieldRefInput<$PrismaModel>
endsWith?: string | StringFieldRefInput<$PrismaModel>
mode?: QueryMode
not?: NestedStringNullableFilter<$PrismaModel> | string | null
}
export type UserScalarRelationFilter = {
is?: UserWhereInput
isNot?: UserWhereInput
}
export type SortOrderInput = {
sort: SortOrder
nulls?: NullsOrder
}
export type PatientCountOrderByAggregateInput = {
id?: SortOrder
firstName?: SortOrder
lastName?: SortOrder
dateOfBirth?: SortOrder
gender?: SortOrder
phone?: SortOrder
email?: SortOrder
address?: SortOrder
city?: SortOrder
zipCode?: SortOrder
insuranceProvider?: SortOrder
insuranceId?: SortOrder
groupNumber?: SortOrder
policyHolder?: SortOrder
allergies?: SortOrder
medicalConditions?: SortOrder
status?: SortOrder
userId?: SortOrder
createdAt?: SortOrder
}
export type PatientAvgOrderByAggregateInput = {
id?: SortOrder
userId?: SortOrder
}
export type PatientMaxOrderByAggregateInput = {
id?: SortOrder
firstName?: SortOrder
lastName?: SortOrder
dateOfBirth?: SortOrder
gender?: SortOrder
phone?: SortOrder
email?: SortOrder
address?: SortOrder
city?: SortOrder
zipCode?: SortOrder
insuranceProvider?: SortOrder
insuranceId?: SortOrder
groupNumber?: SortOrder
policyHolder?: SortOrder
allergies?: SortOrder
medicalConditions?: SortOrder
status?: SortOrder
userId?: SortOrder
createdAt?: SortOrder
}
export type PatientMinOrderByAggregateInput = {
id?: SortOrder
firstName?: SortOrder
lastName?: SortOrder
dateOfBirth?: SortOrder
gender?: SortOrder
phone?: SortOrder
email?: SortOrder
address?: SortOrder
city?: SortOrder
zipCode?: SortOrder
insuranceProvider?: SortOrder
insuranceId?: SortOrder
groupNumber?: SortOrder
policyHolder?: SortOrder
allergies?: SortOrder
medicalConditions?: SortOrder
status?: SortOrder
userId?: SortOrder
createdAt?: SortOrder
}
export type PatientSumOrderByAggregateInput = {
id?: SortOrder
userId?: SortOrder
}
export type DateTimeWithAggregatesFilter<$PrismaModel = never> = {
equals?: Date | string | DateTimeFieldRefInput<$PrismaModel>
in?: Date[] | string[] | ListDateTimeFieldRefInput<$PrismaModel>
notIn?: Date[] | string[] | ListDateTimeFieldRefInput<$PrismaModel>
lt?: Date | string | DateTimeFieldRefInput<$PrismaModel>
lte?: Date | string | DateTimeFieldRefInput<$PrismaModel>
gt?: Date | string | DateTimeFieldRefInput<$PrismaModel>
gte?: Date | string | DateTimeFieldRefInput<$PrismaModel>
not?: NestedDateTimeWithAggregatesFilter<$PrismaModel> | Date | string
_count?: NestedIntFilter<$PrismaModel>
_min?: NestedDateTimeFilter<$PrismaModel>
_max?: NestedDateTimeFilter<$PrismaModel>
}
export type StringNullableWithAggregatesFilter<$PrismaModel = never> = {
equals?: string | StringFieldRefInput<$PrismaModel> | null
in?: string[] | ListStringFieldRefInput<$PrismaModel> | null
notIn?: string[] | ListStringFieldRefInput<$PrismaModel> | null
lt?: string | StringFieldRefInput<$PrismaModel>
lte?: string | StringFieldRefInput<$PrismaModel>
gt?: string | StringFieldRefInput<$PrismaModel>
gte?: string | StringFieldRefInput<$PrismaModel>
contains?: string | StringFieldRefInput<$PrismaModel>
startsWith?: string | StringFieldRefInput<$PrismaModel>
endsWith?: string | StringFieldRefInput<$PrismaModel>
mode?: QueryMode
not?: NestedStringNullableWithAggregatesFilter<$PrismaModel> | string | null
_count?: NestedIntNullableFilter<$PrismaModel>
_min?: NestedStringNullableFilter<$PrismaModel>
_max?: NestedStringNullableFilter<$PrismaModel>
}
export type PatientScalarRelationFilter = {
is?: PatientWhereInput
isNot?: PatientWhereInput
}
export type AppointmentCountOrderByAggregateInput = {
id?: SortOrder
patientId?: SortOrder
userId?: SortOrder
title?: SortOrder
date?: SortOrder
startTime?: SortOrder
endTime?: SortOrder
type?: SortOrder
notes?: SortOrder
status?: SortOrder
createdAt?: SortOrder
}
export type AppointmentAvgOrderByAggregateInput = {
id?: SortOrder
patientId?: SortOrder
userId?: SortOrder
}
export type AppointmentMaxOrderByAggregateInput = {
id?: SortOrder
patientId?: SortOrder
userId?: SortOrder
title?: SortOrder
date?: SortOrder
startTime?: SortOrder
endTime?: SortOrder
type?: SortOrder
notes?: SortOrder
status?: SortOrder
createdAt?: SortOrder
}
export type AppointmentMinOrderByAggregateInput = {
id?: SortOrder
patientId?: SortOrder
userId?: SortOrder
title?: SortOrder
date?: SortOrder
startTime?: SortOrder
endTime?: SortOrder
type?: SortOrder
notes?: SortOrder
status?: SortOrder
createdAt?: SortOrder
}
export type AppointmentSumOrderByAggregateInput = {
id?: SortOrder
patientId?: SortOrder
userId?: SortOrder
}
export type PatientCreateNestedManyWithoutUserInput = {
create?: XOR<PatientCreateWithoutUserInput, PatientUncheckedCreateWithoutUserInput> | PatientCreateWithoutUserInput[] | PatientUncheckedCreateWithoutUserInput[]
connectOrCreate?: PatientCreateOrConnectWithoutUserInput | PatientCreateOrConnectWithoutUserInput[]
createMany?: PatientCreateManyUserInputEnvelope
connect?: PatientWhereUniqueInput | PatientWhereUniqueInput[]
}
export type AppointmentCreateNestedManyWithoutUserInput = {
create?: XOR<AppointmentCreateWithoutUserInput, AppointmentUncheckedCreateWithoutUserInput> | AppointmentCreateWithoutUserInput[] | AppointmentUncheckedCreateWithoutUserInput[]
connectOrCreate?: AppointmentCreateOrConnectWithoutUserInput | AppointmentCreateOrConnectWithoutUserInput[]
createMany?: AppointmentCreateManyUserInputEnvelope
connect?: AppointmentWhereUniqueInput | AppointmentWhereUniqueInput[]
}
export type PatientUncheckedCreateNestedManyWithoutUserInput = {
create?: XOR<PatientCreateWithoutUserInput, PatientUncheckedCreateWithoutUserInput> | PatientCreateWithoutUserInput[] | PatientUncheckedCreateWithoutUserInput[]
connectOrCreate?: PatientCreateOrConnectWithoutUserInput | PatientCreateOrConnectWithoutUserInput[]
createMany?: PatientCreateManyUserInputEnvelope
connect?: PatientWhereUniqueInput | PatientWhereUniqueInput[]
}
export type AppointmentUncheckedCreateNestedManyWithoutUserInput = {
create?: XOR<AppointmentCreateWithoutUserInput, AppointmentUncheckedCreateWithoutUserInput> | AppointmentCreateWithoutUserInput[] | AppointmentUncheckedCreateWithoutUserInput[]
connectOrCreate?: AppointmentCreateOrConnectWithoutUserInput | AppointmentCreateOrConnectWithoutUserInput[]
createMany?: AppointmentCreateManyUserInputEnvelope
connect?: AppointmentWhereUniqueInput | AppointmentWhereUniqueInput[]
}
export type StringFieldUpdateOperationsInput = {
set?: string
}
export type PatientUpdateManyWithoutUserNestedInput = {
create?: XOR<PatientCreateWithoutUserInput, PatientUncheckedCreateWithoutUserInput> | PatientCreateWithoutUserInput[] | PatientUncheckedCreateWithoutUserInput[]
connectOrCreate?: PatientCreateOrConnectWithoutUserInput | PatientCreateOrConnectWithoutUserInput[]
upsert?: PatientUpsertWithWhereUniqueWithoutUserInput | PatientUpsertWithWhereUniqueWithoutUserInput[]
createMany?: PatientCreateManyUserInputEnvelope
set?: PatientWhereUniqueInput | PatientWhereUniqueInput[]
disconnect?: PatientWhereUniqueInput | PatientWhereUniqueInput[]
delete?: PatientWhereUniqueInput | PatientWhereUniqueInput[]
connect?: PatientWhereUniqueInput | PatientWhereUniqueInput[]
update?: PatientUpdateWithWhereUniqueWithoutUserInput | PatientUpdateWithWhereUniqueWithoutUserInput[]
updateMany?: PatientUpdateManyWithWhereWithoutUserInput | PatientUpdateManyWithWhereWithoutUserInput[]
deleteMany?: PatientScalarWhereInput | PatientScalarWhereInput[]
}
export type AppointmentUpdateManyWithoutUserNestedInput = {
create?: XOR<AppointmentCreateWithoutUserInput, AppointmentUncheckedCreateWithoutUserInput> | AppointmentCreateWithoutUserInput[] | AppointmentUncheckedCreateWithoutUserInput[]
connectOrCreate?: AppointmentCreateOrConnectWithoutUserInput | AppointmentCreateOrConnectWithoutUserInput[]
upsert?: AppointmentUpsertWithWhereUniqueWithoutUserInput | AppointmentUpsertWithWhereUniqueWithoutUserInput[]
createMany?: AppointmentCreateManyUserInputEnvelope
set?: AppointmentWhereUniqueInput | AppointmentWhereUniqueInput[]
disconnect?: AppointmentWhereUniqueInput | AppointmentWhereUniqueInput[]
delete?: AppointmentWhereUniqueInput | AppointmentWhereUniqueInput[]
connect?: AppointmentWhereUniqueInput | AppointmentWhereUniqueInput[]
update?: AppointmentUpdateWithWhereUniqueWithoutUserInput | AppointmentUpdateWithWhereUniqueWithoutUserInput[]
updateMany?: AppointmentUpdateManyWithWhereWithoutUserInput | AppointmentUpdateManyWithWhereWithoutUserInput[]
deleteMany?: AppointmentScalarWhereInput | AppointmentScalarWhereInput[]
}
export type IntFieldUpdateOperationsInput = {
set?: number
increment?: number
decrement?: number
multiply?: number
divide?: number
}
export type PatientUncheckedUpdateManyWithoutUserNestedInput = {
create?: XOR<PatientCreateWithoutUserInput, PatientUncheckedCreateWithoutUserInput> | PatientCreateWithoutUserInput[] | PatientUncheckedCreateWithoutUserInput[]
connectOrCreate?: PatientCreateOrConnectWithoutUserInput | PatientCreateOrConnectWithoutUserInput[]
upsert?: PatientUpsertWithWhereUniqueWithoutUserInput | PatientUpsertWithWhereUniqueWithoutUserInput[]
createMany?: PatientCreateManyUserInputEnvelope
set?: PatientWhereUniqueInput | PatientWhereUniqueInput[]
disconnect?: PatientWhereUniqueInput | PatientWhereUniqueInput[]
delete?: PatientWhereUniqueInput | PatientWhereUniqueInput[]
connect?: PatientWhereUniqueInput | PatientWhereUniqueInput[]
update?: PatientUpdateWithWhereUniqueWithoutUserInput | PatientUpdateWithWhereUniqueWithoutUserInput[]
updateMany?: PatientUpdateManyWithWhereWithoutUserInput | PatientUpdateManyWithWhereWithoutUserInput[]
deleteMany?: PatientScalarWhereInput | PatientScalarWhereInput[]
}
export type AppointmentUncheckedUpdateManyWithoutUserNestedInput = {
create?: XOR<AppointmentCreateWithoutUserInput, AppointmentUncheckedCreateWithoutUserInput> | AppointmentCreateWithoutUserInput[] | AppointmentUncheckedCreateWithoutUserInput[]
connectOrCreate?: AppointmentCreateOrConnectWithoutUserInput | AppointmentCreateOrConnectWithoutUserInput[]
upsert?: AppointmentUpsertWithWhereUniqueWithoutUserInput | AppointmentUpsertWithWhereUniqueWithoutUserInput[]
createMany?: AppointmentCreateManyUserInputEnvelope
set?: AppointmentWhereUniqueInput | AppointmentWhereUniqueInput[]
disconnect?: AppointmentWhereUniqueInput | AppointmentWhereUniqueInput[]
delete?: AppointmentWhereUniqueInput | AppointmentWhereUniqueInput[]
connect?: AppointmentWhereUniqueInput | AppointmentWhereUniqueInput[]
update?: AppointmentUpdateWithWhereUniqueWithoutUserInput | AppointmentUpdateWithWhereUniqueWithoutUserInput[]
updateMany?: AppointmentUpdateManyWithWhereWithoutUserInput | AppointmentUpdateManyWithWhereWithoutUserInput[]
deleteMany?: AppointmentScalarWhereInput | AppointmentScalarWhereInput[]
}
export type UserCreateNestedOneWithoutPatientsInput = {
create?: XOR<UserCreateWithoutPatientsInput, UserUncheckedCreateWithoutPatientsInput>
connectOrCreate?: UserCreateOrConnectWithoutPatientsInput
connect?: UserWhereUniqueInput
}
export type AppointmentCreateNestedManyWithoutPatientInput = {
create?: XOR<AppointmentCreateWithoutPatientInput, AppointmentUncheckedCreateWithoutPatientInput> | AppointmentCreateWithoutPatientInput[] | AppointmentUncheckedCreateWithoutPatientInput[]
connectOrCreate?: AppointmentCreateOrConnectWithoutPatientInput | AppointmentCreateOrConnectWithoutPatientInput[]
createMany?: AppointmentCreateManyPatientInputEnvelope
connect?: AppointmentWhereUniqueInput | AppointmentWhereUniqueInput[]
}
export type AppointmentUncheckedCreateNestedManyWithoutPatientInput = {
create?: XOR<AppointmentCreateWithoutPatientInput, AppointmentUncheckedCreateWithoutPatientInput> | AppointmentCreateWithoutPatientInput[] | AppointmentUncheckedCreateWithoutPatientInput[]
connectOrCreate?: AppointmentCreateOrConnectWithoutPatientInput | AppointmentCreateOrConnectWithoutPatientInput[]
createMany?: AppointmentCreateManyPatientInputEnvelope
connect?: AppointmentWhereUniqueInput | AppointmentWhereUniqueInput[]
}
export type DateTimeFieldUpdateOperationsInput = {
set?: Date | string
}
export type NullableStringFieldUpdateOperationsInput = {
set?: string | null
}
export type UserUpdateOneRequiredWithoutPatientsNestedInput = {
create?: XOR<UserCreateWithoutPatientsInput, UserUncheckedCreateWithoutPatientsInput>
connectOrCreate?: UserCreateOrConnectWithoutPatientsInput
upsert?: UserUpsertWithoutPatientsInput
connect?: UserWhereUniqueInput
update?: XOR<XOR<UserUpdateToOneWithWhereWithoutPatientsInput, UserUpdateWithoutPatientsInput>, UserUncheckedUpdateWithoutPatientsInput>
}
export type AppointmentUpdateManyWithoutPatientNestedInput = {
create?: XOR<AppointmentCreateWithoutPatientInput, AppointmentUncheckedCreateWithoutPatientInput> | AppointmentCreateWithoutPatientInput[] | AppointmentUncheckedCreateWithoutPatientInput[]
connectOrCreate?: AppointmentCreateOrConnectWithoutPatientInput | AppointmentCreateOrConnectWithoutPatientInput[]
upsert?: AppointmentUpsertWithWhereUniqueWithoutPatientInput | AppointmentUpsertWithWhereUniqueWithoutPatientInput[]
createMany?: AppointmentCreateManyPatientInputEnvelope
set?: AppointmentWhereUniqueInput | AppointmentWhereUniqueInput[]
disconnect?: AppointmentWhereUniqueInput | AppointmentWhereUniqueInput[]
delete?: AppointmentWhereUniqueInput | AppointmentWhereUniqueInput[]
connect?: AppointmentWhereUniqueInput | AppointmentWhereUniqueInput[]
update?: AppointmentUpdateWithWhereUniqueWithoutPatientInput | AppointmentUpdateWithWhereUniqueWithoutPatientInput[]
updateMany?: AppointmentUpdateManyWithWhereWithoutPatientInput | AppointmentUpdateManyWithWhereWithoutPatientInput[]
deleteMany?: AppointmentScalarWhereInput | AppointmentScalarWhereInput[]
}
export type AppointmentUncheckedUpdateManyWithoutPatientNestedInput = {
create?: XOR<AppointmentCreateWithoutPatientInput, AppointmentUncheckedCreateWithoutPatientInput> | AppointmentCreateWithoutPatientInput[] | AppointmentUncheckedCreateWithoutPatientInput[]
connectOrCreate?: AppointmentCreateOrConnectWithoutPatientInput | AppointmentCreateOrConnectWithoutPatientInput[]
upsert?: AppointmentUpsertWithWhereUniqueWithoutPatientInput | AppointmentUpsertWithWhereUniqueWithoutPatientInput[]
createMany?: AppointmentCreateManyPatientInputEnvelope
set?: AppointmentWhereUniqueInput | AppointmentWhereUniqueInput[]
disconnect?: AppointmentWhereUniqueInput | AppointmentWhereUniqueInput[]
delete?: AppointmentWhereUniqueInput | AppointmentWhereUniqueInput[]
connect?: AppointmentWhereUniqueInput | AppointmentWhereUniqueInput[]
update?: AppointmentUpdateWithWhereUniqueWithoutPatientInput | AppointmentUpdateWithWhereUniqueWithoutPatientInput[]
updateMany?: AppointmentUpdateManyWithWhereWithoutPatientInput | AppointmentUpdateManyWithWhereWithoutPatientInput[]
deleteMany?: AppointmentScalarWhereInput | AppointmentScalarWhereInput[]
}
export type PatientCreateNestedOneWithoutAppointmentsInput = {
create?: XOR<PatientCreateWithoutAppointmentsInput, PatientUncheckedCreateWithoutAppointmentsInput>
connectOrCreate?: PatientCreateOrConnectWithoutAppointmentsInput
connect?: PatientWhereUniqueInput
}
export type UserCreateNestedOneWithoutAppointmentsInput = {
create?: XOR<UserCreateWithoutAppointmentsInput, UserUncheckedCreateWithoutAppointmentsInput>
connectOrCreate?: UserCreateOrConnectWithoutAppointmentsInput
connect?: UserWhereUniqueInput
}
export type PatientUpdateOneRequiredWithoutAppointmentsNestedInput = {
create?: XOR<PatientCreateWithoutAppointmentsInput, PatientUncheckedCreateWithoutAppointmentsInput>
connectOrCreate?: PatientCreateOrConnectWithoutAppointmentsInput
upsert?: PatientUpsertWithoutAppointmentsInput
connect?: PatientWhereUniqueInput
update?: XOR<XOR<PatientUpdateToOneWithWhereWithoutAppointmentsInput, PatientUpdateWithoutAppointmentsInput>, PatientUncheckedUpdateWithoutAppointmentsInput>
}
export type UserUpdateOneRequiredWithoutAppointmentsNestedInput = {
create?: XOR<UserCreateWithoutAppointmentsInput, UserUncheckedCreateWithoutAppointmentsInput>
connectOrCreate?: UserCreateOrConnectWithoutAppointmentsInput
upsert?: UserUpsertWithoutAppointmentsInput
connect?: UserWhereUniqueInput
update?: XOR<XOR<UserUpdateToOneWithWhereWithoutAppointmentsInput, UserUpdateWithoutAppointmentsInput>, UserUncheckedUpdateWithoutAppointmentsInput>
}
export type NestedIntFilter<$PrismaModel = never> = {
equals?: number | IntFieldRefInput<$PrismaModel>
in?: number[] | ListIntFieldRefInput<$PrismaModel>
notIn?: number[] | ListIntFieldRefInput<$PrismaModel>
lt?: number | IntFieldRefInput<$PrismaModel>
lte?: number | IntFieldRefInput<$PrismaModel>
gt?: number | IntFieldRefInput<$PrismaModel>
gte?: number | IntFieldRefInput<$PrismaModel>
not?: NestedIntFilter<$PrismaModel> | number
}
export type NestedStringFilter<$PrismaModel = never> = {
equals?: string | StringFieldRefInput<$PrismaModel>
in?: string[] | ListStringFieldRefInput<$PrismaModel>
notIn?: string[] | ListStringFieldRefInput<$PrismaModel>
lt?: string | StringFieldRefInput<$PrismaModel>
lte?: string | StringFieldRefInput<$PrismaModel>
gt?: string | StringFieldRefInput<$PrismaModel>
gte?: string | StringFieldRefInput<$PrismaModel>
contains?: string | StringFieldRefInput<$PrismaModel>
startsWith?: string | StringFieldRefInput<$PrismaModel>
endsWith?: string | StringFieldRefInput<$PrismaModel>
not?: NestedStringFilter<$PrismaModel> | string
}
export type NestedIntWithAggregatesFilter<$PrismaModel = never> = {
equals?: number | IntFieldRefInput<$PrismaModel>
in?: number[] | ListIntFieldRefInput<$PrismaModel>
notIn?: number[] | ListIntFieldRefInput<$PrismaModel>
lt?: number | IntFieldRefInput<$PrismaModel>
lte?: number | IntFieldRefInput<$PrismaModel>
gt?: number | IntFieldRefInput<$PrismaModel>
gte?: number | IntFieldRefInput<$PrismaModel>
not?: NestedIntWithAggregatesFilter<$PrismaModel> | number
_count?: NestedIntFilter<$PrismaModel>
_avg?: NestedFloatFilter<$PrismaModel>
_sum?: NestedIntFilter<$PrismaModel>
_min?: NestedIntFilter<$PrismaModel>
_max?: NestedIntFilter<$PrismaModel>
}
export type NestedFloatFilter<$PrismaModel = never> = {
equals?: number | FloatFieldRefInput<$PrismaModel>
in?: number[] | ListFloatFieldRefInput<$PrismaModel>
notIn?: number[] | ListFloatFieldRefInput<$PrismaModel>
lt?: number | FloatFieldRefInput<$PrismaModel>
lte?: number | FloatFieldRefInput<$PrismaModel>
gt?: number | FloatFieldRefInput<$PrismaModel>
gte?: number | FloatFieldRefInput<$PrismaModel>
not?: NestedFloatFilter<$PrismaModel> | number
}
export type NestedStringWithAggregatesFilter<$PrismaModel = never> = {
equals?: string | StringFieldRefInput<$PrismaModel>
in?: string[] | ListStringFieldRefInput<$PrismaModel>
notIn?: string[] | ListStringFieldRefInput<$PrismaModel>
lt?: string | StringFieldRefInput<$PrismaModel>
lte?: string | StringFieldRefInput<$PrismaModel>
gt?: string | StringFieldRefInput<$PrismaModel>
gte?: string | StringFieldRefInput<$PrismaModel>
contains?: string | StringFieldRefInput<$PrismaModel>
startsWith?: string | StringFieldRefInput<$PrismaModel>
endsWith?: string | StringFieldRefInput<$PrismaModel>
not?: NestedStringWithAggregatesFilter<$PrismaModel> | string
_count?: NestedIntFilter<$PrismaModel>
_min?: NestedStringFilter<$PrismaModel>
_max?: NestedStringFilter<$PrismaModel>
}
export type NestedDateTimeFilter<$PrismaModel = never> = {
equals?: Date | string | DateTimeFieldRefInput<$PrismaModel>
in?: Date[] | string[] | ListDateTimeFieldRefInput<$PrismaModel>
notIn?: Date[] | string[] | ListDateTimeFieldRefInput<$PrismaModel>
lt?: Date | string | DateTimeFieldRefInput<$PrismaModel>
lte?: Date | string | DateTimeFieldRefInput<$PrismaModel>
gt?: Date | string | DateTimeFieldRefInput<$PrismaModel>
gte?: Date | string | DateTimeFieldRefInput<$PrismaModel>
not?: NestedDateTimeFilter<$PrismaModel> | Date | string
}
export type NestedStringNullableFilter<$PrismaModel = never> = {
equals?: string | StringFieldRefInput<$PrismaModel> | null
in?: string[] | ListStringFieldRefInput<$PrismaModel> | null
notIn?: string[] | ListStringFieldRefInput<$PrismaModel> | null
lt?: string | StringFieldRefInput<$PrismaModel>
lte?: string | StringFieldRefInput<$PrismaModel>
gt?: string | StringFieldRefInput<$PrismaModel>
gte?: string | StringFieldRefInput<$PrismaModel>
contains?: string | StringFieldRefInput<$PrismaModel>
startsWith?: string | StringFieldRefInput<$PrismaModel>
endsWith?: string | StringFieldRefInput<$PrismaModel>
not?: NestedStringNullableFilter<$PrismaModel> | string | null
}
export type NestedDateTimeWithAggregatesFilter<$PrismaModel = never> = {
equals?: Date | string | DateTimeFieldRefInput<$PrismaModel>
in?: Date[] | string[] | ListDateTimeFieldRefInput<$PrismaModel>
notIn?: Date[] | string[] | ListDateTimeFieldRefInput<$PrismaModel>
lt?: Date | string | DateTimeFieldRefInput<$PrismaModel>
lte?: Date | string | DateTimeFieldRefInput<$PrismaModel>
gt?: Date | string | DateTimeFieldRefInput<$PrismaModel>
gte?: Date | string | DateTimeFieldRefInput<$PrismaModel>
not?: NestedDateTimeWithAggregatesFilter<$PrismaModel> | Date | string
_count?: NestedIntFilter<$PrismaModel>
_min?: NestedDateTimeFilter<$PrismaModel>
_max?: NestedDateTimeFilter<$PrismaModel>
}
export type NestedStringNullableWithAggregatesFilter<$PrismaModel = never> = {
equals?: string | StringFieldRefInput<$PrismaModel> | null
in?: string[] | ListStringFieldRefInput<$PrismaModel> | null
notIn?: string[] | ListStringFieldRefInput<$PrismaModel> | null
lt?: string | StringFieldRefInput<$PrismaModel>
lte?: string | StringFieldRefInput<$PrismaModel>
gt?: string | StringFieldRefInput<$PrismaModel>
gte?: string | StringFieldRefInput<$PrismaModel>
contains?: string | StringFieldRefInput<$PrismaModel>
startsWith?: string | StringFieldRefInput<$PrismaModel>
endsWith?: string | StringFieldRefInput<$PrismaModel>
not?: NestedStringNullableWithAggregatesFilter<$PrismaModel> | string | null
_count?: NestedIntNullableFilter<$PrismaModel>
_min?: NestedStringNullableFilter<$PrismaModel>
_max?: NestedStringNullableFilter<$PrismaModel>
}
export type NestedIntNullableFilter<$PrismaModel = never> = {
equals?: number | IntFieldRefInput<$PrismaModel> | null
in?: number[] | ListIntFieldRefInput<$PrismaModel> | null
notIn?: number[] | ListIntFieldRefInput<$PrismaModel> | null
lt?: number | IntFieldRefInput<$PrismaModel>
lte?: number | IntFieldRefInput<$PrismaModel>
gt?: number | IntFieldRefInput<$PrismaModel>
gte?: number | IntFieldRefInput<$PrismaModel>
not?: NestedIntNullableFilter<$PrismaModel> | number | null
}
export type PatientCreateWithoutUserInput = {
firstName: string
lastName: string
dateOfBirth: Date | string
gender: string
phone: string
email?: string | null
address?: string | null
city?: string | null
zipCode?: string | null
insuranceProvider?: string | null
insuranceId?: string | null
groupNumber?: string | null
policyHolder?: string | null
allergies?: string | null
medicalConditions?: string | null
status?: string
createdAt?: Date | string
appointments?: AppointmentCreateNestedManyWithoutPatientInput
}
export type PatientUncheckedCreateWithoutUserInput = {
id?: number
firstName: string
lastName: string
dateOfBirth: Date | string
gender: string
phone: string
email?: string | null
address?: string | null
city?: string | null
zipCode?: string | null
insuranceProvider?: string | null
insuranceId?: string | null
groupNumber?: string | null
policyHolder?: string | null
allergies?: string | null
medicalConditions?: string | null
status?: string
createdAt?: Date | string
appointments?: AppointmentUncheckedCreateNestedManyWithoutPatientInput
}
export type PatientCreateOrConnectWithoutUserInput = {
where: PatientWhereUniqueInput
create: XOR<PatientCreateWithoutUserInput, PatientUncheckedCreateWithoutUserInput>
}
export type PatientCreateManyUserInputEnvelope = {
data: PatientCreateManyUserInput | PatientCreateManyUserInput[]
skipDuplicates?: boolean
}
export type AppointmentCreateWithoutUserInput = {
title: string
date: Date | string
startTime: Date | string
endTime: Date | string
type: string
notes?: string | null
status?: string
createdAt?: Date | string
patient: PatientCreateNestedOneWithoutAppointmentsInput
}
export type AppointmentUncheckedCreateWithoutUserInput = {
id?: number
patientId: number
title: string
date: Date | string
startTime: Date | string
endTime: Date | string
type: string
notes?: string | null
status?: string
createdAt?: Date | string
}
export type AppointmentCreateOrConnectWithoutUserInput = {
where: AppointmentWhereUniqueInput
create: XOR<AppointmentCreateWithoutUserInput, AppointmentUncheckedCreateWithoutUserInput>
}
export type AppointmentCreateManyUserInputEnvelope = {
data: AppointmentCreateManyUserInput | AppointmentCreateManyUserInput[]
skipDuplicates?: boolean
}
export type PatientUpsertWithWhereUniqueWithoutUserInput = {
where: PatientWhereUniqueInput
update: XOR<PatientUpdateWithoutUserInput, PatientUncheckedUpdateWithoutUserInput>
create: XOR<PatientCreateWithoutUserInput, PatientUncheckedCreateWithoutUserInput>
}
export type PatientUpdateWithWhereUniqueWithoutUserInput = {
where: PatientWhereUniqueInput
data: XOR<PatientUpdateWithoutUserInput, PatientUncheckedUpdateWithoutUserInput>
}
export type PatientUpdateManyWithWhereWithoutUserInput = {
where: PatientScalarWhereInput
data: XOR<PatientUpdateManyMutationInput, PatientUncheckedUpdateManyWithoutUserInput>
}
export type PatientScalarWhereInput = {
AND?: PatientScalarWhereInput | PatientScalarWhereInput[]
OR?: PatientScalarWhereInput[]
NOT?: PatientScalarWhereInput | PatientScalarWhereInput[]
id?: IntFilter<"Patient"> | number
firstName?: StringFilter<"Patient"> | string
lastName?: StringFilter<"Patient"> | string
dateOfBirth?: DateTimeFilter<"Patient"> | Date | string
gender?: StringFilter<"Patient"> | string
phone?: StringFilter<"Patient"> | string
email?: StringNullableFilter<"Patient"> | string | null
address?: StringNullableFilter<"Patient"> | string | null
city?: StringNullableFilter<"Patient"> | string | null
zipCode?: StringNullableFilter<"Patient"> | string | null
insuranceProvider?: StringNullableFilter<"Patient"> | string | null
insuranceId?: StringNullableFilter<"Patient"> | string | null
groupNumber?: StringNullableFilter<"Patient"> | string | null
policyHolder?: StringNullableFilter<"Patient"> | string | null
allergies?: StringNullableFilter<"Patient"> | string | null
medicalConditions?: StringNullableFilter<"Patient"> | string | null
status?: StringFilter<"Patient"> | string
userId?: IntFilter<"Patient"> | number
createdAt?: DateTimeFilter<"Patient"> | Date | string
}
export type AppointmentUpsertWithWhereUniqueWithoutUserInput = {
where: AppointmentWhereUniqueInput
update: XOR<AppointmentUpdateWithoutUserInput, AppointmentUncheckedUpdateWithoutUserInput>
create: XOR<AppointmentCreateWithoutUserInput, AppointmentUncheckedCreateWithoutUserInput>
}
export type AppointmentUpdateWithWhereUniqueWithoutUserInput = {
where: AppointmentWhereUniqueInput
data: XOR<AppointmentUpdateWithoutUserInput, AppointmentUncheckedUpdateWithoutUserInput>
}
export type AppointmentUpdateManyWithWhereWithoutUserInput = {
where: AppointmentScalarWhereInput
data: XOR<AppointmentUpdateManyMutationInput, AppointmentUncheckedUpdateManyWithoutUserInput>
}
export type AppointmentScalarWhereInput = {
AND?: AppointmentScalarWhereInput | AppointmentScalarWhereInput[]
OR?: AppointmentScalarWhereInput[]
NOT?: AppointmentScalarWhereInput | AppointmentScalarWhereInput[]
id?: IntFilter<"Appointment"> | number
patientId?: IntFilter<"Appointment"> | number
userId?: IntFilter<"Appointment"> | number
title?: StringFilter<"Appointment"> | string
date?: DateTimeFilter<"Appointment"> | Date | string
startTime?: DateTimeFilter<"Appointment"> | Date | string
endTime?: DateTimeFilter<"Appointment"> | Date | string
type?: StringFilter<"Appointment"> | string
notes?: StringNullableFilter<"Appointment"> | string | null
status?: StringFilter<"Appointment"> | string
createdAt?: DateTimeFilter<"Appointment"> | Date | string
}
export type UserCreateWithoutPatientsInput = {
username: string
password: string
appointments?: AppointmentCreateNestedManyWithoutUserInput
}
export type UserUncheckedCreateWithoutPatientsInput = {
id?: number
username: string
password: string
appointments?: AppointmentUncheckedCreateNestedManyWithoutUserInput
}
export type UserCreateOrConnectWithoutPatientsInput = {
where: UserWhereUniqueInput
create: XOR<UserCreateWithoutPatientsInput, UserUncheckedCreateWithoutPatientsInput>
}
export type AppointmentCreateWithoutPatientInput = {
title: string
date: Date | string
startTime: Date | string
endTime: Date | string
type: string
notes?: string | null
status?: string
createdAt?: Date | string
user: UserCreateNestedOneWithoutAppointmentsInput
}
export type AppointmentUncheckedCreateWithoutPatientInput = {
id?: number
userId: number
title: string
date: Date | string
startTime: Date | string
endTime: Date | string
type: string
notes?: string | null
status?: string
createdAt?: Date | string
}
export type AppointmentCreateOrConnectWithoutPatientInput = {
where: AppointmentWhereUniqueInput
create: XOR<AppointmentCreateWithoutPatientInput, AppointmentUncheckedCreateWithoutPatientInput>
}
export type AppointmentCreateManyPatientInputEnvelope = {
data: AppointmentCreateManyPatientInput | AppointmentCreateManyPatientInput[]
skipDuplicates?: boolean
}
export type UserUpsertWithoutPatientsInput = {
update: XOR<UserUpdateWithoutPatientsInput, UserUncheckedUpdateWithoutPatientsInput>
create: XOR<UserCreateWithoutPatientsInput, UserUncheckedCreateWithoutPatientsInput>
where?: UserWhereInput
}
export type UserUpdateToOneWithWhereWithoutPatientsInput = {
where?: UserWhereInput
data: XOR<UserUpdateWithoutPatientsInput, UserUncheckedUpdateWithoutPatientsInput>
}
export type UserUpdateWithoutPatientsInput = {
username?: StringFieldUpdateOperationsInput | string
password?: StringFieldUpdateOperationsInput | string
appointments?: AppointmentUpdateManyWithoutUserNestedInput
}
export type UserUncheckedUpdateWithoutPatientsInput = {
id?: IntFieldUpdateOperationsInput | number
username?: StringFieldUpdateOperationsInput | string
password?: StringFieldUpdateOperationsInput | string
appointments?: AppointmentUncheckedUpdateManyWithoutUserNestedInput
}
export type AppointmentUpsertWithWhereUniqueWithoutPatientInput = {
where: AppointmentWhereUniqueInput
update: XOR<AppointmentUpdateWithoutPatientInput, AppointmentUncheckedUpdateWithoutPatientInput>
create: XOR<AppointmentCreateWithoutPatientInput, AppointmentUncheckedCreateWithoutPatientInput>
}
export type AppointmentUpdateWithWhereUniqueWithoutPatientInput = {
where: AppointmentWhereUniqueInput
data: XOR<AppointmentUpdateWithoutPatientInput, AppointmentUncheckedUpdateWithoutPatientInput>
}
export type AppointmentUpdateManyWithWhereWithoutPatientInput = {
where: AppointmentScalarWhereInput
data: XOR<AppointmentUpdateManyMutationInput, AppointmentUncheckedUpdateManyWithoutPatientInput>
}
export type PatientCreateWithoutAppointmentsInput = {
firstName: string
lastName: string
dateOfBirth: Date | string
gender: string
phone: string
email?: string | null
address?: string | null
city?: string | null
zipCode?: string | null
insuranceProvider?: string | null
insuranceId?: string | null
groupNumber?: string | null
policyHolder?: string | null
allergies?: string | null
medicalConditions?: string | null
status?: string
createdAt?: Date | string
user: UserCreateNestedOneWithoutPatientsInput
}
export type PatientUncheckedCreateWithoutAppointmentsInput = {
id?: number
firstName: string
lastName: string
dateOfBirth: Date | string
gender: string
phone: string
email?: string | null
address?: string | null
city?: string | null
zipCode?: string | null
insuranceProvider?: string | null
insuranceId?: string | null
groupNumber?: string | null
policyHolder?: string | null
allergies?: string | null
medicalConditions?: string | null
status?: string
userId: number
createdAt?: Date | string
}
export type PatientCreateOrConnectWithoutAppointmentsInput = {
where: PatientWhereUniqueInput
create: XOR<PatientCreateWithoutAppointmentsInput, PatientUncheckedCreateWithoutAppointmentsInput>
}
export type UserCreateWithoutAppointmentsInput = {
username: string
password: string
patients?: PatientCreateNestedManyWithoutUserInput
}
export type UserUncheckedCreateWithoutAppointmentsInput = {
id?: number
username: string
password: string
patients?: PatientUncheckedCreateNestedManyWithoutUserInput
}
export type UserCreateOrConnectWithoutAppointmentsInput = {
where: UserWhereUniqueInput
create: XOR<UserCreateWithoutAppointmentsInput, UserUncheckedCreateWithoutAppointmentsInput>
}
export type PatientUpsertWithoutAppointmentsInput = {
update: XOR<PatientUpdateWithoutAppointmentsInput, PatientUncheckedUpdateWithoutAppointmentsInput>
create: XOR<PatientCreateWithoutAppointmentsInput, PatientUncheckedCreateWithoutAppointmentsInput>
where?: PatientWhereInput
}
export type PatientUpdateToOneWithWhereWithoutAppointmentsInput = {
where?: PatientWhereInput
data: XOR<PatientUpdateWithoutAppointmentsInput, PatientUncheckedUpdateWithoutAppointmentsInput>
}
export type PatientUpdateWithoutAppointmentsInput = {
firstName?: StringFieldUpdateOperationsInput | string
lastName?: StringFieldUpdateOperationsInput | string
dateOfBirth?: DateTimeFieldUpdateOperationsInput | Date | string
gender?: StringFieldUpdateOperationsInput | string
phone?: StringFieldUpdateOperationsInput | string
email?: NullableStringFieldUpdateOperationsInput | string | null
address?: NullableStringFieldUpdateOperationsInput | string | null
city?: NullableStringFieldUpdateOperationsInput | string | null
zipCode?: NullableStringFieldUpdateOperationsInput | string | null
insuranceProvider?: NullableStringFieldUpdateOperationsInput | string | null
insuranceId?: NullableStringFieldUpdateOperationsInput | string | null
groupNumber?: NullableStringFieldUpdateOperationsInput | string | null
policyHolder?: NullableStringFieldUpdateOperationsInput | string | null
allergies?: NullableStringFieldUpdateOperationsInput | string | null
medicalConditions?: NullableStringFieldUpdateOperationsInput | string | null
status?: StringFieldUpdateOperationsInput | string
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
user?: UserUpdateOneRequiredWithoutPatientsNestedInput
}
export type PatientUncheckedUpdateWithoutAppointmentsInput = {
id?: IntFieldUpdateOperationsInput | number
firstName?: StringFieldUpdateOperationsInput | string
lastName?: StringFieldUpdateOperationsInput | string
dateOfBirth?: DateTimeFieldUpdateOperationsInput | Date | string
gender?: StringFieldUpdateOperationsInput | string
phone?: StringFieldUpdateOperationsInput | string
email?: NullableStringFieldUpdateOperationsInput | string | null
address?: NullableStringFieldUpdateOperationsInput | string | null
city?: NullableStringFieldUpdateOperationsInput | string | null
zipCode?: NullableStringFieldUpdateOperationsInput | string | null
insuranceProvider?: NullableStringFieldUpdateOperationsInput | string | null
insuranceId?: NullableStringFieldUpdateOperationsInput | string | null
groupNumber?: NullableStringFieldUpdateOperationsInput | string | null
policyHolder?: NullableStringFieldUpdateOperationsInput | string | null
allergies?: NullableStringFieldUpdateOperationsInput | string | null
medicalConditions?: NullableStringFieldUpdateOperationsInput | string | null
status?: StringFieldUpdateOperationsInput | string
userId?: IntFieldUpdateOperationsInput | number
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type UserUpsertWithoutAppointmentsInput = {
update: XOR<UserUpdateWithoutAppointmentsInput, UserUncheckedUpdateWithoutAppointmentsInput>
create: XOR<UserCreateWithoutAppointmentsInput, UserUncheckedCreateWithoutAppointmentsInput>
where?: UserWhereInput
}
export type UserUpdateToOneWithWhereWithoutAppointmentsInput = {
where?: UserWhereInput
data: XOR<UserUpdateWithoutAppointmentsInput, UserUncheckedUpdateWithoutAppointmentsInput>
}
export type UserUpdateWithoutAppointmentsInput = {
username?: StringFieldUpdateOperationsInput | string
password?: StringFieldUpdateOperationsInput | string
patients?: PatientUpdateManyWithoutUserNestedInput
}
export type UserUncheckedUpdateWithoutAppointmentsInput = {
id?: IntFieldUpdateOperationsInput | number
username?: StringFieldUpdateOperationsInput | string
password?: StringFieldUpdateOperationsInput | string
patients?: PatientUncheckedUpdateManyWithoutUserNestedInput
}
export type PatientCreateManyUserInput = {
id?: number
firstName: string
lastName: string
dateOfBirth: Date | string
gender: string
phone: string
email?: string | null
address?: string | null
city?: string | null
zipCode?: string | null
insuranceProvider?: string | null
insuranceId?: string | null
groupNumber?: string | null
policyHolder?: string | null
allergies?: string | null
medicalConditions?: string | null
status?: string
createdAt?: Date | string
}
export type AppointmentCreateManyUserInput = {
id?: number
patientId: number
title: string
date: Date | string
startTime: Date | string
endTime: Date | string
type: string
notes?: string | null
status?: string
createdAt?: Date | string
}
export type PatientUpdateWithoutUserInput = {
firstName?: StringFieldUpdateOperationsInput | string
lastName?: StringFieldUpdateOperationsInput | string
dateOfBirth?: DateTimeFieldUpdateOperationsInput | Date | string
gender?: StringFieldUpdateOperationsInput | string
phone?: StringFieldUpdateOperationsInput | string
email?: NullableStringFieldUpdateOperationsInput | string | null
address?: NullableStringFieldUpdateOperationsInput | string | null
city?: NullableStringFieldUpdateOperationsInput | string | null
zipCode?: NullableStringFieldUpdateOperationsInput | string | null
insuranceProvider?: NullableStringFieldUpdateOperationsInput | string | null
insuranceId?: NullableStringFieldUpdateOperationsInput | string | null
groupNumber?: NullableStringFieldUpdateOperationsInput | string | null
policyHolder?: NullableStringFieldUpdateOperationsInput | string | null
allergies?: NullableStringFieldUpdateOperationsInput | string | null
medicalConditions?: NullableStringFieldUpdateOperationsInput | string | null
status?: StringFieldUpdateOperationsInput | string
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
appointments?: AppointmentUpdateManyWithoutPatientNestedInput
}
export type PatientUncheckedUpdateWithoutUserInput = {
id?: IntFieldUpdateOperationsInput | number
firstName?: StringFieldUpdateOperationsInput | string
lastName?: StringFieldUpdateOperationsInput | string
dateOfBirth?: DateTimeFieldUpdateOperationsInput | Date | string
gender?: StringFieldUpdateOperationsInput | string
phone?: StringFieldUpdateOperationsInput | string
email?: NullableStringFieldUpdateOperationsInput | string | null
address?: NullableStringFieldUpdateOperationsInput | string | null
city?: NullableStringFieldUpdateOperationsInput | string | null
zipCode?: NullableStringFieldUpdateOperationsInput | string | null
insuranceProvider?: NullableStringFieldUpdateOperationsInput | string | null
insuranceId?: NullableStringFieldUpdateOperationsInput | string | null
groupNumber?: NullableStringFieldUpdateOperationsInput | string | null
policyHolder?: NullableStringFieldUpdateOperationsInput | string | null
allergies?: NullableStringFieldUpdateOperationsInput | string | null
medicalConditions?: NullableStringFieldUpdateOperationsInput | string | null
status?: StringFieldUpdateOperationsInput | string
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
appointments?: AppointmentUncheckedUpdateManyWithoutPatientNestedInput
}
export type PatientUncheckedUpdateManyWithoutUserInput = {
id?: IntFieldUpdateOperationsInput | number
firstName?: StringFieldUpdateOperationsInput | string
lastName?: StringFieldUpdateOperationsInput | string
dateOfBirth?: DateTimeFieldUpdateOperationsInput | Date | string
gender?: StringFieldUpdateOperationsInput | string
phone?: StringFieldUpdateOperationsInput | string
email?: NullableStringFieldUpdateOperationsInput | string | null
address?: NullableStringFieldUpdateOperationsInput | string | null
city?: NullableStringFieldUpdateOperationsInput | string | null
zipCode?: NullableStringFieldUpdateOperationsInput | string | null
insuranceProvider?: NullableStringFieldUpdateOperationsInput | string | null
insuranceId?: NullableStringFieldUpdateOperationsInput | string | null
groupNumber?: NullableStringFieldUpdateOperationsInput | string | null
policyHolder?: NullableStringFieldUpdateOperationsInput | string | null
allergies?: NullableStringFieldUpdateOperationsInput | string | null
medicalConditions?: NullableStringFieldUpdateOperationsInput | string | null
status?: StringFieldUpdateOperationsInput | string
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type AppointmentUpdateWithoutUserInput = {
title?: StringFieldUpdateOperationsInput | string
date?: DateTimeFieldUpdateOperationsInput | Date | string
startTime?: DateTimeFieldUpdateOperationsInput | Date | string
endTime?: DateTimeFieldUpdateOperationsInput | Date | string
type?: StringFieldUpdateOperationsInput | string
notes?: NullableStringFieldUpdateOperationsInput | string | null
status?: StringFieldUpdateOperationsInput | string
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
patient?: PatientUpdateOneRequiredWithoutAppointmentsNestedInput
}
export type AppointmentUncheckedUpdateWithoutUserInput = {
id?: IntFieldUpdateOperationsInput | number
patientId?: IntFieldUpdateOperationsInput | number
title?: StringFieldUpdateOperationsInput | string
date?: DateTimeFieldUpdateOperationsInput | Date | string
startTime?: DateTimeFieldUpdateOperationsInput | Date | string
endTime?: DateTimeFieldUpdateOperationsInput | Date | string
type?: StringFieldUpdateOperationsInput | string
notes?: NullableStringFieldUpdateOperationsInput | string | null
status?: StringFieldUpdateOperationsInput | string
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type AppointmentUncheckedUpdateManyWithoutUserInput = {
id?: IntFieldUpdateOperationsInput | number
patientId?: IntFieldUpdateOperationsInput | number
title?: StringFieldUpdateOperationsInput | string
date?: DateTimeFieldUpdateOperationsInput | Date | string
startTime?: DateTimeFieldUpdateOperationsInput | Date | string
endTime?: DateTimeFieldUpdateOperationsInput | Date | string
type?: StringFieldUpdateOperationsInput | string
notes?: NullableStringFieldUpdateOperationsInput | string | null
status?: StringFieldUpdateOperationsInput | string
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type AppointmentCreateManyPatientInput = {
id?: number
userId: number
title: string
date: Date | string
startTime: Date | string
endTime: Date | string
type: string
notes?: string | null
status?: string
createdAt?: Date | string
}
export type AppointmentUpdateWithoutPatientInput = {
title?: StringFieldUpdateOperationsInput | string
date?: DateTimeFieldUpdateOperationsInput | Date | string
startTime?: DateTimeFieldUpdateOperationsInput | Date | string
endTime?: DateTimeFieldUpdateOperationsInput | Date | string
type?: StringFieldUpdateOperationsInput | string
notes?: NullableStringFieldUpdateOperationsInput | string | null
status?: StringFieldUpdateOperationsInput | string
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
user?: UserUpdateOneRequiredWithoutAppointmentsNestedInput
}
export type AppointmentUncheckedUpdateWithoutPatientInput = {
id?: IntFieldUpdateOperationsInput | number
userId?: IntFieldUpdateOperationsInput | number
title?: StringFieldUpdateOperationsInput | string
date?: DateTimeFieldUpdateOperationsInput | Date | string
startTime?: DateTimeFieldUpdateOperationsInput | Date | string
endTime?: DateTimeFieldUpdateOperationsInput | Date | string
type?: StringFieldUpdateOperationsInput | string
notes?: NullableStringFieldUpdateOperationsInput | string | null
status?: StringFieldUpdateOperationsInput | string
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type AppointmentUncheckedUpdateManyWithoutPatientInput = {
id?: IntFieldUpdateOperationsInput | number
userId?: IntFieldUpdateOperationsInput | number
title?: StringFieldUpdateOperationsInput | string
date?: DateTimeFieldUpdateOperationsInput | Date | string
startTime?: DateTimeFieldUpdateOperationsInput | Date | string
endTime?: DateTimeFieldUpdateOperationsInput | Date | string
type?: StringFieldUpdateOperationsInput | string
notes?: NullableStringFieldUpdateOperationsInput | string | null
status?: StringFieldUpdateOperationsInput | string
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
}
/**
* Batch Payload for updateMany & deleteMany & createMany
*/
export type BatchPayload = {
count: number
}
/**
* DMMF
*/
export const dmmf: runtime.BaseDMMF
}