Files
2026-02-10 01:14:19 +00:00

17691 lines
613 KiB
TypeScript

/**
* Client
**/
import * as runtime from '@prisma/client/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 Store
*
*/
export type Store = $Result.DefaultSelection<Prisma.$StorePayload>
/**
* Model Cart
*
*/
export type Cart = $Result.DefaultSelection<Prisma.$CartPayload>
/**
* Model CartItem
*
*/
export type CartItem = $Result.DefaultSelection<Prisma.$CartItemPayload>
/**
* Model UserAddress
*
*/
export type UserAddress = $Result.DefaultSelection<Prisma.$UserAddressPayload>
/**
* Model Order
*
*/
export type Order = $Result.DefaultSelection<Prisma.$OrderPayload>
/**
* Model ProductCache
*
*/
export type ProductCache = $Result.DefaultSelection<Prisma.$ProductCachePayload>
/**
* Model User
*
*/
export type User = $Result.DefaultSelection<Prisma.$UserPayload>
/**
* Model Session
*
*/
export type Session = $Result.DefaultSelection<Prisma.$SessionPayload>
/**
* Model Account
*
*/
export type Account = $Result.DefaultSelection<Prisma.$AccountPayload>
/**
* Model VerificationToken
*
*/
export type VerificationToken = $Result.DefaultSelection<Prisma.$VerificationTokenPayload>
/**
* Enums
*/
export namespace $Enums {
export const Role: {
OWNER: 'OWNER',
CUSTOMER: 'CUSTOMER'
};
export type Role = (typeof Role)[keyof typeof Role]
}
export type Role = $Enums.Role
export const Role: typeof $Enums.Role
/**
* ## Prisma Client ʲˢ
*
* Type-safe database client for TypeScript & Node.js
* @example
* ```
* const prisma = new PrismaClient()
* // Fetch zero or more Stores
* const stores = await prisma.store.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,
const 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 Stores
* const stores = await prisma.store.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>;
/**
* 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.store`: Exposes CRUD operations for the **Store** model.
* Example usage:
* ```ts
* // Fetch zero or more Stores
* const stores = await prisma.store.findMany()
* ```
*/
get store(): Prisma.StoreDelegate<ExtArgs, ClientOptions>;
/**
* `prisma.cart`: Exposes CRUD operations for the **Cart** model.
* Example usage:
* ```ts
* // Fetch zero or more Carts
* const carts = await prisma.cart.findMany()
* ```
*/
get cart(): Prisma.CartDelegate<ExtArgs, ClientOptions>;
/**
* `prisma.cartItem`: Exposes CRUD operations for the **CartItem** model.
* Example usage:
* ```ts
* // Fetch zero or more CartItems
* const cartItems = await prisma.cartItem.findMany()
* ```
*/
get cartItem(): Prisma.CartItemDelegate<ExtArgs, ClientOptions>;
/**
* `prisma.userAddress`: Exposes CRUD operations for the **UserAddress** model.
* Example usage:
* ```ts
* // Fetch zero or more UserAddresses
* const userAddresses = await prisma.userAddress.findMany()
* ```
*/
get userAddress(): Prisma.UserAddressDelegate<ExtArgs, ClientOptions>;
/**
* `prisma.order`: Exposes CRUD operations for the **Order** model.
* Example usage:
* ```ts
* // Fetch zero or more Orders
* const orders = await prisma.order.findMany()
* ```
*/
get order(): Prisma.OrderDelegate<ExtArgs, ClientOptions>;
/**
* `prisma.productCache`: Exposes CRUD operations for the **ProductCache** model.
* Example usage:
* ```ts
* // Fetch zero or more ProductCaches
* const productCaches = await prisma.productCache.findMany()
* ```
*/
get productCache(): Prisma.ProductCacheDelegate<ExtArgs, ClientOptions>;
/**
* `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.session`: Exposes CRUD operations for the **Session** model.
* Example usage:
* ```ts
* // Fetch zero or more Sessions
* const sessions = await prisma.session.findMany()
* ```
*/
get session(): Prisma.SessionDelegate<ExtArgs, ClientOptions>;
/**
* `prisma.account`: Exposes CRUD operations for the **Account** model.
* Example usage:
* ```ts
* // Fetch zero or more Accounts
* const accounts = await prisma.account.findMany()
* ```
*/
get account(): Prisma.AccountDelegate<ExtArgs, ClientOptions>;
/**
* `prisma.verificationToken`: Exposes CRUD operations for the **VerificationToken** model.
* Example usage:
* ```ts
* // Fetch zero or more VerificationTokens
* const verificationTokens = await prisma.verificationToken.findMany()
* ```
*/
get verificationToken(): Prisma.VerificationTokenDelegate<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.19.2
* Query Engine version: c2990dca591cba766e3b7ef5d9e8a84796e47ab7
*/
export type PrismaVersion = {
client: string
}
export const prismaVersion: PrismaVersion
/**
* Utility Types
*/
export import Bytes = runtime.Bytes
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: {
Store: 'Store',
Cart: 'Cart',
CartItem: 'CartItem',
UserAddress: 'UserAddress',
Order: 'Order',
ProductCache: 'ProductCache',
User: 'User',
Session: 'Session',
Account: 'Account',
VerificationToken: 'VerificationToken'
};
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: "store" | "cart" | "cartItem" | "userAddress" | "order" | "productCache" | "user" | "session" | "account" | "verificationToken"
txIsolationLevel: Prisma.TransactionIsolationLevel
}
model: {
Store: {
payload: Prisma.$StorePayload<ExtArgs>
fields: Prisma.StoreFieldRefs
operations: {
findUnique: {
args: Prisma.StoreFindUniqueArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$StorePayload> | null
}
findUniqueOrThrow: {
args: Prisma.StoreFindUniqueOrThrowArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$StorePayload>
}
findFirst: {
args: Prisma.StoreFindFirstArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$StorePayload> | null
}
findFirstOrThrow: {
args: Prisma.StoreFindFirstOrThrowArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$StorePayload>
}
findMany: {
args: Prisma.StoreFindManyArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$StorePayload>[]
}
create: {
args: Prisma.StoreCreateArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$StorePayload>
}
createMany: {
args: Prisma.StoreCreateManyArgs<ExtArgs>
result: BatchPayload
}
createManyAndReturn: {
args: Prisma.StoreCreateManyAndReturnArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$StorePayload>[]
}
delete: {
args: Prisma.StoreDeleteArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$StorePayload>
}
update: {
args: Prisma.StoreUpdateArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$StorePayload>
}
deleteMany: {
args: Prisma.StoreDeleteManyArgs<ExtArgs>
result: BatchPayload
}
updateMany: {
args: Prisma.StoreUpdateManyArgs<ExtArgs>
result: BatchPayload
}
updateManyAndReturn: {
args: Prisma.StoreUpdateManyAndReturnArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$StorePayload>[]
}
upsert: {
args: Prisma.StoreUpsertArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$StorePayload>
}
aggregate: {
args: Prisma.StoreAggregateArgs<ExtArgs>
result: $Utils.Optional<AggregateStore>
}
groupBy: {
args: Prisma.StoreGroupByArgs<ExtArgs>
result: $Utils.Optional<StoreGroupByOutputType>[]
}
count: {
args: Prisma.StoreCountArgs<ExtArgs>
result: $Utils.Optional<StoreCountAggregateOutputType> | number
}
}
}
Cart: {
payload: Prisma.$CartPayload<ExtArgs>
fields: Prisma.CartFieldRefs
operations: {
findUnique: {
args: Prisma.CartFindUniqueArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$CartPayload> | null
}
findUniqueOrThrow: {
args: Prisma.CartFindUniqueOrThrowArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$CartPayload>
}
findFirst: {
args: Prisma.CartFindFirstArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$CartPayload> | null
}
findFirstOrThrow: {
args: Prisma.CartFindFirstOrThrowArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$CartPayload>
}
findMany: {
args: Prisma.CartFindManyArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$CartPayload>[]
}
create: {
args: Prisma.CartCreateArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$CartPayload>
}
createMany: {
args: Prisma.CartCreateManyArgs<ExtArgs>
result: BatchPayload
}
createManyAndReturn: {
args: Prisma.CartCreateManyAndReturnArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$CartPayload>[]
}
delete: {
args: Prisma.CartDeleteArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$CartPayload>
}
update: {
args: Prisma.CartUpdateArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$CartPayload>
}
deleteMany: {
args: Prisma.CartDeleteManyArgs<ExtArgs>
result: BatchPayload
}
updateMany: {
args: Prisma.CartUpdateManyArgs<ExtArgs>
result: BatchPayload
}
updateManyAndReturn: {
args: Prisma.CartUpdateManyAndReturnArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$CartPayload>[]
}
upsert: {
args: Prisma.CartUpsertArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$CartPayload>
}
aggregate: {
args: Prisma.CartAggregateArgs<ExtArgs>
result: $Utils.Optional<AggregateCart>
}
groupBy: {
args: Prisma.CartGroupByArgs<ExtArgs>
result: $Utils.Optional<CartGroupByOutputType>[]
}
count: {
args: Prisma.CartCountArgs<ExtArgs>
result: $Utils.Optional<CartCountAggregateOutputType> | number
}
}
}
CartItem: {
payload: Prisma.$CartItemPayload<ExtArgs>
fields: Prisma.CartItemFieldRefs
operations: {
findUnique: {
args: Prisma.CartItemFindUniqueArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$CartItemPayload> | null
}
findUniqueOrThrow: {
args: Prisma.CartItemFindUniqueOrThrowArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$CartItemPayload>
}
findFirst: {
args: Prisma.CartItemFindFirstArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$CartItemPayload> | null
}
findFirstOrThrow: {
args: Prisma.CartItemFindFirstOrThrowArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$CartItemPayload>
}
findMany: {
args: Prisma.CartItemFindManyArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$CartItemPayload>[]
}
create: {
args: Prisma.CartItemCreateArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$CartItemPayload>
}
createMany: {
args: Prisma.CartItemCreateManyArgs<ExtArgs>
result: BatchPayload
}
createManyAndReturn: {
args: Prisma.CartItemCreateManyAndReturnArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$CartItemPayload>[]
}
delete: {
args: Prisma.CartItemDeleteArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$CartItemPayload>
}
update: {
args: Prisma.CartItemUpdateArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$CartItemPayload>
}
deleteMany: {
args: Prisma.CartItemDeleteManyArgs<ExtArgs>
result: BatchPayload
}
updateMany: {
args: Prisma.CartItemUpdateManyArgs<ExtArgs>
result: BatchPayload
}
updateManyAndReturn: {
args: Prisma.CartItemUpdateManyAndReturnArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$CartItemPayload>[]
}
upsert: {
args: Prisma.CartItemUpsertArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$CartItemPayload>
}
aggregate: {
args: Prisma.CartItemAggregateArgs<ExtArgs>
result: $Utils.Optional<AggregateCartItem>
}
groupBy: {
args: Prisma.CartItemGroupByArgs<ExtArgs>
result: $Utils.Optional<CartItemGroupByOutputType>[]
}
count: {
args: Prisma.CartItemCountArgs<ExtArgs>
result: $Utils.Optional<CartItemCountAggregateOutputType> | number
}
}
}
UserAddress: {
payload: Prisma.$UserAddressPayload<ExtArgs>
fields: Prisma.UserAddressFieldRefs
operations: {
findUnique: {
args: Prisma.UserAddressFindUniqueArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$UserAddressPayload> | null
}
findUniqueOrThrow: {
args: Prisma.UserAddressFindUniqueOrThrowArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$UserAddressPayload>
}
findFirst: {
args: Prisma.UserAddressFindFirstArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$UserAddressPayload> | null
}
findFirstOrThrow: {
args: Prisma.UserAddressFindFirstOrThrowArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$UserAddressPayload>
}
findMany: {
args: Prisma.UserAddressFindManyArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$UserAddressPayload>[]
}
create: {
args: Prisma.UserAddressCreateArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$UserAddressPayload>
}
createMany: {
args: Prisma.UserAddressCreateManyArgs<ExtArgs>
result: BatchPayload
}
createManyAndReturn: {
args: Prisma.UserAddressCreateManyAndReturnArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$UserAddressPayload>[]
}
delete: {
args: Prisma.UserAddressDeleteArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$UserAddressPayload>
}
update: {
args: Prisma.UserAddressUpdateArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$UserAddressPayload>
}
deleteMany: {
args: Prisma.UserAddressDeleteManyArgs<ExtArgs>
result: BatchPayload
}
updateMany: {
args: Prisma.UserAddressUpdateManyArgs<ExtArgs>
result: BatchPayload
}
updateManyAndReturn: {
args: Prisma.UserAddressUpdateManyAndReturnArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$UserAddressPayload>[]
}
upsert: {
args: Prisma.UserAddressUpsertArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$UserAddressPayload>
}
aggregate: {
args: Prisma.UserAddressAggregateArgs<ExtArgs>
result: $Utils.Optional<AggregateUserAddress>
}
groupBy: {
args: Prisma.UserAddressGroupByArgs<ExtArgs>
result: $Utils.Optional<UserAddressGroupByOutputType>[]
}
count: {
args: Prisma.UserAddressCountArgs<ExtArgs>
result: $Utils.Optional<UserAddressCountAggregateOutputType> | number
}
}
}
Order: {
payload: Prisma.$OrderPayload<ExtArgs>
fields: Prisma.OrderFieldRefs
operations: {
findUnique: {
args: Prisma.OrderFindUniqueArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$OrderPayload> | null
}
findUniqueOrThrow: {
args: Prisma.OrderFindUniqueOrThrowArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$OrderPayload>
}
findFirst: {
args: Prisma.OrderFindFirstArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$OrderPayload> | null
}
findFirstOrThrow: {
args: Prisma.OrderFindFirstOrThrowArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$OrderPayload>
}
findMany: {
args: Prisma.OrderFindManyArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$OrderPayload>[]
}
create: {
args: Prisma.OrderCreateArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$OrderPayload>
}
createMany: {
args: Prisma.OrderCreateManyArgs<ExtArgs>
result: BatchPayload
}
createManyAndReturn: {
args: Prisma.OrderCreateManyAndReturnArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$OrderPayload>[]
}
delete: {
args: Prisma.OrderDeleteArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$OrderPayload>
}
update: {
args: Prisma.OrderUpdateArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$OrderPayload>
}
deleteMany: {
args: Prisma.OrderDeleteManyArgs<ExtArgs>
result: BatchPayload
}
updateMany: {
args: Prisma.OrderUpdateManyArgs<ExtArgs>
result: BatchPayload
}
updateManyAndReturn: {
args: Prisma.OrderUpdateManyAndReturnArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$OrderPayload>[]
}
upsert: {
args: Prisma.OrderUpsertArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$OrderPayload>
}
aggregate: {
args: Prisma.OrderAggregateArgs<ExtArgs>
result: $Utils.Optional<AggregateOrder>
}
groupBy: {
args: Prisma.OrderGroupByArgs<ExtArgs>
result: $Utils.Optional<OrderGroupByOutputType>[]
}
count: {
args: Prisma.OrderCountArgs<ExtArgs>
result: $Utils.Optional<OrderCountAggregateOutputType> | number
}
}
}
ProductCache: {
payload: Prisma.$ProductCachePayload<ExtArgs>
fields: Prisma.ProductCacheFieldRefs
operations: {
findUnique: {
args: Prisma.ProductCacheFindUniqueArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$ProductCachePayload> | null
}
findUniqueOrThrow: {
args: Prisma.ProductCacheFindUniqueOrThrowArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$ProductCachePayload>
}
findFirst: {
args: Prisma.ProductCacheFindFirstArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$ProductCachePayload> | null
}
findFirstOrThrow: {
args: Prisma.ProductCacheFindFirstOrThrowArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$ProductCachePayload>
}
findMany: {
args: Prisma.ProductCacheFindManyArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$ProductCachePayload>[]
}
create: {
args: Prisma.ProductCacheCreateArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$ProductCachePayload>
}
createMany: {
args: Prisma.ProductCacheCreateManyArgs<ExtArgs>
result: BatchPayload
}
createManyAndReturn: {
args: Prisma.ProductCacheCreateManyAndReturnArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$ProductCachePayload>[]
}
delete: {
args: Prisma.ProductCacheDeleteArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$ProductCachePayload>
}
update: {
args: Prisma.ProductCacheUpdateArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$ProductCachePayload>
}
deleteMany: {
args: Prisma.ProductCacheDeleteManyArgs<ExtArgs>
result: BatchPayload
}
updateMany: {
args: Prisma.ProductCacheUpdateManyArgs<ExtArgs>
result: BatchPayload
}
updateManyAndReturn: {
args: Prisma.ProductCacheUpdateManyAndReturnArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$ProductCachePayload>[]
}
upsert: {
args: Prisma.ProductCacheUpsertArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$ProductCachePayload>
}
aggregate: {
args: Prisma.ProductCacheAggregateArgs<ExtArgs>
result: $Utils.Optional<AggregateProductCache>
}
groupBy: {
args: Prisma.ProductCacheGroupByArgs<ExtArgs>
result: $Utils.Optional<ProductCacheGroupByOutputType>[]
}
count: {
args: Prisma.ProductCacheCountArgs<ExtArgs>
result: $Utils.Optional<ProductCacheCountAggregateOutputType> | number
}
}
}
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
}
}
}
Session: {
payload: Prisma.$SessionPayload<ExtArgs>
fields: Prisma.SessionFieldRefs
operations: {
findUnique: {
args: Prisma.SessionFindUniqueArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$SessionPayload> | null
}
findUniqueOrThrow: {
args: Prisma.SessionFindUniqueOrThrowArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$SessionPayload>
}
findFirst: {
args: Prisma.SessionFindFirstArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$SessionPayload> | null
}
findFirstOrThrow: {
args: Prisma.SessionFindFirstOrThrowArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$SessionPayload>
}
findMany: {
args: Prisma.SessionFindManyArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$SessionPayload>[]
}
create: {
args: Prisma.SessionCreateArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$SessionPayload>
}
createMany: {
args: Prisma.SessionCreateManyArgs<ExtArgs>
result: BatchPayload
}
createManyAndReturn: {
args: Prisma.SessionCreateManyAndReturnArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$SessionPayload>[]
}
delete: {
args: Prisma.SessionDeleteArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$SessionPayload>
}
update: {
args: Prisma.SessionUpdateArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$SessionPayload>
}
deleteMany: {
args: Prisma.SessionDeleteManyArgs<ExtArgs>
result: BatchPayload
}
updateMany: {
args: Prisma.SessionUpdateManyArgs<ExtArgs>
result: BatchPayload
}
updateManyAndReturn: {
args: Prisma.SessionUpdateManyAndReturnArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$SessionPayload>[]
}
upsert: {
args: Prisma.SessionUpsertArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$SessionPayload>
}
aggregate: {
args: Prisma.SessionAggregateArgs<ExtArgs>
result: $Utils.Optional<AggregateSession>
}
groupBy: {
args: Prisma.SessionGroupByArgs<ExtArgs>
result: $Utils.Optional<SessionGroupByOutputType>[]
}
count: {
args: Prisma.SessionCountArgs<ExtArgs>
result: $Utils.Optional<SessionCountAggregateOutputType> | number
}
}
}
Account: {
payload: Prisma.$AccountPayload<ExtArgs>
fields: Prisma.AccountFieldRefs
operations: {
findUnique: {
args: Prisma.AccountFindUniqueArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$AccountPayload> | null
}
findUniqueOrThrow: {
args: Prisma.AccountFindUniqueOrThrowArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$AccountPayload>
}
findFirst: {
args: Prisma.AccountFindFirstArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$AccountPayload> | null
}
findFirstOrThrow: {
args: Prisma.AccountFindFirstOrThrowArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$AccountPayload>
}
findMany: {
args: Prisma.AccountFindManyArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$AccountPayload>[]
}
create: {
args: Prisma.AccountCreateArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$AccountPayload>
}
createMany: {
args: Prisma.AccountCreateManyArgs<ExtArgs>
result: BatchPayload
}
createManyAndReturn: {
args: Prisma.AccountCreateManyAndReturnArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$AccountPayload>[]
}
delete: {
args: Prisma.AccountDeleteArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$AccountPayload>
}
update: {
args: Prisma.AccountUpdateArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$AccountPayload>
}
deleteMany: {
args: Prisma.AccountDeleteManyArgs<ExtArgs>
result: BatchPayload
}
updateMany: {
args: Prisma.AccountUpdateManyArgs<ExtArgs>
result: BatchPayload
}
updateManyAndReturn: {
args: Prisma.AccountUpdateManyAndReturnArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$AccountPayload>[]
}
upsert: {
args: Prisma.AccountUpsertArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$AccountPayload>
}
aggregate: {
args: Prisma.AccountAggregateArgs<ExtArgs>
result: $Utils.Optional<AggregateAccount>
}
groupBy: {
args: Prisma.AccountGroupByArgs<ExtArgs>
result: $Utils.Optional<AccountGroupByOutputType>[]
}
count: {
args: Prisma.AccountCountArgs<ExtArgs>
result: $Utils.Optional<AccountCountAggregateOutputType> | number
}
}
}
VerificationToken: {
payload: Prisma.$VerificationTokenPayload<ExtArgs>
fields: Prisma.VerificationTokenFieldRefs
operations: {
findUnique: {
args: Prisma.VerificationTokenFindUniqueArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$VerificationTokenPayload> | null
}
findUniqueOrThrow: {
args: Prisma.VerificationTokenFindUniqueOrThrowArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$VerificationTokenPayload>
}
findFirst: {
args: Prisma.VerificationTokenFindFirstArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$VerificationTokenPayload> | null
}
findFirstOrThrow: {
args: Prisma.VerificationTokenFindFirstOrThrowArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$VerificationTokenPayload>
}
findMany: {
args: Prisma.VerificationTokenFindManyArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$VerificationTokenPayload>[]
}
create: {
args: Prisma.VerificationTokenCreateArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$VerificationTokenPayload>
}
createMany: {
args: Prisma.VerificationTokenCreateManyArgs<ExtArgs>
result: BatchPayload
}
createManyAndReturn: {
args: Prisma.VerificationTokenCreateManyAndReturnArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$VerificationTokenPayload>[]
}
delete: {
args: Prisma.VerificationTokenDeleteArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$VerificationTokenPayload>
}
update: {
args: Prisma.VerificationTokenUpdateArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$VerificationTokenPayload>
}
deleteMany: {
args: Prisma.VerificationTokenDeleteManyArgs<ExtArgs>
result: BatchPayload
}
updateMany: {
args: Prisma.VerificationTokenUpdateManyArgs<ExtArgs>
result: BatchPayload
}
updateManyAndReturn: {
args: Prisma.VerificationTokenUpdateManyAndReturnArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$VerificationTokenPayload>[]
}
upsert: {
args: Prisma.VerificationTokenUpsertArgs<ExtArgs>
result: $Utils.PayloadToResult<Prisma.$VerificationTokenPayload>
}
aggregate: {
args: Prisma.VerificationTokenAggregateArgs<ExtArgs>
result: $Utils.Optional<AggregateVerificationToken>
}
groupBy: {
args: Prisma.VerificationTokenGroupByArgs<ExtArgs>
result: $Utils.Optional<VerificationTokenGroupByOutputType>[]
}
count: {
args: Prisma.VerificationTokenCountArgs<ExtArgs>
result: $Utils.Optional<VerificationTokenCountAggregateOutputType> | 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
* ```
* // Shorthand for `emit: 'stdout'`
* log: ['query', 'info', 'warn', 'error']
*
* // Emit as events only
* log: [
* { emit: 'event', level: 'query' },
* { emit: 'event', level: 'info' },
* { emit: 'event', level: 'warn' }
* { emit: 'event', level: 'error' }
* ]
*
* / Emit as events and log to stdout
* og: [
* { 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
}
/**
* Instance of a Driver Adapter, e.g., like one provided by `@prisma/adapter-planetscale`
*/
adapter?: runtime.SqlDriverAdapterFactory | null
/**
* Global configuration for omitting model fields by default.
*
* @example
* ```
* const prisma = new PrismaClient({
* omit: {
* user: {
* password: true
* }
* }
* })
* ```
*/
omit?: Prisma.GlobalOmitConfig
}
export type GlobalOmitConfig = {
store?: StoreOmit
cart?: CartOmit
cartItem?: CartItemOmit
userAddress?: UserAddressOmit
order?: OrderOmit
productCache?: ProductCacheOmit
user?: UserOmit
session?: SessionOmit
account?: AccountOmit
verificationToken?: VerificationTokenOmit
}
/* Types for Logging */
export type LogLevel = 'info' | 'query' | 'warn' | 'error'
export type LogDefinition = {
level: LogLevel
emit: 'stdout' | 'event'
}
export type CheckIsLogLevel<T> = T extends LogLevel ? T : never;
export type GetLogType<T> = CheckIsLogLevel<
T extends LogDefinition ? T['level'] : T
>;
export type GetEvents<T extends any[]> = T extends Array<LogLevel | LogDefinition>
? GetLogType<T[number]>
: 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'
// 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 StoreCountOutputType
*/
export type StoreCountOutputType = {
carts: number
products: number
}
export type StoreCountOutputTypeSelect<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
carts?: boolean | StoreCountOutputTypeCountCartsArgs
products?: boolean | StoreCountOutputTypeCountProductsArgs
}
// Custom InputTypes
/**
* StoreCountOutputType without action
*/
export type StoreCountOutputTypeDefaultArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the StoreCountOutputType
*/
select?: StoreCountOutputTypeSelect<ExtArgs> | null
}
/**
* StoreCountOutputType without action
*/
export type StoreCountOutputTypeCountCartsArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
where?: CartWhereInput
}
/**
* StoreCountOutputType without action
*/
export type StoreCountOutputTypeCountProductsArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
where?: ProductCacheWhereInput
}
/**
* Count Type CartCountOutputType
*/
export type CartCountOutputType = {
items: number
}
export type CartCountOutputTypeSelect<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
items?: boolean | CartCountOutputTypeCountItemsArgs
}
// Custom InputTypes
/**
* CartCountOutputType without action
*/
export type CartCountOutputTypeDefaultArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the CartCountOutputType
*/
select?: CartCountOutputTypeSelect<ExtArgs> | null
}
/**
* CartCountOutputType without action
*/
export type CartCountOutputTypeCountItemsArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
where?: CartItemWhereInput
}
/**
* Count Type UserCountOutputType
*/
export type UserCountOutputType = {
carts: number
accounts: number
sessions: number
}
export type UserCountOutputTypeSelect<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
carts?: boolean | UserCountOutputTypeCountCartsArgs
accounts?: boolean | UserCountOutputTypeCountAccountsArgs
sessions?: boolean | UserCountOutputTypeCountSessionsArgs
}
// 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 UserCountOutputTypeCountCartsArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
where?: CartWhereInput
}
/**
* UserCountOutputType without action
*/
export type UserCountOutputTypeCountAccountsArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
where?: AccountWhereInput
}
/**
* UserCountOutputType without action
*/
export type UserCountOutputTypeCountSessionsArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
where?: SessionWhereInput
}
/**
* Models
*/
/**
* Model Store
*/
export type AggregateStore = {
_count: StoreCountAggregateOutputType | null
_min: StoreMinAggregateOutputType | null
_max: StoreMaxAggregateOutputType | null
}
export type StoreMinAggregateOutputType = {
id: string | null
slug: string | null
stripeAccountId: string | null
userId: string | null
name: string | null
website: string | null
createdAt: Date | null
updatedAt: Date | null
}
export type StoreMaxAggregateOutputType = {
id: string | null
slug: string | null
stripeAccountId: string | null
userId: string | null
name: string | null
website: string | null
createdAt: Date | null
updatedAt: Date | null
}
export type StoreCountAggregateOutputType = {
id: number
slug: number
stripeAccountId: number
userId: number
name: number
website: number
defaultSellingPreferences: number
createdAt: number
updatedAt: number
_all: number
}
export type StoreMinAggregateInputType = {
id?: true
slug?: true
stripeAccountId?: true
userId?: true
name?: true
website?: true
createdAt?: true
updatedAt?: true
}
export type StoreMaxAggregateInputType = {
id?: true
slug?: true
stripeAccountId?: true
userId?: true
name?: true
website?: true
createdAt?: true
updatedAt?: true
}
export type StoreCountAggregateInputType = {
id?: true
slug?: true
stripeAccountId?: true
userId?: true
name?: true
website?: true
defaultSellingPreferences?: true
createdAt?: true
updatedAt?: true
_all?: true
}
export type StoreAggregateArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Filter which Store to aggregate.
*/
where?: StoreWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of Stores to fetch.
*/
orderBy?: StoreOrderByWithRelationInput | StoreOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the start position
*/
cursor?: StoreWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` Stores 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` Stores.
*/
skip?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Count returned Stores
**/
_count?: true | StoreCountAggregateInputType
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Select which fields to find the minimum value
**/
_min?: StoreMinAggregateInputType
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Select which fields to find the maximum value
**/
_max?: StoreMaxAggregateInputType
}
export type GetStoreAggregateType<T extends StoreAggregateArgs> = {
[P in keyof T & keyof AggregateStore]: P extends '_count' | 'count'
? T[P] extends true
? number
: GetScalarType<T[P], AggregateStore[P]>
: GetScalarType<T[P], AggregateStore[P]>
}
export type StoreGroupByArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
where?: StoreWhereInput
orderBy?: StoreOrderByWithAggregationInput | StoreOrderByWithAggregationInput[]
by: StoreScalarFieldEnum[] | StoreScalarFieldEnum
having?: StoreScalarWhereWithAggregatesInput
take?: number
skip?: number
_count?: StoreCountAggregateInputType | true
_min?: StoreMinAggregateInputType
_max?: StoreMaxAggregateInputType
}
export type StoreGroupByOutputType = {
id: string
slug: string
stripeAccountId: string | null
userId: string
name: string | null
website: string | null
defaultSellingPreferences: JsonValue | null
createdAt: Date
updatedAt: Date
_count: StoreCountAggregateOutputType | null
_min: StoreMinAggregateOutputType | null
_max: StoreMaxAggregateOutputType | null
}
type GetStoreGroupByPayload<T extends StoreGroupByArgs> = Prisma.PrismaPromise<
Array<
PickEnumerable<StoreGroupByOutputType, T['by']> &
{
[P in ((keyof T) & (keyof StoreGroupByOutputType))]: P extends '_count'
? T[P] extends boolean
? number
: GetScalarType<T[P], StoreGroupByOutputType[P]>
: GetScalarType<T[P], StoreGroupByOutputType[P]>
}
>
>
export type StoreSelect<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
id?: boolean
slug?: boolean
stripeAccountId?: boolean
userId?: boolean
name?: boolean
website?: boolean
defaultSellingPreferences?: boolean
createdAt?: boolean
updatedAt?: boolean
user?: boolean | UserDefaultArgs<ExtArgs>
carts?: boolean | Store$cartsArgs<ExtArgs>
products?: boolean | Store$productsArgs<ExtArgs>
_count?: boolean | StoreCountOutputTypeDefaultArgs<ExtArgs>
}, ExtArgs["result"]["store"]>
export type StoreSelectCreateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
id?: boolean
slug?: boolean
stripeAccountId?: boolean
userId?: boolean
name?: boolean
website?: boolean
defaultSellingPreferences?: boolean
createdAt?: boolean
updatedAt?: boolean
user?: boolean | UserDefaultArgs<ExtArgs>
}, ExtArgs["result"]["store"]>
export type StoreSelectUpdateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
id?: boolean
slug?: boolean
stripeAccountId?: boolean
userId?: boolean
name?: boolean
website?: boolean
defaultSellingPreferences?: boolean
createdAt?: boolean
updatedAt?: boolean
user?: boolean | UserDefaultArgs<ExtArgs>
}, ExtArgs["result"]["store"]>
export type StoreSelectScalar = {
id?: boolean
slug?: boolean
stripeAccountId?: boolean
userId?: boolean
name?: boolean
website?: boolean
defaultSellingPreferences?: boolean
createdAt?: boolean
updatedAt?: boolean
}
export type StoreOmit<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetOmit<"id" | "slug" | "stripeAccountId" | "userId" | "name" | "website" | "defaultSellingPreferences" | "createdAt" | "updatedAt", ExtArgs["result"]["store"]>
export type StoreInclude<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
user?: boolean | UserDefaultArgs<ExtArgs>
carts?: boolean | Store$cartsArgs<ExtArgs>
products?: boolean | Store$productsArgs<ExtArgs>
_count?: boolean | StoreCountOutputTypeDefaultArgs<ExtArgs>
}
export type StoreIncludeCreateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
user?: boolean | UserDefaultArgs<ExtArgs>
}
export type StoreIncludeUpdateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
user?: boolean | UserDefaultArgs<ExtArgs>
}
export type $StorePayload<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
name: "Store"
objects: {
user: Prisma.$UserPayload<ExtArgs>
carts: Prisma.$CartPayload<ExtArgs>[]
products: Prisma.$ProductCachePayload<ExtArgs>[]
}
scalars: $Extensions.GetPayloadResult<{
id: string
slug: string
stripeAccountId: string | null
userId: string
name: string | null
website: string | null
defaultSellingPreferences: Prisma.JsonValue | null
createdAt: Date
updatedAt: Date
}, ExtArgs["result"]["store"]>
composites: {}
}
type StoreGetPayload<S extends boolean | null | undefined | StoreDefaultArgs> = $Result.GetResult<Prisma.$StorePayload, S>
type StoreCountArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> =
Omit<StoreFindManyArgs, 'select' | 'include' | 'distinct' | 'omit'> & {
select?: StoreCountAggregateInputType | true
}
export interface StoreDelegate<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, GlobalOmitOptions = {}> {
[K: symbol]: { types: Prisma.TypeMap<ExtArgs>['model']['Store'], meta: { name: 'Store' } }
/**
* Find zero or one Store that matches the filter.
* @param {StoreFindUniqueArgs} args - Arguments to find a Store
* @example
* // Get one Store
* const store = await prisma.store.findUnique({
* where: {
* // ... provide filter here
* }
* })
*/
findUnique<T extends StoreFindUniqueArgs>(args: SelectSubset<T, StoreFindUniqueArgs<ExtArgs>>): Prisma__StoreClient<$Result.GetResult<Prisma.$StorePayload<ExtArgs>, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
/**
* Find one Store that matches the filter or throw an error with `error.code='P2025'`
* if no matches were found.
* @param {StoreFindUniqueOrThrowArgs} args - Arguments to find a Store
* @example
* // Get one Store
* const store = await prisma.store.findUniqueOrThrow({
* where: {
* // ... provide filter here
* }
* })
*/
findUniqueOrThrow<T extends StoreFindUniqueOrThrowArgs>(args: SelectSubset<T, StoreFindUniqueOrThrowArgs<ExtArgs>>): Prisma__StoreClient<$Result.GetResult<Prisma.$StorePayload<ExtArgs>, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Find the first Store 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 {StoreFindFirstArgs} args - Arguments to find a Store
* @example
* // Get one Store
* const store = await prisma.store.findFirst({
* where: {
* // ... provide filter here
* }
* })
*/
findFirst<T extends StoreFindFirstArgs>(args?: SelectSubset<T, StoreFindFirstArgs<ExtArgs>>): Prisma__StoreClient<$Result.GetResult<Prisma.$StorePayload<ExtArgs>, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
/**
* Find the first Store 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 {StoreFindFirstOrThrowArgs} args - Arguments to find a Store
* @example
* // Get one Store
* const store = await prisma.store.findFirstOrThrow({
* where: {
* // ... provide filter here
* }
* })
*/
findFirstOrThrow<T extends StoreFindFirstOrThrowArgs>(args?: SelectSubset<T, StoreFindFirstOrThrowArgs<ExtArgs>>): Prisma__StoreClient<$Result.GetResult<Prisma.$StorePayload<ExtArgs>, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Find zero or more Stores 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 {StoreFindManyArgs} args - Arguments to filter and select certain fields only.
* @example
* // Get all Stores
* const stores = await prisma.store.findMany()
*
* // Get first 10 Stores
* const stores = await prisma.store.findMany({ take: 10 })
*
* // Only select the `id`
* const storeWithIdOnly = await prisma.store.findMany({ select: { id: true } })
*
*/
findMany<T extends StoreFindManyArgs>(args?: SelectSubset<T, StoreFindManyArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$StorePayload<ExtArgs>, T, "findMany", GlobalOmitOptions>>
/**
* Create a Store.
* @param {StoreCreateArgs} args - Arguments to create a Store.
* @example
* // Create one Store
* const Store = await prisma.store.create({
* data: {
* // ... data to create a Store
* }
* })
*
*/
create<T extends StoreCreateArgs>(args: SelectSubset<T, StoreCreateArgs<ExtArgs>>): Prisma__StoreClient<$Result.GetResult<Prisma.$StorePayload<ExtArgs>, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Create many Stores.
* @param {StoreCreateManyArgs} args - Arguments to create many Stores.
* @example
* // Create many Stores
* const store = await prisma.store.createMany({
* data: [
* // ... provide data here
* ]
* })
*
*/
createMany<T extends StoreCreateManyArgs>(args?: SelectSubset<T, StoreCreateManyArgs<ExtArgs>>): Prisma.PrismaPromise<BatchPayload>
/**
* Create many Stores and returns the data saved in the database.
* @param {StoreCreateManyAndReturnArgs} args - Arguments to create many Stores.
* @example
* // Create many Stores
* const store = await prisma.store.createManyAndReturn({
* data: [
* // ... provide data here
* ]
* })
*
* // Create many Stores and only return the `id`
* const storeWithIdOnly = await prisma.store.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 StoreCreateManyAndReturnArgs>(args?: SelectSubset<T, StoreCreateManyAndReturnArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$StorePayload<ExtArgs>, T, "createManyAndReturn", GlobalOmitOptions>>
/**
* Delete a Store.
* @param {StoreDeleteArgs} args - Arguments to delete one Store.
* @example
* // Delete one Store
* const Store = await prisma.store.delete({
* where: {
* // ... filter to delete one Store
* }
* })
*
*/
delete<T extends StoreDeleteArgs>(args: SelectSubset<T, StoreDeleteArgs<ExtArgs>>): Prisma__StoreClient<$Result.GetResult<Prisma.$StorePayload<ExtArgs>, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Update one Store.
* @param {StoreUpdateArgs} args - Arguments to update one Store.
* @example
* // Update one Store
* const store = await prisma.store.update({
* where: {
* // ... provide filter here
* },
* data: {
* // ... provide data here
* }
* })
*
*/
update<T extends StoreUpdateArgs>(args: SelectSubset<T, StoreUpdateArgs<ExtArgs>>): Prisma__StoreClient<$Result.GetResult<Prisma.$StorePayload<ExtArgs>, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Delete zero or more Stores.
* @param {StoreDeleteManyArgs} args - Arguments to filter Stores to delete.
* @example
* // Delete a few Stores
* const { count } = await prisma.store.deleteMany({
* where: {
* // ... provide filter here
* }
* })
*
*/
deleteMany<T extends StoreDeleteManyArgs>(args?: SelectSubset<T, StoreDeleteManyArgs<ExtArgs>>): Prisma.PrismaPromise<BatchPayload>
/**
* Update zero or more Stores.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {StoreUpdateManyArgs} args - Arguments to update one or more rows.
* @example
* // Update many Stores
* const store = await prisma.store.updateMany({
* where: {
* // ... provide filter here
* },
* data: {
* // ... provide data here
* }
* })
*
*/
updateMany<T extends StoreUpdateManyArgs>(args: SelectSubset<T, StoreUpdateManyArgs<ExtArgs>>): Prisma.PrismaPromise<BatchPayload>
/**
* Update zero or more Stores and returns the data updated in the database.
* @param {StoreUpdateManyAndReturnArgs} args - Arguments to update many Stores.
* @example
* // Update many Stores
* const store = await prisma.store.updateManyAndReturn({
* where: {
* // ... provide filter here
* },
* data: [
* // ... provide data here
* ]
* })
*
* // Update zero or more Stores and only return the `id`
* const storeWithIdOnly = await prisma.store.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 StoreUpdateManyAndReturnArgs>(args: SelectSubset<T, StoreUpdateManyAndReturnArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$StorePayload<ExtArgs>, T, "updateManyAndReturn", GlobalOmitOptions>>
/**
* Create or update one Store.
* @param {StoreUpsertArgs} args - Arguments to update or create a Store.
* @example
* // Update or create a Store
* const store = await prisma.store.upsert({
* create: {
* // ... data to create a Store
* },
* update: {
* // ... in case it already exists, update
* },
* where: {
* // ... the filter for the Store we want to update
* }
* })
*/
upsert<T extends StoreUpsertArgs>(args: SelectSubset<T, StoreUpsertArgs<ExtArgs>>): Prisma__StoreClient<$Result.GetResult<Prisma.$StorePayload<ExtArgs>, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Count the number of Stores.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {StoreCountArgs} args - Arguments to filter Stores to count.
* @example
* // Count the number of Stores
* const count = await prisma.store.count({
* where: {
* // ... the filter for the Stores we want to count
* }
* })
**/
count<T extends StoreCountArgs>(
args?: Subset<T, StoreCountArgs>,
): Prisma.PrismaPromise<
T extends $Utils.Record<'select', any>
? T['select'] extends true
? number
: GetScalarType<T['select'], StoreCountAggregateOutputType>
: number
>
/**
* Allows you to perform aggregations operations on a Store.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {StoreAggregateArgs} 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 StoreAggregateArgs>(args: Subset<T, StoreAggregateArgs>): Prisma.PrismaPromise<GetStoreAggregateType<T>>
/**
* Group by Store.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {StoreGroupByArgs} 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 StoreGroupByArgs,
HasSelectOrTake extends Or<
Extends<'skip', Keys<T>>,
Extends<'take', Keys<T>>
>,
OrderByArg extends True extends HasSelectOrTake
? { orderBy: StoreGroupByArgs['orderBy'] }
: { orderBy?: StoreGroupByArgs['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, StoreGroupByArgs, OrderByArg> & InputErrors): {} extends InputErrors ? GetStoreGroupByPayload<T> : Prisma.PrismaPromise<InputErrors>
/**
* Fields of the Store model
*/
readonly fields: StoreFieldRefs;
}
/**
* The delegate class that acts as a "Promise-like" for Store.
* 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__StoreClient<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>
carts<T extends Store$cartsArgs<ExtArgs> = {}>(args?: Subset<T, Store$cartsArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$CartPayload<ExtArgs>, T, "findMany", GlobalOmitOptions> | Null>
products<T extends Store$productsArgs<ExtArgs> = {}>(args?: Subset<T, Store$productsArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$ProductCachePayload<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 Store model
*/
interface StoreFieldRefs {
readonly id: FieldRef<"Store", 'String'>
readonly slug: FieldRef<"Store", 'String'>
readonly stripeAccountId: FieldRef<"Store", 'String'>
readonly userId: FieldRef<"Store", 'String'>
readonly name: FieldRef<"Store", 'String'>
readonly website: FieldRef<"Store", 'String'>
readonly defaultSellingPreferences: FieldRef<"Store", 'Json'>
readonly createdAt: FieldRef<"Store", 'DateTime'>
readonly updatedAt: FieldRef<"Store", 'DateTime'>
}
// Custom InputTypes
/**
* Store findUnique
*/
export type StoreFindUniqueArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Store
*/
select?: StoreSelect<ExtArgs> | null
/**
* Omit specific fields from the Store
*/
omit?: StoreOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: StoreInclude<ExtArgs> | null
/**
* Filter, which Store to fetch.
*/
where: StoreWhereUniqueInput
}
/**
* Store findUniqueOrThrow
*/
export type StoreFindUniqueOrThrowArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Store
*/
select?: StoreSelect<ExtArgs> | null
/**
* Omit specific fields from the Store
*/
omit?: StoreOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: StoreInclude<ExtArgs> | null
/**
* Filter, which Store to fetch.
*/
where: StoreWhereUniqueInput
}
/**
* Store findFirst
*/
export type StoreFindFirstArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Store
*/
select?: StoreSelect<ExtArgs> | null
/**
* Omit specific fields from the Store
*/
omit?: StoreOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: StoreInclude<ExtArgs> | null
/**
* Filter, which Store to fetch.
*/
where?: StoreWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of Stores to fetch.
*/
orderBy?: StoreOrderByWithRelationInput | StoreOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the position for searching for Stores.
*/
cursor?: StoreWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` Stores 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` Stores.
*/
skip?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
*
* Filter by unique combinations of Stores.
*/
distinct?: StoreScalarFieldEnum | StoreScalarFieldEnum[]
}
/**
* Store findFirstOrThrow
*/
export type StoreFindFirstOrThrowArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Store
*/
select?: StoreSelect<ExtArgs> | null
/**
* Omit specific fields from the Store
*/
omit?: StoreOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: StoreInclude<ExtArgs> | null
/**
* Filter, which Store to fetch.
*/
where?: StoreWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of Stores to fetch.
*/
orderBy?: StoreOrderByWithRelationInput | StoreOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the position for searching for Stores.
*/
cursor?: StoreWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` Stores 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` Stores.
*/
skip?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
*
* Filter by unique combinations of Stores.
*/
distinct?: StoreScalarFieldEnum | StoreScalarFieldEnum[]
}
/**
* Store findMany
*/
export type StoreFindManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Store
*/
select?: StoreSelect<ExtArgs> | null
/**
* Omit specific fields from the Store
*/
omit?: StoreOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: StoreInclude<ExtArgs> | null
/**
* Filter, which Stores to fetch.
*/
where?: StoreWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of Stores to fetch.
*/
orderBy?: StoreOrderByWithRelationInput | StoreOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the position for listing Stores.
*/
cursor?: StoreWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` Stores 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` Stores.
*/
skip?: number
distinct?: StoreScalarFieldEnum | StoreScalarFieldEnum[]
}
/**
* Store create
*/
export type StoreCreateArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Store
*/
select?: StoreSelect<ExtArgs> | null
/**
* Omit specific fields from the Store
*/
omit?: StoreOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: StoreInclude<ExtArgs> | null
/**
* The data needed to create a Store.
*/
data: XOR<StoreCreateInput, StoreUncheckedCreateInput>
}
/**
* Store createMany
*/
export type StoreCreateManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* The data used to create many Stores.
*/
data: StoreCreateManyInput | StoreCreateManyInput[]
}
/**
* Store createManyAndReturn
*/
export type StoreCreateManyAndReturnArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Store
*/
select?: StoreSelectCreateManyAndReturn<ExtArgs> | null
/**
* Omit specific fields from the Store
*/
omit?: StoreOmit<ExtArgs> | null
/**
* The data used to create many Stores.
*/
data: StoreCreateManyInput | StoreCreateManyInput[]
/**
* Choose, which related nodes to fetch as well
*/
include?: StoreIncludeCreateManyAndReturn<ExtArgs> | null
}
/**
* Store update
*/
export type StoreUpdateArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Store
*/
select?: StoreSelect<ExtArgs> | null
/**
* Omit specific fields from the Store
*/
omit?: StoreOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: StoreInclude<ExtArgs> | null
/**
* The data needed to update a Store.
*/
data: XOR<StoreUpdateInput, StoreUncheckedUpdateInput>
/**
* Choose, which Store to update.
*/
where: StoreWhereUniqueInput
}
/**
* Store updateMany
*/
export type StoreUpdateManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* The data used to update Stores.
*/
data: XOR<StoreUpdateManyMutationInput, StoreUncheckedUpdateManyInput>
/**
* Filter which Stores to update
*/
where?: StoreWhereInput
/**
* Limit how many Stores to update.
*/
limit?: number
}
/**
* Store updateManyAndReturn
*/
export type StoreUpdateManyAndReturnArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Store
*/
select?: StoreSelectUpdateManyAndReturn<ExtArgs> | null
/**
* Omit specific fields from the Store
*/
omit?: StoreOmit<ExtArgs> | null
/**
* The data used to update Stores.
*/
data: XOR<StoreUpdateManyMutationInput, StoreUncheckedUpdateManyInput>
/**
* Filter which Stores to update
*/
where?: StoreWhereInput
/**
* Limit how many Stores to update.
*/
limit?: number
/**
* Choose, which related nodes to fetch as well
*/
include?: StoreIncludeUpdateManyAndReturn<ExtArgs> | null
}
/**
* Store upsert
*/
export type StoreUpsertArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Store
*/
select?: StoreSelect<ExtArgs> | null
/**
* Omit specific fields from the Store
*/
omit?: StoreOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: StoreInclude<ExtArgs> | null
/**
* The filter to search for the Store to update in case it exists.
*/
where: StoreWhereUniqueInput
/**
* In case the Store found by the `where` argument doesn't exist, create a new Store with this data.
*/
create: XOR<StoreCreateInput, StoreUncheckedCreateInput>
/**
* In case the Store was found with the provided `where` argument, update it with this data.
*/
update: XOR<StoreUpdateInput, StoreUncheckedUpdateInput>
}
/**
* Store delete
*/
export type StoreDeleteArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Store
*/
select?: StoreSelect<ExtArgs> | null
/**
* Omit specific fields from the Store
*/
omit?: StoreOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: StoreInclude<ExtArgs> | null
/**
* Filter which Store to delete.
*/
where: StoreWhereUniqueInput
}
/**
* Store deleteMany
*/
export type StoreDeleteManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Filter which Stores to delete
*/
where?: StoreWhereInput
/**
* Limit how many Stores to delete.
*/
limit?: number
}
/**
* Store.carts
*/
export type Store$cartsArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Cart
*/
select?: CartSelect<ExtArgs> | null
/**
* Omit specific fields from the Cart
*/
omit?: CartOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: CartInclude<ExtArgs> | null
where?: CartWhereInput
orderBy?: CartOrderByWithRelationInput | CartOrderByWithRelationInput[]
cursor?: CartWhereUniqueInput
take?: number
skip?: number
distinct?: CartScalarFieldEnum | CartScalarFieldEnum[]
}
/**
* Store.products
*/
export type Store$productsArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the ProductCache
*/
select?: ProductCacheSelect<ExtArgs> | null
/**
* Omit specific fields from the ProductCache
*/
omit?: ProductCacheOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: ProductCacheInclude<ExtArgs> | null
where?: ProductCacheWhereInput
orderBy?: ProductCacheOrderByWithRelationInput | ProductCacheOrderByWithRelationInput[]
cursor?: ProductCacheWhereUniqueInput
take?: number
skip?: number
distinct?: ProductCacheScalarFieldEnum | ProductCacheScalarFieldEnum[]
}
/**
* Store without action
*/
export type StoreDefaultArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Store
*/
select?: StoreSelect<ExtArgs> | null
/**
* Omit specific fields from the Store
*/
omit?: StoreOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: StoreInclude<ExtArgs> | null
}
/**
* Model Cart
*/
export type AggregateCart = {
_count: CartCountAggregateOutputType | null
_min: CartMinAggregateOutputType | null
_max: CartMaxAggregateOutputType | null
}
export type CartMinAggregateOutputType = {
id: string | null
storeId: string | null
sessionId: string | null
userId: string | null
createdAt: Date | null
updatedAt: Date | null
}
export type CartMaxAggregateOutputType = {
id: string | null
storeId: string | null
sessionId: string | null
userId: string | null
createdAt: Date | null
updatedAt: Date | null
}
export type CartCountAggregateOutputType = {
id: number
storeId: number
sessionId: number
userId: number
createdAt: number
updatedAt: number
_all: number
}
export type CartMinAggregateInputType = {
id?: true
storeId?: true
sessionId?: true
userId?: true
createdAt?: true
updatedAt?: true
}
export type CartMaxAggregateInputType = {
id?: true
storeId?: true
sessionId?: true
userId?: true
createdAt?: true
updatedAt?: true
}
export type CartCountAggregateInputType = {
id?: true
storeId?: true
sessionId?: true
userId?: true
createdAt?: true
updatedAt?: true
_all?: true
}
export type CartAggregateArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Filter which Cart to aggregate.
*/
where?: CartWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of Carts to fetch.
*/
orderBy?: CartOrderByWithRelationInput | CartOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the start position
*/
cursor?: CartWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` Carts 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` Carts.
*/
skip?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Count returned Carts
**/
_count?: true | CartCountAggregateInputType
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Select which fields to find the minimum value
**/
_min?: CartMinAggregateInputType
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Select which fields to find the maximum value
**/
_max?: CartMaxAggregateInputType
}
export type GetCartAggregateType<T extends CartAggregateArgs> = {
[P in keyof T & keyof AggregateCart]: P extends '_count' | 'count'
? T[P] extends true
? number
: GetScalarType<T[P], AggregateCart[P]>
: GetScalarType<T[P], AggregateCart[P]>
}
export type CartGroupByArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
where?: CartWhereInput
orderBy?: CartOrderByWithAggregationInput | CartOrderByWithAggregationInput[]
by: CartScalarFieldEnum[] | CartScalarFieldEnum
having?: CartScalarWhereWithAggregatesInput
take?: number
skip?: number
_count?: CartCountAggregateInputType | true
_min?: CartMinAggregateInputType
_max?: CartMaxAggregateInputType
}
export type CartGroupByOutputType = {
id: string
storeId: string
sessionId: string
userId: string | null
createdAt: Date
updatedAt: Date
_count: CartCountAggregateOutputType | null
_min: CartMinAggregateOutputType | null
_max: CartMaxAggregateOutputType | null
}
type GetCartGroupByPayload<T extends CartGroupByArgs> = Prisma.PrismaPromise<
Array<
PickEnumerable<CartGroupByOutputType, T['by']> &
{
[P in ((keyof T) & (keyof CartGroupByOutputType))]: P extends '_count'
? T[P] extends boolean
? number
: GetScalarType<T[P], CartGroupByOutputType[P]>
: GetScalarType<T[P], CartGroupByOutputType[P]>
}
>
>
export type CartSelect<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
id?: boolean
storeId?: boolean
sessionId?: boolean
userId?: boolean
createdAt?: boolean
updatedAt?: boolean
store?: boolean | StoreDefaultArgs<ExtArgs>
user?: boolean | Cart$userArgs<ExtArgs>
items?: boolean | Cart$itemsArgs<ExtArgs>
_count?: boolean | CartCountOutputTypeDefaultArgs<ExtArgs>
}, ExtArgs["result"]["cart"]>
export type CartSelectCreateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
id?: boolean
storeId?: boolean
sessionId?: boolean
userId?: boolean
createdAt?: boolean
updatedAt?: boolean
store?: boolean | StoreDefaultArgs<ExtArgs>
user?: boolean | Cart$userArgs<ExtArgs>
}, ExtArgs["result"]["cart"]>
export type CartSelectUpdateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
id?: boolean
storeId?: boolean
sessionId?: boolean
userId?: boolean
createdAt?: boolean
updatedAt?: boolean
store?: boolean | StoreDefaultArgs<ExtArgs>
user?: boolean | Cart$userArgs<ExtArgs>
}, ExtArgs["result"]["cart"]>
export type CartSelectScalar = {
id?: boolean
storeId?: boolean
sessionId?: boolean
userId?: boolean
createdAt?: boolean
updatedAt?: boolean
}
export type CartOmit<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetOmit<"id" | "storeId" | "sessionId" | "userId" | "createdAt" | "updatedAt", ExtArgs["result"]["cart"]>
export type CartInclude<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
store?: boolean | StoreDefaultArgs<ExtArgs>
user?: boolean | Cart$userArgs<ExtArgs>
items?: boolean | Cart$itemsArgs<ExtArgs>
_count?: boolean | CartCountOutputTypeDefaultArgs<ExtArgs>
}
export type CartIncludeCreateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
store?: boolean | StoreDefaultArgs<ExtArgs>
user?: boolean | Cart$userArgs<ExtArgs>
}
export type CartIncludeUpdateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
store?: boolean | StoreDefaultArgs<ExtArgs>
user?: boolean | Cart$userArgs<ExtArgs>
}
export type $CartPayload<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
name: "Cart"
objects: {
store: Prisma.$StorePayload<ExtArgs>
user: Prisma.$UserPayload<ExtArgs> | null
items: Prisma.$CartItemPayload<ExtArgs>[]
}
scalars: $Extensions.GetPayloadResult<{
id: string
storeId: string
sessionId: string
userId: string | null
createdAt: Date
updatedAt: Date
}, ExtArgs["result"]["cart"]>
composites: {}
}
type CartGetPayload<S extends boolean | null | undefined | CartDefaultArgs> = $Result.GetResult<Prisma.$CartPayload, S>
type CartCountArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> =
Omit<CartFindManyArgs, 'select' | 'include' | 'distinct' | 'omit'> & {
select?: CartCountAggregateInputType | true
}
export interface CartDelegate<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, GlobalOmitOptions = {}> {
[K: symbol]: { types: Prisma.TypeMap<ExtArgs>['model']['Cart'], meta: { name: 'Cart' } }
/**
* Find zero or one Cart that matches the filter.
* @param {CartFindUniqueArgs} args - Arguments to find a Cart
* @example
* // Get one Cart
* const cart = await prisma.cart.findUnique({
* where: {
* // ... provide filter here
* }
* })
*/
findUnique<T extends CartFindUniqueArgs>(args: SelectSubset<T, CartFindUniqueArgs<ExtArgs>>): Prisma__CartClient<$Result.GetResult<Prisma.$CartPayload<ExtArgs>, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
/**
* Find one Cart that matches the filter or throw an error with `error.code='P2025'`
* if no matches were found.
* @param {CartFindUniqueOrThrowArgs} args - Arguments to find a Cart
* @example
* // Get one Cart
* const cart = await prisma.cart.findUniqueOrThrow({
* where: {
* // ... provide filter here
* }
* })
*/
findUniqueOrThrow<T extends CartFindUniqueOrThrowArgs>(args: SelectSubset<T, CartFindUniqueOrThrowArgs<ExtArgs>>): Prisma__CartClient<$Result.GetResult<Prisma.$CartPayload<ExtArgs>, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Find the first Cart 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 {CartFindFirstArgs} args - Arguments to find a Cart
* @example
* // Get one Cart
* const cart = await prisma.cart.findFirst({
* where: {
* // ... provide filter here
* }
* })
*/
findFirst<T extends CartFindFirstArgs>(args?: SelectSubset<T, CartFindFirstArgs<ExtArgs>>): Prisma__CartClient<$Result.GetResult<Prisma.$CartPayload<ExtArgs>, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
/**
* Find the first Cart 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 {CartFindFirstOrThrowArgs} args - Arguments to find a Cart
* @example
* // Get one Cart
* const cart = await prisma.cart.findFirstOrThrow({
* where: {
* // ... provide filter here
* }
* })
*/
findFirstOrThrow<T extends CartFindFirstOrThrowArgs>(args?: SelectSubset<T, CartFindFirstOrThrowArgs<ExtArgs>>): Prisma__CartClient<$Result.GetResult<Prisma.$CartPayload<ExtArgs>, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Find zero or more Carts 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 {CartFindManyArgs} args - Arguments to filter and select certain fields only.
* @example
* // Get all Carts
* const carts = await prisma.cart.findMany()
*
* // Get first 10 Carts
* const carts = await prisma.cart.findMany({ take: 10 })
*
* // Only select the `id`
* const cartWithIdOnly = await prisma.cart.findMany({ select: { id: true } })
*
*/
findMany<T extends CartFindManyArgs>(args?: SelectSubset<T, CartFindManyArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$CartPayload<ExtArgs>, T, "findMany", GlobalOmitOptions>>
/**
* Create a Cart.
* @param {CartCreateArgs} args - Arguments to create a Cart.
* @example
* // Create one Cart
* const Cart = await prisma.cart.create({
* data: {
* // ... data to create a Cart
* }
* })
*
*/
create<T extends CartCreateArgs>(args: SelectSubset<T, CartCreateArgs<ExtArgs>>): Prisma__CartClient<$Result.GetResult<Prisma.$CartPayload<ExtArgs>, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Create many Carts.
* @param {CartCreateManyArgs} args - Arguments to create many Carts.
* @example
* // Create many Carts
* const cart = await prisma.cart.createMany({
* data: [
* // ... provide data here
* ]
* })
*
*/
createMany<T extends CartCreateManyArgs>(args?: SelectSubset<T, CartCreateManyArgs<ExtArgs>>): Prisma.PrismaPromise<BatchPayload>
/**
* Create many Carts and returns the data saved in the database.
* @param {CartCreateManyAndReturnArgs} args - Arguments to create many Carts.
* @example
* // Create many Carts
* const cart = await prisma.cart.createManyAndReturn({
* data: [
* // ... provide data here
* ]
* })
*
* // Create many Carts and only return the `id`
* const cartWithIdOnly = await prisma.cart.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 CartCreateManyAndReturnArgs>(args?: SelectSubset<T, CartCreateManyAndReturnArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$CartPayload<ExtArgs>, T, "createManyAndReturn", GlobalOmitOptions>>
/**
* Delete a Cart.
* @param {CartDeleteArgs} args - Arguments to delete one Cart.
* @example
* // Delete one Cart
* const Cart = await prisma.cart.delete({
* where: {
* // ... filter to delete one Cart
* }
* })
*
*/
delete<T extends CartDeleteArgs>(args: SelectSubset<T, CartDeleteArgs<ExtArgs>>): Prisma__CartClient<$Result.GetResult<Prisma.$CartPayload<ExtArgs>, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Update one Cart.
* @param {CartUpdateArgs} args - Arguments to update one Cart.
* @example
* // Update one Cart
* const cart = await prisma.cart.update({
* where: {
* // ... provide filter here
* },
* data: {
* // ... provide data here
* }
* })
*
*/
update<T extends CartUpdateArgs>(args: SelectSubset<T, CartUpdateArgs<ExtArgs>>): Prisma__CartClient<$Result.GetResult<Prisma.$CartPayload<ExtArgs>, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Delete zero or more Carts.
* @param {CartDeleteManyArgs} args - Arguments to filter Carts to delete.
* @example
* // Delete a few Carts
* const { count } = await prisma.cart.deleteMany({
* where: {
* // ... provide filter here
* }
* })
*
*/
deleteMany<T extends CartDeleteManyArgs>(args?: SelectSubset<T, CartDeleteManyArgs<ExtArgs>>): Prisma.PrismaPromise<BatchPayload>
/**
* Update zero or more Carts.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {CartUpdateManyArgs} args - Arguments to update one or more rows.
* @example
* // Update many Carts
* const cart = await prisma.cart.updateMany({
* where: {
* // ... provide filter here
* },
* data: {
* // ... provide data here
* }
* })
*
*/
updateMany<T extends CartUpdateManyArgs>(args: SelectSubset<T, CartUpdateManyArgs<ExtArgs>>): Prisma.PrismaPromise<BatchPayload>
/**
* Update zero or more Carts and returns the data updated in the database.
* @param {CartUpdateManyAndReturnArgs} args - Arguments to update many Carts.
* @example
* // Update many Carts
* const cart = await prisma.cart.updateManyAndReturn({
* where: {
* // ... provide filter here
* },
* data: [
* // ... provide data here
* ]
* })
*
* // Update zero or more Carts and only return the `id`
* const cartWithIdOnly = await prisma.cart.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 CartUpdateManyAndReturnArgs>(args: SelectSubset<T, CartUpdateManyAndReturnArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$CartPayload<ExtArgs>, T, "updateManyAndReturn", GlobalOmitOptions>>
/**
* Create or update one Cart.
* @param {CartUpsertArgs} args - Arguments to update or create a Cart.
* @example
* // Update or create a Cart
* const cart = await prisma.cart.upsert({
* create: {
* // ... data to create a Cart
* },
* update: {
* // ... in case it already exists, update
* },
* where: {
* // ... the filter for the Cart we want to update
* }
* })
*/
upsert<T extends CartUpsertArgs>(args: SelectSubset<T, CartUpsertArgs<ExtArgs>>): Prisma__CartClient<$Result.GetResult<Prisma.$CartPayload<ExtArgs>, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Count the number of Carts.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {CartCountArgs} args - Arguments to filter Carts to count.
* @example
* // Count the number of Carts
* const count = await prisma.cart.count({
* where: {
* // ... the filter for the Carts we want to count
* }
* })
**/
count<T extends CartCountArgs>(
args?: Subset<T, CartCountArgs>,
): Prisma.PrismaPromise<
T extends $Utils.Record<'select', any>
? T['select'] extends true
? number
: GetScalarType<T['select'], CartCountAggregateOutputType>
: number
>
/**
* Allows you to perform aggregations operations on a Cart.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {CartAggregateArgs} 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 CartAggregateArgs>(args: Subset<T, CartAggregateArgs>): Prisma.PrismaPromise<GetCartAggregateType<T>>
/**
* Group by Cart.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {CartGroupByArgs} 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 CartGroupByArgs,
HasSelectOrTake extends Or<
Extends<'skip', Keys<T>>,
Extends<'take', Keys<T>>
>,
OrderByArg extends True extends HasSelectOrTake
? { orderBy: CartGroupByArgs['orderBy'] }
: { orderBy?: CartGroupByArgs['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, CartGroupByArgs, OrderByArg> & InputErrors): {} extends InputErrors ? GetCartGroupByPayload<T> : Prisma.PrismaPromise<InputErrors>
/**
* Fields of the Cart model
*/
readonly fields: CartFieldRefs;
}
/**
* The delegate class that acts as a "Promise-like" for Cart.
* 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__CartClient<T, Null = never, ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, GlobalOmitOptions = {}> extends Prisma.PrismaPromise<T> {
readonly [Symbol.toStringTag]: "PrismaPromise"
store<T extends StoreDefaultArgs<ExtArgs> = {}>(args?: Subset<T, StoreDefaultArgs<ExtArgs>>): Prisma__StoreClient<$Result.GetResult<Prisma.$StorePayload<ExtArgs>, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions>
user<T extends Cart$userArgs<ExtArgs> = {}>(args?: Subset<T, Cart$userArgs<ExtArgs>>): Prisma__UserClient<$Result.GetResult<Prisma.$UserPayload<ExtArgs>, T, "findUniqueOrThrow", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
items<T extends Cart$itemsArgs<ExtArgs> = {}>(args?: Subset<T, Cart$itemsArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$CartItemPayload<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 Cart model
*/
interface CartFieldRefs {
readonly id: FieldRef<"Cart", 'String'>
readonly storeId: FieldRef<"Cart", 'String'>
readonly sessionId: FieldRef<"Cart", 'String'>
readonly userId: FieldRef<"Cart", 'String'>
readonly createdAt: FieldRef<"Cart", 'DateTime'>
readonly updatedAt: FieldRef<"Cart", 'DateTime'>
}
// Custom InputTypes
/**
* Cart findUnique
*/
export type CartFindUniqueArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Cart
*/
select?: CartSelect<ExtArgs> | null
/**
* Omit specific fields from the Cart
*/
omit?: CartOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: CartInclude<ExtArgs> | null
/**
* Filter, which Cart to fetch.
*/
where: CartWhereUniqueInput
}
/**
* Cart findUniqueOrThrow
*/
export type CartFindUniqueOrThrowArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Cart
*/
select?: CartSelect<ExtArgs> | null
/**
* Omit specific fields from the Cart
*/
omit?: CartOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: CartInclude<ExtArgs> | null
/**
* Filter, which Cart to fetch.
*/
where: CartWhereUniqueInput
}
/**
* Cart findFirst
*/
export type CartFindFirstArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Cart
*/
select?: CartSelect<ExtArgs> | null
/**
* Omit specific fields from the Cart
*/
omit?: CartOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: CartInclude<ExtArgs> | null
/**
* Filter, which Cart to fetch.
*/
where?: CartWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of Carts to fetch.
*/
orderBy?: CartOrderByWithRelationInput | CartOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the position for searching for Carts.
*/
cursor?: CartWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` Carts 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` Carts.
*/
skip?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
*
* Filter by unique combinations of Carts.
*/
distinct?: CartScalarFieldEnum | CartScalarFieldEnum[]
}
/**
* Cart findFirstOrThrow
*/
export type CartFindFirstOrThrowArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Cart
*/
select?: CartSelect<ExtArgs> | null
/**
* Omit specific fields from the Cart
*/
omit?: CartOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: CartInclude<ExtArgs> | null
/**
* Filter, which Cart to fetch.
*/
where?: CartWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of Carts to fetch.
*/
orderBy?: CartOrderByWithRelationInput | CartOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the position for searching for Carts.
*/
cursor?: CartWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` Carts 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` Carts.
*/
skip?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
*
* Filter by unique combinations of Carts.
*/
distinct?: CartScalarFieldEnum | CartScalarFieldEnum[]
}
/**
* Cart findMany
*/
export type CartFindManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Cart
*/
select?: CartSelect<ExtArgs> | null
/**
* Omit specific fields from the Cart
*/
omit?: CartOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: CartInclude<ExtArgs> | null
/**
* Filter, which Carts to fetch.
*/
where?: CartWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of Carts to fetch.
*/
orderBy?: CartOrderByWithRelationInput | CartOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the position for listing Carts.
*/
cursor?: CartWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` Carts 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` Carts.
*/
skip?: number
distinct?: CartScalarFieldEnum | CartScalarFieldEnum[]
}
/**
* Cart create
*/
export type CartCreateArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Cart
*/
select?: CartSelect<ExtArgs> | null
/**
* Omit specific fields from the Cart
*/
omit?: CartOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: CartInclude<ExtArgs> | null
/**
* The data needed to create a Cart.
*/
data: XOR<CartCreateInput, CartUncheckedCreateInput>
}
/**
* Cart createMany
*/
export type CartCreateManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* The data used to create many Carts.
*/
data: CartCreateManyInput | CartCreateManyInput[]
}
/**
* Cart createManyAndReturn
*/
export type CartCreateManyAndReturnArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Cart
*/
select?: CartSelectCreateManyAndReturn<ExtArgs> | null
/**
* Omit specific fields from the Cart
*/
omit?: CartOmit<ExtArgs> | null
/**
* The data used to create many Carts.
*/
data: CartCreateManyInput | CartCreateManyInput[]
/**
* Choose, which related nodes to fetch as well
*/
include?: CartIncludeCreateManyAndReturn<ExtArgs> | null
}
/**
* Cart update
*/
export type CartUpdateArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Cart
*/
select?: CartSelect<ExtArgs> | null
/**
* Omit specific fields from the Cart
*/
omit?: CartOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: CartInclude<ExtArgs> | null
/**
* The data needed to update a Cart.
*/
data: XOR<CartUpdateInput, CartUncheckedUpdateInput>
/**
* Choose, which Cart to update.
*/
where: CartWhereUniqueInput
}
/**
* Cart updateMany
*/
export type CartUpdateManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* The data used to update Carts.
*/
data: XOR<CartUpdateManyMutationInput, CartUncheckedUpdateManyInput>
/**
* Filter which Carts to update
*/
where?: CartWhereInput
/**
* Limit how many Carts to update.
*/
limit?: number
}
/**
* Cart updateManyAndReturn
*/
export type CartUpdateManyAndReturnArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Cart
*/
select?: CartSelectUpdateManyAndReturn<ExtArgs> | null
/**
* Omit specific fields from the Cart
*/
omit?: CartOmit<ExtArgs> | null
/**
* The data used to update Carts.
*/
data: XOR<CartUpdateManyMutationInput, CartUncheckedUpdateManyInput>
/**
* Filter which Carts to update
*/
where?: CartWhereInput
/**
* Limit how many Carts to update.
*/
limit?: number
/**
* Choose, which related nodes to fetch as well
*/
include?: CartIncludeUpdateManyAndReturn<ExtArgs> | null
}
/**
* Cart upsert
*/
export type CartUpsertArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Cart
*/
select?: CartSelect<ExtArgs> | null
/**
* Omit specific fields from the Cart
*/
omit?: CartOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: CartInclude<ExtArgs> | null
/**
* The filter to search for the Cart to update in case it exists.
*/
where: CartWhereUniqueInput
/**
* In case the Cart found by the `where` argument doesn't exist, create a new Cart with this data.
*/
create: XOR<CartCreateInput, CartUncheckedCreateInput>
/**
* In case the Cart was found with the provided `where` argument, update it with this data.
*/
update: XOR<CartUpdateInput, CartUncheckedUpdateInput>
}
/**
* Cart delete
*/
export type CartDeleteArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Cart
*/
select?: CartSelect<ExtArgs> | null
/**
* Omit specific fields from the Cart
*/
omit?: CartOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: CartInclude<ExtArgs> | null
/**
* Filter which Cart to delete.
*/
where: CartWhereUniqueInput
}
/**
* Cart deleteMany
*/
export type CartDeleteManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Filter which Carts to delete
*/
where?: CartWhereInput
/**
* Limit how many Carts to delete.
*/
limit?: number
}
/**
* Cart.user
*/
export type Cart$userArgs<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
where?: UserWhereInput
}
/**
* Cart.items
*/
export type Cart$itemsArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the CartItem
*/
select?: CartItemSelect<ExtArgs> | null
/**
* Omit specific fields from the CartItem
*/
omit?: CartItemOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: CartItemInclude<ExtArgs> | null
where?: CartItemWhereInput
orderBy?: CartItemOrderByWithRelationInput | CartItemOrderByWithRelationInput[]
cursor?: CartItemWhereUniqueInput
take?: number
skip?: number
distinct?: CartItemScalarFieldEnum | CartItemScalarFieldEnum[]
}
/**
* Cart without action
*/
export type CartDefaultArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Cart
*/
select?: CartSelect<ExtArgs> | null
/**
* Omit specific fields from the Cart
*/
omit?: CartOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: CartInclude<ExtArgs> | null
}
/**
* Model CartItem
*/
export type AggregateCartItem = {
_count: CartItemCountAggregateOutputType | null
_avg: CartItemAvgAggregateOutputType | null
_sum: CartItemSumAggregateOutputType | null
_min: CartItemMinAggregateOutputType | null
_max: CartItemMaxAggregateOutputType | null
}
export type CartItemAvgAggregateOutputType = {
unitAmount: number | null
quantity: number | null
}
export type CartItemSumAggregateOutputType = {
unitAmount: number | null
quantity: number | null
}
export type CartItemMinAggregateOutputType = {
id: string | null
cartId: string | null
productId: string | null
priceId: string | null
name: string | null
unitAmount: number | null
currency: string | null
quantity: number | null
createdAt: Date | null
updatedAt: Date | null
}
export type CartItemMaxAggregateOutputType = {
id: string | null
cartId: string | null
productId: string | null
priceId: string | null
name: string | null
unitAmount: number | null
currency: string | null
quantity: number | null
createdAt: Date | null
updatedAt: Date | null
}
export type CartItemCountAggregateOutputType = {
id: number
cartId: number
productId: number
priceId: number
name: number
unitAmount: number
currency: number
quantity: number
createdAt: number
updatedAt: number
_all: number
}
export type CartItemAvgAggregateInputType = {
unitAmount?: true
quantity?: true
}
export type CartItemSumAggregateInputType = {
unitAmount?: true
quantity?: true
}
export type CartItemMinAggregateInputType = {
id?: true
cartId?: true
productId?: true
priceId?: true
name?: true
unitAmount?: true
currency?: true
quantity?: true
createdAt?: true
updatedAt?: true
}
export type CartItemMaxAggregateInputType = {
id?: true
cartId?: true
productId?: true
priceId?: true
name?: true
unitAmount?: true
currency?: true
quantity?: true
createdAt?: true
updatedAt?: true
}
export type CartItemCountAggregateInputType = {
id?: true
cartId?: true
productId?: true
priceId?: true
name?: true
unitAmount?: true
currency?: true
quantity?: true
createdAt?: true
updatedAt?: true
_all?: true
}
export type CartItemAggregateArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Filter which CartItem to aggregate.
*/
where?: CartItemWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of CartItems to fetch.
*/
orderBy?: CartItemOrderByWithRelationInput | CartItemOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the start position
*/
cursor?: CartItemWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` CartItems 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` CartItems.
*/
skip?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Count returned CartItems
**/
_count?: true | CartItemCountAggregateInputType
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Select which fields to average
**/
_avg?: CartItemAvgAggregateInputType
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Select which fields to sum
**/
_sum?: CartItemSumAggregateInputType
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Select which fields to find the minimum value
**/
_min?: CartItemMinAggregateInputType
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Select which fields to find the maximum value
**/
_max?: CartItemMaxAggregateInputType
}
export type GetCartItemAggregateType<T extends CartItemAggregateArgs> = {
[P in keyof T & keyof AggregateCartItem]: P extends '_count' | 'count'
? T[P] extends true
? number
: GetScalarType<T[P], AggregateCartItem[P]>
: GetScalarType<T[P], AggregateCartItem[P]>
}
export type CartItemGroupByArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
where?: CartItemWhereInput
orderBy?: CartItemOrderByWithAggregationInput | CartItemOrderByWithAggregationInput[]
by: CartItemScalarFieldEnum[] | CartItemScalarFieldEnum
having?: CartItemScalarWhereWithAggregatesInput
take?: number
skip?: number
_count?: CartItemCountAggregateInputType | true
_avg?: CartItemAvgAggregateInputType
_sum?: CartItemSumAggregateInputType
_min?: CartItemMinAggregateInputType
_max?: CartItemMaxAggregateInputType
}
export type CartItemGroupByOutputType = {
id: string
cartId: string
productId: string
priceId: string
name: string
unitAmount: number
currency: string
quantity: number
createdAt: Date
updatedAt: Date
_count: CartItemCountAggregateOutputType | null
_avg: CartItemAvgAggregateOutputType | null
_sum: CartItemSumAggregateOutputType | null
_min: CartItemMinAggregateOutputType | null
_max: CartItemMaxAggregateOutputType | null
}
type GetCartItemGroupByPayload<T extends CartItemGroupByArgs> = Prisma.PrismaPromise<
Array<
PickEnumerable<CartItemGroupByOutputType, T['by']> &
{
[P in ((keyof T) & (keyof CartItemGroupByOutputType))]: P extends '_count'
? T[P] extends boolean
? number
: GetScalarType<T[P], CartItemGroupByOutputType[P]>
: GetScalarType<T[P], CartItemGroupByOutputType[P]>
}
>
>
export type CartItemSelect<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
id?: boolean
cartId?: boolean
productId?: boolean
priceId?: boolean
name?: boolean
unitAmount?: boolean
currency?: boolean
quantity?: boolean
createdAt?: boolean
updatedAt?: boolean
cart?: boolean | CartDefaultArgs<ExtArgs>
}, ExtArgs["result"]["cartItem"]>
export type CartItemSelectCreateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
id?: boolean
cartId?: boolean
productId?: boolean
priceId?: boolean
name?: boolean
unitAmount?: boolean
currency?: boolean
quantity?: boolean
createdAt?: boolean
updatedAt?: boolean
cart?: boolean | CartDefaultArgs<ExtArgs>
}, ExtArgs["result"]["cartItem"]>
export type CartItemSelectUpdateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
id?: boolean
cartId?: boolean
productId?: boolean
priceId?: boolean
name?: boolean
unitAmount?: boolean
currency?: boolean
quantity?: boolean
createdAt?: boolean
updatedAt?: boolean
cart?: boolean | CartDefaultArgs<ExtArgs>
}, ExtArgs["result"]["cartItem"]>
export type CartItemSelectScalar = {
id?: boolean
cartId?: boolean
productId?: boolean
priceId?: boolean
name?: boolean
unitAmount?: boolean
currency?: boolean
quantity?: boolean
createdAt?: boolean
updatedAt?: boolean
}
export type CartItemOmit<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetOmit<"id" | "cartId" | "productId" | "priceId" | "name" | "unitAmount" | "currency" | "quantity" | "createdAt" | "updatedAt", ExtArgs["result"]["cartItem"]>
export type CartItemInclude<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
cart?: boolean | CartDefaultArgs<ExtArgs>
}
export type CartItemIncludeCreateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
cart?: boolean | CartDefaultArgs<ExtArgs>
}
export type CartItemIncludeUpdateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
cart?: boolean | CartDefaultArgs<ExtArgs>
}
export type $CartItemPayload<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
name: "CartItem"
objects: {
cart: Prisma.$CartPayload<ExtArgs>
}
scalars: $Extensions.GetPayloadResult<{
id: string
cartId: string
productId: string
priceId: string
name: string
unitAmount: number
currency: string
quantity: number
createdAt: Date
updatedAt: Date
}, ExtArgs["result"]["cartItem"]>
composites: {}
}
type CartItemGetPayload<S extends boolean | null | undefined | CartItemDefaultArgs> = $Result.GetResult<Prisma.$CartItemPayload, S>
type CartItemCountArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> =
Omit<CartItemFindManyArgs, 'select' | 'include' | 'distinct' | 'omit'> & {
select?: CartItemCountAggregateInputType | true
}
export interface CartItemDelegate<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, GlobalOmitOptions = {}> {
[K: symbol]: { types: Prisma.TypeMap<ExtArgs>['model']['CartItem'], meta: { name: 'CartItem' } }
/**
* Find zero or one CartItem that matches the filter.
* @param {CartItemFindUniqueArgs} args - Arguments to find a CartItem
* @example
* // Get one CartItem
* const cartItem = await prisma.cartItem.findUnique({
* where: {
* // ... provide filter here
* }
* })
*/
findUnique<T extends CartItemFindUniqueArgs>(args: SelectSubset<T, CartItemFindUniqueArgs<ExtArgs>>): Prisma__CartItemClient<$Result.GetResult<Prisma.$CartItemPayload<ExtArgs>, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
/**
* Find one CartItem that matches the filter or throw an error with `error.code='P2025'`
* if no matches were found.
* @param {CartItemFindUniqueOrThrowArgs} args - Arguments to find a CartItem
* @example
* // Get one CartItem
* const cartItem = await prisma.cartItem.findUniqueOrThrow({
* where: {
* // ... provide filter here
* }
* })
*/
findUniqueOrThrow<T extends CartItemFindUniqueOrThrowArgs>(args: SelectSubset<T, CartItemFindUniqueOrThrowArgs<ExtArgs>>): Prisma__CartItemClient<$Result.GetResult<Prisma.$CartItemPayload<ExtArgs>, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Find the first CartItem 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 {CartItemFindFirstArgs} args - Arguments to find a CartItem
* @example
* // Get one CartItem
* const cartItem = await prisma.cartItem.findFirst({
* where: {
* // ... provide filter here
* }
* })
*/
findFirst<T extends CartItemFindFirstArgs>(args?: SelectSubset<T, CartItemFindFirstArgs<ExtArgs>>): Prisma__CartItemClient<$Result.GetResult<Prisma.$CartItemPayload<ExtArgs>, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
/**
* Find the first CartItem 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 {CartItemFindFirstOrThrowArgs} args - Arguments to find a CartItem
* @example
* // Get one CartItem
* const cartItem = await prisma.cartItem.findFirstOrThrow({
* where: {
* // ... provide filter here
* }
* })
*/
findFirstOrThrow<T extends CartItemFindFirstOrThrowArgs>(args?: SelectSubset<T, CartItemFindFirstOrThrowArgs<ExtArgs>>): Prisma__CartItemClient<$Result.GetResult<Prisma.$CartItemPayload<ExtArgs>, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Find zero or more CartItems 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 {CartItemFindManyArgs} args - Arguments to filter and select certain fields only.
* @example
* // Get all CartItems
* const cartItems = await prisma.cartItem.findMany()
*
* // Get first 10 CartItems
* const cartItems = await prisma.cartItem.findMany({ take: 10 })
*
* // Only select the `id`
* const cartItemWithIdOnly = await prisma.cartItem.findMany({ select: { id: true } })
*
*/
findMany<T extends CartItemFindManyArgs>(args?: SelectSubset<T, CartItemFindManyArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$CartItemPayload<ExtArgs>, T, "findMany", GlobalOmitOptions>>
/**
* Create a CartItem.
* @param {CartItemCreateArgs} args - Arguments to create a CartItem.
* @example
* // Create one CartItem
* const CartItem = await prisma.cartItem.create({
* data: {
* // ... data to create a CartItem
* }
* })
*
*/
create<T extends CartItemCreateArgs>(args: SelectSubset<T, CartItemCreateArgs<ExtArgs>>): Prisma__CartItemClient<$Result.GetResult<Prisma.$CartItemPayload<ExtArgs>, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Create many CartItems.
* @param {CartItemCreateManyArgs} args - Arguments to create many CartItems.
* @example
* // Create many CartItems
* const cartItem = await prisma.cartItem.createMany({
* data: [
* // ... provide data here
* ]
* })
*
*/
createMany<T extends CartItemCreateManyArgs>(args?: SelectSubset<T, CartItemCreateManyArgs<ExtArgs>>): Prisma.PrismaPromise<BatchPayload>
/**
* Create many CartItems and returns the data saved in the database.
* @param {CartItemCreateManyAndReturnArgs} args - Arguments to create many CartItems.
* @example
* // Create many CartItems
* const cartItem = await prisma.cartItem.createManyAndReturn({
* data: [
* // ... provide data here
* ]
* })
*
* // Create many CartItems and only return the `id`
* const cartItemWithIdOnly = await prisma.cartItem.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 CartItemCreateManyAndReturnArgs>(args?: SelectSubset<T, CartItemCreateManyAndReturnArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$CartItemPayload<ExtArgs>, T, "createManyAndReturn", GlobalOmitOptions>>
/**
* Delete a CartItem.
* @param {CartItemDeleteArgs} args - Arguments to delete one CartItem.
* @example
* // Delete one CartItem
* const CartItem = await prisma.cartItem.delete({
* where: {
* // ... filter to delete one CartItem
* }
* })
*
*/
delete<T extends CartItemDeleteArgs>(args: SelectSubset<T, CartItemDeleteArgs<ExtArgs>>): Prisma__CartItemClient<$Result.GetResult<Prisma.$CartItemPayload<ExtArgs>, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Update one CartItem.
* @param {CartItemUpdateArgs} args - Arguments to update one CartItem.
* @example
* // Update one CartItem
* const cartItem = await prisma.cartItem.update({
* where: {
* // ... provide filter here
* },
* data: {
* // ... provide data here
* }
* })
*
*/
update<T extends CartItemUpdateArgs>(args: SelectSubset<T, CartItemUpdateArgs<ExtArgs>>): Prisma__CartItemClient<$Result.GetResult<Prisma.$CartItemPayload<ExtArgs>, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Delete zero or more CartItems.
* @param {CartItemDeleteManyArgs} args - Arguments to filter CartItems to delete.
* @example
* // Delete a few CartItems
* const { count } = await prisma.cartItem.deleteMany({
* where: {
* // ... provide filter here
* }
* })
*
*/
deleteMany<T extends CartItemDeleteManyArgs>(args?: SelectSubset<T, CartItemDeleteManyArgs<ExtArgs>>): Prisma.PrismaPromise<BatchPayload>
/**
* Update zero or more CartItems.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {CartItemUpdateManyArgs} args - Arguments to update one or more rows.
* @example
* // Update many CartItems
* const cartItem = await prisma.cartItem.updateMany({
* where: {
* // ... provide filter here
* },
* data: {
* // ... provide data here
* }
* })
*
*/
updateMany<T extends CartItemUpdateManyArgs>(args: SelectSubset<T, CartItemUpdateManyArgs<ExtArgs>>): Prisma.PrismaPromise<BatchPayload>
/**
* Update zero or more CartItems and returns the data updated in the database.
* @param {CartItemUpdateManyAndReturnArgs} args - Arguments to update many CartItems.
* @example
* // Update many CartItems
* const cartItem = await prisma.cartItem.updateManyAndReturn({
* where: {
* // ... provide filter here
* },
* data: [
* // ... provide data here
* ]
* })
*
* // Update zero or more CartItems and only return the `id`
* const cartItemWithIdOnly = await prisma.cartItem.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 CartItemUpdateManyAndReturnArgs>(args: SelectSubset<T, CartItemUpdateManyAndReturnArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$CartItemPayload<ExtArgs>, T, "updateManyAndReturn", GlobalOmitOptions>>
/**
* Create or update one CartItem.
* @param {CartItemUpsertArgs} args - Arguments to update or create a CartItem.
* @example
* // Update or create a CartItem
* const cartItem = await prisma.cartItem.upsert({
* create: {
* // ... data to create a CartItem
* },
* update: {
* // ... in case it already exists, update
* },
* where: {
* // ... the filter for the CartItem we want to update
* }
* })
*/
upsert<T extends CartItemUpsertArgs>(args: SelectSubset<T, CartItemUpsertArgs<ExtArgs>>): Prisma__CartItemClient<$Result.GetResult<Prisma.$CartItemPayload<ExtArgs>, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Count the number of CartItems.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {CartItemCountArgs} args - Arguments to filter CartItems to count.
* @example
* // Count the number of CartItems
* const count = await prisma.cartItem.count({
* where: {
* // ... the filter for the CartItems we want to count
* }
* })
**/
count<T extends CartItemCountArgs>(
args?: Subset<T, CartItemCountArgs>,
): Prisma.PrismaPromise<
T extends $Utils.Record<'select', any>
? T['select'] extends true
? number
: GetScalarType<T['select'], CartItemCountAggregateOutputType>
: number
>
/**
* Allows you to perform aggregations operations on a CartItem.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {CartItemAggregateArgs} 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 CartItemAggregateArgs>(args: Subset<T, CartItemAggregateArgs>): Prisma.PrismaPromise<GetCartItemAggregateType<T>>
/**
* Group by CartItem.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {CartItemGroupByArgs} 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 CartItemGroupByArgs,
HasSelectOrTake extends Or<
Extends<'skip', Keys<T>>,
Extends<'take', Keys<T>>
>,
OrderByArg extends True extends HasSelectOrTake
? { orderBy: CartItemGroupByArgs['orderBy'] }
: { orderBy?: CartItemGroupByArgs['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, CartItemGroupByArgs, OrderByArg> & InputErrors): {} extends InputErrors ? GetCartItemGroupByPayload<T> : Prisma.PrismaPromise<InputErrors>
/**
* Fields of the CartItem model
*/
readonly fields: CartItemFieldRefs;
}
/**
* The delegate class that acts as a "Promise-like" for CartItem.
* 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__CartItemClient<T, Null = never, ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, GlobalOmitOptions = {}> extends Prisma.PrismaPromise<T> {
readonly [Symbol.toStringTag]: "PrismaPromise"
cart<T extends CartDefaultArgs<ExtArgs> = {}>(args?: Subset<T, CartDefaultArgs<ExtArgs>>): Prisma__CartClient<$Result.GetResult<Prisma.$CartPayload<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 CartItem model
*/
interface CartItemFieldRefs {
readonly id: FieldRef<"CartItem", 'String'>
readonly cartId: FieldRef<"CartItem", 'String'>
readonly productId: FieldRef<"CartItem", 'String'>
readonly priceId: FieldRef<"CartItem", 'String'>
readonly name: FieldRef<"CartItem", 'String'>
readonly unitAmount: FieldRef<"CartItem", 'Int'>
readonly currency: FieldRef<"CartItem", 'String'>
readonly quantity: FieldRef<"CartItem", 'Int'>
readonly createdAt: FieldRef<"CartItem", 'DateTime'>
readonly updatedAt: FieldRef<"CartItem", 'DateTime'>
}
// Custom InputTypes
/**
* CartItem findUnique
*/
export type CartItemFindUniqueArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the CartItem
*/
select?: CartItemSelect<ExtArgs> | null
/**
* Omit specific fields from the CartItem
*/
omit?: CartItemOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: CartItemInclude<ExtArgs> | null
/**
* Filter, which CartItem to fetch.
*/
where: CartItemWhereUniqueInput
}
/**
* CartItem findUniqueOrThrow
*/
export type CartItemFindUniqueOrThrowArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the CartItem
*/
select?: CartItemSelect<ExtArgs> | null
/**
* Omit specific fields from the CartItem
*/
omit?: CartItemOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: CartItemInclude<ExtArgs> | null
/**
* Filter, which CartItem to fetch.
*/
where: CartItemWhereUniqueInput
}
/**
* CartItem findFirst
*/
export type CartItemFindFirstArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the CartItem
*/
select?: CartItemSelect<ExtArgs> | null
/**
* Omit specific fields from the CartItem
*/
omit?: CartItemOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: CartItemInclude<ExtArgs> | null
/**
* Filter, which CartItem to fetch.
*/
where?: CartItemWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of CartItems to fetch.
*/
orderBy?: CartItemOrderByWithRelationInput | CartItemOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the position for searching for CartItems.
*/
cursor?: CartItemWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` CartItems 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` CartItems.
*/
skip?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
*
* Filter by unique combinations of CartItems.
*/
distinct?: CartItemScalarFieldEnum | CartItemScalarFieldEnum[]
}
/**
* CartItem findFirstOrThrow
*/
export type CartItemFindFirstOrThrowArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the CartItem
*/
select?: CartItemSelect<ExtArgs> | null
/**
* Omit specific fields from the CartItem
*/
omit?: CartItemOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: CartItemInclude<ExtArgs> | null
/**
* Filter, which CartItem to fetch.
*/
where?: CartItemWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of CartItems to fetch.
*/
orderBy?: CartItemOrderByWithRelationInput | CartItemOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the position for searching for CartItems.
*/
cursor?: CartItemWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` CartItems 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` CartItems.
*/
skip?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
*
* Filter by unique combinations of CartItems.
*/
distinct?: CartItemScalarFieldEnum | CartItemScalarFieldEnum[]
}
/**
* CartItem findMany
*/
export type CartItemFindManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the CartItem
*/
select?: CartItemSelect<ExtArgs> | null
/**
* Omit specific fields from the CartItem
*/
omit?: CartItemOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: CartItemInclude<ExtArgs> | null
/**
* Filter, which CartItems to fetch.
*/
where?: CartItemWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of CartItems to fetch.
*/
orderBy?: CartItemOrderByWithRelationInput | CartItemOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the position for listing CartItems.
*/
cursor?: CartItemWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` CartItems 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` CartItems.
*/
skip?: number
distinct?: CartItemScalarFieldEnum | CartItemScalarFieldEnum[]
}
/**
* CartItem create
*/
export type CartItemCreateArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the CartItem
*/
select?: CartItemSelect<ExtArgs> | null
/**
* Omit specific fields from the CartItem
*/
omit?: CartItemOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: CartItemInclude<ExtArgs> | null
/**
* The data needed to create a CartItem.
*/
data: XOR<CartItemCreateInput, CartItemUncheckedCreateInput>
}
/**
* CartItem createMany
*/
export type CartItemCreateManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* The data used to create many CartItems.
*/
data: CartItemCreateManyInput | CartItemCreateManyInput[]
}
/**
* CartItem createManyAndReturn
*/
export type CartItemCreateManyAndReturnArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the CartItem
*/
select?: CartItemSelectCreateManyAndReturn<ExtArgs> | null
/**
* Omit specific fields from the CartItem
*/
omit?: CartItemOmit<ExtArgs> | null
/**
* The data used to create many CartItems.
*/
data: CartItemCreateManyInput | CartItemCreateManyInput[]
/**
* Choose, which related nodes to fetch as well
*/
include?: CartItemIncludeCreateManyAndReturn<ExtArgs> | null
}
/**
* CartItem update
*/
export type CartItemUpdateArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the CartItem
*/
select?: CartItemSelect<ExtArgs> | null
/**
* Omit specific fields from the CartItem
*/
omit?: CartItemOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: CartItemInclude<ExtArgs> | null
/**
* The data needed to update a CartItem.
*/
data: XOR<CartItemUpdateInput, CartItemUncheckedUpdateInput>
/**
* Choose, which CartItem to update.
*/
where: CartItemWhereUniqueInput
}
/**
* CartItem updateMany
*/
export type CartItemUpdateManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* The data used to update CartItems.
*/
data: XOR<CartItemUpdateManyMutationInput, CartItemUncheckedUpdateManyInput>
/**
* Filter which CartItems to update
*/
where?: CartItemWhereInput
/**
* Limit how many CartItems to update.
*/
limit?: number
}
/**
* CartItem updateManyAndReturn
*/
export type CartItemUpdateManyAndReturnArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the CartItem
*/
select?: CartItemSelectUpdateManyAndReturn<ExtArgs> | null
/**
* Omit specific fields from the CartItem
*/
omit?: CartItemOmit<ExtArgs> | null
/**
* The data used to update CartItems.
*/
data: XOR<CartItemUpdateManyMutationInput, CartItemUncheckedUpdateManyInput>
/**
* Filter which CartItems to update
*/
where?: CartItemWhereInput
/**
* Limit how many CartItems to update.
*/
limit?: number
/**
* Choose, which related nodes to fetch as well
*/
include?: CartItemIncludeUpdateManyAndReturn<ExtArgs> | null
}
/**
* CartItem upsert
*/
export type CartItemUpsertArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the CartItem
*/
select?: CartItemSelect<ExtArgs> | null
/**
* Omit specific fields from the CartItem
*/
omit?: CartItemOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: CartItemInclude<ExtArgs> | null
/**
* The filter to search for the CartItem to update in case it exists.
*/
where: CartItemWhereUniqueInput
/**
* In case the CartItem found by the `where` argument doesn't exist, create a new CartItem with this data.
*/
create: XOR<CartItemCreateInput, CartItemUncheckedCreateInput>
/**
* In case the CartItem was found with the provided `where` argument, update it with this data.
*/
update: XOR<CartItemUpdateInput, CartItemUncheckedUpdateInput>
}
/**
* CartItem delete
*/
export type CartItemDeleteArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the CartItem
*/
select?: CartItemSelect<ExtArgs> | null
/**
* Omit specific fields from the CartItem
*/
omit?: CartItemOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: CartItemInclude<ExtArgs> | null
/**
* Filter which CartItem to delete.
*/
where: CartItemWhereUniqueInput
}
/**
* CartItem deleteMany
*/
export type CartItemDeleteManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Filter which CartItems to delete
*/
where?: CartItemWhereInput
/**
* Limit how many CartItems to delete.
*/
limit?: number
}
/**
* CartItem without action
*/
export type CartItemDefaultArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the CartItem
*/
select?: CartItemSelect<ExtArgs> | null
/**
* Omit specific fields from the CartItem
*/
omit?: CartItemOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: CartItemInclude<ExtArgs> | null
}
/**
* Model UserAddress
*/
export type AggregateUserAddress = {
_count: UserAddressCountAggregateOutputType | null
_min: UserAddressMinAggregateOutputType | null
_max: UserAddressMaxAggregateOutputType | null
}
export type UserAddressMinAggregateOutputType = {
id: string | null
userId: string | null
name: string | null
street1: string | null
city: string | null
state: string | null
zip: string | null
country: string | null
phone: string | null
createdAt: Date | null
updatedAt: Date | null
}
export type UserAddressMaxAggregateOutputType = {
id: string | null
userId: string | null
name: string | null
street1: string | null
city: string | null
state: string | null
zip: string | null
country: string | null
phone: string | null
createdAt: Date | null
updatedAt: Date | null
}
export type UserAddressCountAggregateOutputType = {
id: number
userId: number
name: number
street1: number
city: number
state: number
zip: number
country: number
phone: number
createdAt: number
updatedAt: number
_all: number
}
export type UserAddressMinAggregateInputType = {
id?: true
userId?: true
name?: true
street1?: true
city?: true
state?: true
zip?: true
country?: true
phone?: true
createdAt?: true
updatedAt?: true
}
export type UserAddressMaxAggregateInputType = {
id?: true
userId?: true
name?: true
street1?: true
city?: true
state?: true
zip?: true
country?: true
phone?: true
createdAt?: true
updatedAt?: true
}
export type UserAddressCountAggregateInputType = {
id?: true
userId?: true
name?: true
street1?: true
city?: true
state?: true
zip?: true
country?: true
phone?: true
createdAt?: true
updatedAt?: true
_all?: true
}
export type UserAddressAggregateArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Filter which UserAddress to aggregate.
*/
where?: UserAddressWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of UserAddresses to fetch.
*/
orderBy?: UserAddressOrderByWithRelationInput | UserAddressOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the start position
*/
cursor?: UserAddressWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` UserAddresses 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` UserAddresses.
*/
skip?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Count returned UserAddresses
**/
_count?: true | UserAddressCountAggregateInputType
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Select which fields to find the minimum value
**/
_min?: UserAddressMinAggregateInputType
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Select which fields to find the maximum value
**/
_max?: UserAddressMaxAggregateInputType
}
export type GetUserAddressAggregateType<T extends UserAddressAggregateArgs> = {
[P in keyof T & keyof AggregateUserAddress]: P extends '_count' | 'count'
? T[P] extends true
? number
: GetScalarType<T[P], AggregateUserAddress[P]>
: GetScalarType<T[P], AggregateUserAddress[P]>
}
export type UserAddressGroupByArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
where?: UserAddressWhereInput
orderBy?: UserAddressOrderByWithAggregationInput | UserAddressOrderByWithAggregationInput[]
by: UserAddressScalarFieldEnum[] | UserAddressScalarFieldEnum
having?: UserAddressScalarWhereWithAggregatesInput
take?: number
skip?: number
_count?: UserAddressCountAggregateInputType | true
_min?: UserAddressMinAggregateInputType
_max?: UserAddressMaxAggregateInputType
}
export type UserAddressGroupByOutputType = {
id: string
userId: string
name: string
street1: string
city: string
state: string
zip: string
country: string
phone: string | null
createdAt: Date
updatedAt: Date
_count: UserAddressCountAggregateOutputType | null
_min: UserAddressMinAggregateOutputType | null
_max: UserAddressMaxAggregateOutputType | null
}
type GetUserAddressGroupByPayload<T extends UserAddressGroupByArgs> = Prisma.PrismaPromise<
Array<
PickEnumerable<UserAddressGroupByOutputType, T['by']> &
{
[P in ((keyof T) & (keyof UserAddressGroupByOutputType))]: P extends '_count'
? T[P] extends boolean
? number
: GetScalarType<T[P], UserAddressGroupByOutputType[P]>
: GetScalarType<T[P], UserAddressGroupByOutputType[P]>
}
>
>
export type UserAddressSelect<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
id?: boolean
userId?: boolean
name?: boolean
street1?: boolean
city?: boolean
state?: boolean
zip?: boolean
country?: boolean
phone?: boolean
createdAt?: boolean
updatedAt?: boolean
user?: boolean | UserDefaultArgs<ExtArgs>
}, ExtArgs["result"]["userAddress"]>
export type UserAddressSelectCreateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
id?: boolean
userId?: boolean
name?: boolean
street1?: boolean
city?: boolean
state?: boolean
zip?: boolean
country?: boolean
phone?: boolean
createdAt?: boolean
updatedAt?: boolean
user?: boolean | UserDefaultArgs<ExtArgs>
}, ExtArgs["result"]["userAddress"]>
export type UserAddressSelectUpdateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
id?: boolean
userId?: boolean
name?: boolean
street1?: boolean
city?: boolean
state?: boolean
zip?: boolean
country?: boolean
phone?: boolean
createdAt?: boolean
updatedAt?: boolean
user?: boolean | UserDefaultArgs<ExtArgs>
}, ExtArgs["result"]["userAddress"]>
export type UserAddressSelectScalar = {
id?: boolean
userId?: boolean
name?: boolean
street1?: boolean
city?: boolean
state?: boolean
zip?: boolean
country?: boolean
phone?: boolean
createdAt?: boolean
updatedAt?: boolean
}
export type UserAddressOmit<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetOmit<"id" | "userId" | "name" | "street1" | "city" | "state" | "zip" | "country" | "phone" | "createdAt" | "updatedAt", ExtArgs["result"]["userAddress"]>
export type UserAddressInclude<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
user?: boolean | UserDefaultArgs<ExtArgs>
}
export type UserAddressIncludeCreateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
user?: boolean | UserDefaultArgs<ExtArgs>
}
export type UserAddressIncludeUpdateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
user?: boolean | UserDefaultArgs<ExtArgs>
}
export type $UserAddressPayload<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
name: "UserAddress"
objects: {
user: Prisma.$UserPayload<ExtArgs>
}
scalars: $Extensions.GetPayloadResult<{
id: string
userId: string
name: string
street1: string
city: string
state: string
zip: string
country: string
phone: string | null
createdAt: Date
updatedAt: Date
}, ExtArgs["result"]["userAddress"]>
composites: {}
}
type UserAddressGetPayload<S extends boolean | null | undefined | UserAddressDefaultArgs> = $Result.GetResult<Prisma.$UserAddressPayload, S>
type UserAddressCountArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> =
Omit<UserAddressFindManyArgs, 'select' | 'include' | 'distinct' | 'omit'> & {
select?: UserAddressCountAggregateInputType | true
}
export interface UserAddressDelegate<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, GlobalOmitOptions = {}> {
[K: symbol]: { types: Prisma.TypeMap<ExtArgs>['model']['UserAddress'], meta: { name: 'UserAddress' } }
/**
* Find zero or one UserAddress that matches the filter.
* @param {UserAddressFindUniqueArgs} args - Arguments to find a UserAddress
* @example
* // Get one UserAddress
* const userAddress = await prisma.userAddress.findUnique({
* where: {
* // ... provide filter here
* }
* })
*/
findUnique<T extends UserAddressFindUniqueArgs>(args: SelectSubset<T, UserAddressFindUniqueArgs<ExtArgs>>): Prisma__UserAddressClient<$Result.GetResult<Prisma.$UserAddressPayload<ExtArgs>, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
/**
* Find one UserAddress that matches the filter or throw an error with `error.code='P2025'`
* if no matches were found.
* @param {UserAddressFindUniqueOrThrowArgs} args - Arguments to find a UserAddress
* @example
* // Get one UserAddress
* const userAddress = await prisma.userAddress.findUniqueOrThrow({
* where: {
* // ... provide filter here
* }
* })
*/
findUniqueOrThrow<T extends UserAddressFindUniqueOrThrowArgs>(args: SelectSubset<T, UserAddressFindUniqueOrThrowArgs<ExtArgs>>): Prisma__UserAddressClient<$Result.GetResult<Prisma.$UserAddressPayload<ExtArgs>, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Find the first UserAddress 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 {UserAddressFindFirstArgs} args - Arguments to find a UserAddress
* @example
* // Get one UserAddress
* const userAddress = await prisma.userAddress.findFirst({
* where: {
* // ... provide filter here
* }
* })
*/
findFirst<T extends UserAddressFindFirstArgs>(args?: SelectSubset<T, UserAddressFindFirstArgs<ExtArgs>>): Prisma__UserAddressClient<$Result.GetResult<Prisma.$UserAddressPayload<ExtArgs>, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
/**
* Find the first UserAddress 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 {UserAddressFindFirstOrThrowArgs} args - Arguments to find a UserAddress
* @example
* // Get one UserAddress
* const userAddress = await prisma.userAddress.findFirstOrThrow({
* where: {
* // ... provide filter here
* }
* })
*/
findFirstOrThrow<T extends UserAddressFindFirstOrThrowArgs>(args?: SelectSubset<T, UserAddressFindFirstOrThrowArgs<ExtArgs>>): Prisma__UserAddressClient<$Result.GetResult<Prisma.$UserAddressPayload<ExtArgs>, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Find zero or more UserAddresses 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 {UserAddressFindManyArgs} args - Arguments to filter and select certain fields only.
* @example
* // Get all UserAddresses
* const userAddresses = await prisma.userAddress.findMany()
*
* // Get first 10 UserAddresses
* const userAddresses = await prisma.userAddress.findMany({ take: 10 })
*
* // Only select the `id`
* const userAddressWithIdOnly = await prisma.userAddress.findMany({ select: { id: true } })
*
*/
findMany<T extends UserAddressFindManyArgs>(args?: SelectSubset<T, UserAddressFindManyArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$UserAddressPayload<ExtArgs>, T, "findMany", GlobalOmitOptions>>
/**
* Create a UserAddress.
* @param {UserAddressCreateArgs} args - Arguments to create a UserAddress.
* @example
* // Create one UserAddress
* const UserAddress = await prisma.userAddress.create({
* data: {
* // ... data to create a UserAddress
* }
* })
*
*/
create<T extends UserAddressCreateArgs>(args: SelectSubset<T, UserAddressCreateArgs<ExtArgs>>): Prisma__UserAddressClient<$Result.GetResult<Prisma.$UserAddressPayload<ExtArgs>, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Create many UserAddresses.
* @param {UserAddressCreateManyArgs} args - Arguments to create many UserAddresses.
* @example
* // Create many UserAddresses
* const userAddress = await prisma.userAddress.createMany({
* data: [
* // ... provide data here
* ]
* })
*
*/
createMany<T extends UserAddressCreateManyArgs>(args?: SelectSubset<T, UserAddressCreateManyArgs<ExtArgs>>): Prisma.PrismaPromise<BatchPayload>
/**
* Create many UserAddresses and returns the data saved in the database.
* @param {UserAddressCreateManyAndReturnArgs} args - Arguments to create many UserAddresses.
* @example
* // Create many UserAddresses
* const userAddress = await prisma.userAddress.createManyAndReturn({
* data: [
* // ... provide data here
* ]
* })
*
* // Create many UserAddresses and only return the `id`
* const userAddressWithIdOnly = await prisma.userAddress.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 UserAddressCreateManyAndReturnArgs>(args?: SelectSubset<T, UserAddressCreateManyAndReturnArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$UserAddressPayload<ExtArgs>, T, "createManyAndReturn", GlobalOmitOptions>>
/**
* Delete a UserAddress.
* @param {UserAddressDeleteArgs} args - Arguments to delete one UserAddress.
* @example
* // Delete one UserAddress
* const UserAddress = await prisma.userAddress.delete({
* where: {
* // ... filter to delete one UserAddress
* }
* })
*
*/
delete<T extends UserAddressDeleteArgs>(args: SelectSubset<T, UserAddressDeleteArgs<ExtArgs>>): Prisma__UserAddressClient<$Result.GetResult<Prisma.$UserAddressPayload<ExtArgs>, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Update one UserAddress.
* @param {UserAddressUpdateArgs} args - Arguments to update one UserAddress.
* @example
* // Update one UserAddress
* const userAddress = await prisma.userAddress.update({
* where: {
* // ... provide filter here
* },
* data: {
* // ... provide data here
* }
* })
*
*/
update<T extends UserAddressUpdateArgs>(args: SelectSubset<T, UserAddressUpdateArgs<ExtArgs>>): Prisma__UserAddressClient<$Result.GetResult<Prisma.$UserAddressPayload<ExtArgs>, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Delete zero or more UserAddresses.
* @param {UserAddressDeleteManyArgs} args - Arguments to filter UserAddresses to delete.
* @example
* // Delete a few UserAddresses
* const { count } = await prisma.userAddress.deleteMany({
* where: {
* // ... provide filter here
* }
* })
*
*/
deleteMany<T extends UserAddressDeleteManyArgs>(args?: SelectSubset<T, UserAddressDeleteManyArgs<ExtArgs>>): Prisma.PrismaPromise<BatchPayload>
/**
* Update zero or more UserAddresses.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {UserAddressUpdateManyArgs} args - Arguments to update one or more rows.
* @example
* // Update many UserAddresses
* const userAddress = await prisma.userAddress.updateMany({
* where: {
* // ... provide filter here
* },
* data: {
* // ... provide data here
* }
* })
*
*/
updateMany<T extends UserAddressUpdateManyArgs>(args: SelectSubset<T, UserAddressUpdateManyArgs<ExtArgs>>): Prisma.PrismaPromise<BatchPayload>
/**
* Update zero or more UserAddresses and returns the data updated in the database.
* @param {UserAddressUpdateManyAndReturnArgs} args - Arguments to update many UserAddresses.
* @example
* // Update many UserAddresses
* const userAddress = await prisma.userAddress.updateManyAndReturn({
* where: {
* // ... provide filter here
* },
* data: [
* // ... provide data here
* ]
* })
*
* // Update zero or more UserAddresses and only return the `id`
* const userAddressWithIdOnly = await prisma.userAddress.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 UserAddressUpdateManyAndReturnArgs>(args: SelectSubset<T, UserAddressUpdateManyAndReturnArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$UserAddressPayload<ExtArgs>, T, "updateManyAndReturn", GlobalOmitOptions>>
/**
* Create or update one UserAddress.
* @param {UserAddressUpsertArgs} args - Arguments to update or create a UserAddress.
* @example
* // Update or create a UserAddress
* const userAddress = await prisma.userAddress.upsert({
* create: {
* // ... data to create a UserAddress
* },
* update: {
* // ... in case it already exists, update
* },
* where: {
* // ... the filter for the UserAddress we want to update
* }
* })
*/
upsert<T extends UserAddressUpsertArgs>(args: SelectSubset<T, UserAddressUpsertArgs<ExtArgs>>): Prisma__UserAddressClient<$Result.GetResult<Prisma.$UserAddressPayload<ExtArgs>, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Count the number of UserAddresses.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {UserAddressCountArgs} args - Arguments to filter UserAddresses to count.
* @example
* // Count the number of UserAddresses
* const count = await prisma.userAddress.count({
* where: {
* // ... the filter for the UserAddresses we want to count
* }
* })
**/
count<T extends UserAddressCountArgs>(
args?: Subset<T, UserAddressCountArgs>,
): Prisma.PrismaPromise<
T extends $Utils.Record<'select', any>
? T['select'] extends true
? number
: GetScalarType<T['select'], UserAddressCountAggregateOutputType>
: number
>
/**
* Allows you to perform aggregations operations on a UserAddress.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {UserAddressAggregateArgs} 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 UserAddressAggregateArgs>(args: Subset<T, UserAddressAggregateArgs>): Prisma.PrismaPromise<GetUserAddressAggregateType<T>>
/**
* Group by UserAddress.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {UserAddressGroupByArgs} 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 UserAddressGroupByArgs,
HasSelectOrTake extends Or<
Extends<'skip', Keys<T>>,
Extends<'take', Keys<T>>
>,
OrderByArg extends True extends HasSelectOrTake
? { orderBy: UserAddressGroupByArgs['orderBy'] }
: { orderBy?: UserAddressGroupByArgs['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, UserAddressGroupByArgs, OrderByArg> & InputErrors): {} extends InputErrors ? GetUserAddressGroupByPayload<T> : Prisma.PrismaPromise<InputErrors>
/**
* Fields of the UserAddress model
*/
readonly fields: UserAddressFieldRefs;
}
/**
* The delegate class that acts as a "Promise-like" for UserAddress.
* 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__UserAddressClient<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>
/**
* 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 UserAddress model
*/
interface UserAddressFieldRefs {
readonly id: FieldRef<"UserAddress", 'String'>
readonly userId: FieldRef<"UserAddress", 'String'>
readonly name: FieldRef<"UserAddress", 'String'>
readonly street1: FieldRef<"UserAddress", 'String'>
readonly city: FieldRef<"UserAddress", 'String'>
readonly state: FieldRef<"UserAddress", 'String'>
readonly zip: FieldRef<"UserAddress", 'String'>
readonly country: FieldRef<"UserAddress", 'String'>
readonly phone: FieldRef<"UserAddress", 'String'>
readonly createdAt: FieldRef<"UserAddress", 'DateTime'>
readonly updatedAt: FieldRef<"UserAddress", 'DateTime'>
}
// Custom InputTypes
/**
* UserAddress findUnique
*/
export type UserAddressFindUniqueArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the UserAddress
*/
select?: UserAddressSelect<ExtArgs> | null
/**
* Omit specific fields from the UserAddress
*/
omit?: UserAddressOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: UserAddressInclude<ExtArgs> | null
/**
* Filter, which UserAddress to fetch.
*/
where: UserAddressWhereUniqueInput
}
/**
* UserAddress findUniqueOrThrow
*/
export type UserAddressFindUniqueOrThrowArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the UserAddress
*/
select?: UserAddressSelect<ExtArgs> | null
/**
* Omit specific fields from the UserAddress
*/
omit?: UserAddressOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: UserAddressInclude<ExtArgs> | null
/**
* Filter, which UserAddress to fetch.
*/
where: UserAddressWhereUniqueInput
}
/**
* UserAddress findFirst
*/
export type UserAddressFindFirstArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the UserAddress
*/
select?: UserAddressSelect<ExtArgs> | null
/**
* Omit specific fields from the UserAddress
*/
omit?: UserAddressOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: UserAddressInclude<ExtArgs> | null
/**
* Filter, which UserAddress to fetch.
*/
where?: UserAddressWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of UserAddresses to fetch.
*/
orderBy?: UserAddressOrderByWithRelationInput | UserAddressOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the position for searching for UserAddresses.
*/
cursor?: UserAddressWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` UserAddresses 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` UserAddresses.
*/
skip?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
*
* Filter by unique combinations of UserAddresses.
*/
distinct?: UserAddressScalarFieldEnum | UserAddressScalarFieldEnum[]
}
/**
* UserAddress findFirstOrThrow
*/
export type UserAddressFindFirstOrThrowArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the UserAddress
*/
select?: UserAddressSelect<ExtArgs> | null
/**
* Omit specific fields from the UserAddress
*/
omit?: UserAddressOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: UserAddressInclude<ExtArgs> | null
/**
* Filter, which UserAddress to fetch.
*/
where?: UserAddressWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of UserAddresses to fetch.
*/
orderBy?: UserAddressOrderByWithRelationInput | UserAddressOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the position for searching for UserAddresses.
*/
cursor?: UserAddressWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` UserAddresses 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` UserAddresses.
*/
skip?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
*
* Filter by unique combinations of UserAddresses.
*/
distinct?: UserAddressScalarFieldEnum | UserAddressScalarFieldEnum[]
}
/**
* UserAddress findMany
*/
export type UserAddressFindManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the UserAddress
*/
select?: UserAddressSelect<ExtArgs> | null
/**
* Omit specific fields from the UserAddress
*/
omit?: UserAddressOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: UserAddressInclude<ExtArgs> | null
/**
* Filter, which UserAddresses to fetch.
*/
where?: UserAddressWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of UserAddresses to fetch.
*/
orderBy?: UserAddressOrderByWithRelationInput | UserAddressOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the position for listing UserAddresses.
*/
cursor?: UserAddressWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` UserAddresses 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` UserAddresses.
*/
skip?: number
distinct?: UserAddressScalarFieldEnum | UserAddressScalarFieldEnum[]
}
/**
* UserAddress create
*/
export type UserAddressCreateArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the UserAddress
*/
select?: UserAddressSelect<ExtArgs> | null
/**
* Omit specific fields from the UserAddress
*/
omit?: UserAddressOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: UserAddressInclude<ExtArgs> | null
/**
* The data needed to create a UserAddress.
*/
data: XOR<UserAddressCreateInput, UserAddressUncheckedCreateInput>
}
/**
* UserAddress createMany
*/
export type UserAddressCreateManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* The data used to create many UserAddresses.
*/
data: UserAddressCreateManyInput | UserAddressCreateManyInput[]
}
/**
* UserAddress createManyAndReturn
*/
export type UserAddressCreateManyAndReturnArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the UserAddress
*/
select?: UserAddressSelectCreateManyAndReturn<ExtArgs> | null
/**
* Omit specific fields from the UserAddress
*/
omit?: UserAddressOmit<ExtArgs> | null
/**
* The data used to create many UserAddresses.
*/
data: UserAddressCreateManyInput | UserAddressCreateManyInput[]
/**
* Choose, which related nodes to fetch as well
*/
include?: UserAddressIncludeCreateManyAndReturn<ExtArgs> | null
}
/**
* UserAddress update
*/
export type UserAddressUpdateArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the UserAddress
*/
select?: UserAddressSelect<ExtArgs> | null
/**
* Omit specific fields from the UserAddress
*/
omit?: UserAddressOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: UserAddressInclude<ExtArgs> | null
/**
* The data needed to update a UserAddress.
*/
data: XOR<UserAddressUpdateInput, UserAddressUncheckedUpdateInput>
/**
* Choose, which UserAddress to update.
*/
where: UserAddressWhereUniqueInput
}
/**
* UserAddress updateMany
*/
export type UserAddressUpdateManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* The data used to update UserAddresses.
*/
data: XOR<UserAddressUpdateManyMutationInput, UserAddressUncheckedUpdateManyInput>
/**
* Filter which UserAddresses to update
*/
where?: UserAddressWhereInput
/**
* Limit how many UserAddresses to update.
*/
limit?: number
}
/**
* UserAddress updateManyAndReturn
*/
export type UserAddressUpdateManyAndReturnArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the UserAddress
*/
select?: UserAddressSelectUpdateManyAndReturn<ExtArgs> | null
/**
* Omit specific fields from the UserAddress
*/
omit?: UserAddressOmit<ExtArgs> | null
/**
* The data used to update UserAddresses.
*/
data: XOR<UserAddressUpdateManyMutationInput, UserAddressUncheckedUpdateManyInput>
/**
* Filter which UserAddresses to update
*/
where?: UserAddressWhereInput
/**
* Limit how many UserAddresses to update.
*/
limit?: number
/**
* Choose, which related nodes to fetch as well
*/
include?: UserAddressIncludeUpdateManyAndReturn<ExtArgs> | null
}
/**
* UserAddress upsert
*/
export type UserAddressUpsertArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the UserAddress
*/
select?: UserAddressSelect<ExtArgs> | null
/**
* Omit specific fields from the UserAddress
*/
omit?: UserAddressOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: UserAddressInclude<ExtArgs> | null
/**
* The filter to search for the UserAddress to update in case it exists.
*/
where: UserAddressWhereUniqueInput
/**
* In case the UserAddress found by the `where` argument doesn't exist, create a new UserAddress with this data.
*/
create: XOR<UserAddressCreateInput, UserAddressUncheckedCreateInput>
/**
* In case the UserAddress was found with the provided `where` argument, update it with this data.
*/
update: XOR<UserAddressUpdateInput, UserAddressUncheckedUpdateInput>
}
/**
* UserAddress delete
*/
export type UserAddressDeleteArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the UserAddress
*/
select?: UserAddressSelect<ExtArgs> | null
/**
* Omit specific fields from the UserAddress
*/
omit?: UserAddressOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: UserAddressInclude<ExtArgs> | null
/**
* Filter which UserAddress to delete.
*/
where: UserAddressWhereUniqueInput
}
/**
* UserAddress deleteMany
*/
export type UserAddressDeleteManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Filter which UserAddresses to delete
*/
where?: UserAddressWhereInput
/**
* Limit how many UserAddresses to delete.
*/
limit?: number
}
/**
* UserAddress without action
*/
export type UserAddressDefaultArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the UserAddress
*/
select?: UserAddressSelect<ExtArgs> | null
/**
* Omit specific fields from the UserAddress
*/
omit?: UserAddressOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: UserAddressInclude<ExtArgs> | null
}
/**
* Model Order
*/
export type AggregateOrder = {
_count: OrderCountAggregateOutputType | null
_min: OrderMinAggregateOutputType | null
_max: OrderMaxAggregateOutputType | null
}
export type OrderMinAggregateOutputType = {
id: string | null
storeId: string | null
userId: string | null
sessionId: string | null
stripeCheckoutSessionId: string | null
shippingRateId: string | null
status: string | null
labelUrl: string | null
createdAt: Date | null
updatedAt: Date | null
}
export type OrderMaxAggregateOutputType = {
id: string | null
storeId: string | null
userId: string | null
sessionId: string | null
stripeCheckoutSessionId: string | null
shippingRateId: string | null
status: string | null
labelUrl: string | null
createdAt: Date | null
updatedAt: Date | null
}
export type OrderCountAggregateOutputType = {
id: number
storeId: number
userId: number
sessionId: number
stripeCheckoutSessionId: number
shippingRateId: number
shippingRateSnapshot: number
shippingAddress: number
items: number
status: number
labelUrl: number
createdAt: number
updatedAt: number
_all: number
}
export type OrderMinAggregateInputType = {
id?: true
storeId?: true
userId?: true
sessionId?: true
stripeCheckoutSessionId?: true
shippingRateId?: true
status?: true
labelUrl?: true
createdAt?: true
updatedAt?: true
}
export type OrderMaxAggregateInputType = {
id?: true
storeId?: true
userId?: true
sessionId?: true
stripeCheckoutSessionId?: true
shippingRateId?: true
status?: true
labelUrl?: true
createdAt?: true
updatedAt?: true
}
export type OrderCountAggregateInputType = {
id?: true
storeId?: true
userId?: true
sessionId?: true
stripeCheckoutSessionId?: true
shippingRateId?: true
shippingRateSnapshot?: true
shippingAddress?: true
items?: true
status?: true
labelUrl?: true
createdAt?: true
updatedAt?: true
_all?: true
}
export type OrderAggregateArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Filter which Order to aggregate.
*/
where?: OrderWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of Orders to fetch.
*/
orderBy?: OrderOrderByWithRelationInput | OrderOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the start position
*/
cursor?: OrderWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` Orders 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` Orders.
*/
skip?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Count returned Orders
**/
_count?: true | OrderCountAggregateInputType
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Select which fields to find the minimum value
**/
_min?: OrderMinAggregateInputType
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Select which fields to find the maximum value
**/
_max?: OrderMaxAggregateInputType
}
export type GetOrderAggregateType<T extends OrderAggregateArgs> = {
[P in keyof T & keyof AggregateOrder]: P extends '_count' | 'count'
? T[P] extends true
? number
: GetScalarType<T[P], AggregateOrder[P]>
: GetScalarType<T[P], AggregateOrder[P]>
}
export type OrderGroupByArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
where?: OrderWhereInput
orderBy?: OrderOrderByWithAggregationInput | OrderOrderByWithAggregationInput[]
by: OrderScalarFieldEnum[] | OrderScalarFieldEnum
having?: OrderScalarWhereWithAggregatesInput
take?: number
skip?: number
_count?: OrderCountAggregateInputType | true
_min?: OrderMinAggregateInputType
_max?: OrderMaxAggregateInputType
}
export type OrderGroupByOutputType = {
id: string
storeId: string
userId: string | null
sessionId: string | null
stripeCheckoutSessionId: string
shippingRateId: string | null
shippingRateSnapshot: JsonValue | null
shippingAddress: JsonValue | null
items: JsonValue
status: string
labelUrl: string | null
createdAt: Date
updatedAt: Date
_count: OrderCountAggregateOutputType | null
_min: OrderMinAggregateOutputType | null
_max: OrderMaxAggregateOutputType | null
}
type GetOrderGroupByPayload<T extends OrderGroupByArgs> = Prisma.PrismaPromise<
Array<
PickEnumerable<OrderGroupByOutputType, T['by']> &
{
[P in ((keyof T) & (keyof OrderGroupByOutputType))]: P extends '_count'
? T[P] extends boolean
? number
: GetScalarType<T[P], OrderGroupByOutputType[P]>
: GetScalarType<T[P], OrderGroupByOutputType[P]>
}
>
>
export type OrderSelect<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
id?: boolean
storeId?: boolean
userId?: boolean
sessionId?: boolean
stripeCheckoutSessionId?: boolean
shippingRateId?: boolean
shippingRateSnapshot?: boolean
shippingAddress?: boolean
items?: boolean
status?: boolean
labelUrl?: boolean
createdAt?: boolean
updatedAt?: boolean
}, ExtArgs["result"]["order"]>
export type OrderSelectCreateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
id?: boolean
storeId?: boolean
userId?: boolean
sessionId?: boolean
stripeCheckoutSessionId?: boolean
shippingRateId?: boolean
shippingRateSnapshot?: boolean
shippingAddress?: boolean
items?: boolean
status?: boolean
labelUrl?: boolean
createdAt?: boolean
updatedAt?: boolean
}, ExtArgs["result"]["order"]>
export type OrderSelectUpdateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
id?: boolean
storeId?: boolean
userId?: boolean
sessionId?: boolean
stripeCheckoutSessionId?: boolean
shippingRateId?: boolean
shippingRateSnapshot?: boolean
shippingAddress?: boolean
items?: boolean
status?: boolean
labelUrl?: boolean
createdAt?: boolean
updatedAt?: boolean
}, ExtArgs["result"]["order"]>
export type OrderSelectScalar = {
id?: boolean
storeId?: boolean
userId?: boolean
sessionId?: boolean
stripeCheckoutSessionId?: boolean
shippingRateId?: boolean
shippingRateSnapshot?: boolean
shippingAddress?: boolean
items?: boolean
status?: boolean
labelUrl?: boolean
createdAt?: boolean
updatedAt?: boolean
}
export type OrderOmit<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetOmit<"id" | "storeId" | "userId" | "sessionId" | "stripeCheckoutSessionId" | "shippingRateId" | "shippingRateSnapshot" | "shippingAddress" | "items" | "status" | "labelUrl" | "createdAt" | "updatedAt", ExtArgs["result"]["order"]>
export type $OrderPayload<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
name: "Order"
objects: {}
scalars: $Extensions.GetPayloadResult<{
id: string
storeId: string
userId: string | null
sessionId: string | null
stripeCheckoutSessionId: string
shippingRateId: string | null
shippingRateSnapshot: Prisma.JsonValue | null
shippingAddress: Prisma.JsonValue | null
items: Prisma.JsonValue
status: string
labelUrl: string | null
createdAt: Date
updatedAt: Date
}, ExtArgs["result"]["order"]>
composites: {}
}
type OrderGetPayload<S extends boolean | null | undefined | OrderDefaultArgs> = $Result.GetResult<Prisma.$OrderPayload, S>
type OrderCountArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> =
Omit<OrderFindManyArgs, 'select' | 'include' | 'distinct' | 'omit'> & {
select?: OrderCountAggregateInputType | true
}
export interface OrderDelegate<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, GlobalOmitOptions = {}> {
[K: symbol]: { types: Prisma.TypeMap<ExtArgs>['model']['Order'], meta: { name: 'Order' } }
/**
* Find zero or one Order that matches the filter.
* @param {OrderFindUniqueArgs} args - Arguments to find a Order
* @example
* // Get one Order
* const order = await prisma.order.findUnique({
* where: {
* // ... provide filter here
* }
* })
*/
findUnique<T extends OrderFindUniqueArgs>(args: SelectSubset<T, OrderFindUniqueArgs<ExtArgs>>): Prisma__OrderClient<$Result.GetResult<Prisma.$OrderPayload<ExtArgs>, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
/**
* Find one Order that matches the filter or throw an error with `error.code='P2025'`
* if no matches were found.
* @param {OrderFindUniqueOrThrowArgs} args - Arguments to find a Order
* @example
* // Get one Order
* const order = await prisma.order.findUniqueOrThrow({
* where: {
* // ... provide filter here
* }
* })
*/
findUniqueOrThrow<T extends OrderFindUniqueOrThrowArgs>(args: SelectSubset<T, OrderFindUniqueOrThrowArgs<ExtArgs>>): Prisma__OrderClient<$Result.GetResult<Prisma.$OrderPayload<ExtArgs>, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Find the first Order 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 {OrderFindFirstArgs} args - Arguments to find a Order
* @example
* // Get one Order
* const order = await prisma.order.findFirst({
* where: {
* // ... provide filter here
* }
* })
*/
findFirst<T extends OrderFindFirstArgs>(args?: SelectSubset<T, OrderFindFirstArgs<ExtArgs>>): Prisma__OrderClient<$Result.GetResult<Prisma.$OrderPayload<ExtArgs>, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
/**
* Find the first Order 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 {OrderFindFirstOrThrowArgs} args - Arguments to find a Order
* @example
* // Get one Order
* const order = await prisma.order.findFirstOrThrow({
* where: {
* // ... provide filter here
* }
* })
*/
findFirstOrThrow<T extends OrderFindFirstOrThrowArgs>(args?: SelectSubset<T, OrderFindFirstOrThrowArgs<ExtArgs>>): Prisma__OrderClient<$Result.GetResult<Prisma.$OrderPayload<ExtArgs>, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Find zero or more Orders 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 {OrderFindManyArgs} args - Arguments to filter and select certain fields only.
* @example
* // Get all Orders
* const orders = await prisma.order.findMany()
*
* // Get first 10 Orders
* const orders = await prisma.order.findMany({ take: 10 })
*
* // Only select the `id`
* const orderWithIdOnly = await prisma.order.findMany({ select: { id: true } })
*
*/
findMany<T extends OrderFindManyArgs>(args?: SelectSubset<T, OrderFindManyArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$OrderPayload<ExtArgs>, T, "findMany", GlobalOmitOptions>>
/**
* Create a Order.
* @param {OrderCreateArgs} args - Arguments to create a Order.
* @example
* // Create one Order
* const Order = await prisma.order.create({
* data: {
* // ... data to create a Order
* }
* })
*
*/
create<T extends OrderCreateArgs>(args: SelectSubset<T, OrderCreateArgs<ExtArgs>>): Prisma__OrderClient<$Result.GetResult<Prisma.$OrderPayload<ExtArgs>, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Create many Orders.
* @param {OrderCreateManyArgs} args - Arguments to create many Orders.
* @example
* // Create many Orders
* const order = await prisma.order.createMany({
* data: [
* // ... provide data here
* ]
* })
*
*/
createMany<T extends OrderCreateManyArgs>(args?: SelectSubset<T, OrderCreateManyArgs<ExtArgs>>): Prisma.PrismaPromise<BatchPayload>
/**
* Create many Orders and returns the data saved in the database.
* @param {OrderCreateManyAndReturnArgs} args - Arguments to create many Orders.
* @example
* // Create many Orders
* const order = await prisma.order.createManyAndReturn({
* data: [
* // ... provide data here
* ]
* })
*
* // Create many Orders and only return the `id`
* const orderWithIdOnly = await prisma.order.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 OrderCreateManyAndReturnArgs>(args?: SelectSubset<T, OrderCreateManyAndReturnArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$OrderPayload<ExtArgs>, T, "createManyAndReturn", GlobalOmitOptions>>
/**
* Delete a Order.
* @param {OrderDeleteArgs} args - Arguments to delete one Order.
* @example
* // Delete one Order
* const Order = await prisma.order.delete({
* where: {
* // ... filter to delete one Order
* }
* })
*
*/
delete<T extends OrderDeleteArgs>(args: SelectSubset<T, OrderDeleteArgs<ExtArgs>>): Prisma__OrderClient<$Result.GetResult<Prisma.$OrderPayload<ExtArgs>, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Update one Order.
* @param {OrderUpdateArgs} args - Arguments to update one Order.
* @example
* // Update one Order
* const order = await prisma.order.update({
* where: {
* // ... provide filter here
* },
* data: {
* // ... provide data here
* }
* })
*
*/
update<T extends OrderUpdateArgs>(args: SelectSubset<T, OrderUpdateArgs<ExtArgs>>): Prisma__OrderClient<$Result.GetResult<Prisma.$OrderPayload<ExtArgs>, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Delete zero or more Orders.
* @param {OrderDeleteManyArgs} args - Arguments to filter Orders to delete.
* @example
* // Delete a few Orders
* const { count } = await prisma.order.deleteMany({
* where: {
* // ... provide filter here
* }
* })
*
*/
deleteMany<T extends OrderDeleteManyArgs>(args?: SelectSubset<T, OrderDeleteManyArgs<ExtArgs>>): Prisma.PrismaPromise<BatchPayload>
/**
* Update zero or more Orders.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {OrderUpdateManyArgs} args - Arguments to update one or more rows.
* @example
* // Update many Orders
* const order = await prisma.order.updateMany({
* where: {
* // ... provide filter here
* },
* data: {
* // ... provide data here
* }
* })
*
*/
updateMany<T extends OrderUpdateManyArgs>(args: SelectSubset<T, OrderUpdateManyArgs<ExtArgs>>): Prisma.PrismaPromise<BatchPayload>
/**
* Update zero or more Orders and returns the data updated in the database.
* @param {OrderUpdateManyAndReturnArgs} args - Arguments to update many Orders.
* @example
* // Update many Orders
* const order = await prisma.order.updateManyAndReturn({
* where: {
* // ... provide filter here
* },
* data: [
* // ... provide data here
* ]
* })
*
* // Update zero or more Orders and only return the `id`
* const orderWithIdOnly = await prisma.order.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 OrderUpdateManyAndReturnArgs>(args: SelectSubset<T, OrderUpdateManyAndReturnArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$OrderPayload<ExtArgs>, T, "updateManyAndReturn", GlobalOmitOptions>>
/**
* Create or update one Order.
* @param {OrderUpsertArgs} args - Arguments to update or create a Order.
* @example
* // Update or create a Order
* const order = await prisma.order.upsert({
* create: {
* // ... data to create a Order
* },
* update: {
* // ... in case it already exists, update
* },
* where: {
* // ... the filter for the Order we want to update
* }
* })
*/
upsert<T extends OrderUpsertArgs>(args: SelectSubset<T, OrderUpsertArgs<ExtArgs>>): Prisma__OrderClient<$Result.GetResult<Prisma.$OrderPayload<ExtArgs>, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Count the number of Orders.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {OrderCountArgs} args - Arguments to filter Orders to count.
* @example
* // Count the number of Orders
* const count = await prisma.order.count({
* where: {
* // ... the filter for the Orders we want to count
* }
* })
**/
count<T extends OrderCountArgs>(
args?: Subset<T, OrderCountArgs>,
): Prisma.PrismaPromise<
T extends $Utils.Record<'select', any>
? T['select'] extends true
? number
: GetScalarType<T['select'], OrderCountAggregateOutputType>
: number
>
/**
* Allows you to perform aggregations operations on a Order.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {OrderAggregateArgs} 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 OrderAggregateArgs>(args: Subset<T, OrderAggregateArgs>): Prisma.PrismaPromise<GetOrderAggregateType<T>>
/**
* Group by Order.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {OrderGroupByArgs} 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 OrderGroupByArgs,
HasSelectOrTake extends Or<
Extends<'skip', Keys<T>>,
Extends<'take', Keys<T>>
>,
OrderByArg extends True extends HasSelectOrTake
? { orderBy: OrderGroupByArgs['orderBy'] }
: { orderBy?: OrderGroupByArgs['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, OrderGroupByArgs, OrderByArg> & InputErrors): {} extends InputErrors ? GetOrderGroupByPayload<T> : Prisma.PrismaPromise<InputErrors>
/**
* Fields of the Order model
*/
readonly fields: OrderFieldRefs;
}
/**
* The delegate class that acts as a "Promise-like" for Order.
* 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__OrderClient<T, Null = never, ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, GlobalOmitOptions = {}> extends Prisma.PrismaPromise<T> {
readonly [Symbol.toStringTag]: "PrismaPromise"
/**
* 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 Order model
*/
interface OrderFieldRefs {
readonly id: FieldRef<"Order", 'String'>
readonly storeId: FieldRef<"Order", 'String'>
readonly userId: FieldRef<"Order", 'String'>
readonly sessionId: FieldRef<"Order", 'String'>
readonly stripeCheckoutSessionId: FieldRef<"Order", 'String'>
readonly shippingRateId: FieldRef<"Order", 'String'>
readonly shippingRateSnapshot: FieldRef<"Order", 'Json'>
readonly shippingAddress: FieldRef<"Order", 'Json'>
readonly items: FieldRef<"Order", 'Json'>
readonly status: FieldRef<"Order", 'String'>
readonly labelUrl: FieldRef<"Order", 'String'>
readonly createdAt: FieldRef<"Order", 'DateTime'>
readonly updatedAt: FieldRef<"Order", 'DateTime'>
}
// Custom InputTypes
/**
* Order findUnique
*/
export type OrderFindUniqueArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Order
*/
select?: OrderSelect<ExtArgs> | null
/**
* Omit specific fields from the Order
*/
omit?: OrderOmit<ExtArgs> | null
/**
* Filter, which Order to fetch.
*/
where: OrderWhereUniqueInput
}
/**
* Order findUniqueOrThrow
*/
export type OrderFindUniqueOrThrowArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Order
*/
select?: OrderSelect<ExtArgs> | null
/**
* Omit specific fields from the Order
*/
omit?: OrderOmit<ExtArgs> | null
/**
* Filter, which Order to fetch.
*/
where: OrderWhereUniqueInput
}
/**
* Order findFirst
*/
export type OrderFindFirstArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Order
*/
select?: OrderSelect<ExtArgs> | null
/**
* Omit specific fields from the Order
*/
omit?: OrderOmit<ExtArgs> | null
/**
* Filter, which Order to fetch.
*/
where?: OrderWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of Orders to fetch.
*/
orderBy?: OrderOrderByWithRelationInput | OrderOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the position for searching for Orders.
*/
cursor?: OrderWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` Orders 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` Orders.
*/
skip?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
*
* Filter by unique combinations of Orders.
*/
distinct?: OrderScalarFieldEnum | OrderScalarFieldEnum[]
}
/**
* Order findFirstOrThrow
*/
export type OrderFindFirstOrThrowArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Order
*/
select?: OrderSelect<ExtArgs> | null
/**
* Omit specific fields from the Order
*/
omit?: OrderOmit<ExtArgs> | null
/**
* Filter, which Order to fetch.
*/
where?: OrderWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of Orders to fetch.
*/
orderBy?: OrderOrderByWithRelationInput | OrderOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the position for searching for Orders.
*/
cursor?: OrderWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` Orders 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` Orders.
*/
skip?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
*
* Filter by unique combinations of Orders.
*/
distinct?: OrderScalarFieldEnum | OrderScalarFieldEnum[]
}
/**
* Order findMany
*/
export type OrderFindManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Order
*/
select?: OrderSelect<ExtArgs> | null
/**
* Omit specific fields from the Order
*/
omit?: OrderOmit<ExtArgs> | null
/**
* Filter, which Orders to fetch.
*/
where?: OrderWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of Orders to fetch.
*/
orderBy?: OrderOrderByWithRelationInput | OrderOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the position for listing Orders.
*/
cursor?: OrderWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` Orders 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` Orders.
*/
skip?: number
distinct?: OrderScalarFieldEnum | OrderScalarFieldEnum[]
}
/**
* Order create
*/
export type OrderCreateArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Order
*/
select?: OrderSelect<ExtArgs> | null
/**
* Omit specific fields from the Order
*/
omit?: OrderOmit<ExtArgs> | null
/**
* The data needed to create a Order.
*/
data: XOR<OrderCreateInput, OrderUncheckedCreateInput>
}
/**
* Order createMany
*/
export type OrderCreateManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* The data used to create many Orders.
*/
data: OrderCreateManyInput | OrderCreateManyInput[]
}
/**
* Order createManyAndReturn
*/
export type OrderCreateManyAndReturnArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Order
*/
select?: OrderSelectCreateManyAndReturn<ExtArgs> | null
/**
* Omit specific fields from the Order
*/
omit?: OrderOmit<ExtArgs> | null
/**
* The data used to create many Orders.
*/
data: OrderCreateManyInput | OrderCreateManyInput[]
}
/**
* Order update
*/
export type OrderUpdateArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Order
*/
select?: OrderSelect<ExtArgs> | null
/**
* Omit specific fields from the Order
*/
omit?: OrderOmit<ExtArgs> | null
/**
* The data needed to update a Order.
*/
data: XOR<OrderUpdateInput, OrderUncheckedUpdateInput>
/**
* Choose, which Order to update.
*/
where: OrderWhereUniqueInput
}
/**
* Order updateMany
*/
export type OrderUpdateManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* The data used to update Orders.
*/
data: XOR<OrderUpdateManyMutationInput, OrderUncheckedUpdateManyInput>
/**
* Filter which Orders to update
*/
where?: OrderWhereInput
/**
* Limit how many Orders to update.
*/
limit?: number
}
/**
* Order updateManyAndReturn
*/
export type OrderUpdateManyAndReturnArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Order
*/
select?: OrderSelectUpdateManyAndReturn<ExtArgs> | null
/**
* Omit specific fields from the Order
*/
omit?: OrderOmit<ExtArgs> | null
/**
* The data used to update Orders.
*/
data: XOR<OrderUpdateManyMutationInput, OrderUncheckedUpdateManyInput>
/**
* Filter which Orders to update
*/
where?: OrderWhereInput
/**
* Limit how many Orders to update.
*/
limit?: number
}
/**
* Order upsert
*/
export type OrderUpsertArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Order
*/
select?: OrderSelect<ExtArgs> | null
/**
* Omit specific fields from the Order
*/
omit?: OrderOmit<ExtArgs> | null
/**
* The filter to search for the Order to update in case it exists.
*/
where: OrderWhereUniqueInput
/**
* In case the Order found by the `where` argument doesn't exist, create a new Order with this data.
*/
create: XOR<OrderCreateInput, OrderUncheckedCreateInput>
/**
* In case the Order was found with the provided `where` argument, update it with this data.
*/
update: XOR<OrderUpdateInput, OrderUncheckedUpdateInput>
}
/**
* Order delete
*/
export type OrderDeleteArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Order
*/
select?: OrderSelect<ExtArgs> | null
/**
* Omit specific fields from the Order
*/
omit?: OrderOmit<ExtArgs> | null
/**
* Filter which Order to delete.
*/
where: OrderWhereUniqueInput
}
/**
* Order deleteMany
*/
export type OrderDeleteManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Filter which Orders to delete
*/
where?: OrderWhereInput
/**
* Limit how many Orders to delete.
*/
limit?: number
}
/**
* Order without action
*/
export type OrderDefaultArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Order
*/
select?: OrderSelect<ExtArgs> | null
/**
* Omit specific fields from the Order
*/
omit?: OrderOmit<ExtArgs> | null
}
/**
* Model ProductCache
*/
export type AggregateProductCache = {
_count: ProductCacheCountAggregateOutputType | null
_avg: ProductCacheAvgAggregateOutputType | null
_sum: ProductCacheSumAggregateOutputType | null
_min: ProductCacheMinAggregateOutputType | null
_max: ProductCacheMaxAggregateOutputType | null
}
export type ProductCacheAvgAggregateOutputType = {
unitAmount: number | null
}
export type ProductCacheSumAggregateOutputType = {
unitAmount: number | null
}
export type ProductCacheMinAggregateOutputType = {
id: string | null
storeId: string | null
stripeProductId: string | null
stripePriceId: string | null
name: string | null
description: string | null
unitAmount: number | null
currency: string | null
active: boolean | null
createdAt: Date | null
updatedAt: Date | null
}
export type ProductCacheMaxAggregateOutputType = {
id: string | null
storeId: string | null
stripeProductId: string | null
stripePriceId: string | null
name: string | null
description: string | null
unitAmount: number | null
currency: string | null
active: boolean | null
createdAt: Date | null
updatedAt: Date | null
}
export type ProductCacheCountAggregateOutputType = {
id: number
storeId: number
stripeProductId: number
stripePriceId: number
name: number
description: number
unitAmount: number
currency: number
active: number
createdAt: number
updatedAt: number
_all: number
}
export type ProductCacheAvgAggregateInputType = {
unitAmount?: true
}
export type ProductCacheSumAggregateInputType = {
unitAmount?: true
}
export type ProductCacheMinAggregateInputType = {
id?: true
storeId?: true
stripeProductId?: true
stripePriceId?: true
name?: true
description?: true
unitAmount?: true
currency?: true
active?: true
createdAt?: true
updatedAt?: true
}
export type ProductCacheMaxAggregateInputType = {
id?: true
storeId?: true
stripeProductId?: true
stripePriceId?: true
name?: true
description?: true
unitAmount?: true
currency?: true
active?: true
createdAt?: true
updatedAt?: true
}
export type ProductCacheCountAggregateInputType = {
id?: true
storeId?: true
stripeProductId?: true
stripePriceId?: true
name?: true
description?: true
unitAmount?: true
currency?: true
active?: true
createdAt?: true
updatedAt?: true
_all?: true
}
export type ProductCacheAggregateArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Filter which ProductCache to aggregate.
*/
where?: ProductCacheWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of ProductCaches to fetch.
*/
orderBy?: ProductCacheOrderByWithRelationInput | ProductCacheOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the start position
*/
cursor?: ProductCacheWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` ProductCaches 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` ProductCaches.
*/
skip?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Count returned ProductCaches
**/
_count?: true | ProductCacheCountAggregateInputType
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Select which fields to average
**/
_avg?: ProductCacheAvgAggregateInputType
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Select which fields to sum
**/
_sum?: ProductCacheSumAggregateInputType
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Select which fields to find the minimum value
**/
_min?: ProductCacheMinAggregateInputType
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Select which fields to find the maximum value
**/
_max?: ProductCacheMaxAggregateInputType
}
export type GetProductCacheAggregateType<T extends ProductCacheAggregateArgs> = {
[P in keyof T & keyof AggregateProductCache]: P extends '_count' | 'count'
? T[P] extends true
? number
: GetScalarType<T[P], AggregateProductCache[P]>
: GetScalarType<T[P], AggregateProductCache[P]>
}
export type ProductCacheGroupByArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
where?: ProductCacheWhereInput
orderBy?: ProductCacheOrderByWithAggregationInput | ProductCacheOrderByWithAggregationInput[]
by: ProductCacheScalarFieldEnum[] | ProductCacheScalarFieldEnum
having?: ProductCacheScalarWhereWithAggregatesInput
take?: number
skip?: number
_count?: ProductCacheCountAggregateInputType | true
_avg?: ProductCacheAvgAggregateInputType
_sum?: ProductCacheSumAggregateInputType
_min?: ProductCacheMinAggregateInputType
_max?: ProductCacheMaxAggregateInputType
}
export type ProductCacheGroupByOutputType = {
id: string
storeId: string
stripeProductId: string
stripePriceId: string
name: string
description: string | null
unitAmount: number
currency: string
active: boolean
createdAt: Date
updatedAt: Date
_count: ProductCacheCountAggregateOutputType | null
_avg: ProductCacheAvgAggregateOutputType | null
_sum: ProductCacheSumAggregateOutputType | null
_min: ProductCacheMinAggregateOutputType | null
_max: ProductCacheMaxAggregateOutputType | null
}
type GetProductCacheGroupByPayload<T extends ProductCacheGroupByArgs> = Prisma.PrismaPromise<
Array<
PickEnumerable<ProductCacheGroupByOutputType, T['by']> &
{
[P in ((keyof T) & (keyof ProductCacheGroupByOutputType))]: P extends '_count'
? T[P] extends boolean
? number
: GetScalarType<T[P], ProductCacheGroupByOutputType[P]>
: GetScalarType<T[P], ProductCacheGroupByOutputType[P]>
}
>
>
export type ProductCacheSelect<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
id?: boolean
storeId?: boolean
stripeProductId?: boolean
stripePriceId?: boolean
name?: boolean
description?: boolean
unitAmount?: boolean
currency?: boolean
active?: boolean
createdAt?: boolean
updatedAt?: boolean
store?: boolean | StoreDefaultArgs<ExtArgs>
}, ExtArgs["result"]["productCache"]>
export type ProductCacheSelectCreateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
id?: boolean
storeId?: boolean
stripeProductId?: boolean
stripePriceId?: boolean
name?: boolean
description?: boolean
unitAmount?: boolean
currency?: boolean
active?: boolean
createdAt?: boolean
updatedAt?: boolean
store?: boolean | StoreDefaultArgs<ExtArgs>
}, ExtArgs["result"]["productCache"]>
export type ProductCacheSelectUpdateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
id?: boolean
storeId?: boolean
stripeProductId?: boolean
stripePriceId?: boolean
name?: boolean
description?: boolean
unitAmount?: boolean
currency?: boolean
active?: boolean
createdAt?: boolean
updatedAt?: boolean
store?: boolean | StoreDefaultArgs<ExtArgs>
}, ExtArgs["result"]["productCache"]>
export type ProductCacheSelectScalar = {
id?: boolean
storeId?: boolean
stripeProductId?: boolean
stripePriceId?: boolean
name?: boolean
description?: boolean
unitAmount?: boolean
currency?: boolean
active?: boolean
createdAt?: boolean
updatedAt?: boolean
}
export type ProductCacheOmit<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetOmit<"id" | "storeId" | "stripeProductId" | "stripePriceId" | "name" | "description" | "unitAmount" | "currency" | "active" | "createdAt" | "updatedAt", ExtArgs["result"]["productCache"]>
export type ProductCacheInclude<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
store?: boolean | StoreDefaultArgs<ExtArgs>
}
export type ProductCacheIncludeCreateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
store?: boolean | StoreDefaultArgs<ExtArgs>
}
export type ProductCacheIncludeUpdateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
store?: boolean | StoreDefaultArgs<ExtArgs>
}
export type $ProductCachePayload<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
name: "ProductCache"
objects: {
store: Prisma.$StorePayload<ExtArgs>
}
scalars: $Extensions.GetPayloadResult<{
id: string
storeId: string
stripeProductId: string
stripePriceId: string
name: string
description: string | null
unitAmount: number
currency: string
active: boolean
createdAt: Date
updatedAt: Date
}, ExtArgs["result"]["productCache"]>
composites: {}
}
type ProductCacheGetPayload<S extends boolean | null | undefined | ProductCacheDefaultArgs> = $Result.GetResult<Prisma.$ProductCachePayload, S>
type ProductCacheCountArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> =
Omit<ProductCacheFindManyArgs, 'select' | 'include' | 'distinct' | 'omit'> & {
select?: ProductCacheCountAggregateInputType | true
}
export interface ProductCacheDelegate<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, GlobalOmitOptions = {}> {
[K: symbol]: { types: Prisma.TypeMap<ExtArgs>['model']['ProductCache'], meta: { name: 'ProductCache' } }
/**
* Find zero or one ProductCache that matches the filter.
* @param {ProductCacheFindUniqueArgs} args - Arguments to find a ProductCache
* @example
* // Get one ProductCache
* const productCache = await prisma.productCache.findUnique({
* where: {
* // ... provide filter here
* }
* })
*/
findUnique<T extends ProductCacheFindUniqueArgs>(args: SelectSubset<T, ProductCacheFindUniqueArgs<ExtArgs>>): Prisma__ProductCacheClient<$Result.GetResult<Prisma.$ProductCachePayload<ExtArgs>, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
/**
* Find one ProductCache that matches the filter or throw an error with `error.code='P2025'`
* if no matches were found.
* @param {ProductCacheFindUniqueOrThrowArgs} args - Arguments to find a ProductCache
* @example
* // Get one ProductCache
* const productCache = await prisma.productCache.findUniqueOrThrow({
* where: {
* // ... provide filter here
* }
* })
*/
findUniqueOrThrow<T extends ProductCacheFindUniqueOrThrowArgs>(args: SelectSubset<T, ProductCacheFindUniqueOrThrowArgs<ExtArgs>>): Prisma__ProductCacheClient<$Result.GetResult<Prisma.$ProductCachePayload<ExtArgs>, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Find the first ProductCache 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 {ProductCacheFindFirstArgs} args - Arguments to find a ProductCache
* @example
* // Get one ProductCache
* const productCache = await prisma.productCache.findFirst({
* where: {
* // ... provide filter here
* }
* })
*/
findFirst<T extends ProductCacheFindFirstArgs>(args?: SelectSubset<T, ProductCacheFindFirstArgs<ExtArgs>>): Prisma__ProductCacheClient<$Result.GetResult<Prisma.$ProductCachePayload<ExtArgs>, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
/**
* Find the first ProductCache 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 {ProductCacheFindFirstOrThrowArgs} args - Arguments to find a ProductCache
* @example
* // Get one ProductCache
* const productCache = await prisma.productCache.findFirstOrThrow({
* where: {
* // ... provide filter here
* }
* })
*/
findFirstOrThrow<T extends ProductCacheFindFirstOrThrowArgs>(args?: SelectSubset<T, ProductCacheFindFirstOrThrowArgs<ExtArgs>>): Prisma__ProductCacheClient<$Result.GetResult<Prisma.$ProductCachePayload<ExtArgs>, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Find zero or more ProductCaches 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 {ProductCacheFindManyArgs} args - Arguments to filter and select certain fields only.
* @example
* // Get all ProductCaches
* const productCaches = await prisma.productCache.findMany()
*
* // Get first 10 ProductCaches
* const productCaches = await prisma.productCache.findMany({ take: 10 })
*
* // Only select the `id`
* const productCacheWithIdOnly = await prisma.productCache.findMany({ select: { id: true } })
*
*/
findMany<T extends ProductCacheFindManyArgs>(args?: SelectSubset<T, ProductCacheFindManyArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$ProductCachePayload<ExtArgs>, T, "findMany", GlobalOmitOptions>>
/**
* Create a ProductCache.
* @param {ProductCacheCreateArgs} args - Arguments to create a ProductCache.
* @example
* // Create one ProductCache
* const ProductCache = await prisma.productCache.create({
* data: {
* // ... data to create a ProductCache
* }
* })
*
*/
create<T extends ProductCacheCreateArgs>(args: SelectSubset<T, ProductCacheCreateArgs<ExtArgs>>): Prisma__ProductCacheClient<$Result.GetResult<Prisma.$ProductCachePayload<ExtArgs>, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Create many ProductCaches.
* @param {ProductCacheCreateManyArgs} args - Arguments to create many ProductCaches.
* @example
* // Create many ProductCaches
* const productCache = await prisma.productCache.createMany({
* data: [
* // ... provide data here
* ]
* })
*
*/
createMany<T extends ProductCacheCreateManyArgs>(args?: SelectSubset<T, ProductCacheCreateManyArgs<ExtArgs>>): Prisma.PrismaPromise<BatchPayload>
/**
* Create many ProductCaches and returns the data saved in the database.
* @param {ProductCacheCreateManyAndReturnArgs} args - Arguments to create many ProductCaches.
* @example
* // Create many ProductCaches
* const productCache = await prisma.productCache.createManyAndReturn({
* data: [
* // ... provide data here
* ]
* })
*
* // Create many ProductCaches and only return the `id`
* const productCacheWithIdOnly = await prisma.productCache.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 ProductCacheCreateManyAndReturnArgs>(args?: SelectSubset<T, ProductCacheCreateManyAndReturnArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$ProductCachePayload<ExtArgs>, T, "createManyAndReturn", GlobalOmitOptions>>
/**
* Delete a ProductCache.
* @param {ProductCacheDeleteArgs} args - Arguments to delete one ProductCache.
* @example
* // Delete one ProductCache
* const ProductCache = await prisma.productCache.delete({
* where: {
* // ... filter to delete one ProductCache
* }
* })
*
*/
delete<T extends ProductCacheDeleteArgs>(args: SelectSubset<T, ProductCacheDeleteArgs<ExtArgs>>): Prisma__ProductCacheClient<$Result.GetResult<Prisma.$ProductCachePayload<ExtArgs>, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Update one ProductCache.
* @param {ProductCacheUpdateArgs} args - Arguments to update one ProductCache.
* @example
* // Update one ProductCache
* const productCache = await prisma.productCache.update({
* where: {
* // ... provide filter here
* },
* data: {
* // ... provide data here
* }
* })
*
*/
update<T extends ProductCacheUpdateArgs>(args: SelectSubset<T, ProductCacheUpdateArgs<ExtArgs>>): Prisma__ProductCacheClient<$Result.GetResult<Prisma.$ProductCachePayload<ExtArgs>, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Delete zero or more ProductCaches.
* @param {ProductCacheDeleteManyArgs} args - Arguments to filter ProductCaches to delete.
* @example
* // Delete a few ProductCaches
* const { count } = await prisma.productCache.deleteMany({
* where: {
* // ... provide filter here
* }
* })
*
*/
deleteMany<T extends ProductCacheDeleteManyArgs>(args?: SelectSubset<T, ProductCacheDeleteManyArgs<ExtArgs>>): Prisma.PrismaPromise<BatchPayload>
/**
* Update zero or more ProductCaches.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {ProductCacheUpdateManyArgs} args - Arguments to update one or more rows.
* @example
* // Update many ProductCaches
* const productCache = await prisma.productCache.updateMany({
* where: {
* // ... provide filter here
* },
* data: {
* // ... provide data here
* }
* })
*
*/
updateMany<T extends ProductCacheUpdateManyArgs>(args: SelectSubset<T, ProductCacheUpdateManyArgs<ExtArgs>>): Prisma.PrismaPromise<BatchPayload>
/**
* Update zero or more ProductCaches and returns the data updated in the database.
* @param {ProductCacheUpdateManyAndReturnArgs} args - Arguments to update many ProductCaches.
* @example
* // Update many ProductCaches
* const productCache = await prisma.productCache.updateManyAndReturn({
* where: {
* // ... provide filter here
* },
* data: [
* // ... provide data here
* ]
* })
*
* // Update zero or more ProductCaches and only return the `id`
* const productCacheWithIdOnly = await prisma.productCache.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 ProductCacheUpdateManyAndReturnArgs>(args: SelectSubset<T, ProductCacheUpdateManyAndReturnArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$ProductCachePayload<ExtArgs>, T, "updateManyAndReturn", GlobalOmitOptions>>
/**
* Create or update one ProductCache.
* @param {ProductCacheUpsertArgs} args - Arguments to update or create a ProductCache.
* @example
* // Update or create a ProductCache
* const productCache = await prisma.productCache.upsert({
* create: {
* // ... data to create a ProductCache
* },
* update: {
* // ... in case it already exists, update
* },
* where: {
* // ... the filter for the ProductCache we want to update
* }
* })
*/
upsert<T extends ProductCacheUpsertArgs>(args: SelectSubset<T, ProductCacheUpsertArgs<ExtArgs>>): Prisma__ProductCacheClient<$Result.GetResult<Prisma.$ProductCachePayload<ExtArgs>, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Count the number of ProductCaches.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {ProductCacheCountArgs} args - Arguments to filter ProductCaches to count.
* @example
* // Count the number of ProductCaches
* const count = await prisma.productCache.count({
* where: {
* // ... the filter for the ProductCaches we want to count
* }
* })
**/
count<T extends ProductCacheCountArgs>(
args?: Subset<T, ProductCacheCountArgs>,
): Prisma.PrismaPromise<
T extends $Utils.Record<'select', any>
? T['select'] extends true
? number
: GetScalarType<T['select'], ProductCacheCountAggregateOutputType>
: number
>
/**
* Allows you to perform aggregations operations on a ProductCache.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {ProductCacheAggregateArgs} 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 ProductCacheAggregateArgs>(args: Subset<T, ProductCacheAggregateArgs>): Prisma.PrismaPromise<GetProductCacheAggregateType<T>>
/**
* Group by ProductCache.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {ProductCacheGroupByArgs} 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 ProductCacheGroupByArgs,
HasSelectOrTake extends Or<
Extends<'skip', Keys<T>>,
Extends<'take', Keys<T>>
>,
OrderByArg extends True extends HasSelectOrTake
? { orderBy: ProductCacheGroupByArgs['orderBy'] }
: { orderBy?: ProductCacheGroupByArgs['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, ProductCacheGroupByArgs, OrderByArg> & InputErrors): {} extends InputErrors ? GetProductCacheGroupByPayload<T> : Prisma.PrismaPromise<InputErrors>
/**
* Fields of the ProductCache model
*/
readonly fields: ProductCacheFieldRefs;
}
/**
* The delegate class that acts as a "Promise-like" for ProductCache.
* 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__ProductCacheClient<T, Null = never, ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, GlobalOmitOptions = {}> extends Prisma.PrismaPromise<T> {
readonly [Symbol.toStringTag]: "PrismaPromise"
store<T extends StoreDefaultArgs<ExtArgs> = {}>(args?: Subset<T, StoreDefaultArgs<ExtArgs>>): Prisma__StoreClient<$Result.GetResult<Prisma.$StorePayload<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 ProductCache model
*/
interface ProductCacheFieldRefs {
readonly id: FieldRef<"ProductCache", 'String'>
readonly storeId: FieldRef<"ProductCache", 'String'>
readonly stripeProductId: FieldRef<"ProductCache", 'String'>
readonly stripePriceId: FieldRef<"ProductCache", 'String'>
readonly name: FieldRef<"ProductCache", 'String'>
readonly description: FieldRef<"ProductCache", 'String'>
readonly unitAmount: FieldRef<"ProductCache", 'Int'>
readonly currency: FieldRef<"ProductCache", 'String'>
readonly active: FieldRef<"ProductCache", 'Boolean'>
readonly createdAt: FieldRef<"ProductCache", 'DateTime'>
readonly updatedAt: FieldRef<"ProductCache", 'DateTime'>
}
// Custom InputTypes
/**
* ProductCache findUnique
*/
export type ProductCacheFindUniqueArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the ProductCache
*/
select?: ProductCacheSelect<ExtArgs> | null
/**
* Omit specific fields from the ProductCache
*/
omit?: ProductCacheOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: ProductCacheInclude<ExtArgs> | null
/**
* Filter, which ProductCache to fetch.
*/
where: ProductCacheWhereUniqueInput
}
/**
* ProductCache findUniqueOrThrow
*/
export type ProductCacheFindUniqueOrThrowArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the ProductCache
*/
select?: ProductCacheSelect<ExtArgs> | null
/**
* Omit specific fields from the ProductCache
*/
omit?: ProductCacheOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: ProductCacheInclude<ExtArgs> | null
/**
* Filter, which ProductCache to fetch.
*/
where: ProductCacheWhereUniqueInput
}
/**
* ProductCache findFirst
*/
export type ProductCacheFindFirstArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the ProductCache
*/
select?: ProductCacheSelect<ExtArgs> | null
/**
* Omit specific fields from the ProductCache
*/
omit?: ProductCacheOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: ProductCacheInclude<ExtArgs> | null
/**
* Filter, which ProductCache to fetch.
*/
where?: ProductCacheWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of ProductCaches to fetch.
*/
orderBy?: ProductCacheOrderByWithRelationInput | ProductCacheOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the position for searching for ProductCaches.
*/
cursor?: ProductCacheWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` ProductCaches 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` ProductCaches.
*/
skip?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
*
* Filter by unique combinations of ProductCaches.
*/
distinct?: ProductCacheScalarFieldEnum | ProductCacheScalarFieldEnum[]
}
/**
* ProductCache findFirstOrThrow
*/
export type ProductCacheFindFirstOrThrowArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the ProductCache
*/
select?: ProductCacheSelect<ExtArgs> | null
/**
* Omit specific fields from the ProductCache
*/
omit?: ProductCacheOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: ProductCacheInclude<ExtArgs> | null
/**
* Filter, which ProductCache to fetch.
*/
where?: ProductCacheWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of ProductCaches to fetch.
*/
orderBy?: ProductCacheOrderByWithRelationInput | ProductCacheOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the position for searching for ProductCaches.
*/
cursor?: ProductCacheWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` ProductCaches 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` ProductCaches.
*/
skip?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
*
* Filter by unique combinations of ProductCaches.
*/
distinct?: ProductCacheScalarFieldEnum | ProductCacheScalarFieldEnum[]
}
/**
* ProductCache findMany
*/
export type ProductCacheFindManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the ProductCache
*/
select?: ProductCacheSelect<ExtArgs> | null
/**
* Omit specific fields from the ProductCache
*/
omit?: ProductCacheOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: ProductCacheInclude<ExtArgs> | null
/**
* Filter, which ProductCaches to fetch.
*/
where?: ProductCacheWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of ProductCaches to fetch.
*/
orderBy?: ProductCacheOrderByWithRelationInput | ProductCacheOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the position for listing ProductCaches.
*/
cursor?: ProductCacheWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` ProductCaches 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` ProductCaches.
*/
skip?: number
distinct?: ProductCacheScalarFieldEnum | ProductCacheScalarFieldEnum[]
}
/**
* ProductCache create
*/
export type ProductCacheCreateArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the ProductCache
*/
select?: ProductCacheSelect<ExtArgs> | null
/**
* Omit specific fields from the ProductCache
*/
omit?: ProductCacheOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: ProductCacheInclude<ExtArgs> | null
/**
* The data needed to create a ProductCache.
*/
data: XOR<ProductCacheCreateInput, ProductCacheUncheckedCreateInput>
}
/**
* ProductCache createMany
*/
export type ProductCacheCreateManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* The data used to create many ProductCaches.
*/
data: ProductCacheCreateManyInput | ProductCacheCreateManyInput[]
}
/**
* ProductCache createManyAndReturn
*/
export type ProductCacheCreateManyAndReturnArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the ProductCache
*/
select?: ProductCacheSelectCreateManyAndReturn<ExtArgs> | null
/**
* Omit specific fields from the ProductCache
*/
omit?: ProductCacheOmit<ExtArgs> | null
/**
* The data used to create many ProductCaches.
*/
data: ProductCacheCreateManyInput | ProductCacheCreateManyInput[]
/**
* Choose, which related nodes to fetch as well
*/
include?: ProductCacheIncludeCreateManyAndReturn<ExtArgs> | null
}
/**
* ProductCache update
*/
export type ProductCacheUpdateArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the ProductCache
*/
select?: ProductCacheSelect<ExtArgs> | null
/**
* Omit specific fields from the ProductCache
*/
omit?: ProductCacheOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: ProductCacheInclude<ExtArgs> | null
/**
* The data needed to update a ProductCache.
*/
data: XOR<ProductCacheUpdateInput, ProductCacheUncheckedUpdateInput>
/**
* Choose, which ProductCache to update.
*/
where: ProductCacheWhereUniqueInput
}
/**
* ProductCache updateMany
*/
export type ProductCacheUpdateManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* The data used to update ProductCaches.
*/
data: XOR<ProductCacheUpdateManyMutationInput, ProductCacheUncheckedUpdateManyInput>
/**
* Filter which ProductCaches to update
*/
where?: ProductCacheWhereInput
/**
* Limit how many ProductCaches to update.
*/
limit?: number
}
/**
* ProductCache updateManyAndReturn
*/
export type ProductCacheUpdateManyAndReturnArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the ProductCache
*/
select?: ProductCacheSelectUpdateManyAndReturn<ExtArgs> | null
/**
* Omit specific fields from the ProductCache
*/
omit?: ProductCacheOmit<ExtArgs> | null
/**
* The data used to update ProductCaches.
*/
data: XOR<ProductCacheUpdateManyMutationInput, ProductCacheUncheckedUpdateManyInput>
/**
* Filter which ProductCaches to update
*/
where?: ProductCacheWhereInput
/**
* Limit how many ProductCaches to update.
*/
limit?: number
/**
* Choose, which related nodes to fetch as well
*/
include?: ProductCacheIncludeUpdateManyAndReturn<ExtArgs> | null
}
/**
* ProductCache upsert
*/
export type ProductCacheUpsertArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the ProductCache
*/
select?: ProductCacheSelect<ExtArgs> | null
/**
* Omit specific fields from the ProductCache
*/
omit?: ProductCacheOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: ProductCacheInclude<ExtArgs> | null
/**
* The filter to search for the ProductCache to update in case it exists.
*/
where: ProductCacheWhereUniqueInput
/**
* In case the ProductCache found by the `where` argument doesn't exist, create a new ProductCache with this data.
*/
create: XOR<ProductCacheCreateInput, ProductCacheUncheckedCreateInput>
/**
* In case the ProductCache was found with the provided `where` argument, update it with this data.
*/
update: XOR<ProductCacheUpdateInput, ProductCacheUncheckedUpdateInput>
}
/**
* ProductCache delete
*/
export type ProductCacheDeleteArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the ProductCache
*/
select?: ProductCacheSelect<ExtArgs> | null
/**
* Omit specific fields from the ProductCache
*/
omit?: ProductCacheOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: ProductCacheInclude<ExtArgs> | null
/**
* Filter which ProductCache to delete.
*/
where: ProductCacheWhereUniqueInput
}
/**
* ProductCache deleteMany
*/
export type ProductCacheDeleteManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Filter which ProductCaches to delete
*/
where?: ProductCacheWhereInput
/**
* Limit how many ProductCaches to delete.
*/
limit?: number
}
/**
* ProductCache without action
*/
export type ProductCacheDefaultArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the ProductCache
*/
select?: ProductCacheSelect<ExtArgs> | null
/**
* Omit specific fields from the ProductCache
*/
omit?: ProductCacheOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: ProductCacheInclude<ExtArgs> | null
}
/**
* Model User
*/
export type AggregateUser = {
_count: UserCountAggregateOutputType | null
_min: UserMinAggregateOutputType | null
_max: UserMaxAggregateOutputType | null
}
export type UserMinAggregateOutputType = {
id: string | null
name: string | null
email: string | null
passwordHash: string | null
role: $Enums.Role | null
createdAt: Date | null
updatedAt: Date | null
}
export type UserMaxAggregateOutputType = {
id: string | null
name: string | null
email: string | null
passwordHash: string | null
role: $Enums.Role | null
createdAt: Date | null
updatedAt: Date | null
}
export type UserCountAggregateOutputType = {
id: number
name: number
email: number
passwordHash: number
role: number
createdAt: number
updatedAt: number
_all: number
}
export type UserMinAggregateInputType = {
id?: true
name?: true
email?: true
passwordHash?: true
role?: true
createdAt?: true
updatedAt?: true
}
export type UserMaxAggregateInputType = {
id?: true
name?: true
email?: true
passwordHash?: true
role?: true
createdAt?: true
updatedAt?: true
}
export type UserCountAggregateInputType = {
id?: true
name?: true
email?: true
passwordHash?: true
role?: true
createdAt?: true
updatedAt?: 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 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
_min?: UserMinAggregateInputType
_max?: UserMaxAggregateInputType
}
export type UserGroupByOutputType = {
id: string
name: string
email: string
passwordHash: string
role: $Enums.Role
createdAt: Date
updatedAt: Date
_count: UserCountAggregateOutputType | 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
name?: boolean
email?: boolean
passwordHash?: boolean
role?: boolean
createdAt?: boolean
updatedAt?: boolean
store?: boolean | User$storeArgs<ExtArgs>
carts?: boolean | User$cartsArgs<ExtArgs>
address?: boolean | User$addressArgs<ExtArgs>
accounts?: boolean | User$accountsArgs<ExtArgs>
sessions?: boolean | User$sessionsArgs<ExtArgs>
_count?: boolean | UserCountOutputTypeDefaultArgs<ExtArgs>
}, ExtArgs["result"]["user"]>
export type UserSelectCreateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
id?: boolean
name?: boolean
email?: boolean
passwordHash?: boolean
role?: boolean
createdAt?: boolean
updatedAt?: boolean
}, ExtArgs["result"]["user"]>
export type UserSelectUpdateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
id?: boolean
name?: boolean
email?: boolean
passwordHash?: boolean
role?: boolean
createdAt?: boolean
updatedAt?: boolean
}, ExtArgs["result"]["user"]>
export type UserSelectScalar = {
id?: boolean
name?: boolean
email?: boolean
passwordHash?: boolean
role?: boolean
createdAt?: boolean
updatedAt?: boolean
}
export type UserOmit<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetOmit<"id" | "name" | "email" | "passwordHash" | "role" | "createdAt" | "updatedAt", ExtArgs["result"]["user"]>
export type UserInclude<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
store?: boolean | User$storeArgs<ExtArgs>
carts?: boolean | User$cartsArgs<ExtArgs>
address?: boolean | User$addressArgs<ExtArgs>
accounts?: boolean | User$accountsArgs<ExtArgs>
sessions?: boolean | User$sessionsArgs<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: {
store: Prisma.$StorePayload<ExtArgs> | null
carts: Prisma.$CartPayload<ExtArgs>[]
address: Prisma.$UserAddressPayload<ExtArgs> | null
accounts: Prisma.$AccountPayload<ExtArgs>[]
sessions: Prisma.$SessionPayload<ExtArgs>[]
}
scalars: $Extensions.GetPayloadResult<{
id: string
name: string
email: string
passwordHash: string
role: $Enums.Role
createdAt: Date
updatedAt: Date
}, 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"
store<T extends User$storeArgs<ExtArgs> = {}>(args?: Subset<T, User$storeArgs<ExtArgs>>): Prisma__StoreClient<$Result.GetResult<Prisma.$StorePayload<ExtArgs>, T, "findUniqueOrThrow", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
carts<T extends User$cartsArgs<ExtArgs> = {}>(args?: Subset<T, User$cartsArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$CartPayload<ExtArgs>, T, "findMany", GlobalOmitOptions> | Null>
address<T extends User$addressArgs<ExtArgs> = {}>(args?: Subset<T, User$addressArgs<ExtArgs>>): Prisma__UserAddressClient<$Result.GetResult<Prisma.$UserAddressPayload<ExtArgs>, T, "findUniqueOrThrow", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
accounts<T extends User$accountsArgs<ExtArgs> = {}>(args?: Subset<T, User$accountsArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$AccountPayload<ExtArgs>, T, "findMany", GlobalOmitOptions> | Null>
sessions<T extends User$sessionsArgs<ExtArgs> = {}>(args?: Subset<T, User$sessionsArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$SessionPayload<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", 'String'>
readonly name: FieldRef<"User", 'String'>
readonly email: FieldRef<"User", 'String'>
readonly passwordHash: FieldRef<"User", 'String'>
readonly role: FieldRef<"User", 'Role'>
readonly createdAt: FieldRef<"User", 'DateTime'>
readonly updatedAt: FieldRef<"User", 'DateTime'>
}
// 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[]
}
/**
* 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[]
}
/**
* 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.store
*/
export type User$storeArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Store
*/
select?: StoreSelect<ExtArgs> | null
/**
* Omit specific fields from the Store
*/
omit?: StoreOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: StoreInclude<ExtArgs> | null
where?: StoreWhereInput
}
/**
* User.carts
*/
export type User$cartsArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Cart
*/
select?: CartSelect<ExtArgs> | null
/**
* Omit specific fields from the Cart
*/
omit?: CartOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: CartInclude<ExtArgs> | null
where?: CartWhereInput
orderBy?: CartOrderByWithRelationInput | CartOrderByWithRelationInput[]
cursor?: CartWhereUniqueInput
take?: number
skip?: number
distinct?: CartScalarFieldEnum | CartScalarFieldEnum[]
}
/**
* User.address
*/
export type User$addressArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the UserAddress
*/
select?: UserAddressSelect<ExtArgs> | null
/**
* Omit specific fields from the UserAddress
*/
omit?: UserAddressOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: UserAddressInclude<ExtArgs> | null
where?: UserAddressWhereInput
}
/**
* User.accounts
*/
export type User$accountsArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Account
*/
select?: AccountSelect<ExtArgs> | null
/**
* Omit specific fields from the Account
*/
omit?: AccountOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: AccountInclude<ExtArgs> | null
where?: AccountWhereInput
orderBy?: AccountOrderByWithRelationInput | AccountOrderByWithRelationInput[]
cursor?: AccountWhereUniqueInput
take?: number
skip?: number
distinct?: AccountScalarFieldEnum | AccountScalarFieldEnum[]
}
/**
* User.sessions
*/
export type User$sessionsArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Session
*/
select?: SessionSelect<ExtArgs> | null
/**
* Omit specific fields from the Session
*/
omit?: SessionOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: SessionInclude<ExtArgs> | null
where?: SessionWhereInput
orderBy?: SessionOrderByWithRelationInput | SessionOrderByWithRelationInput[]
cursor?: SessionWhereUniqueInput
take?: number
skip?: number
distinct?: SessionScalarFieldEnum | SessionScalarFieldEnum[]
}
/**
* 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 Session
*/
export type AggregateSession = {
_count: SessionCountAggregateOutputType | null
_min: SessionMinAggregateOutputType | null
_max: SessionMaxAggregateOutputType | null
}
export type SessionMinAggregateOutputType = {
id: string | null
sessionToken: string | null
userId: string | null
expires: Date | null
createdAt: Date | null
updatedAt: Date | null
}
export type SessionMaxAggregateOutputType = {
id: string | null
sessionToken: string | null
userId: string | null
expires: Date | null
createdAt: Date | null
updatedAt: Date | null
}
export type SessionCountAggregateOutputType = {
id: number
sessionToken: number
userId: number
expires: number
createdAt: number
updatedAt: number
_all: number
}
export type SessionMinAggregateInputType = {
id?: true
sessionToken?: true
userId?: true
expires?: true
createdAt?: true
updatedAt?: true
}
export type SessionMaxAggregateInputType = {
id?: true
sessionToken?: true
userId?: true
expires?: true
createdAt?: true
updatedAt?: true
}
export type SessionCountAggregateInputType = {
id?: true
sessionToken?: true
userId?: true
expires?: true
createdAt?: true
updatedAt?: true
_all?: true
}
export type SessionAggregateArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Filter which Session to aggregate.
*/
where?: SessionWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of Sessions to fetch.
*/
orderBy?: SessionOrderByWithRelationInput | SessionOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the start position
*/
cursor?: SessionWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` Sessions 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` Sessions.
*/
skip?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Count returned Sessions
**/
_count?: true | SessionCountAggregateInputType
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Select which fields to find the minimum value
**/
_min?: SessionMinAggregateInputType
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Select which fields to find the maximum value
**/
_max?: SessionMaxAggregateInputType
}
export type GetSessionAggregateType<T extends SessionAggregateArgs> = {
[P in keyof T & keyof AggregateSession]: P extends '_count' | 'count'
? T[P] extends true
? number
: GetScalarType<T[P], AggregateSession[P]>
: GetScalarType<T[P], AggregateSession[P]>
}
export type SessionGroupByArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
where?: SessionWhereInput
orderBy?: SessionOrderByWithAggregationInput | SessionOrderByWithAggregationInput[]
by: SessionScalarFieldEnum[] | SessionScalarFieldEnum
having?: SessionScalarWhereWithAggregatesInput
take?: number
skip?: number
_count?: SessionCountAggregateInputType | true
_min?: SessionMinAggregateInputType
_max?: SessionMaxAggregateInputType
}
export type SessionGroupByOutputType = {
id: string
sessionToken: string
userId: string
expires: Date
createdAt: Date
updatedAt: Date
_count: SessionCountAggregateOutputType | null
_min: SessionMinAggregateOutputType | null
_max: SessionMaxAggregateOutputType | null
}
type GetSessionGroupByPayload<T extends SessionGroupByArgs> = Prisma.PrismaPromise<
Array<
PickEnumerable<SessionGroupByOutputType, T['by']> &
{
[P in ((keyof T) & (keyof SessionGroupByOutputType))]: P extends '_count'
? T[P] extends boolean
? number
: GetScalarType<T[P], SessionGroupByOutputType[P]>
: GetScalarType<T[P], SessionGroupByOutputType[P]>
}
>
>
export type SessionSelect<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
id?: boolean
sessionToken?: boolean
userId?: boolean
expires?: boolean
createdAt?: boolean
updatedAt?: boolean
user?: boolean | UserDefaultArgs<ExtArgs>
}, ExtArgs["result"]["session"]>
export type SessionSelectCreateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
id?: boolean
sessionToken?: boolean
userId?: boolean
expires?: boolean
createdAt?: boolean
updatedAt?: boolean
user?: boolean | UserDefaultArgs<ExtArgs>
}, ExtArgs["result"]["session"]>
export type SessionSelectUpdateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
id?: boolean
sessionToken?: boolean
userId?: boolean
expires?: boolean
createdAt?: boolean
updatedAt?: boolean
user?: boolean | UserDefaultArgs<ExtArgs>
}, ExtArgs["result"]["session"]>
export type SessionSelectScalar = {
id?: boolean
sessionToken?: boolean
userId?: boolean
expires?: boolean
createdAt?: boolean
updatedAt?: boolean
}
export type SessionOmit<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetOmit<"id" | "sessionToken" | "userId" | "expires" | "createdAt" | "updatedAt", ExtArgs["result"]["session"]>
export type SessionInclude<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
user?: boolean | UserDefaultArgs<ExtArgs>
}
export type SessionIncludeCreateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
user?: boolean | UserDefaultArgs<ExtArgs>
}
export type SessionIncludeUpdateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
user?: boolean | UserDefaultArgs<ExtArgs>
}
export type $SessionPayload<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
name: "Session"
objects: {
user: Prisma.$UserPayload<ExtArgs>
}
scalars: $Extensions.GetPayloadResult<{
id: string
sessionToken: string
userId: string
expires: Date
createdAt: Date
updatedAt: Date
}, ExtArgs["result"]["session"]>
composites: {}
}
type SessionGetPayload<S extends boolean | null | undefined | SessionDefaultArgs> = $Result.GetResult<Prisma.$SessionPayload, S>
type SessionCountArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> =
Omit<SessionFindManyArgs, 'select' | 'include' | 'distinct' | 'omit'> & {
select?: SessionCountAggregateInputType | true
}
export interface SessionDelegate<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, GlobalOmitOptions = {}> {
[K: symbol]: { types: Prisma.TypeMap<ExtArgs>['model']['Session'], meta: { name: 'Session' } }
/**
* Find zero or one Session that matches the filter.
* @param {SessionFindUniqueArgs} args - Arguments to find a Session
* @example
* // Get one Session
* const session = await prisma.session.findUnique({
* where: {
* // ... provide filter here
* }
* })
*/
findUnique<T extends SessionFindUniqueArgs>(args: SelectSubset<T, SessionFindUniqueArgs<ExtArgs>>): Prisma__SessionClient<$Result.GetResult<Prisma.$SessionPayload<ExtArgs>, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
/**
* Find one Session that matches the filter or throw an error with `error.code='P2025'`
* if no matches were found.
* @param {SessionFindUniqueOrThrowArgs} args - Arguments to find a Session
* @example
* // Get one Session
* const session = await prisma.session.findUniqueOrThrow({
* where: {
* // ... provide filter here
* }
* })
*/
findUniqueOrThrow<T extends SessionFindUniqueOrThrowArgs>(args: SelectSubset<T, SessionFindUniqueOrThrowArgs<ExtArgs>>): Prisma__SessionClient<$Result.GetResult<Prisma.$SessionPayload<ExtArgs>, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Find the first Session 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 {SessionFindFirstArgs} args - Arguments to find a Session
* @example
* // Get one Session
* const session = await prisma.session.findFirst({
* where: {
* // ... provide filter here
* }
* })
*/
findFirst<T extends SessionFindFirstArgs>(args?: SelectSubset<T, SessionFindFirstArgs<ExtArgs>>): Prisma__SessionClient<$Result.GetResult<Prisma.$SessionPayload<ExtArgs>, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
/**
* Find the first Session 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 {SessionFindFirstOrThrowArgs} args - Arguments to find a Session
* @example
* // Get one Session
* const session = await prisma.session.findFirstOrThrow({
* where: {
* // ... provide filter here
* }
* })
*/
findFirstOrThrow<T extends SessionFindFirstOrThrowArgs>(args?: SelectSubset<T, SessionFindFirstOrThrowArgs<ExtArgs>>): Prisma__SessionClient<$Result.GetResult<Prisma.$SessionPayload<ExtArgs>, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Find zero or more Sessions 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 {SessionFindManyArgs} args - Arguments to filter and select certain fields only.
* @example
* // Get all Sessions
* const sessions = await prisma.session.findMany()
*
* // Get first 10 Sessions
* const sessions = await prisma.session.findMany({ take: 10 })
*
* // Only select the `id`
* const sessionWithIdOnly = await prisma.session.findMany({ select: { id: true } })
*
*/
findMany<T extends SessionFindManyArgs>(args?: SelectSubset<T, SessionFindManyArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$SessionPayload<ExtArgs>, T, "findMany", GlobalOmitOptions>>
/**
* Create a Session.
* @param {SessionCreateArgs} args - Arguments to create a Session.
* @example
* // Create one Session
* const Session = await prisma.session.create({
* data: {
* // ... data to create a Session
* }
* })
*
*/
create<T extends SessionCreateArgs>(args: SelectSubset<T, SessionCreateArgs<ExtArgs>>): Prisma__SessionClient<$Result.GetResult<Prisma.$SessionPayload<ExtArgs>, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Create many Sessions.
* @param {SessionCreateManyArgs} args - Arguments to create many Sessions.
* @example
* // Create many Sessions
* const session = await prisma.session.createMany({
* data: [
* // ... provide data here
* ]
* })
*
*/
createMany<T extends SessionCreateManyArgs>(args?: SelectSubset<T, SessionCreateManyArgs<ExtArgs>>): Prisma.PrismaPromise<BatchPayload>
/**
* Create many Sessions and returns the data saved in the database.
* @param {SessionCreateManyAndReturnArgs} args - Arguments to create many Sessions.
* @example
* // Create many Sessions
* const session = await prisma.session.createManyAndReturn({
* data: [
* // ... provide data here
* ]
* })
*
* // Create many Sessions and only return the `id`
* const sessionWithIdOnly = await prisma.session.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 SessionCreateManyAndReturnArgs>(args?: SelectSubset<T, SessionCreateManyAndReturnArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$SessionPayload<ExtArgs>, T, "createManyAndReturn", GlobalOmitOptions>>
/**
* Delete a Session.
* @param {SessionDeleteArgs} args - Arguments to delete one Session.
* @example
* // Delete one Session
* const Session = await prisma.session.delete({
* where: {
* // ... filter to delete one Session
* }
* })
*
*/
delete<T extends SessionDeleteArgs>(args: SelectSubset<T, SessionDeleteArgs<ExtArgs>>): Prisma__SessionClient<$Result.GetResult<Prisma.$SessionPayload<ExtArgs>, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Update one Session.
* @param {SessionUpdateArgs} args - Arguments to update one Session.
* @example
* // Update one Session
* const session = await prisma.session.update({
* where: {
* // ... provide filter here
* },
* data: {
* // ... provide data here
* }
* })
*
*/
update<T extends SessionUpdateArgs>(args: SelectSubset<T, SessionUpdateArgs<ExtArgs>>): Prisma__SessionClient<$Result.GetResult<Prisma.$SessionPayload<ExtArgs>, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Delete zero or more Sessions.
* @param {SessionDeleteManyArgs} args - Arguments to filter Sessions to delete.
* @example
* // Delete a few Sessions
* const { count } = await prisma.session.deleteMany({
* where: {
* // ... provide filter here
* }
* })
*
*/
deleteMany<T extends SessionDeleteManyArgs>(args?: SelectSubset<T, SessionDeleteManyArgs<ExtArgs>>): Prisma.PrismaPromise<BatchPayload>
/**
* Update zero or more Sessions.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {SessionUpdateManyArgs} args - Arguments to update one or more rows.
* @example
* // Update many Sessions
* const session = await prisma.session.updateMany({
* where: {
* // ... provide filter here
* },
* data: {
* // ... provide data here
* }
* })
*
*/
updateMany<T extends SessionUpdateManyArgs>(args: SelectSubset<T, SessionUpdateManyArgs<ExtArgs>>): Prisma.PrismaPromise<BatchPayload>
/**
* Update zero or more Sessions and returns the data updated in the database.
* @param {SessionUpdateManyAndReturnArgs} args - Arguments to update many Sessions.
* @example
* // Update many Sessions
* const session = await prisma.session.updateManyAndReturn({
* where: {
* // ... provide filter here
* },
* data: [
* // ... provide data here
* ]
* })
*
* // Update zero or more Sessions and only return the `id`
* const sessionWithIdOnly = await prisma.session.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 SessionUpdateManyAndReturnArgs>(args: SelectSubset<T, SessionUpdateManyAndReturnArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$SessionPayload<ExtArgs>, T, "updateManyAndReturn", GlobalOmitOptions>>
/**
* Create or update one Session.
* @param {SessionUpsertArgs} args - Arguments to update or create a Session.
* @example
* // Update or create a Session
* const session = await prisma.session.upsert({
* create: {
* // ... data to create a Session
* },
* update: {
* // ... in case it already exists, update
* },
* where: {
* // ... the filter for the Session we want to update
* }
* })
*/
upsert<T extends SessionUpsertArgs>(args: SelectSubset<T, SessionUpsertArgs<ExtArgs>>): Prisma__SessionClient<$Result.GetResult<Prisma.$SessionPayload<ExtArgs>, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Count the number of Sessions.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {SessionCountArgs} args - Arguments to filter Sessions to count.
* @example
* // Count the number of Sessions
* const count = await prisma.session.count({
* where: {
* // ... the filter for the Sessions we want to count
* }
* })
**/
count<T extends SessionCountArgs>(
args?: Subset<T, SessionCountArgs>,
): Prisma.PrismaPromise<
T extends $Utils.Record<'select', any>
? T['select'] extends true
? number
: GetScalarType<T['select'], SessionCountAggregateOutputType>
: number
>
/**
* Allows you to perform aggregations operations on a Session.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {SessionAggregateArgs} 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 SessionAggregateArgs>(args: Subset<T, SessionAggregateArgs>): Prisma.PrismaPromise<GetSessionAggregateType<T>>
/**
* Group by Session.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {SessionGroupByArgs} 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 SessionGroupByArgs,
HasSelectOrTake extends Or<
Extends<'skip', Keys<T>>,
Extends<'take', Keys<T>>
>,
OrderByArg extends True extends HasSelectOrTake
? { orderBy: SessionGroupByArgs['orderBy'] }
: { orderBy?: SessionGroupByArgs['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, SessionGroupByArgs, OrderByArg> & InputErrors): {} extends InputErrors ? GetSessionGroupByPayload<T> : Prisma.PrismaPromise<InputErrors>
/**
* Fields of the Session model
*/
readonly fields: SessionFieldRefs;
}
/**
* The delegate class that acts as a "Promise-like" for Session.
* 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__SessionClient<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>
/**
* 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 Session model
*/
interface SessionFieldRefs {
readonly id: FieldRef<"Session", 'String'>
readonly sessionToken: FieldRef<"Session", 'String'>
readonly userId: FieldRef<"Session", 'String'>
readonly expires: FieldRef<"Session", 'DateTime'>
readonly createdAt: FieldRef<"Session", 'DateTime'>
readonly updatedAt: FieldRef<"Session", 'DateTime'>
}
// Custom InputTypes
/**
* Session findUnique
*/
export type SessionFindUniqueArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Session
*/
select?: SessionSelect<ExtArgs> | null
/**
* Omit specific fields from the Session
*/
omit?: SessionOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: SessionInclude<ExtArgs> | null
/**
* Filter, which Session to fetch.
*/
where: SessionWhereUniqueInput
}
/**
* Session findUniqueOrThrow
*/
export type SessionFindUniqueOrThrowArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Session
*/
select?: SessionSelect<ExtArgs> | null
/**
* Omit specific fields from the Session
*/
omit?: SessionOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: SessionInclude<ExtArgs> | null
/**
* Filter, which Session to fetch.
*/
where: SessionWhereUniqueInput
}
/**
* Session findFirst
*/
export type SessionFindFirstArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Session
*/
select?: SessionSelect<ExtArgs> | null
/**
* Omit specific fields from the Session
*/
omit?: SessionOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: SessionInclude<ExtArgs> | null
/**
* Filter, which Session to fetch.
*/
where?: SessionWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of Sessions to fetch.
*/
orderBy?: SessionOrderByWithRelationInput | SessionOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the position for searching for Sessions.
*/
cursor?: SessionWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` Sessions 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` Sessions.
*/
skip?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
*
* Filter by unique combinations of Sessions.
*/
distinct?: SessionScalarFieldEnum | SessionScalarFieldEnum[]
}
/**
* Session findFirstOrThrow
*/
export type SessionFindFirstOrThrowArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Session
*/
select?: SessionSelect<ExtArgs> | null
/**
* Omit specific fields from the Session
*/
omit?: SessionOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: SessionInclude<ExtArgs> | null
/**
* Filter, which Session to fetch.
*/
where?: SessionWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of Sessions to fetch.
*/
orderBy?: SessionOrderByWithRelationInput | SessionOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the position for searching for Sessions.
*/
cursor?: SessionWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` Sessions 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` Sessions.
*/
skip?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
*
* Filter by unique combinations of Sessions.
*/
distinct?: SessionScalarFieldEnum | SessionScalarFieldEnum[]
}
/**
* Session findMany
*/
export type SessionFindManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Session
*/
select?: SessionSelect<ExtArgs> | null
/**
* Omit specific fields from the Session
*/
omit?: SessionOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: SessionInclude<ExtArgs> | null
/**
* Filter, which Sessions to fetch.
*/
where?: SessionWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of Sessions to fetch.
*/
orderBy?: SessionOrderByWithRelationInput | SessionOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the position for listing Sessions.
*/
cursor?: SessionWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` Sessions 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` Sessions.
*/
skip?: number
distinct?: SessionScalarFieldEnum | SessionScalarFieldEnum[]
}
/**
* Session create
*/
export type SessionCreateArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Session
*/
select?: SessionSelect<ExtArgs> | null
/**
* Omit specific fields from the Session
*/
omit?: SessionOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: SessionInclude<ExtArgs> | null
/**
* The data needed to create a Session.
*/
data: XOR<SessionCreateInput, SessionUncheckedCreateInput>
}
/**
* Session createMany
*/
export type SessionCreateManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* The data used to create many Sessions.
*/
data: SessionCreateManyInput | SessionCreateManyInput[]
}
/**
* Session createManyAndReturn
*/
export type SessionCreateManyAndReturnArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Session
*/
select?: SessionSelectCreateManyAndReturn<ExtArgs> | null
/**
* Omit specific fields from the Session
*/
omit?: SessionOmit<ExtArgs> | null
/**
* The data used to create many Sessions.
*/
data: SessionCreateManyInput | SessionCreateManyInput[]
/**
* Choose, which related nodes to fetch as well
*/
include?: SessionIncludeCreateManyAndReturn<ExtArgs> | null
}
/**
* Session update
*/
export type SessionUpdateArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Session
*/
select?: SessionSelect<ExtArgs> | null
/**
* Omit specific fields from the Session
*/
omit?: SessionOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: SessionInclude<ExtArgs> | null
/**
* The data needed to update a Session.
*/
data: XOR<SessionUpdateInput, SessionUncheckedUpdateInput>
/**
* Choose, which Session to update.
*/
where: SessionWhereUniqueInput
}
/**
* Session updateMany
*/
export type SessionUpdateManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* The data used to update Sessions.
*/
data: XOR<SessionUpdateManyMutationInput, SessionUncheckedUpdateManyInput>
/**
* Filter which Sessions to update
*/
where?: SessionWhereInput
/**
* Limit how many Sessions to update.
*/
limit?: number
}
/**
* Session updateManyAndReturn
*/
export type SessionUpdateManyAndReturnArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Session
*/
select?: SessionSelectUpdateManyAndReturn<ExtArgs> | null
/**
* Omit specific fields from the Session
*/
omit?: SessionOmit<ExtArgs> | null
/**
* The data used to update Sessions.
*/
data: XOR<SessionUpdateManyMutationInput, SessionUncheckedUpdateManyInput>
/**
* Filter which Sessions to update
*/
where?: SessionWhereInput
/**
* Limit how many Sessions to update.
*/
limit?: number
/**
* Choose, which related nodes to fetch as well
*/
include?: SessionIncludeUpdateManyAndReturn<ExtArgs> | null
}
/**
* Session upsert
*/
export type SessionUpsertArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Session
*/
select?: SessionSelect<ExtArgs> | null
/**
* Omit specific fields from the Session
*/
omit?: SessionOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: SessionInclude<ExtArgs> | null
/**
* The filter to search for the Session to update in case it exists.
*/
where: SessionWhereUniqueInput
/**
* In case the Session found by the `where` argument doesn't exist, create a new Session with this data.
*/
create: XOR<SessionCreateInput, SessionUncheckedCreateInput>
/**
* In case the Session was found with the provided `where` argument, update it with this data.
*/
update: XOR<SessionUpdateInput, SessionUncheckedUpdateInput>
}
/**
* Session delete
*/
export type SessionDeleteArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Session
*/
select?: SessionSelect<ExtArgs> | null
/**
* Omit specific fields from the Session
*/
omit?: SessionOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: SessionInclude<ExtArgs> | null
/**
* Filter which Session to delete.
*/
where: SessionWhereUniqueInput
}
/**
* Session deleteMany
*/
export type SessionDeleteManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Filter which Sessions to delete
*/
where?: SessionWhereInput
/**
* Limit how many Sessions to delete.
*/
limit?: number
}
/**
* Session without action
*/
export type SessionDefaultArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Session
*/
select?: SessionSelect<ExtArgs> | null
/**
* Omit specific fields from the Session
*/
omit?: SessionOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: SessionInclude<ExtArgs> | null
}
/**
* Model Account
*/
export type AggregateAccount = {
_count: AccountCountAggregateOutputType | null
_avg: AccountAvgAggregateOutputType | null
_sum: AccountSumAggregateOutputType | null
_min: AccountMinAggregateOutputType | null
_max: AccountMaxAggregateOutputType | null
}
export type AccountAvgAggregateOutputType = {
expires_at: number | null
}
export type AccountSumAggregateOutputType = {
expires_at: number | null
}
export type AccountMinAggregateOutputType = {
id: string | null
userId: string | null
type: string | null
provider: string | null
providerAccountId: string | null
refresh_token: string | null
access_token: string | null
expires_at: number | null
token_type: string | null
scope: string | null
id_token: string | null
session_state: string | null
}
export type AccountMaxAggregateOutputType = {
id: string | null
userId: string | null
type: string | null
provider: string | null
providerAccountId: string | null
refresh_token: string | null
access_token: string | null
expires_at: number | null
token_type: string | null
scope: string | null
id_token: string | null
session_state: string | null
}
export type AccountCountAggregateOutputType = {
id: number
userId: number
type: number
provider: number
providerAccountId: number
refresh_token: number
access_token: number
expires_at: number
token_type: number
scope: number
id_token: number
session_state: number
_all: number
}
export type AccountAvgAggregateInputType = {
expires_at?: true
}
export type AccountSumAggregateInputType = {
expires_at?: true
}
export type AccountMinAggregateInputType = {
id?: true
userId?: true
type?: true
provider?: true
providerAccountId?: true
refresh_token?: true
access_token?: true
expires_at?: true
token_type?: true
scope?: true
id_token?: true
session_state?: true
}
export type AccountMaxAggregateInputType = {
id?: true
userId?: true
type?: true
provider?: true
providerAccountId?: true
refresh_token?: true
access_token?: true
expires_at?: true
token_type?: true
scope?: true
id_token?: true
session_state?: true
}
export type AccountCountAggregateInputType = {
id?: true
userId?: true
type?: true
provider?: true
providerAccountId?: true
refresh_token?: true
access_token?: true
expires_at?: true
token_type?: true
scope?: true
id_token?: true
session_state?: true
_all?: true
}
export type AccountAggregateArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Filter which Account to aggregate.
*/
where?: AccountWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of Accounts to fetch.
*/
orderBy?: AccountOrderByWithRelationInput | AccountOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the start position
*/
cursor?: AccountWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` Accounts 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` Accounts.
*/
skip?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Count returned Accounts
**/
_count?: true | AccountCountAggregateInputType
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Select which fields to average
**/
_avg?: AccountAvgAggregateInputType
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Select which fields to sum
**/
_sum?: AccountSumAggregateInputType
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Select which fields to find the minimum value
**/
_min?: AccountMinAggregateInputType
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Select which fields to find the maximum value
**/
_max?: AccountMaxAggregateInputType
}
export type GetAccountAggregateType<T extends AccountAggregateArgs> = {
[P in keyof T & keyof AggregateAccount]: P extends '_count' | 'count'
? T[P] extends true
? number
: GetScalarType<T[P], AggregateAccount[P]>
: GetScalarType<T[P], AggregateAccount[P]>
}
export type AccountGroupByArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
where?: AccountWhereInput
orderBy?: AccountOrderByWithAggregationInput | AccountOrderByWithAggregationInput[]
by: AccountScalarFieldEnum[] | AccountScalarFieldEnum
having?: AccountScalarWhereWithAggregatesInput
take?: number
skip?: number
_count?: AccountCountAggregateInputType | true
_avg?: AccountAvgAggregateInputType
_sum?: AccountSumAggregateInputType
_min?: AccountMinAggregateInputType
_max?: AccountMaxAggregateInputType
}
export type AccountGroupByOutputType = {
id: string
userId: string
type: string
provider: string
providerAccountId: string
refresh_token: string | null
access_token: string | null
expires_at: number | null
token_type: string | null
scope: string | null
id_token: string | null
session_state: string | null
_count: AccountCountAggregateOutputType | null
_avg: AccountAvgAggregateOutputType | null
_sum: AccountSumAggregateOutputType | null
_min: AccountMinAggregateOutputType | null
_max: AccountMaxAggregateOutputType | null
}
type GetAccountGroupByPayload<T extends AccountGroupByArgs> = Prisma.PrismaPromise<
Array<
PickEnumerable<AccountGroupByOutputType, T['by']> &
{
[P in ((keyof T) & (keyof AccountGroupByOutputType))]: P extends '_count'
? T[P] extends boolean
? number
: GetScalarType<T[P], AccountGroupByOutputType[P]>
: GetScalarType<T[P], AccountGroupByOutputType[P]>
}
>
>
export type AccountSelect<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
id?: boolean
userId?: boolean
type?: boolean
provider?: boolean
providerAccountId?: boolean
refresh_token?: boolean
access_token?: boolean
expires_at?: boolean
token_type?: boolean
scope?: boolean
id_token?: boolean
session_state?: boolean
user?: boolean | UserDefaultArgs<ExtArgs>
}, ExtArgs["result"]["account"]>
export type AccountSelectCreateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
id?: boolean
userId?: boolean
type?: boolean
provider?: boolean
providerAccountId?: boolean
refresh_token?: boolean
access_token?: boolean
expires_at?: boolean
token_type?: boolean
scope?: boolean
id_token?: boolean
session_state?: boolean
user?: boolean | UserDefaultArgs<ExtArgs>
}, ExtArgs["result"]["account"]>
export type AccountSelectUpdateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
id?: boolean
userId?: boolean
type?: boolean
provider?: boolean
providerAccountId?: boolean
refresh_token?: boolean
access_token?: boolean
expires_at?: boolean
token_type?: boolean
scope?: boolean
id_token?: boolean
session_state?: boolean
user?: boolean | UserDefaultArgs<ExtArgs>
}, ExtArgs["result"]["account"]>
export type AccountSelectScalar = {
id?: boolean
userId?: boolean
type?: boolean
provider?: boolean
providerAccountId?: boolean
refresh_token?: boolean
access_token?: boolean
expires_at?: boolean
token_type?: boolean
scope?: boolean
id_token?: boolean
session_state?: boolean
}
export type AccountOmit<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetOmit<"id" | "userId" | "type" | "provider" | "providerAccountId" | "refresh_token" | "access_token" | "expires_at" | "token_type" | "scope" | "id_token" | "session_state", ExtArgs["result"]["account"]>
export type AccountInclude<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
user?: boolean | UserDefaultArgs<ExtArgs>
}
export type AccountIncludeCreateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
user?: boolean | UserDefaultArgs<ExtArgs>
}
export type AccountIncludeUpdateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
user?: boolean | UserDefaultArgs<ExtArgs>
}
export type $AccountPayload<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
name: "Account"
objects: {
user: Prisma.$UserPayload<ExtArgs>
}
scalars: $Extensions.GetPayloadResult<{
id: string
userId: string
type: string
provider: string
providerAccountId: string
refresh_token: string | null
access_token: string | null
expires_at: number | null
token_type: string | null
scope: string | null
id_token: string | null
session_state: string | null
}, ExtArgs["result"]["account"]>
composites: {}
}
type AccountGetPayload<S extends boolean | null | undefined | AccountDefaultArgs> = $Result.GetResult<Prisma.$AccountPayload, S>
type AccountCountArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> =
Omit<AccountFindManyArgs, 'select' | 'include' | 'distinct' | 'omit'> & {
select?: AccountCountAggregateInputType | true
}
export interface AccountDelegate<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, GlobalOmitOptions = {}> {
[K: symbol]: { types: Prisma.TypeMap<ExtArgs>['model']['Account'], meta: { name: 'Account' } }
/**
* Find zero or one Account that matches the filter.
* @param {AccountFindUniqueArgs} args - Arguments to find a Account
* @example
* // Get one Account
* const account = await prisma.account.findUnique({
* where: {
* // ... provide filter here
* }
* })
*/
findUnique<T extends AccountFindUniqueArgs>(args: SelectSubset<T, AccountFindUniqueArgs<ExtArgs>>): Prisma__AccountClient<$Result.GetResult<Prisma.$AccountPayload<ExtArgs>, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
/**
* Find one Account that matches the filter or throw an error with `error.code='P2025'`
* if no matches were found.
* @param {AccountFindUniqueOrThrowArgs} args - Arguments to find a Account
* @example
* // Get one Account
* const account = await prisma.account.findUniqueOrThrow({
* where: {
* // ... provide filter here
* }
* })
*/
findUniqueOrThrow<T extends AccountFindUniqueOrThrowArgs>(args: SelectSubset<T, AccountFindUniqueOrThrowArgs<ExtArgs>>): Prisma__AccountClient<$Result.GetResult<Prisma.$AccountPayload<ExtArgs>, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Find the first Account 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 {AccountFindFirstArgs} args - Arguments to find a Account
* @example
* // Get one Account
* const account = await prisma.account.findFirst({
* where: {
* // ... provide filter here
* }
* })
*/
findFirst<T extends AccountFindFirstArgs>(args?: SelectSubset<T, AccountFindFirstArgs<ExtArgs>>): Prisma__AccountClient<$Result.GetResult<Prisma.$AccountPayload<ExtArgs>, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
/**
* Find the first Account 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 {AccountFindFirstOrThrowArgs} args - Arguments to find a Account
* @example
* // Get one Account
* const account = await prisma.account.findFirstOrThrow({
* where: {
* // ... provide filter here
* }
* })
*/
findFirstOrThrow<T extends AccountFindFirstOrThrowArgs>(args?: SelectSubset<T, AccountFindFirstOrThrowArgs<ExtArgs>>): Prisma__AccountClient<$Result.GetResult<Prisma.$AccountPayload<ExtArgs>, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Find zero or more Accounts 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 {AccountFindManyArgs} args - Arguments to filter and select certain fields only.
* @example
* // Get all Accounts
* const accounts = await prisma.account.findMany()
*
* // Get first 10 Accounts
* const accounts = await prisma.account.findMany({ take: 10 })
*
* // Only select the `id`
* const accountWithIdOnly = await prisma.account.findMany({ select: { id: true } })
*
*/
findMany<T extends AccountFindManyArgs>(args?: SelectSubset<T, AccountFindManyArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$AccountPayload<ExtArgs>, T, "findMany", GlobalOmitOptions>>
/**
* Create a Account.
* @param {AccountCreateArgs} args - Arguments to create a Account.
* @example
* // Create one Account
* const Account = await prisma.account.create({
* data: {
* // ... data to create a Account
* }
* })
*
*/
create<T extends AccountCreateArgs>(args: SelectSubset<T, AccountCreateArgs<ExtArgs>>): Prisma__AccountClient<$Result.GetResult<Prisma.$AccountPayload<ExtArgs>, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Create many Accounts.
* @param {AccountCreateManyArgs} args - Arguments to create many Accounts.
* @example
* // Create many Accounts
* const account = await prisma.account.createMany({
* data: [
* // ... provide data here
* ]
* })
*
*/
createMany<T extends AccountCreateManyArgs>(args?: SelectSubset<T, AccountCreateManyArgs<ExtArgs>>): Prisma.PrismaPromise<BatchPayload>
/**
* Create many Accounts and returns the data saved in the database.
* @param {AccountCreateManyAndReturnArgs} args - Arguments to create many Accounts.
* @example
* // Create many Accounts
* const account = await prisma.account.createManyAndReturn({
* data: [
* // ... provide data here
* ]
* })
*
* // Create many Accounts and only return the `id`
* const accountWithIdOnly = await prisma.account.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 AccountCreateManyAndReturnArgs>(args?: SelectSubset<T, AccountCreateManyAndReturnArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$AccountPayload<ExtArgs>, T, "createManyAndReturn", GlobalOmitOptions>>
/**
* Delete a Account.
* @param {AccountDeleteArgs} args - Arguments to delete one Account.
* @example
* // Delete one Account
* const Account = await prisma.account.delete({
* where: {
* // ... filter to delete one Account
* }
* })
*
*/
delete<T extends AccountDeleteArgs>(args: SelectSubset<T, AccountDeleteArgs<ExtArgs>>): Prisma__AccountClient<$Result.GetResult<Prisma.$AccountPayload<ExtArgs>, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Update one Account.
* @param {AccountUpdateArgs} args - Arguments to update one Account.
* @example
* // Update one Account
* const account = await prisma.account.update({
* where: {
* // ... provide filter here
* },
* data: {
* // ... provide data here
* }
* })
*
*/
update<T extends AccountUpdateArgs>(args: SelectSubset<T, AccountUpdateArgs<ExtArgs>>): Prisma__AccountClient<$Result.GetResult<Prisma.$AccountPayload<ExtArgs>, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Delete zero or more Accounts.
* @param {AccountDeleteManyArgs} args - Arguments to filter Accounts to delete.
* @example
* // Delete a few Accounts
* const { count } = await prisma.account.deleteMany({
* where: {
* // ... provide filter here
* }
* })
*
*/
deleteMany<T extends AccountDeleteManyArgs>(args?: SelectSubset<T, AccountDeleteManyArgs<ExtArgs>>): Prisma.PrismaPromise<BatchPayload>
/**
* Update zero or more Accounts.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {AccountUpdateManyArgs} args - Arguments to update one or more rows.
* @example
* // Update many Accounts
* const account = await prisma.account.updateMany({
* where: {
* // ... provide filter here
* },
* data: {
* // ... provide data here
* }
* })
*
*/
updateMany<T extends AccountUpdateManyArgs>(args: SelectSubset<T, AccountUpdateManyArgs<ExtArgs>>): Prisma.PrismaPromise<BatchPayload>
/**
* Update zero or more Accounts and returns the data updated in the database.
* @param {AccountUpdateManyAndReturnArgs} args - Arguments to update many Accounts.
* @example
* // Update many Accounts
* const account = await prisma.account.updateManyAndReturn({
* where: {
* // ... provide filter here
* },
* data: [
* // ... provide data here
* ]
* })
*
* // Update zero or more Accounts and only return the `id`
* const accountWithIdOnly = await prisma.account.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 AccountUpdateManyAndReturnArgs>(args: SelectSubset<T, AccountUpdateManyAndReturnArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$AccountPayload<ExtArgs>, T, "updateManyAndReturn", GlobalOmitOptions>>
/**
* Create or update one Account.
* @param {AccountUpsertArgs} args - Arguments to update or create a Account.
* @example
* // Update or create a Account
* const account = await prisma.account.upsert({
* create: {
* // ... data to create a Account
* },
* update: {
* // ... in case it already exists, update
* },
* where: {
* // ... the filter for the Account we want to update
* }
* })
*/
upsert<T extends AccountUpsertArgs>(args: SelectSubset<T, AccountUpsertArgs<ExtArgs>>): Prisma__AccountClient<$Result.GetResult<Prisma.$AccountPayload<ExtArgs>, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Count the number of Accounts.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {AccountCountArgs} args - Arguments to filter Accounts to count.
* @example
* // Count the number of Accounts
* const count = await prisma.account.count({
* where: {
* // ... the filter for the Accounts we want to count
* }
* })
**/
count<T extends AccountCountArgs>(
args?: Subset<T, AccountCountArgs>,
): Prisma.PrismaPromise<
T extends $Utils.Record<'select', any>
? T['select'] extends true
? number
: GetScalarType<T['select'], AccountCountAggregateOutputType>
: number
>
/**
* Allows you to perform aggregations operations on a Account.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {AccountAggregateArgs} 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 AccountAggregateArgs>(args: Subset<T, AccountAggregateArgs>): Prisma.PrismaPromise<GetAccountAggregateType<T>>
/**
* Group by Account.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {AccountGroupByArgs} 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 AccountGroupByArgs,
HasSelectOrTake extends Or<
Extends<'skip', Keys<T>>,
Extends<'take', Keys<T>>
>,
OrderByArg extends True extends HasSelectOrTake
? { orderBy: AccountGroupByArgs['orderBy'] }
: { orderBy?: AccountGroupByArgs['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, AccountGroupByArgs, OrderByArg> & InputErrors): {} extends InputErrors ? GetAccountGroupByPayload<T> : Prisma.PrismaPromise<InputErrors>
/**
* Fields of the Account model
*/
readonly fields: AccountFieldRefs;
}
/**
* The delegate class that acts as a "Promise-like" for Account.
* 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__AccountClient<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>
/**
* 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 Account model
*/
interface AccountFieldRefs {
readonly id: FieldRef<"Account", 'String'>
readonly userId: FieldRef<"Account", 'String'>
readonly type: FieldRef<"Account", 'String'>
readonly provider: FieldRef<"Account", 'String'>
readonly providerAccountId: FieldRef<"Account", 'String'>
readonly refresh_token: FieldRef<"Account", 'String'>
readonly access_token: FieldRef<"Account", 'String'>
readonly expires_at: FieldRef<"Account", 'Int'>
readonly token_type: FieldRef<"Account", 'String'>
readonly scope: FieldRef<"Account", 'String'>
readonly id_token: FieldRef<"Account", 'String'>
readonly session_state: FieldRef<"Account", 'String'>
}
// Custom InputTypes
/**
* Account findUnique
*/
export type AccountFindUniqueArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Account
*/
select?: AccountSelect<ExtArgs> | null
/**
* Omit specific fields from the Account
*/
omit?: AccountOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: AccountInclude<ExtArgs> | null
/**
* Filter, which Account to fetch.
*/
where: AccountWhereUniqueInput
}
/**
* Account findUniqueOrThrow
*/
export type AccountFindUniqueOrThrowArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Account
*/
select?: AccountSelect<ExtArgs> | null
/**
* Omit specific fields from the Account
*/
omit?: AccountOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: AccountInclude<ExtArgs> | null
/**
* Filter, which Account to fetch.
*/
where: AccountWhereUniqueInput
}
/**
* Account findFirst
*/
export type AccountFindFirstArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Account
*/
select?: AccountSelect<ExtArgs> | null
/**
* Omit specific fields from the Account
*/
omit?: AccountOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: AccountInclude<ExtArgs> | null
/**
* Filter, which Account to fetch.
*/
where?: AccountWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of Accounts to fetch.
*/
orderBy?: AccountOrderByWithRelationInput | AccountOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the position for searching for Accounts.
*/
cursor?: AccountWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` Accounts 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` Accounts.
*/
skip?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
*
* Filter by unique combinations of Accounts.
*/
distinct?: AccountScalarFieldEnum | AccountScalarFieldEnum[]
}
/**
* Account findFirstOrThrow
*/
export type AccountFindFirstOrThrowArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Account
*/
select?: AccountSelect<ExtArgs> | null
/**
* Omit specific fields from the Account
*/
omit?: AccountOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: AccountInclude<ExtArgs> | null
/**
* Filter, which Account to fetch.
*/
where?: AccountWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of Accounts to fetch.
*/
orderBy?: AccountOrderByWithRelationInput | AccountOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the position for searching for Accounts.
*/
cursor?: AccountWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` Accounts 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` Accounts.
*/
skip?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
*
* Filter by unique combinations of Accounts.
*/
distinct?: AccountScalarFieldEnum | AccountScalarFieldEnum[]
}
/**
* Account findMany
*/
export type AccountFindManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Account
*/
select?: AccountSelect<ExtArgs> | null
/**
* Omit specific fields from the Account
*/
omit?: AccountOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: AccountInclude<ExtArgs> | null
/**
* Filter, which Accounts to fetch.
*/
where?: AccountWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of Accounts to fetch.
*/
orderBy?: AccountOrderByWithRelationInput | AccountOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the position for listing Accounts.
*/
cursor?: AccountWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` Accounts 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` Accounts.
*/
skip?: number
distinct?: AccountScalarFieldEnum | AccountScalarFieldEnum[]
}
/**
* Account create
*/
export type AccountCreateArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Account
*/
select?: AccountSelect<ExtArgs> | null
/**
* Omit specific fields from the Account
*/
omit?: AccountOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: AccountInclude<ExtArgs> | null
/**
* The data needed to create a Account.
*/
data: XOR<AccountCreateInput, AccountUncheckedCreateInput>
}
/**
* Account createMany
*/
export type AccountCreateManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* The data used to create many Accounts.
*/
data: AccountCreateManyInput | AccountCreateManyInput[]
}
/**
* Account createManyAndReturn
*/
export type AccountCreateManyAndReturnArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Account
*/
select?: AccountSelectCreateManyAndReturn<ExtArgs> | null
/**
* Omit specific fields from the Account
*/
omit?: AccountOmit<ExtArgs> | null
/**
* The data used to create many Accounts.
*/
data: AccountCreateManyInput | AccountCreateManyInput[]
/**
* Choose, which related nodes to fetch as well
*/
include?: AccountIncludeCreateManyAndReturn<ExtArgs> | null
}
/**
* Account update
*/
export type AccountUpdateArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Account
*/
select?: AccountSelect<ExtArgs> | null
/**
* Omit specific fields from the Account
*/
omit?: AccountOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: AccountInclude<ExtArgs> | null
/**
* The data needed to update a Account.
*/
data: XOR<AccountUpdateInput, AccountUncheckedUpdateInput>
/**
* Choose, which Account to update.
*/
where: AccountWhereUniqueInput
}
/**
* Account updateMany
*/
export type AccountUpdateManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* The data used to update Accounts.
*/
data: XOR<AccountUpdateManyMutationInput, AccountUncheckedUpdateManyInput>
/**
* Filter which Accounts to update
*/
where?: AccountWhereInput
/**
* Limit how many Accounts to update.
*/
limit?: number
}
/**
* Account updateManyAndReturn
*/
export type AccountUpdateManyAndReturnArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Account
*/
select?: AccountSelectUpdateManyAndReturn<ExtArgs> | null
/**
* Omit specific fields from the Account
*/
omit?: AccountOmit<ExtArgs> | null
/**
* The data used to update Accounts.
*/
data: XOR<AccountUpdateManyMutationInput, AccountUncheckedUpdateManyInput>
/**
* Filter which Accounts to update
*/
where?: AccountWhereInput
/**
* Limit how many Accounts to update.
*/
limit?: number
/**
* Choose, which related nodes to fetch as well
*/
include?: AccountIncludeUpdateManyAndReturn<ExtArgs> | null
}
/**
* Account upsert
*/
export type AccountUpsertArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Account
*/
select?: AccountSelect<ExtArgs> | null
/**
* Omit specific fields from the Account
*/
omit?: AccountOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: AccountInclude<ExtArgs> | null
/**
* The filter to search for the Account to update in case it exists.
*/
where: AccountWhereUniqueInput
/**
* In case the Account found by the `where` argument doesn't exist, create a new Account with this data.
*/
create: XOR<AccountCreateInput, AccountUncheckedCreateInput>
/**
* In case the Account was found with the provided `where` argument, update it with this data.
*/
update: XOR<AccountUpdateInput, AccountUncheckedUpdateInput>
}
/**
* Account delete
*/
export type AccountDeleteArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Account
*/
select?: AccountSelect<ExtArgs> | null
/**
* Omit specific fields from the Account
*/
omit?: AccountOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: AccountInclude<ExtArgs> | null
/**
* Filter which Account to delete.
*/
where: AccountWhereUniqueInput
}
/**
* Account deleteMany
*/
export type AccountDeleteManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Filter which Accounts to delete
*/
where?: AccountWhereInput
/**
* Limit how many Accounts to delete.
*/
limit?: number
}
/**
* Account without action
*/
export type AccountDefaultArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the Account
*/
select?: AccountSelect<ExtArgs> | null
/**
* Omit specific fields from the Account
*/
omit?: AccountOmit<ExtArgs> | null
/**
* Choose, which related nodes to fetch as well
*/
include?: AccountInclude<ExtArgs> | null
}
/**
* Model VerificationToken
*/
export type AggregateVerificationToken = {
_count: VerificationTokenCountAggregateOutputType | null
_min: VerificationTokenMinAggregateOutputType | null
_max: VerificationTokenMaxAggregateOutputType | null
}
export type VerificationTokenMinAggregateOutputType = {
identifier: string | null
token: string | null
expires: Date | null
}
export type VerificationTokenMaxAggregateOutputType = {
identifier: string | null
token: string | null
expires: Date | null
}
export type VerificationTokenCountAggregateOutputType = {
identifier: number
token: number
expires: number
_all: number
}
export type VerificationTokenMinAggregateInputType = {
identifier?: true
token?: true
expires?: true
}
export type VerificationTokenMaxAggregateInputType = {
identifier?: true
token?: true
expires?: true
}
export type VerificationTokenCountAggregateInputType = {
identifier?: true
token?: true
expires?: true
_all?: true
}
export type VerificationTokenAggregateArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Filter which VerificationToken to aggregate.
*/
where?: VerificationTokenWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of VerificationTokens to fetch.
*/
orderBy?: VerificationTokenOrderByWithRelationInput | VerificationTokenOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the start position
*/
cursor?: VerificationTokenWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` VerificationTokens 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` VerificationTokens.
*/
skip?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Count returned VerificationTokens
**/
_count?: true | VerificationTokenCountAggregateInputType
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Select which fields to find the minimum value
**/
_min?: VerificationTokenMinAggregateInputType
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
*
* Select which fields to find the maximum value
**/
_max?: VerificationTokenMaxAggregateInputType
}
export type GetVerificationTokenAggregateType<T extends VerificationTokenAggregateArgs> = {
[P in keyof T & keyof AggregateVerificationToken]: P extends '_count' | 'count'
? T[P] extends true
? number
: GetScalarType<T[P], AggregateVerificationToken[P]>
: GetScalarType<T[P], AggregateVerificationToken[P]>
}
export type VerificationTokenGroupByArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
where?: VerificationTokenWhereInput
orderBy?: VerificationTokenOrderByWithAggregationInput | VerificationTokenOrderByWithAggregationInput[]
by: VerificationTokenScalarFieldEnum[] | VerificationTokenScalarFieldEnum
having?: VerificationTokenScalarWhereWithAggregatesInput
take?: number
skip?: number
_count?: VerificationTokenCountAggregateInputType | true
_min?: VerificationTokenMinAggregateInputType
_max?: VerificationTokenMaxAggregateInputType
}
export type VerificationTokenGroupByOutputType = {
identifier: string
token: string
expires: Date
_count: VerificationTokenCountAggregateOutputType | null
_min: VerificationTokenMinAggregateOutputType | null
_max: VerificationTokenMaxAggregateOutputType | null
}
type GetVerificationTokenGroupByPayload<T extends VerificationTokenGroupByArgs> = Prisma.PrismaPromise<
Array<
PickEnumerable<VerificationTokenGroupByOutputType, T['by']> &
{
[P in ((keyof T) & (keyof VerificationTokenGroupByOutputType))]: P extends '_count'
? T[P] extends boolean
? number
: GetScalarType<T[P], VerificationTokenGroupByOutputType[P]>
: GetScalarType<T[P], VerificationTokenGroupByOutputType[P]>
}
>
>
export type VerificationTokenSelect<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
identifier?: boolean
token?: boolean
expires?: boolean
}, ExtArgs["result"]["verificationToken"]>
export type VerificationTokenSelectCreateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
identifier?: boolean
token?: boolean
expires?: boolean
}, ExtArgs["result"]["verificationToken"]>
export type VerificationTokenSelectUpdateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
identifier?: boolean
token?: boolean
expires?: boolean
}, ExtArgs["result"]["verificationToken"]>
export type VerificationTokenSelectScalar = {
identifier?: boolean
token?: boolean
expires?: boolean
}
export type VerificationTokenOmit<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetOmit<"identifier" | "token" | "expires", ExtArgs["result"]["verificationToken"]>
export type $VerificationTokenPayload<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
name: "VerificationToken"
objects: {}
scalars: $Extensions.GetPayloadResult<{
identifier: string
token: string
expires: Date
}, ExtArgs["result"]["verificationToken"]>
composites: {}
}
type VerificationTokenGetPayload<S extends boolean | null | undefined | VerificationTokenDefaultArgs> = $Result.GetResult<Prisma.$VerificationTokenPayload, S>
type VerificationTokenCountArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> =
Omit<VerificationTokenFindManyArgs, 'select' | 'include' | 'distinct' | 'omit'> & {
select?: VerificationTokenCountAggregateInputType | true
}
export interface VerificationTokenDelegate<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, GlobalOmitOptions = {}> {
[K: symbol]: { types: Prisma.TypeMap<ExtArgs>['model']['VerificationToken'], meta: { name: 'VerificationToken' } }
/**
* Find zero or one VerificationToken that matches the filter.
* @param {VerificationTokenFindUniqueArgs} args - Arguments to find a VerificationToken
* @example
* // Get one VerificationToken
* const verificationToken = await prisma.verificationToken.findUnique({
* where: {
* // ... provide filter here
* }
* })
*/
findUnique<T extends VerificationTokenFindUniqueArgs>(args: SelectSubset<T, VerificationTokenFindUniqueArgs<ExtArgs>>): Prisma__VerificationTokenClient<$Result.GetResult<Prisma.$VerificationTokenPayload<ExtArgs>, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
/**
* Find one VerificationToken that matches the filter or throw an error with `error.code='P2025'`
* if no matches were found.
* @param {VerificationTokenFindUniqueOrThrowArgs} args - Arguments to find a VerificationToken
* @example
* // Get one VerificationToken
* const verificationToken = await prisma.verificationToken.findUniqueOrThrow({
* where: {
* // ... provide filter here
* }
* })
*/
findUniqueOrThrow<T extends VerificationTokenFindUniqueOrThrowArgs>(args: SelectSubset<T, VerificationTokenFindUniqueOrThrowArgs<ExtArgs>>): Prisma__VerificationTokenClient<$Result.GetResult<Prisma.$VerificationTokenPayload<ExtArgs>, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Find the first VerificationToken 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 {VerificationTokenFindFirstArgs} args - Arguments to find a VerificationToken
* @example
* // Get one VerificationToken
* const verificationToken = await prisma.verificationToken.findFirst({
* where: {
* // ... provide filter here
* }
* })
*/
findFirst<T extends VerificationTokenFindFirstArgs>(args?: SelectSubset<T, VerificationTokenFindFirstArgs<ExtArgs>>): Prisma__VerificationTokenClient<$Result.GetResult<Prisma.$VerificationTokenPayload<ExtArgs>, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
/**
* Find the first VerificationToken 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 {VerificationTokenFindFirstOrThrowArgs} args - Arguments to find a VerificationToken
* @example
* // Get one VerificationToken
* const verificationToken = await prisma.verificationToken.findFirstOrThrow({
* where: {
* // ... provide filter here
* }
* })
*/
findFirstOrThrow<T extends VerificationTokenFindFirstOrThrowArgs>(args?: SelectSubset<T, VerificationTokenFindFirstOrThrowArgs<ExtArgs>>): Prisma__VerificationTokenClient<$Result.GetResult<Prisma.$VerificationTokenPayload<ExtArgs>, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Find zero or more VerificationTokens 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 {VerificationTokenFindManyArgs} args - Arguments to filter and select certain fields only.
* @example
* // Get all VerificationTokens
* const verificationTokens = await prisma.verificationToken.findMany()
*
* // Get first 10 VerificationTokens
* const verificationTokens = await prisma.verificationToken.findMany({ take: 10 })
*
* // Only select the `identifier`
* const verificationTokenWithIdentifierOnly = await prisma.verificationToken.findMany({ select: { identifier: true } })
*
*/
findMany<T extends VerificationTokenFindManyArgs>(args?: SelectSubset<T, VerificationTokenFindManyArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$VerificationTokenPayload<ExtArgs>, T, "findMany", GlobalOmitOptions>>
/**
* Create a VerificationToken.
* @param {VerificationTokenCreateArgs} args - Arguments to create a VerificationToken.
* @example
* // Create one VerificationToken
* const VerificationToken = await prisma.verificationToken.create({
* data: {
* // ... data to create a VerificationToken
* }
* })
*
*/
create<T extends VerificationTokenCreateArgs>(args: SelectSubset<T, VerificationTokenCreateArgs<ExtArgs>>): Prisma__VerificationTokenClient<$Result.GetResult<Prisma.$VerificationTokenPayload<ExtArgs>, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Create many VerificationTokens.
* @param {VerificationTokenCreateManyArgs} args - Arguments to create many VerificationTokens.
* @example
* // Create many VerificationTokens
* const verificationToken = await prisma.verificationToken.createMany({
* data: [
* // ... provide data here
* ]
* })
*
*/
createMany<T extends VerificationTokenCreateManyArgs>(args?: SelectSubset<T, VerificationTokenCreateManyArgs<ExtArgs>>): Prisma.PrismaPromise<BatchPayload>
/**
* Create many VerificationTokens and returns the data saved in the database.
* @param {VerificationTokenCreateManyAndReturnArgs} args - Arguments to create many VerificationTokens.
* @example
* // Create many VerificationTokens
* const verificationToken = await prisma.verificationToken.createManyAndReturn({
* data: [
* // ... provide data here
* ]
* })
*
* // Create many VerificationTokens and only return the `identifier`
* const verificationTokenWithIdentifierOnly = await prisma.verificationToken.createManyAndReturn({
* select: { identifier: 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 VerificationTokenCreateManyAndReturnArgs>(args?: SelectSubset<T, VerificationTokenCreateManyAndReturnArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$VerificationTokenPayload<ExtArgs>, T, "createManyAndReturn", GlobalOmitOptions>>
/**
* Delete a VerificationToken.
* @param {VerificationTokenDeleteArgs} args - Arguments to delete one VerificationToken.
* @example
* // Delete one VerificationToken
* const VerificationToken = await prisma.verificationToken.delete({
* where: {
* // ... filter to delete one VerificationToken
* }
* })
*
*/
delete<T extends VerificationTokenDeleteArgs>(args: SelectSubset<T, VerificationTokenDeleteArgs<ExtArgs>>): Prisma__VerificationTokenClient<$Result.GetResult<Prisma.$VerificationTokenPayload<ExtArgs>, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Update one VerificationToken.
* @param {VerificationTokenUpdateArgs} args - Arguments to update one VerificationToken.
* @example
* // Update one VerificationToken
* const verificationToken = await prisma.verificationToken.update({
* where: {
* // ... provide filter here
* },
* data: {
* // ... provide data here
* }
* })
*
*/
update<T extends VerificationTokenUpdateArgs>(args: SelectSubset<T, VerificationTokenUpdateArgs<ExtArgs>>): Prisma__VerificationTokenClient<$Result.GetResult<Prisma.$VerificationTokenPayload<ExtArgs>, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Delete zero or more VerificationTokens.
* @param {VerificationTokenDeleteManyArgs} args - Arguments to filter VerificationTokens to delete.
* @example
* // Delete a few VerificationTokens
* const { count } = await prisma.verificationToken.deleteMany({
* where: {
* // ... provide filter here
* }
* })
*
*/
deleteMany<T extends VerificationTokenDeleteManyArgs>(args?: SelectSubset<T, VerificationTokenDeleteManyArgs<ExtArgs>>): Prisma.PrismaPromise<BatchPayload>
/**
* Update zero or more VerificationTokens.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {VerificationTokenUpdateManyArgs} args - Arguments to update one or more rows.
* @example
* // Update many VerificationTokens
* const verificationToken = await prisma.verificationToken.updateMany({
* where: {
* // ... provide filter here
* },
* data: {
* // ... provide data here
* }
* })
*
*/
updateMany<T extends VerificationTokenUpdateManyArgs>(args: SelectSubset<T, VerificationTokenUpdateManyArgs<ExtArgs>>): Prisma.PrismaPromise<BatchPayload>
/**
* Update zero or more VerificationTokens and returns the data updated in the database.
* @param {VerificationTokenUpdateManyAndReturnArgs} args - Arguments to update many VerificationTokens.
* @example
* // Update many VerificationTokens
* const verificationToken = await prisma.verificationToken.updateManyAndReturn({
* where: {
* // ... provide filter here
* },
* data: [
* // ... provide data here
* ]
* })
*
* // Update zero or more VerificationTokens and only return the `identifier`
* const verificationTokenWithIdentifierOnly = await prisma.verificationToken.updateManyAndReturn({
* select: { identifier: 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 VerificationTokenUpdateManyAndReturnArgs>(args: SelectSubset<T, VerificationTokenUpdateManyAndReturnArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$VerificationTokenPayload<ExtArgs>, T, "updateManyAndReturn", GlobalOmitOptions>>
/**
* Create or update one VerificationToken.
* @param {VerificationTokenUpsertArgs} args - Arguments to update or create a VerificationToken.
* @example
* // Update or create a VerificationToken
* const verificationToken = await prisma.verificationToken.upsert({
* create: {
* // ... data to create a VerificationToken
* },
* update: {
* // ... in case it already exists, update
* },
* where: {
* // ... the filter for the VerificationToken we want to update
* }
* })
*/
upsert<T extends VerificationTokenUpsertArgs>(args: SelectSubset<T, VerificationTokenUpsertArgs<ExtArgs>>): Prisma__VerificationTokenClient<$Result.GetResult<Prisma.$VerificationTokenPayload<ExtArgs>, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
/**
* Count the number of VerificationTokens.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {VerificationTokenCountArgs} args - Arguments to filter VerificationTokens to count.
* @example
* // Count the number of VerificationTokens
* const count = await prisma.verificationToken.count({
* where: {
* // ... the filter for the VerificationTokens we want to count
* }
* })
**/
count<T extends VerificationTokenCountArgs>(
args?: Subset<T, VerificationTokenCountArgs>,
): Prisma.PrismaPromise<
T extends $Utils.Record<'select', any>
? T['select'] extends true
? number
: GetScalarType<T['select'], VerificationTokenCountAggregateOutputType>
: number
>
/**
* Allows you to perform aggregations operations on a VerificationToken.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {VerificationTokenAggregateArgs} 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 VerificationTokenAggregateArgs>(args: Subset<T, VerificationTokenAggregateArgs>): Prisma.PrismaPromise<GetVerificationTokenAggregateType<T>>
/**
* Group by VerificationToken.
* Note, that providing `undefined` is treated as the value not being there.
* Read more here: https://pris.ly/d/null-undefined
* @param {VerificationTokenGroupByArgs} 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 VerificationTokenGroupByArgs,
HasSelectOrTake extends Or<
Extends<'skip', Keys<T>>,
Extends<'take', Keys<T>>
>,
OrderByArg extends True extends HasSelectOrTake
? { orderBy: VerificationTokenGroupByArgs['orderBy'] }
: { orderBy?: VerificationTokenGroupByArgs['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, VerificationTokenGroupByArgs, OrderByArg> & InputErrors): {} extends InputErrors ? GetVerificationTokenGroupByPayload<T> : Prisma.PrismaPromise<InputErrors>
/**
* Fields of the VerificationToken model
*/
readonly fields: VerificationTokenFieldRefs;
}
/**
* The delegate class that acts as a "Promise-like" for VerificationToken.
* 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__VerificationTokenClient<T, Null = never, ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, GlobalOmitOptions = {}> extends Prisma.PrismaPromise<T> {
readonly [Symbol.toStringTag]: "PrismaPromise"
/**
* 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 VerificationToken model
*/
interface VerificationTokenFieldRefs {
readonly identifier: FieldRef<"VerificationToken", 'String'>
readonly token: FieldRef<"VerificationToken", 'String'>
readonly expires: FieldRef<"VerificationToken", 'DateTime'>
}
// Custom InputTypes
/**
* VerificationToken findUnique
*/
export type VerificationTokenFindUniqueArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the VerificationToken
*/
select?: VerificationTokenSelect<ExtArgs> | null
/**
* Omit specific fields from the VerificationToken
*/
omit?: VerificationTokenOmit<ExtArgs> | null
/**
* Filter, which VerificationToken to fetch.
*/
where: VerificationTokenWhereUniqueInput
}
/**
* VerificationToken findUniqueOrThrow
*/
export type VerificationTokenFindUniqueOrThrowArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the VerificationToken
*/
select?: VerificationTokenSelect<ExtArgs> | null
/**
* Omit specific fields from the VerificationToken
*/
omit?: VerificationTokenOmit<ExtArgs> | null
/**
* Filter, which VerificationToken to fetch.
*/
where: VerificationTokenWhereUniqueInput
}
/**
* VerificationToken findFirst
*/
export type VerificationTokenFindFirstArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the VerificationToken
*/
select?: VerificationTokenSelect<ExtArgs> | null
/**
* Omit specific fields from the VerificationToken
*/
omit?: VerificationTokenOmit<ExtArgs> | null
/**
* Filter, which VerificationToken to fetch.
*/
where?: VerificationTokenWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of VerificationTokens to fetch.
*/
orderBy?: VerificationTokenOrderByWithRelationInput | VerificationTokenOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the position for searching for VerificationTokens.
*/
cursor?: VerificationTokenWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` VerificationTokens 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` VerificationTokens.
*/
skip?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
*
* Filter by unique combinations of VerificationTokens.
*/
distinct?: VerificationTokenScalarFieldEnum | VerificationTokenScalarFieldEnum[]
}
/**
* VerificationToken findFirstOrThrow
*/
export type VerificationTokenFindFirstOrThrowArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the VerificationToken
*/
select?: VerificationTokenSelect<ExtArgs> | null
/**
* Omit specific fields from the VerificationToken
*/
omit?: VerificationTokenOmit<ExtArgs> | null
/**
* Filter, which VerificationToken to fetch.
*/
where?: VerificationTokenWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of VerificationTokens to fetch.
*/
orderBy?: VerificationTokenOrderByWithRelationInput | VerificationTokenOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the position for searching for VerificationTokens.
*/
cursor?: VerificationTokenWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` VerificationTokens 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` VerificationTokens.
*/
skip?: number
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
*
* Filter by unique combinations of VerificationTokens.
*/
distinct?: VerificationTokenScalarFieldEnum | VerificationTokenScalarFieldEnum[]
}
/**
* VerificationToken findMany
*/
export type VerificationTokenFindManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the VerificationToken
*/
select?: VerificationTokenSelect<ExtArgs> | null
/**
* Omit specific fields from the VerificationToken
*/
omit?: VerificationTokenOmit<ExtArgs> | null
/**
* Filter, which VerificationTokens to fetch.
*/
where?: VerificationTokenWhereInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
*
* Determine the order of VerificationTokens to fetch.
*/
orderBy?: VerificationTokenOrderByWithRelationInput | VerificationTokenOrderByWithRelationInput[]
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
*
* Sets the position for listing VerificationTokens.
*/
cursor?: VerificationTokenWhereUniqueInput
/**
* {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
*
* Take `±n` VerificationTokens 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` VerificationTokens.
*/
skip?: number
distinct?: VerificationTokenScalarFieldEnum | VerificationTokenScalarFieldEnum[]
}
/**
* VerificationToken create
*/
export type VerificationTokenCreateArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the VerificationToken
*/
select?: VerificationTokenSelect<ExtArgs> | null
/**
* Omit specific fields from the VerificationToken
*/
omit?: VerificationTokenOmit<ExtArgs> | null
/**
* The data needed to create a VerificationToken.
*/
data: XOR<VerificationTokenCreateInput, VerificationTokenUncheckedCreateInput>
}
/**
* VerificationToken createMany
*/
export type VerificationTokenCreateManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* The data used to create many VerificationTokens.
*/
data: VerificationTokenCreateManyInput | VerificationTokenCreateManyInput[]
}
/**
* VerificationToken createManyAndReturn
*/
export type VerificationTokenCreateManyAndReturnArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the VerificationToken
*/
select?: VerificationTokenSelectCreateManyAndReturn<ExtArgs> | null
/**
* Omit specific fields from the VerificationToken
*/
omit?: VerificationTokenOmit<ExtArgs> | null
/**
* The data used to create many VerificationTokens.
*/
data: VerificationTokenCreateManyInput | VerificationTokenCreateManyInput[]
}
/**
* VerificationToken update
*/
export type VerificationTokenUpdateArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the VerificationToken
*/
select?: VerificationTokenSelect<ExtArgs> | null
/**
* Omit specific fields from the VerificationToken
*/
omit?: VerificationTokenOmit<ExtArgs> | null
/**
* The data needed to update a VerificationToken.
*/
data: XOR<VerificationTokenUpdateInput, VerificationTokenUncheckedUpdateInput>
/**
* Choose, which VerificationToken to update.
*/
where: VerificationTokenWhereUniqueInput
}
/**
* VerificationToken updateMany
*/
export type VerificationTokenUpdateManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* The data used to update VerificationTokens.
*/
data: XOR<VerificationTokenUpdateManyMutationInput, VerificationTokenUncheckedUpdateManyInput>
/**
* Filter which VerificationTokens to update
*/
where?: VerificationTokenWhereInput
/**
* Limit how many VerificationTokens to update.
*/
limit?: number
}
/**
* VerificationToken updateManyAndReturn
*/
export type VerificationTokenUpdateManyAndReturnArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the VerificationToken
*/
select?: VerificationTokenSelectUpdateManyAndReturn<ExtArgs> | null
/**
* Omit specific fields from the VerificationToken
*/
omit?: VerificationTokenOmit<ExtArgs> | null
/**
* The data used to update VerificationTokens.
*/
data: XOR<VerificationTokenUpdateManyMutationInput, VerificationTokenUncheckedUpdateManyInput>
/**
* Filter which VerificationTokens to update
*/
where?: VerificationTokenWhereInput
/**
* Limit how many VerificationTokens to update.
*/
limit?: number
}
/**
* VerificationToken upsert
*/
export type VerificationTokenUpsertArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the VerificationToken
*/
select?: VerificationTokenSelect<ExtArgs> | null
/**
* Omit specific fields from the VerificationToken
*/
omit?: VerificationTokenOmit<ExtArgs> | null
/**
* The filter to search for the VerificationToken to update in case it exists.
*/
where: VerificationTokenWhereUniqueInput
/**
* In case the VerificationToken found by the `where` argument doesn't exist, create a new VerificationToken with this data.
*/
create: XOR<VerificationTokenCreateInput, VerificationTokenUncheckedCreateInput>
/**
* In case the VerificationToken was found with the provided `where` argument, update it with this data.
*/
update: XOR<VerificationTokenUpdateInput, VerificationTokenUncheckedUpdateInput>
}
/**
* VerificationToken delete
*/
export type VerificationTokenDeleteArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the VerificationToken
*/
select?: VerificationTokenSelect<ExtArgs> | null
/**
* Omit specific fields from the VerificationToken
*/
omit?: VerificationTokenOmit<ExtArgs> | null
/**
* Filter which VerificationToken to delete.
*/
where: VerificationTokenWhereUniqueInput
}
/**
* VerificationToken deleteMany
*/
export type VerificationTokenDeleteManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Filter which VerificationTokens to delete
*/
where?: VerificationTokenWhereInput
/**
* Limit how many VerificationTokens to delete.
*/
limit?: number
}
/**
* VerificationToken without action
*/
export type VerificationTokenDefaultArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
/**
* Select specific fields to fetch from the VerificationToken
*/
select?: VerificationTokenSelect<ExtArgs> | null
/**
* Omit specific fields from the VerificationToken
*/
omit?: VerificationTokenOmit<ExtArgs> | null
}
/**
* Enums
*/
export const TransactionIsolationLevel: {
Serializable: 'Serializable'
};
export type TransactionIsolationLevel = (typeof TransactionIsolationLevel)[keyof typeof TransactionIsolationLevel]
export const StoreScalarFieldEnum: {
id: 'id',
slug: 'slug',
stripeAccountId: 'stripeAccountId',
userId: 'userId',
name: 'name',
website: 'website',
defaultSellingPreferences: 'defaultSellingPreferences',
createdAt: 'createdAt',
updatedAt: 'updatedAt'
};
export type StoreScalarFieldEnum = (typeof StoreScalarFieldEnum)[keyof typeof StoreScalarFieldEnum]
export const CartScalarFieldEnum: {
id: 'id',
storeId: 'storeId',
sessionId: 'sessionId',
userId: 'userId',
createdAt: 'createdAt',
updatedAt: 'updatedAt'
};
export type CartScalarFieldEnum = (typeof CartScalarFieldEnum)[keyof typeof CartScalarFieldEnum]
export const CartItemScalarFieldEnum: {
id: 'id',
cartId: 'cartId',
productId: 'productId',
priceId: 'priceId',
name: 'name',
unitAmount: 'unitAmount',
currency: 'currency',
quantity: 'quantity',
createdAt: 'createdAt',
updatedAt: 'updatedAt'
};
export type CartItemScalarFieldEnum = (typeof CartItemScalarFieldEnum)[keyof typeof CartItemScalarFieldEnum]
export const UserAddressScalarFieldEnum: {
id: 'id',
userId: 'userId',
name: 'name',
street1: 'street1',
city: 'city',
state: 'state',
zip: 'zip',
country: 'country',
phone: 'phone',
createdAt: 'createdAt',
updatedAt: 'updatedAt'
};
export type UserAddressScalarFieldEnum = (typeof UserAddressScalarFieldEnum)[keyof typeof UserAddressScalarFieldEnum]
export const OrderScalarFieldEnum: {
id: 'id',
storeId: 'storeId',
userId: 'userId',
sessionId: 'sessionId',
stripeCheckoutSessionId: 'stripeCheckoutSessionId',
shippingRateId: 'shippingRateId',
shippingRateSnapshot: 'shippingRateSnapshot',
shippingAddress: 'shippingAddress',
items: 'items',
status: 'status',
labelUrl: 'labelUrl',
createdAt: 'createdAt',
updatedAt: 'updatedAt'
};
export type OrderScalarFieldEnum = (typeof OrderScalarFieldEnum)[keyof typeof OrderScalarFieldEnum]
export const ProductCacheScalarFieldEnum: {
id: 'id',
storeId: 'storeId',
stripeProductId: 'stripeProductId',
stripePriceId: 'stripePriceId',
name: 'name',
description: 'description',
unitAmount: 'unitAmount',
currency: 'currency',
active: 'active',
createdAt: 'createdAt',
updatedAt: 'updatedAt'
};
export type ProductCacheScalarFieldEnum = (typeof ProductCacheScalarFieldEnum)[keyof typeof ProductCacheScalarFieldEnum]
export const UserScalarFieldEnum: {
id: 'id',
name: 'name',
email: 'email',
passwordHash: 'passwordHash',
role: 'role',
createdAt: 'createdAt',
updatedAt: 'updatedAt'
};
export type UserScalarFieldEnum = (typeof UserScalarFieldEnum)[keyof typeof UserScalarFieldEnum]
export const SessionScalarFieldEnum: {
id: 'id',
sessionToken: 'sessionToken',
userId: 'userId',
expires: 'expires',
createdAt: 'createdAt',
updatedAt: 'updatedAt'
};
export type SessionScalarFieldEnum = (typeof SessionScalarFieldEnum)[keyof typeof SessionScalarFieldEnum]
export const AccountScalarFieldEnum: {
id: 'id',
userId: 'userId',
type: 'type',
provider: 'provider',
providerAccountId: 'providerAccountId',
refresh_token: 'refresh_token',
access_token: 'access_token',
expires_at: 'expires_at',
token_type: 'token_type',
scope: 'scope',
id_token: 'id_token',
session_state: 'session_state'
};
export type AccountScalarFieldEnum = (typeof AccountScalarFieldEnum)[keyof typeof AccountScalarFieldEnum]
export const VerificationTokenScalarFieldEnum: {
identifier: 'identifier',
token: 'token',
expires: 'expires'
};
export type VerificationTokenScalarFieldEnum = (typeof VerificationTokenScalarFieldEnum)[keyof typeof VerificationTokenScalarFieldEnum]
export const SortOrder: {
asc: 'asc',
desc: 'desc'
};
export type SortOrder = (typeof SortOrder)[keyof typeof SortOrder]
export const NullableJsonNullValueInput: {
DbNull: typeof DbNull,
JsonNull: typeof JsonNull
};
export type NullableJsonNullValueInput = (typeof NullableJsonNullValueInput)[keyof typeof NullableJsonNullValueInput]
export const JsonNullValueInput: {
JsonNull: typeof JsonNull
};
export type JsonNullValueInput = (typeof JsonNullValueInput)[keyof typeof JsonNullValueInput]
export const JsonNullValueFilter: {
DbNull: typeof DbNull,
JsonNull: typeof JsonNull,
AnyNull: typeof AnyNull
};
export type JsonNullValueFilter = (typeof JsonNullValueFilter)[keyof typeof JsonNullValueFilter]
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 'String'
*/
export type StringFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'String'>
/**
* Reference to a field of type 'Json'
*/
export type JsonFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'Json'>
/**
* Reference to a field of type 'QueryMode'
*/
export type EnumQueryModeFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'QueryMode'>
/**
* Reference to a field of type 'DateTime'
*/
export type DateTimeFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'DateTime'>
/**
* Reference to a field of type 'Int'
*/
export type IntFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'Int'>
/**
* Reference to a field of type 'Boolean'
*/
export type BooleanFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'Boolean'>
/**
* Reference to a field of type 'Role'
*/
export type EnumRoleFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'Role'>
/**
* Reference to a field of type 'Float'
*/
export type FloatFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'Float'>
/**
* Deep Input Types
*/
export type StoreWhereInput = {
AND?: StoreWhereInput | StoreWhereInput[]
OR?: StoreWhereInput[]
NOT?: StoreWhereInput | StoreWhereInput[]
id?: StringFilter<"Store"> | string
slug?: StringFilter<"Store"> | string
stripeAccountId?: StringNullableFilter<"Store"> | string | null
userId?: StringFilter<"Store"> | string
name?: StringNullableFilter<"Store"> | string | null
website?: StringNullableFilter<"Store"> | string | null
defaultSellingPreferences?: JsonNullableFilter<"Store">
createdAt?: DateTimeFilter<"Store"> | Date | string
updatedAt?: DateTimeFilter<"Store"> | Date | string
user?: XOR<UserScalarRelationFilter, UserWhereInput>
carts?: CartListRelationFilter
products?: ProductCacheListRelationFilter
}
export type StoreOrderByWithRelationInput = {
id?: SortOrder
slug?: SortOrder
stripeAccountId?: SortOrderInput | SortOrder
userId?: SortOrder
name?: SortOrderInput | SortOrder
website?: SortOrderInput | SortOrder
defaultSellingPreferences?: SortOrderInput | SortOrder
createdAt?: SortOrder
updatedAt?: SortOrder
user?: UserOrderByWithRelationInput
carts?: CartOrderByRelationAggregateInput
products?: ProductCacheOrderByRelationAggregateInput
}
export type StoreWhereUniqueInput = Prisma.AtLeast<{
id?: string
slug?: string
stripeAccountId?: string
userId?: string
AND?: StoreWhereInput | StoreWhereInput[]
OR?: StoreWhereInput[]
NOT?: StoreWhereInput | StoreWhereInput[]
name?: StringNullableFilter<"Store"> | string | null
website?: StringNullableFilter<"Store"> | string | null
defaultSellingPreferences?: JsonNullableFilter<"Store">
createdAt?: DateTimeFilter<"Store"> | Date | string
updatedAt?: DateTimeFilter<"Store"> | Date | string
user?: XOR<UserScalarRelationFilter, UserWhereInput>
carts?: CartListRelationFilter
products?: ProductCacheListRelationFilter
}, "id" | "slug" | "stripeAccountId" | "userId">
export type StoreOrderByWithAggregationInput = {
id?: SortOrder
slug?: SortOrder
stripeAccountId?: SortOrderInput | SortOrder
userId?: SortOrder
name?: SortOrderInput | SortOrder
website?: SortOrderInput | SortOrder
defaultSellingPreferences?: SortOrderInput | SortOrder
createdAt?: SortOrder
updatedAt?: SortOrder
_count?: StoreCountOrderByAggregateInput
_max?: StoreMaxOrderByAggregateInput
_min?: StoreMinOrderByAggregateInput
}
export type StoreScalarWhereWithAggregatesInput = {
AND?: StoreScalarWhereWithAggregatesInput | StoreScalarWhereWithAggregatesInput[]
OR?: StoreScalarWhereWithAggregatesInput[]
NOT?: StoreScalarWhereWithAggregatesInput | StoreScalarWhereWithAggregatesInput[]
id?: StringWithAggregatesFilter<"Store"> | string
slug?: StringWithAggregatesFilter<"Store"> | string
stripeAccountId?: StringNullableWithAggregatesFilter<"Store"> | string | null
userId?: StringWithAggregatesFilter<"Store"> | string
name?: StringNullableWithAggregatesFilter<"Store"> | string | null
website?: StringNullableWithAggregatesFilter<"Store"> | string | null
defaultSellingPreferences?: JsonNullableWithAggregatesFilter<"Store">
createdAt?: DateTimeWithAggregatesFilter<"Store"> | Date | string
updatedAt?: DateTimeWithAggregatesFilter<"Store"> | Date | string
}
export type CartWhereInput = {
AND?: CartWhereInput | CartWhereInput[]
OR?: CartWhereInput[]
NOT?: CartWhereInput | CartWhereInput[]
id?: StringFilter<"Cart"> | string
storeId?: StringFilter<"Cart"> | string
sessionId?: StringFilter<"Cart"> | string
userId?: StringNullableFilter<"Cart"> | string | null
createdAt?: DateTimeFilter<"Cart"> | Date | string
updatedAt?: DateTimeFilter<"Cart"> | Date | string
store?: XOR<StoreScalarRelationFilter, StoreWhereInput>
user?: XOR<UserNullableScalarRelationFilter, UserWhereInput> | null
items?: CartItemListRelationFilter
}
export type CartOrderByWithRelationInput = {
id?: SortOrder
storeId?: SortOrder
sessionId?: SortOrder
userId?: SortOrderInput | SortOrder
createdAt?: SortOrder
updatedAt?: SortOrder
store?: StoreOrderByWithRelationInput
user?: UserOrderByWithRelationInput
items?: CartItemOrderByRelationAggregateInput
}
export type CartWhereUniqueInput = Prisma.AtLeast<{
id?: string
storeId_sessionId?: CartStoreIdSessionIdCompoundUniqueInput
storeId_userId?: CartStoreIdUserIdCompoundUniqueInput
AND?: CartWhereInput | CartWhereInput[]
OR?: CartWhereInput[]
NOT?: CartWhereInput | CartWhereInput[]
storeId?: StringFilter<"Cart"> | string
sessionId?: StringFilter<"Cart"> | string
userId?: StringNullableFilter<"Cart"> | string | null
createdAt?: DateTimeFilter<"Cart"> | Date | string
updatedAt?: DateTimeFilter<"Cart"> | Date | string
store?: XOR<StoreScalarRelationFilter, StoreWhereInput>
user?: XOR<UserNullableScalarRelationFilter, UserWhereInput> | null
items?: CartItemListRelationFilter
}, "id" | "storeId_sessionId" | "storeId_userId">
export type CartOrderByWithAggregationInput = {
id?: SortOrder
storeId?: SortOrder
sessionId?: SortOrder
userId?: SortOrderInput | SortOrder
createdAt?: SortOrder
updatedAt?: SortOrder
_count?: CartCountOrderByAggregateInput
_max?: CartMaxOrderByAggregateInput
_min?: CartMinOrderByAggregateInput
}
export type CartScalarWhereWithAggregatesInput = {
AND?: CartScalarWhereWithAggregatesInput | CartScalarWhereWithAggregatesInput[]
OR?: CartScalarWhereWithAggregatesInput[]
NOT?: CartScalarWhereWithAggregatesInput | CartScalarWhereWithAggregatesInput[]
id?: StringWithAggregatesFilter<"Cart"> | string
storeId?: StringWithAggregatesFilter<"Cart"> | string
sessionId?: StringWithAggregatesFilter<"Cart"> | string
userId?: StringNullableWithAggregatesFilter<"Cart"> | string | null
createdAt?: DateTimeWithAggregatesFilter<"Cart"> | Date | string
updatedAt?: DateTimeWithAggregatesFilter<"Cart"> | Date | string
}
export type CartItemWhereInput = {
AND?: CartItemWhereInput | CartItemWhereInput[]
OR?: CartItemWhereInput[]
NOT?: CartItemWhereInput | CartItemWhereInput[]
id?: StringFilter<"CartItem"> | string
cartId?: StringFilter<"CartItem"> | string
productId?: StringFilter<"CartItem"> | string
priceId?: StringFilter<"CartItem"> | string
name?: StringFilter<"CartItem"> | string
unitAmount?: IntFilter<"CartItem"> | number
currency?: StringFilter<"CartItem"> | string
quantity?: IntFilter<"CartItem"> | number
createdAt?: DateTimeFilter<"CartItem"> | Date | string
updatedAt?: DateTimeFilter<"CartItem"> | Date | string
cart?: XOR<CartScalarRelationFilter, CartWhereInput>
}
export type CartItemOrderByWithRelationInput = {
id?: SortOrder
cartId?: SortOrder
productId?: SortOrder
priceId?: SortOrder
name?: SortOrder
unitAmount?: SortOrder
currency?: SortOrder
quantity?: SortOrder
createdAt?: SortOrder
updatedAt?: SortOrder
cart?: CartOrderByWithRelationInput
}
export type CartItemWhereUniqueInput = Prisma.AtLeast<{
id?: string
AND?: CartItemWhereInput | CartItemWhereInput[]
OR?: CartItemWhereInput[]
NOT?: CartItemWhereInput | CartItemWhereInput[]
cartId?: StringFilter<"CartItem"> | string
productId?: StringFilter<"CartItem"> | string
priceId?: StringFilter<"CartItem"> | string
name?: StringFilter<"CartItem"> | string
unitAmount?: IntFilter<"CartItem"> | number
currency?: StringFilter<"CartItem"> | string
quantity?: IntFilter<"CartItem"> | number
createdAt?: DateTimeFilter<"CartItem"> | Date | string
updatedAt?: DateTimeFilter<"CartItem"> | Date | string
cart?: XOR<CartScalarRelationFilter, CartWhereInput>
}, "id">
export type CartItemOrderByWithAggregationInput = {
id?: SortOrder
cartId?: SortOrder
productId?: SortOrder
priceId?: SortOrder
name?: SortOrder
unitAmount?: SortOrder
currency?: SortOrder
quantity?: SortOrder
createdAt?: SortOrder
updatedAt?: SortOrder
_count?: CartItemCountOrderByAggregateInput
_avg?: CartItemAvgOrderByAggregateInput
_max?: CartItemMaxOrderByAggregateInput
_min?: CartItemMinOrderByAggregateInput
_sum?: CartItemSumOrderByAggregateInput
}
export type CartItemScalarWhereWithAggregatesInput = {
AND?: CartItemScalarWhereWithAggregatesInput | CartItemScalarWhereWithAggregatesInput[]
OR?: CartItemScalarWhereWithAggregatesInput[]
NOT?: CartItemScalarWhereWithAggregatesInput | CartItemScalarWhereWithAggregatesInput[]
id?: StringWithAggregatesFilter<"CartItem"> | string
cartId?: StringWithAggregatesFilter<"CartItem"> | string
productId?: StringWithAggregatesFilter<"CartItem"> | string
priceId?: StringWithAggregatesFilter<"CartItem"> | string
name?: StringWithAggregatesFilter<"CartItem"> | string
unitAmount?: IntWithAggregatesFilter<"CartItem"> | number
currency?: StringWithAggregatesFilter<"CartItem"> | string
quantity?: IntWithAggregatesFilter<"CartItem"> | number
createdAt?: DateTimeWithAggregatesFilter<"CartItem"> | Date | string
updatedAt?: DateTimeWithAggregatesFilter<"CartItem"> | Date | string
}
export type UserAddressWhereInput = {
AND?: UserAddressWhereInput | UserAddressWhereInput[]
OR?: UserAddressWhereInput[]
NOT?: UserAddressWhereInput | UserAddressWhereInput[]
id?: StringFilter<"UserAddress"> | string
userId?: StringFilter<"UserAddress"> | string
name?: StringFilter<"UserAddress"> | string
street1?: StringFilter<"UserAddress"> | string
city?: StringFilter<"UserAddress"> | string
state?: StringFilter<"UserAddress"> | string
zip?: StringFilter<"UserAddress"> | string
country?: StringFilter<"UserAddress"> | string
phone?: StringNullableFilter<"UserAddress"> | string | null
createdAt?: DateTimeFilter<"UserAddress"> | Date | string
updatedAt?: DateTimeFilter<"UserAddress"> | Date | string
user?: XOR<UserScalarRelationFilter, UserWhereInput>
}
export type UserAddressOrderByWithRelationInput = {
id?: SortOrder
userId?: SortOrder
name?: SortOrder
street1?: SortOrder
city?: SortOrder
state?: SortOrder
zip?: SortOrder
country?: SortOrder
phone?: SortOrderInput | SortOrder
createdAt?: SortOrder
updatedAt?: SortOrder
user?: UserOrderByWithRelationInput
}
export type UserAddressWhereUniqueInput = Prisma.AtLeast<{
id?: string
userId?: string
AND?: UserAddressWhereInput | UserAddressWhereInput[]
OR?: UserAddressWhereInput[]
NOT?: UserAddressWhereInput | UserAddressWhereInput[]
name?: StringFilter<"UserAddress"> | string
street1?: StringFilter<"UserAddress"> | string
city?: StringFilter<"UserAddress"> | string
state?: StringFilter<"UserAddress"> | string
zip?: StringFilter<"UserAddress"> | string
country?: StringFilter<"UserAddress"> | string
phone?: StringNullableFilter<"UserAddress"> | string | null
createdAt?: DateTimeFilter<"UserAddress"> | Date | string
updatedAt?: DateTimeFilter<"UserAddress"> | Date | string
user?: XOR<UserScalarRelationFilter, UserWhereInput>
}, "id" | "userId">
export type UserAddressOrderByWithAggregationInput = {
id?: SortOrder
userId?: SortOrder
name?: SortOrder
street1?: SortOrder
city?: SortOrder
state?: SortOrder
zip?: SortOrder
country?: SortOrder
phone?: SortOrderInput | SortOrder
createdAt?: SortOrder
updatedAt?: SortOrder
_count?: UserAddressCountOrderByAggregateInput
_max?: UserAddressMaxOrderByAggregateInput
_min?: UserAddressMinOrderByAggregateInput
}
export type UserAddressScalarWhereWithAggregatesInput = {
AND?: UserAddressScalarWhereWithAggregatesInput | UserAddressScalarWhereWithAggregatesInput[]
OR?: UserAddressScalarWhereWithAggregatesInput[]
NOT?: UserAddressScalarWhereWithAggregatesInput | UserAddressScalarWhereWithAggregatesInput[]
id?: StringWithAggregatesFilter<"UserAddress"> | string
userId?: StringWithAggregatesFilter<"UserAddress"> | string
name?: StringWithAggregatesFilter<"UserAddress"> | string
street1?: StringWithAggregatesFilter<"UserAddress"> | string
city?: StringWithAggregatesFilter<"UserAddress"> | string
state?: StringWithAggregatesFilter<"UserAddress"> | string
zip?: StringWithAggregatesFilter<"UserAddress"> | string
country?: StringWithAggregatesFilter<"UserAddress"> | string
phone?: StringNullableWithAggregatesFilter<"UserAddress"> | string | null
createdAt?: DateTimeWithAggregatesFilter<"UserAddress"> | Date | string
updatedAt?: DateTimeWithAggregatesFilter<"UserAddress"> | Date | string
}
export type OrderWhereInput = {
AND?: OrderWhereInput | OrderWhereInput[]
OR?: OrderWhereInput[]
NOT?: OrderWhereInput | OrderWhereInput[]
id?: StringFilter<"Order"> | string
storeId?: StringFilter<"Order"> | string
userId?: StringNullableFilter<"Order"> | string | null
sessionId?: StringNullableFilter<"Order"> | string | null
stripeCheckoutSessionId?: StringFilter<"Order"> | string
shippingRateId?: StringNullableFilter<"Order"> | string | null
shippingRateSnapshot?: JsonNullableFilter<"Order">
shippingAddress?: JsonNullableFilter<"Order">
items?: JsonFilter<"Order">
status?: StringFilter<"Order"> | string
labelUrl?: StringNullableFilter<"Order"> | string | null
createdAt?: DateTimeFilter<"Order"> | Date | string
updatedAt?: DateTimeFilter<"Order"> | Date | string
}
export type OrderOrderByWithRelationInput = {
id?: SortOrder
storeId?: SortOrder
userId?: SortOrderInput | SortOrder
sessionId?: SortOrderInput | SortOrder
stripeCheckoutSessionId?: SortOrder
shippingRateId?: SortOrderInput | SortOrder
shippingRateSnapshot?: SortOrderInput | SortOrder
shippingAddress?: SortOrderInput | SortOrder
items?: SortOrder
status?: SortOrder
labelUrl?: SortOrderInput | SortOrder
createdAt?: SortOrder
updatedAt?: SortOrder
}
export type OrderWhereUniqueInput = Prisma.AtLeast<{
id?: string
stripeCheckoutSessionId?: string
AND?: OrderWhereInput | OrderWhereInput[]
OR?: OrderWhereInput[]
NOT?: OrderWhereInput | OrderWhereInput[]
storeId?: StringFilter<"Order"> | string
userId?: StringNullableFilter<"Order"> | string | null
sessionId?: StringNullableFilter<"Order"> | string | null
shippingRateId?: StringNullableFilter<"Order"> | string | null
shippingRateSnapshot?: JsonNullableFilter<"Order">
shippingAddress?: JsonNullableFilter<"Order">
items?: JsonFilter<"Order">
status?: StringFilter<"Order"> | string
labelUrl?: StringNullableFilter<"Order"> | string | null
createdAt?: DateTimeFilter<"Order"> | Date | string
updatedAt?: DateTimeFilter<"Order"> | Date | string
}, "id" | "stripeCheckoutSessionId">
export type OrderOrderByWithAggregationInput = {
id?: SortOrder
storeId?: SortOrder
userId?: SortOrderInput | SortOrder
sessionId?: SortOrderInput | SortOrder
stripeCheckoutSessionId?: SortOrder
shippingRateId?: SortOrderInput | SortOrder
shippingRateSnapshot?: SortOrderInput | SortOrder
shippingAddress?: SortOrderInput | SortOrder
items?: SortOrder
status?: SortOrder
labelUrl?: SortOrderInput | SortOrder
createdAt?: SortOrder
updatedAt?: SortOrder
_count?: OrderCountOrderByAggregateInput
_max?: OrderMaxOrderByAggregateInput
_min?: OrderMinOrderByAggregateInput
}
export type OrderScalarWhereWithAggregatesInput = {
AND?: OrderScalarWhereWithAggregatesInput | OrderScalarWhereWithAggregatesInput[]
OR?: OrderScalarWhereWithAggregatesInput[]
NOT?: OrderScalarWhereWithAggregatesInput | OrderScalarWhereWithAggregatesInput[]
id?: StringWithAggregatesFilter<"Order"> | string
storeId?: StringWithAggregatesFilter<"Order"> | string
userId?: StringNullableWithAggregatesFilter<"Order"> | string | null
sessionId?: StringNullableWithAggregatesFilter<"Order"> | string | null
stripeCheckoutSessionId?: StringWithAggregatesFilter<"Order"> | string
shippingRateId?: StringNullableWithAggregatesFilter<"Order"> | string | null
shippingRateSnapshot?: JsonNullableWithAggregatesFilter<"Order">
shippingAddress?: JsonNullableWithAggregatesFilter<"Order">
items?: JsonWithAggregatesFilter<"Order">
status?: StringWithAggregatesFilter<"Order"> | string
labelUrl?: StringNullableWithAggregatesFilter<"Order"> | string | null
createdAt?: DateTimeWithAggregatesFilter<"Order"> | Date | string
updatedAt?: DateTimeWithAggregatesFilter<"Order"> | Date | string
}
export type ProductCacheWhereInput = {
AND?: ProductCacheWhereInput | ProductCacheWhereInput[]
OR?: ProductCacheWhereInput[]
NOT?: ProductCacheWhereInput | ProductCacheWhereInput[]
id?: StringFilter<"ProductCache"> | string
storeId?: StringFilter<"ProductCache"> | string
stripeProductId?: StringFilter<"ProductCache"> | string
stripePriceId?: StringFilter<"ProductCache"> | string
name?: StringFilter<"ProductCache"> | string
description?: StringNullableFilter<"ProductCache"> | string | null
unitAmount?: IntFilter<"ProductCache"> | number
currency?: StringFilter<"ProductCache"> | string
active?: BoolFilter<"ProductCache"> | boolean
createdAt?: DateTimeFilter<"ProductCache"> | Date | string
updatedAt?: DateTimeFilter<"ProductCache"> | Date | string
store?: XOR<StoreScalarRelationFilter, StoreWhereInput>
}
export type ProductCacheOrderByWithRelationInput = {
id?: SortOrder
storeId?: SortOrder
stripeProductId?: SortOrder
stripePriceId?: SortOrder
name?: SortOrder
description?: SortOrderInput | SortOrder
unitAmount?: SortOrder
currency?: SortOrder
active?: SortOrder
createdAt?: SortOrder
updatedAt?: SortOrder
store?: StoreOrderByWithRelationInput
}
export type ProductCacheWhereUniqueInput = Prisma.AtLeast<{
id?: string
storeId_stripeProductId?: ProductCacheStoreIdStripeProductIdCompoundUniqueInput
AND?: ProductCacheWhereInput | ProductCacheWhereInput[]
OR?: ProductCacheWhereInput[]
NOT?: ProductCacheWhereInput | ProductCacheWhereInput[]
storeId?: StringFilter<"ProductCache"> | string
stripeProductId?: StringFilter<"ProductCache"> | string
stripePriceId?: StringFilter<"ProductCache"> | string
name?: StringFilter<"ProductCache"> | string
description?: StringNullableFilter<"ProductCache"> | string | null
unitAmount?: IntFilter<"ProductCache"> | number
currency?: StringFilter<"ProductCache"> | string
active?: BoolFilter<"ProductCache"> | boolean
createdAt?: DateTimeFilter<"ProductCache"> | Date | string
updatedAt?: DateTimeFilter<"ProductCache"> | Date | string
store?: XOR<StoreScalarRelationFilter, StoreWhereInput>
}, "id" | "storeId_stripeProductId">
export type ProductCacheOrderByWithAggregationInput = {
id?: SortOrder
storeId?: SortOrder
stripeProductId?: SortOrder
stripePriceId?: SortOrder
name?: SortOrder
description?: SortOrderInput | SortOrder
unitAmount?: SortOrder
currency?: SortOrder
active?: SortOrder
createdAt?: SortOrder
updatedAt?: SortOrder
_count?: ProductCacheCountOrderByAggregateInput
_avg?: ProductCacheAvgOrderByAggregateInput
_max?: ProductCacheMaxOrderByAggregateInput
_min?: ProductCacheMinOrderByAggregateInput
_sum?: ProductCacheSumOrderByAggregateInput
}
export type ProductCacheScalarWhereWithAggregatesInput = {
AND?: ProductCacheScalarWhereWithAggregatesInput | ProductCacheScalarWhereWithAggregatesInput[]
OR?: ProductCacheScalarWhereWithAggregatesInput[]
NOT?: ProductCacheScalarWhereWithAggregatesInput | ProductCacheScalarWhereWithAggregatesInput[]
id?: StringWithAggregatesFilter<"ProductCache"> | string
storeId?: StringWithAggregatesFilter<"ProductCache"> | string
stripeProductId?: StringWithAggregatesFilter<"ProductCache"> | string
stripePriceId?: StringWithAggregatesFilter<"ProductCache"> | string
name?: StringWithAggregatesFilter<"ProductCache"> | string
description?: StringNullableWithAggregatesFilter<"ProductCache"> | string | null
unitAmount?: IntWithAggregatesFilter<"ProductCache"> | number
currency?: StringWithAggregatesFilter<"ProductCache"> | string
active?: BoolWithAggregatesFilter<"ProductCache"> | boolean
createdAt?: DateTimeWithAggregatesFilter<"ProductCache"> | Date | string
updatedAt?: DateTimeWithAggregatesFilter<"ProductCache"> | Date | string
}
export type UserWhereInput = {
AND?: UserWhereInput | UserWhereInput[]
OR?: UserWhereInput[]
NOT?: UserWhereInput | UserWhereInput[]
id?: StringFilter<"User"> | string
name?: StringFilter<"User"> | string
email?: StringFilter<"User"> | string
passwordHash?: StringFilter<"User"> | string
role?: EnumRoleFilter<"User"> | $Enums.Role
createdAt?: DateTimeFilter<"User"> | Date | string
updatedAt?: DateTimeFilter<"User"> | Date | string
store?: XOR<StoreNullableScalarRelationFilter, StoreWhereInput> | null
carts?: CartListRelationFilter
address?: XOR<UserAddressNullableScalarRelationFilter, UserAddressWhereInput> | null
accounts?: AccountListRelationFilter
sessions?: SessionListRelationFilter
}
export type UserOrderByWithRelationInput = {
id?: SortOrder
name?: SortOrder
email?: SortOrder
passwordHash?: SortOrder
role?: SortOrder
createdAt?: SortOrder
updatedAt?: SortOrder
store?: StoreOrderByWithRelationInput
carts?: CartOrderByRelationAggregateInput
address?: UserAddressOrderByWithRelationInput
accounts?: AccountOrderByRelationAggregateInput
sessions?: SessionOrderByRelationAggregateInput
}
export type UserWhereUniqueInput = Prisma.AtLeast<{
id?: string
email?: string
AND?: UserWhereInput | UserWhereInput[]
OR?: UserWhereInput[]
NOT?: UserWhereInput | UserWhereInput[]
name?: StringFilter<"User"> | string
passwordHash?: StringFilter<"User"> | string
role?: EnumRoleFilter<"User"> | $Enums.Role
createdAt?: DateTimeFilter<"User"> | Date | string
updatedAt?: DateTimeFilter<"User"> | Date | string
store?: XOR<StoreNullableScalarRelationFilter, StoreWhereInput> | null
carts?: CartListRelationFilter
address?: XOR<UserAddressNullableScalarRelationFilter, UserAddressWhereInput> | null
accounts?: AccountListRelationFilter
sessions?: SessionListRelationFilter
}, "id" | "email">
export type UserOrderByWithAggregationInput = {
id?: SortOrder
name?: SortOrder
email?: SortOrder
passwordHash?: SortOrder
role?: SortOrder
createdAt?: SortOrder
updatedAt?: SortOrder
_count?: UserCountOrderByAggregateInput
_max?: UserMaxOrderByAggregateInput
_min?: UserMinOrderByAggregateInput
}
export type UserScalarWhereWithAggregatesInput = {
AND?: UserScalarWhereWithAggregatesInput | UserScalarWhereWithAggregatesInput[]
OR?: UserScalarWhereWithAggregatesInput[]
NOT?: UserScalarWhereWithAggregatesInput | UserScalarWhereWithAggregatesInput[]
id?: StringWithAggregatesFilter<"User"> | string
name?: StringWithAggregatesFilter<"User"> | string
email?: StringWithAggregatesFilter<"User"> | string
passwordHash?: StringWithAggregatesFilter<"User"> | string
role?: EnumRoleWithAggregatesFilter<"User"> | $Enums.Role
createdAt?: DateTimeWithAggregatesFilter<"User"> | Date | string
updatedAt?: DateTimeWithAggregatesFilter<"User"> | Date | string
}
export type SessionWhereInput = {
AND?: SessionWhereInput | SessionWhereInput[]
OR?: SessionWhereInput[]
NOT?: SessionWhereInput | SessionWhereInput[]
id?: StringFilter<"Session"> | string
sessionToken?: StringFilter<"Session"> | string
userId?: StringFilter<"Session"> | string
expires?: DateTimeFilter<"Session"> | Date | string
createdAt?: DateTimeFilter<"Session"> | Date | string
updatedAt?: DateTimeFilter<"Session"> | Date | string
user?: XOR<UserScalarRelationFilter, UserWhereInput>
}
export type SessionOrderByWithRelationInput = {
id?: SortOrder
sessionToken?: SortOrder
userId?: SortOrder
expires?: SortOrder
createdAt?: SortOrder
updatedAt?: SortOrder
user?: UserOrderByWithRelationInput
}
export type SessionWhereUniqueInput = Prisma.AtLeast<{
id?: string
sessionToken?: string
AND?: SessionWhereInput | SessionWhereInput[]
OR?: SessionWhereInput[]
NOT?: SessionWhereInput | SessionWhereInput[]
userId?: StringFilter<"Session"> | string
expires?: DateTimeFilter<"Session"> | Date | string
createdAt?: DateTimeFilter<"Session"> | Date | string
updatedAt?: DateTimeFilter<"Session"> | Date | string
user?: XOR<UserScalarRelationFilter, UserWhereInput>
}, "id" | "sessionToken">
export type SessionOrderByWithAggregationInput = {
id?: SortOrder
sessionToken?: SortOrder
userId?: SortOrder
expires?: SortOrder
createdAt?: SortOrder
updatedAt?: SortOrder
_count?: SessionCountOrderByAggregateInput
_max?: SessionMaxOrderByAggregateInput
_min?: SessionMinOrderByAggregateInput
}
export type SessionScalarWhereWithAggregatesInput = {
AND?: SessionScalarWhereWithAggregatesInput | SessionScalarWhereWithAggregatesInput[]
OR?: SessionScalarWhereWithAggregatesInput[]
NOT?: SessionScalarWhereWithAggregatesInput | SessionScalarWhereWithAggregatesInput[]
id?: StringWithAggregatesFilter<"Session"> | string
sessionToken?: StringWithAggregatesFilter<"Session"> | string
userId?: StringWithAggregatesFilter<"Session"> | string
expires?: DateTimeWithAggregatesFilter<"Session"> | Date | string
createdAt?: DateTimeWithAggregatesFilter<"Session"> | Date | string
updatedAt?: DateTimeWithAggregatesFilter<"Session"> | Date | string
}
export type AccountWhereInput = {
AND?: AccountWhereInput | AccountWhereInput[]
OR?: AccountWhereInput[]
NOT?: AccountWhereInput | AccountWhereInput[]
id?: StringFilter<"Account"> | string
userId?: StringFilter<"Account"> | string
type?: StringFilter<"Account"> | string
provider?: StringFilter<"Account"> | string
providerAccountId?: StringFilter<"Account"> | string
refresh_token?: StringNullableFilter<"Account"> | string | null
access_token?: StringNullableFilter<"Account"> | string | null
expires_at?: IntNullableFilter<"Account"> | number | null
token_type?: StringNullableFilter<"Account"> | string | null
scope?: StringNullableFilter<"Account"> | string | null
id_token?: StringNullableFilter<"Account"> | string | null
session_state?: StringNullableFilter<"Account"> | string | null
user?: XOR<UserScalarRelationFilter, UserWhereInput>
}
export type AccountOrderByWithRelationInput = {
id?: SortOrder
userId?: SortOrder
type?: SortOrder
provider?: SortOrder
providerAccountId?: SortOrder
refresh_token?: SortOrderInput | SortOrder
access_token?: SortOrderInput | SortOrder
expires_at?: SortOrderInput | SortOrder
token_type?: SortOrderInput | SortOrder
scope?: SortOrderInput | SortOrder
id_token?: SortOrderInput | SortOrder
session_state?: SortOrderInput | SortOrder
user?: UserOrderByWithRelationInput
}
export type AccountWhereUniqueInput = Prisma.AtLeast<{
id?: string
provider_providerAccountId?: AccountProviderProviderAccountIdCompoundUniqueInput
AND?: AccountWhereInput | AccountWhereInput[]
OR?: AccountWhereInput[]
NOT?: AccountWhereInput | AccountWhereInput[]
userId?: StringFilter<"Account"> | string
type?: StringFilter<"Account"> | string
provider?: StringFilter<"Account"> | string
providerAccountId?: StringFilter<"Account"> | string
refresh_token?: StringNullableFilter<"Account"> | string | null
access_token?: StringNullableFilter<"Account"> | string | null
expires_at?: IntNullableFilter<"Account"> | number | null
token_type?: StringNullableFilter<"Account"> | string | null
scope?: StringNullableFilter<"Account"> | string | null
id_token?: StringNullableFilter<"Account"> | string | null
session_state?: StringNullableFilter<"Account"> | string | null
user?: XOR<UserScalarRelationFilter, UserWhereInput>
}, "id" | "provider_providerAccountId">
export type AccountOrderByWithAggregationInput = {
id?: SortOrder
userId?: SortOrder
type?: SortOrder
provider?: SortOrder
providerAccountId?: SortOrder
refresh_token?: SortOrderInput | SortOrder
access_token?: SortOrderInput | SortOrder
expires_at?: SortOrderInput | SortOrder
token_type?: SortOrderInput | SortOrder
scope?: SortOrderInput | SortOrder
id_token?: SortOrderInput | SortOrder
session_state?: SortOrderInput | SortOrder
_count?: AccountCountOrderByAggregateInput
_avg?: AccountAvgOrderByAggregateInput
_max?: AccountMaxOrderByAggregateInput
_min?: AccountMinOrderByAggregateInput
_sum?: AccountSumOrderByAggregateInput
}
export type AccountScalarWhereWithAggregatesInput = {
AND?: AccountScalarWhereWithAggregatesInput | AccountScalarWhereWithAggregatesInput[]
OR?: AccountScalarWhereWithAggregatesInput[]
NOT?: AccountScalarWhereWithAggregatesInput | AccountScalarWhereWithAggregatesInput[]
id?: StringWithAggregatesFilter<"Account"> | string
userId?: StringWithAggregatesFilter<"Account"> | string
type?: StringWithAggregatesFilter<"Account"> | string
provider?: StringWithAggregatesFilter<"Account"> | string
providerAccountId?: StringWithAggregatesFilter<"Account"> | string
refresh_token?: StringNullableWithAggregatesFilter<"Account"> | string | null
access_token?: StringNullableWithAggregatesFilter<"Account"> | string | null
expires_at?: IntNullableWithAggregatesFilter<"Account"> | number | null
token_type?: StringNullableWithAggregatesFilter<"Account"> | string | null
scope?: StringNullableWithAggregatesFilter<"Account"> | string | null
id_token?: StringNullableWithAggregatesFilter<"Account"> | string | null
session_state?: StringNullableWithAggregatesFilter<"Account"> | string | null
}
export type VerificationTokenWhereInput = {
AND?: VerificationTokenWhereInput | VerificationTokenWhereInput[]
OR?: VerificationTokenWhereInput[]
NOT?: VerificationTokenWhereInput | VerificationTokenWhereInput[]
identifier?: StringFilter<"VerificationToken"> | string
token?: StringFilter<"VerificationToken"> | string
expires?: DateTimeFilter<"VerificationToken"> | Date | string
}
export type VerificationTokenOrderByWithRelationInput = {
identifier?: SortOrder
token?: SortOrder
expires?: SortOrder
}
export type VerificationTokenWhereUniqueInput = Prisma.AtLeast<{
token?: string
identifier_token?: VerificationTokenIdentifierTokenCompoundUniqueInput
AND?: VerificationTokenWhereInput | VerificationTokenWhereInput[]
OR?: VerificationTokenWhereInput[]
NOT?: VerificationTokenWhereInput | VerificationTokenWhereInput[]
identifier?: StringFilter<"VerificationToken"> | string
expires?: DateTimeFilter<"VerificationToken"> | Date | string
}, "token" | "identifier_token">
export type VerificationTokenOrderByWithAggregationInput = {
identifier?: SortOrder
token?: SortOrder
expires?: SortOrder
_count?: VerificationTokenCountOrderByAggregateInput
_max?: VerificationTokenMaxOrderByAggregateInput
_min?: VerificationTokenMinOrderByAggregateInput
}
export type VerificationTokenScalarWhereWithAggregatesInput = {
AND?: VerificationTokenScalarWhereWithAggregatesInput | VerificationTokenScalarWhereWithAggregatesInput[]
OR?: VerificationTokenScalarWhereWithAggregatesInput[]
NOT?: VerificationTokenScalarWhereWithAggregatesInput | VerificationTokenScalarWhereWithAggregatesInput[]
identifier?: StringWithAggregatesFilter<"VerificationToken"> | string
token?: StringWithAggregatesFilter<"VerificationToken"> | string
expires?: DateTimeWithAggregatesFilter<"VerificationToken"> | Date | string
}
export type StoreCreateInput = {
id?: string
slug: string
stripeAccountId?: string | null
name?: string | null
website?: string | null
defaultSellingPreferences?: NullableJsonNullValueInput | InputJsonValue
createdAt?: Date | string
updatedAt?: Date | string
user: UserCreateNestedOneWithoutStoreInput
carts?: CartCreateNestedManyWithoutStoreInput
products?: ProductCacheCreateNestedManyWithoutStoreInput
}
export type StoreUncheckedCreateInput = {
id?: string
slug: string
stripeAccountId?: string | null
userId: string
name?: string | null
website?: string | null
defaultSellingPreferences?: NullableJsonNullValueInput | InputJsonValue
createdAt?: Date | string
updatedAt?: Date | string
carts?: CartUncheckedCreateNestedManyWithoutStoreInput
products?: ProductCacheUncheckedCreateNestedManyWithoutStoreInput
}
export type StoreUpdateInput = {
id?: StringFieldUpdateOperationsInput | string
slug?: StringFieldUpdateOperationsInput | string
stripeAccountId?: NullableStringFieldUpdateOperationsInput | string | null
name?: NullableStringFieldUpdateOperationsInput | string | null
website?: NullableStringFieldUpdateOperationsInput | string | null
defaultSellingPreferences?: NullableJsonNullValueInput | InputJsonValue
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
user?: UserUpdateOneRequiredWithoutStoreNestedInput
carts?: CartUpdateManyWithoutStoreNestedInput
products?: ProductCacheUpdateManyWithoutStoreNestedInput
}
export type StoreUncheckedUpdateInput = {
id?: StringFieldUpdateOperationsInput | string
slug?: StringFieldUpdateOperationsInput | string
stripeAccountId?: NullableStringFieldUpdateOperationsInput | string | null
userId?: StringFieldUpdateOperationsInput | string
name?: NullableStringFieldUpdateOperationsInput | string | null
website?: NullableStringFieldUpdateOperationsInput | string | null
defaultSellingPreferences?: NullableJsonNullValueInput | InputJsonValue
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
carts?: CartUncheckedUpdateManyWithoutStoreNestedInput
products?: ProductCacheUncheckedUpdateManyWithoutStoreNestedInput
}
export type StoreCreateManyInput = {
id?: string
slug: string
stripeAccountId?: string | null
userId: string
name?: string | null
website?: string | null
defaultSellingPreferences?: NullableJsonNullValueInput | InputJsonValue
createdAt?: Date | string
updatedAt?: Date | string
}
export type StoreUpdateManyMutationInput = {
id?: StringFieldUpdateOperationsInput | string
slug?: StringFieldUpdateOperationsInput | string
stripeAccountId?: NullableStringFieldUpdateOperationsInput | string | null
name?: NullableStringFieldUpdateOperationsInput | string | null
website?: NullableStringFieldUpdateOperationsInput | string | null
defaultSellingPreferences?: NullableJsonNullValueInput | InputJsonValue
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type StoreUncheckedUpdateManyInput = {
id?: StringFieldUpdateOperationsInput | string
slug?: StringFieldUpdateOperationsInput | string
stripeAccountId?: NullableStringFieldUpdateOperationsInput | string | null
userId?: StringFieldUpdateOperationsInput | string
name?: NullableStringFieldUpdateOperationsInput | string | null
website?: NullableStringFieldUpdateOperationsInput | string | null
defaultSellingPreferences?: NullableJsonNullValueInput | InputJsonValue
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type CartCreateInput = {
id?: string
sessionId: string
createdAt?: Date | string
updatedAt?: Date | string
store: StoreCreateNestedOneWithoutCartsInput
user?: UserCreateNestedOneWithoutCartsInput
items?: CartItemCreateNestedManyWithoutCartInput
}
export type CartUncheckedCreateInput = {
id?: string
storeId: string
sessionId: string
userId?: string | null
createdAt?: Date | string
updatedAt?: Date | string
items?: CartItemUncheckedCreateNestedManyWithoutCartInput
}
export type CartUpdateInput = {
id?: StringFieldUpdateOperationsInput | string
sessionId?: StringFieldUpdateOperationsInput | string
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
store?: StoreUpdateOneRequiredWithoutCartsNestedInput
user?: UserUpdateOneWithoutCartsNestedInput
items?: CartItemUpdateManyWithoutCartNestedInput
}
export type CartUncheckedUpdateInput = {
id?: StringFieldUpdateOperationsInput | string
storeId?: StringFieldUpdateOperationsInput | string
sessionId?: StringFieldUpdateOperationsInput | string
userId?: NullableStringFieldUpdateOperationsInput | string | null
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
items?: CartItemUncheckedUpdateManyWithoutCartNestedInput
}
export type CartCreateManyInput = {
id?: string
storeId: string
sessionId: string
userId?: string | null
createdAt?: Date | string
updatedAt?: Date | string
}
export type CartUpdateManyMutationInput = {
id?: StringFieldUpdateOperationsInput | string
sessionId?: StringFieldUpdateOperationsInput | string
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type CartUncheckedUpdateManyInput = {
id?: StringFieldUpdateOperationsInput | string
storeId?: StringFieldUpdateOperationsInput | string
sessionId?: StringFieldUpdateOperationsInput | string
userId?: NullableStringFieldUpdateOperationsInput | string | null
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type CartItemCreateInput = {
id?: string
productId: string
priceId: string
name: string
unitAmount: number
currency: string
quantity: number
createdAt?: Date | string
updatedAt?: Date | string
cart: CartCreateNestedOneWithoutItemsInput
}
export type CartItemUncheckedCreateInput = {
id?: string
cartId: string
productId: string
priceId: string
name: string
unitAmount: number
currency: string
quantity: number
createdAt?: Date | string
updatedAt?: Date | string
}
export type CartItemUpdateInput = {
id?: StringFieldUpdateOperationsInput | string
productId?: StringFieldUpdateOperationsInput | string
priceId?: StringFieldUpdateOperationsInput | string
name?: StringFieldUpdateOperationsInput | string
unitAmount?: IntFieldUpdateOperationsInput | number
currency?: StringFieldUpdateOperationsInput | string
quantity?: IntFieldUpdateOperationsInput | number
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
cart?: CartUpdateOneRequiredWithoutItemsNestedInput
}
export type CartItemUncheckedUpdateInput = {
id?: StringFieldUpdateOperationsInput | string
cartId?: StringFieldUpdateOperationsInput | string
productId?: StringFieldUpdateOperationsInput | string
priceId?: StringFieldUpdateOperationsInput | string
name?: StringFieldUpdateOperationsInput | string
unitAmount?: IntFieldUpdateOperationsInput | number
currency?: StringFieldUpdateOperationsInput | string
quantity?: IntFieldUpdateOperationsInput | number
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type CartItemCreateManyInput = {
id?: string
cartId: string
productId: string
priceId: string
name: string
unitAmount: number
currency: string
quantity: number
createdAt?: Date | string
updatedAt?: Date | string
}
export type CartItemUpdateManyMutationInput = {
id?: StringFieldUpdateOperationsInput | string
productId?: StringFieldUpdateOperationsInput | string
priceId?: StringFieldUpdateOperationsInput | string
name?: StringFieldUpdateOperationsInput | string
unitAmount?: IntFieldUpdateOperationsInput | number
currency?: StringFieldUpdateOperationsInput | string
quantity?: IntFieldUpdateOperationsInput | number
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type CartItemUncheckedUpdateManyInput = {
id?: StringFieldUpdateOperationsInput | string
cartId?: StringFieldUpdateOperationsInput | string
productId?: StringFieldUpdateOperationsInput | string
priceId?: StringFieldUpdateOperationsInput | string
name?: StringFieldUpdateOperationsInput | string
unitAmount?: IntFieldUpdateOperationsInput | number
currency?: StringFieldUpdateOperationsInput | string
quantity?: IntFieldUpdateOperationsInput | number
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type UserAddressCreateInput = {
id?: string
name: string
street1: string
city: string
state: string
zip: string
country: string
phone?: string | null
createdAt?: Date | string
updatedAt?: Date | string
user: UserCreateNestedOneWithoutAddressInput
}
export type UserAddressUncheckedCreateInput = {
id?: string
userId: string
name: string
street1: string
city: string
state: string
zip: string
country: string
phone?: string | null
createdAt?: Date | string
updatedAt?: Date | string
}
export type UserAddressUpdateInput = {
id?: StringFieldUpdateOperationsInput | string
name?: StringFieldUpdateOperationsInput | string
street1?: StringFieldUpdateOperationsInput | string
city?: StringFieldUpdateOperationsInput | string
state?: StringFieldUpdateOperationsInput | string
zip?: StringFieldUpdateOperationsInput | string
country?: StringFieldUpdateOperationsInput | string
phone?: NullableStringFieldUpdateOperationsInput | string | null
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
user?: UserUpdateOneRequiredWithoutAddressNestedInput
}
export type UserAddressUncheckedUpdateInput = {
id?: StringFieldUpdateOperationsInput | string
userId?: StringFieldUpdateOperationsInput | string
name?: StringFieldUpdateOperationsInput | string
street1?: StringFieldUpdateOperationsInput | string
city?: StringFieldUpdateOperationsInput | string
state?: StringFieldUpdateOperationsInput | string
zip?: StringFieldUpdateOperationsInput | string
country?: StringFieldUpdateOperationsInput | string
phone?: NullableStringFieldUpdateOperationsInput | string | null
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type UserAddressCreateManyInput = {
id?: string
userId: string
name: string
street1: string
city: string
state: string
zip: string
country: string
phone?: string | null
createdAt?: Date | string
updatedAt?: Date | string
}
export type UserAddressUpdateManyMutationInput = {
id?: StringFieldUpdateOperationsInput | string
name?: StringFieldUpdateOperationsInput | string
street1?: StringFieldUpdateOperationsInput | string
city?: StringFieldUpdateOperationsInput | string
state?: StringFieldUpdateOperationsInput | string
zip?: StringFieldUpdateOperationsInput | string
country?: StringFieldUpdateOperationsInput | string
phone?: NullableStringFieldUpdateOperationsInput | string | null
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type UserAddressUncheckedUpdateManyInput = {
id?: StringFieldUpdateOperationsInput | string
userId?: StringFieldUpdateOperationsInput | string
name?: StringFieldUpdateOperationsInput | string
street1?: StringFieldUpdateOperationsInput | string
city?: StringFieldUpdateOperationsInput | string
state?: StringFieldUpdateOperationsInput | string
zip?: StringFieldUpdateOperationsInput | string
country?: StringFieldUpdateOperationsInput | string
phone?: NullableStringFieldUpdateOperationsInput | string | null
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type OrderCreateInput = {
id?: string
storeId: string
userId?: string | null
sessionId?: string | null
stripeCheckoutSessionId: string
shippingRateId?: string | null
shippingRateSnapshot?: NullableJsonNullValueInput | InputJsonValue
shippingAddress?: NullableJsonNullValueInput | InputJsonValue
items: JsonNullValueInput | InputJsonValue
status: string
labelUrl?: string | null
createdAt?: Date | string
updatedAt?: Date | string
}
export type OrderUncheckedCreateInput = {
id?: string
storeId: string
userId?: string | null
sessionId?: string | null
stripeCheckoutSessionId: string
shippingRateId?: string | null
shippingRateSnapshot?: NullableJsonNullValueInput | InputJsonValue
shippingAddress?: NullableJsonNullValueInput | InputJsonValue
items: JsonNullValueInput | InputJsonValue
status: string
labelUrl?: string | null
createdAt?: Date | string
updatedAt?: Date | string
}
export type OrderUpdateInput = {
id?: StringFieldUpdateOperationsInput | string
storeId?: StringFieldUpdateOperationsInput | string
userId?: NullableStringFieldUpdateOperationsInput | string | null
sessionId?: NullableStringFieldUpdateOperationsInput | string | null
stripeCheckoutSessionId?: StringFieldUpdateOperationsInput | string
shippingRateId?: NullableStringFieldUpdateOperationsInput | string | null
shippingRateSnapshot?: NullableJsonNullValueInput | InputJsonValue
shippingAddress?: NullableJsonNullValueInput | InputJsonValue
items?: JsonNullValueInput | InputJsonValue
status?: StringFieldUpdateOperationsInput | string
labelUrl?: NullableStringFieldUpdateOperationsInput | string | null
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type OrderUncheckedUpdateInput = {
id?: StringFieldUpdateOperationsInput | string
storeId?: StringFieldUpdateOperationsInput | string
userId?: NullableStringFieldUpdateOperationsInput | string | null
sessionId?: NullableStringFieldUpdateOperationsInput | string | null
stripeCheckoutSessionId?: StringFieldUpdateOperationsInput | string
shippingRateId?: NullableStringFieldUpdateOperationsInput | string | null
shippingRateSnapshot?: NullableJsonNullValueInput | InputJsonValue
shippingAddress?: NullableJsonNullValueInput | InputJsonValue
items?: JsonNullValueInput | InputJsonValue
status?: StringFieldUpdateOperationsInput | string
labelUrl?: NullableStringFieldUpdateOperationsInput | string | null
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type OrderCreateManyInput = {
id?: string
storeId: string
userId?: string | null
sessionId?: string | null
stripeCheckoutSessionId: string
shippingRateId?: string | null
shippingRateSnapshot?: NullableJsonNullValueInput | InputJsonValue
shippingAddress?: NullableJsonNullValueInput | InputJsonValue
items: JsonNullValueInput | InputJsonValue
status: string
labelUrl?: string | null
createdAt?: Date | string
updatedAt?: Date | string
}
export type OrderUpdateManyMutationInput = {
id?: StringFieldUpdateOperationsInput | string
storeId?: StringFieldUpdateOperationsInput | string
userId?: NullableStringFieldUpdateOperationsInput | string | null
sessionId?: NullableStringFieldUpdateOperationsInput | string | null
stripeCheckoutSessionId?: StringFieldUpdateOperationsInput | string
shippingRateId?: NullableStringFieldUpdateOperationsInput | string | null
shippingRateSnapshot?: NullableJsonNullValueInput | InputJsonValue
shippingAddress?: NullableJsonNullValueInput | InputJsonValue
items?: JsonNullValueInput | InputJsonValue
status?: StringFieldUpdateOperationsInput | string
labelUrl?: NullableStringFieldUpdateOperationsInput | string | null
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type OrderUncheckedUpdateManyInput = {
id?: StringFieldUpdateOperationsInput | string
storeId?: StringFieldUpdateOperationsInput | string
userId?: NullableStringFieldUpdateOperationsInput | string | null
sessionId?: NullableStringFieldUpdateOperationsInput | string | null
stripeCheckoutSessionId?: StringFieldUpdateOperationsInput | string
shippingRateId?: NullableStringFieldUpdateOperationsInput | string | null
shippingRateSnapshot?: NullableJsonNullValueInput | InputJsonValue
shippingAddress?: NullableJsonNullValueInput | InputJsonValue
items?: JsonNullValueInput | InputJsonValue
status?: StringFieldUpdateOperationsInput | string
labelUrl?: NullableStringFieldUpdateOperationsInput | string | null
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type ProductCacheCreateInput = {
id?: string
stripeProductId: string
stripePriceId: string
name: string
description?: string | null
unitAmount: number
currency: string
active?: boolean
createdAt?: Date | string
updatedAt?: Date | string
store: StoreCreateNestedOneWithoutProductsInput
}
export type ProductCacheUncheckedCreateInput = {
id?: string
storeId: string
stripeProductId: string
stripePriceId: string
name: string
description?: string | null
unitAmount: number
currency: string
active?: boolean
createdAt?: Date | string
updatedAt?: Date | string
}
export type ProductCacheUpdateInput = {
id?: StringFieldUpdateOperationsInput | string
stripeProductId?: StringFieldUpdateOperationsInput | string
stripePriceId?: StringFieldUpdateOperationsInput | string
name?: StringFieldUpdateOperationsInput | string
description?: NullableStringFieldUpdateOperationsInput | string | null
unitAmount?: IntFieldUpdateOperationsInput | number
currency?: StringFieldUpdateOperationsInput | string
active?: BoolFieldUpdateOperationsInput | boolean
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
store?: StoreUpdateOneRequiredWithoutProductsNestedInput
}
export type ProductCacheUncheckedUpdateInput = {
id?: StringFieldUpdateOperationsInput | string
storeId?: StringFieldUpdateOperationsInput | string
stripeProductId?: StringFieldUpdateOperationsInput | string
stripePriceId?: StringFieldUpdateOperationsInput | string
name?: StringFieldUpdateOperationsInput | string
description?: NullableStringFieldUpdateOperationsInput | string | null
unitAmount?: IntFieldUpdateOperationsInput | number
currency?: StringFieldUpdateOperationsInput | string
active?: BoolFieldUpdateOperationsInput | boolean
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type ProductCacheCreateManyInput = {
id?: string
storeId: string
stripeProductId: string
stripePriceId: string
name: string
description?: string | null
unitAmount: number
currency: string
active?: boolean
createdAt?: Date | string
updatedAt?: Date | string
}
export type ProductCacheUpdateManyMutationInput = {
id?: StringFieldUpdateOperationsInput | string
stripeProductId?: StringFieldUpdateOperationsInput | string
stripePriceId?: StringFieldUpdateOperationsInput | string
name?: StringFieldUpdateOperationsInput | string
description?: NullableStringFieldUpdateOperationsInput | string | null
unitAmount?: IntFieldUpdateOperationsInput | number
currency?: StringFieldUpdateOperationsInput | string
active?: BoolFieldUpdateOperationsInput | boolean
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type ProductCacheUncheckedUpdateManyInput = {
id?: StringFieldUpdateOperationsInput | string
storeId?: StringFieldUpdateOperationsInput | string
stripeProductId?: StringFieldUpdateOperationsInput | string
stripePriceId?: StringFieldUpdateOperationsInput | string
name?: StringFieldUpdateOperationsInput | string
description?: NullableStringFieldUpdateOperationsInput | string | null
unitAmount?: IntFieldUpdateOperationsInput | number
currency?: StringFieldUpdateOperationsInput | string
active?: BoolFieldUpdateOperationsInput | boolean
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type UserCreateInput = {
id?: string
name: string
email: string
passwordHash: string
role?: $Enums.Role
createdAt?: Date | string
updatedAt?: Date | string
store?: StoreCreateNestedOneWithoutUserInput
carts?: CartCreateNestedManyWithoutUserInput
address?: UserAddressCreateNestedOneWithoutUserInput
accounts?: AccountCreateNestedManyWithoutUserInput
sessions?: SessionCreateNestedManyWithoutUserInput
}
export type UserUncheckedCreateInput = {
id?: string
name: string
email: string
passwordHash: string
role?: $Enums.Role
createdAt?: Date | string
updatedAt?: Date | string
store?: StoreUncheckedCreateNestedOneWithoutUserInput
carts?: CartUncheckedCreateNestedManyWithoutUserInput
address?: UserAddressUncheckedCreateNestedOneWithoutUserInput
accounts?: AccountUncheckedCreateNestedManyWithoutUserInput
sessions?: SessionUncheckedCreateNestedManyWithoutUserInput
}
export type UserUpdateInput = {
id?: StringFieldUpdateOperationsInput | string
name?: StringFieldUpdateOperationsInput | string
email?: StringFieldUpdateOperationsInput | string
passwordHash?: StringFieldUpdateOperationsInput | string
role?: EnumRoleFieldUpdateOperationsInput | $Enums.Role
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
store?: StoreUpdateOneWithoutUserNestedInput
carts?: CartUpdateManyWithoutUserNestedInput
address?: UserAddressUpdateOneWithoutUserNestedInput
accounts?: AccountUpdateManyWithoutUserNestedInput
sessions?: SessionUpdateManyWithoutUserNestedInput
}
export type UserUncheckedUpdateInput = {
id?: StringFieldUpdateOperationsInput | string
name?: StringFieldUpdateOperationsInput | string
email?: StringFieldUpdateOperationsInput | string
passwordHash?: StringFieldUpdateOperationsInput | string
role?: EnumRoleFieldUpdateOperationsInput | $Enums.Role
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
store?: StoreUncheckedUpdateOneWithoutUserNestedInput
carts?: CartUncheckedUpdateManyWithoutUserNestedInput
address?: UserAddressUncheckedUpdateOneWithoutUserNestedInput
accounts?: AccountUncheckedUpdateManyWithoutUserNestedInput
sessions?: SessionUncheckedUpdateManyWithoutUserNestedInput
}
export type UserCreateManyInput = {
id?: string
name: string
email: string
passwordHash: string
role?: $Enums.Role
createdAt?: Date | string
updatedAt?: Date | string
}
export type UserUpdateManyMutationInput = {
id?: StringFieldUpdateOperationsInput | string
name?: StringFieldUpdateOperationsInput | string
email?: StringFieldUpdateOperationsInput | string
passwordHash?: StringFieldUpdateOperationsInput | string
role?: EnumRoleFieldUpdateOperationsInput | $Enums.Role
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type UserUncheckedUpdateManyInput = {
id?: StringFieldUpdateOperationsInput | string
name?: StringFieldUpdateOperationsInput | string
email?: StringFieldUpdateOperationsInput | string
passwordHash?: StringFieldUpdateOperationsInput | string
role?: EnumRoleFieldUpdateOperationsInput | $Enums.Role
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type SessionCreateInput = {
id?: string
sessionToken: string
expires: Date | string
createdAt?: Date | string
updatedAt?: Date | string
user: UserCreateNestedOneWithoutSessionsInput
}
export type SessionUncheckedCreateInput = {
id?: string
sessionToken: string
userId: string
expires: Date | string
createdAt?: Date | string
updatedAt?: Date | string
}
export type SessionUpdateInput = {
id?: StringFieldUpdateOperationsInput | string
sessionToken?: StringFieldUpdateOperationsInput | string
expires?: DateTimeFieldUpdateOperationsInput | Date | string
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
user?: UserUpdateOneRequiredWithoutSessionsNestedInput
}
export type SessionUncheckedUpdateInput = {
id?: StringFieldUpdateOperationsInput | string
sessionToken?: StringFieldUpdateOperationsInput | string
userId?: StringFieldUpdateOperationsInput | string
expires?: DateTimeFieldUpdateOperationsInput | Date | string
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type SessionCreateManyInput = {
id?: string
sessionToken: string
userId: string
expires: Date | string
createdAt?: Date | string
updatedAt?: Date | string
}
export type SessionUpdateManyMutationInput = {
id?: StringFieldUpdateOperationsInput | string
sessionToken?: StringFieldUpdateOperationsInput | string
expires?: DateTimeFieldUpdateOperationsInput | Date | string
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type SessionUncheckedUpdateManyInput = {
id?: StringFieldUpdateOperationsInput | string
sessionToken?: StringFieldUpdateOperationsInput | string
userId?: StringFieldUpdateOperationsInput | string
expires?: DateTimeFieldUpdateOperationsInput | Date | string
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type AccountCreateInput = {
id?: string
type: string
provider: string
providerAccountId: string
refresh_token?: string | null
access_token?: string | null
expires_at?: number | null
token_type?: string | null
scope?: string | null
id_token?: string | null
session_state?: string | null
user: UserCreateNestedOneWithoutAccountsInput
}
export type AccountUncheckedCreateInput = {
id?: string
userId: string
type: string
provider: string
providerAccountId: string
refresh_token?: string | null
access_token?: string | null
expires_at?: number | null
token_type?: string | null
scope?: string | null
id_token?: string | null
session_state?: string | null
}
export type AccountUpdateInput = {
id?: StringFieldUpdateOperationsInput | string
type?: StringFieldUpdateOperationsInput | string
provider?: StringFieldUpdateOperationsInput | string
providerAccountId?: StringFieldUpdateOperationsInput | string
refresh_token?: NullableStringFieldUpdateOperationsInput | string | null
access_token?: NullableStringFieldUpdateOperationsInput | string | null
expires_at?: NullableIntFieldUpdateOperationsInput | number | null
token_type?: NullableStringFieldUpdateOperationsInput | string | null
scope?: NullableStringFieldUpdateOperationsInput | string | null
id_token?: NullableStringFieldUpdateOperationsInput | string | null
session_state?: NullableStringFieldUpdateOperationsInput | string | null
user?: UserUpdateOneRequiredWithoutAccountsNestedInput
}
export type AccountUncheckedUpdateInput = {
id?: StringFieldUpdateOperationsInput | string
userId?: StringFieldUpdateOperationsInput | string
type?: StringFieldUpdateOperationsInput | string
provider?: StringFieldUpdateOperationsInput | string
providerAccountId?: StringFieldUpdateOperationsInput | string
refresh_token?: NullableStringFieldUpdateOperationsInput | string | null
access_token?: NullableStringFieldUpdateOperationsInput | string | null
expires_at?: NullableIntFieldUpdateOperationsInput | number | null
token_type?: NullableStringFieldUpdateOperationsInput | string | null
scope?: NullableStringFieldUpdateOperationsInput | string | null
id_token?: NullableStringFieldUpdateOperationsInput | string | null
session_state?: NullableStringFieldUpdateOperationsInput | string | null
}
export type AccountCreateManyInput = {
id?: string
userId: string
type: string
provider: string
providerAccountId: string
refresh_token?: string | null
access_token?: string | null
expires_at?: number | null
token_type?: string | null
scope?: string | null
id_token?: string | null
session_state?: string | null
}
export type AccountUpdateManyMutationInput = {
id?: StringFieldUpdateOperationsInput | string
type?: StringFieldUpdateOperationsInput | string
provider?: StringFieldUpdateOperationsInput | string
providerAccountId?: StringFieldUpdateOperationsInput | string
refresh_token?: NullableStringFieldUpdateOperationsInput | string | null
access_token?: NullableStringFieldUpdateOperationsInput | string | null
expires_at?: NullableIntFieldUpdateOperationsInput | number | null
token_type?: NullableStringFieldUpdateOperationsInput | string | null
scope?: NullableStringFieldUpdateOperationsInput | string | null
id_token?: NullableStringFieldUpdateOperationsInput | string | null
session_state?: NullableStringFieldUpdateOperationsInput | string | null
}
export type AccountUncheckedUpdateManyInput = {
id?: StringFieldUpdateOperationsInput | string
userId?: StringFieldUpdateOperationsInput | string
type?: StringFieldUpdateOperationsInput | string
provider?: StringFieldUpdateOperationsInput | string
providerAccountId?: StringFieldUpdateOperationsInput | string
refresh_token?: NullableStringFieldUpdateOperationsInput | string | null
access_token?: NullableStringFieldUpdateOperationsInput | string | null
expires_at?: NullableIntFieldUpdateOperationsInput | number | null
token_type?: NullableStringFieldUpdateOperationsInput | string | null
scope?: NullableStringFieldUpdateOperationsInput | string | null
id_token?: NullableStringFieldUpdateOperationsInput | string | null
session_state?: NullableStringFieldUpdateOperationsInput | string | null
}
export type VerificationTokenCreateInput = {
identifier: string
token: string
expires: Date | string
}
export type VerificationTokenUncheckedCreateInput = {
identifier: string
token: string
expires: Date | string
}
export type VerificationTokenUpdateInput = {
identifier?: StringFieldUpdateOperationsInput | string
token?: StringFieldUpdateOperationsInput | string
expires?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type VerificationTokenUncheckedUpdateInput = {
identifier?: StringFieldUpdateOperationsInput | string
token?: StringFieldUpdateOperationsInput | string
expires?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type VerificationTokenCreateManyInput = {
identifier: string
token: string
expires: Date | string
}
export type VerificationTokenUpdateManyMutationInput = {
identifier?: StringFieldUpdateOperationsInput | string
token?: StringFieldUpdateOperationsInput | string
expires?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type VerificationTokenUncheckedUpdateManyInput = {
identifier?: StringFieldUpdateOperationsInput | string
token?: StringFieldUpdateOperationsInput | string
expires?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type StringFilter<$PrismaModel = never> = {
equals?: string | StringFieldRefInput<$PrismaModel>
in?: string[]
notIn?: string[]
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 StringNullableFilter<$PrismaModel = never> = {
equals?: string | StringFieldRefInput<$PrismaModel> | null
in?: string[] | null
notIn?: string[] | 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 JsonNullableFilter<$PrismaModel = never> =
| PatchUndefined<
Either<Required<JsonNullableFilterBase<$PrismaModel>>, Exclude<keyof Required<JsonNullableFilterBase<$PrismaModel>>, 'path'>>,
Required<JsonNullableFilterBase<$PrismaModel>>
>
| OptionalFlat<Omit<Required<JsonNullableFilterBase<$PrismaModel>>, 'path'>>
export type JsonNullableFilterBase<$PrismaModel = never> = {
equals?: InputJsonValue | JsonFieldRefInput<$PrismaModel> | JsonNullValueFilter
path?: string
mode?: QueryMode | EnumQueryModeFieldRefInput<$PrismaModel>
string_contains?: string | StringFieldRefInput<$PrismaModel>
string_starts_with?: string | StringFieldRefInput<$PrismaModel>
string_ends_with?: string | StringFieldRefInput<$PrismaModel>
array_starts_with?: InputJsonValue | JsonFieldRefInput<$PrismaModel> | null
array_ends_with?: InputJsonValue | JsonFieldRefInput<$PrismaModel> | null
not?: InputJsonValue | JsonFieldRefInput<$PrismaModel> | JsonNullValueFilter
}
export type DateTimeFilter<$PrismaModel = never> = {
equals?: Date | string | DateTimeFieldRefInput<$PrismaModel>
in?: Date[] | string[]
notIn?: Date[] | string[]
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 UserScalarRelationFilter = {
is?: UserWhereInput
isNot?: UserWhereInput
}
export type CartListRelationFilter = {
every?: CartWhereInput
some?: CartWhereInput
none?: CartWhereInput
}
export type ProductCacheListRelationFilter = {
every?: ProductCacheWhereInput
some?: ProductCacheWhereInput
none?: ProductCacheWhereInput
}
export type SortOrderInput = {
sort: SortOrder
nulls?: NullsOrder
}
export type CartOrderByRelationAggregateInput = {
_count?: SortOrder
}
export type ProductCacheOrderByRelationAggregateInput = {
_count?: SortOrder
}
export type StoreCountOrderByAggregateInput = {
id?: SortOrder
slug?: SortOrder
stripeAccountId?: SortOrder
userId?: SortOrder
name?: SortOrder
website?: SortOrder
defaultSellingPreferences?: SortOrder
createdAt?: SortOrder
updatedAt?: SortOrder
}
export type StoreMaxOrderByAggregateInput = {
id?: SortOrder
slug?: SortOrder
stripeAccountId?: SortOrder
userId?: SortOrder
name?: SortOrder
website?: SortOrder
createdAt?: SortOrder
updatedAt?: SortOrder
}
export type StoreMinOrderByAggregateInput = {
id?: SortOrder
slug?: SortOrder
stripeAccountId?: SortOrder
userId?: SortOrder
name?: SortOrder
website?: SortOrder
createdAt?: SortOrder
updatedAt?: SortOrder
}
export type StringWithAggregatesFilter<$PrismaModel = never> = {
equals?: string | StringFieldRefInput<$PrismaModel>
in?: string[]
notIn?: string[]
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 StringNullableWithAggregatesFilter<$PrismaModel = never> = {
equals?: string | StringFieldRefInput<$PrismaModel> | null
in?: string[] | null
notIn?: string[] | 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 JsonNullableWithAggregatesFilter<$PrismaModel = never> =
| PatchUndefined<
Either<Required<JsonNullableWithAggregatesFilterBase<$PrismaModel>>, Exclude<keyof Required<JsonNullableWithAggregatesFilterBase<$PrismaModel>>, 'path'>>,
Required<JsonNullableWithAggregatesFilterBase<$PrismaModel>>
>
| OptionalFlat<Omit<Required<JsonNullableWithAggregatesFilterBase<$PrismaModel>>, 'path'>>
export type JsonNullableWithAggregatesFilterBase<$PrismaModel = never> = {
equals?: InputJsonValue | JsonFieldRefInput<$PrismaModel> | JsonNullValueFilter
path?: string
mode?: QueryMode | EnumQueryModeFieldRefInput<$PrismaModel>
string_contains?: string | StringFieldRefInput<$PrismaModel>
string_starts_with?: string | StringFieldRefInput<$PrismaModel>
string_ends_with?: string | StringFieldRefInput<$PrismaModel>
array_starts_with?: InputJsonValue | JsonFieldRefInput<$PrismaModel> | null
array_ends_with?: InputJsonValue | JsonFieldRefInput<$PrismaModel> | null
not?: InputJsonValue | JsonFieldRefInput<$PrismaModel> | JsonNullValueFilter
_count?: NestedIntNullableFilter<$PrismaModel>
_min?: NestedJsonNullableFilter<$PrismaModel>
_max?: NestedJsonNullableFilter<$PrismaModel>
}
export type DateTimeWithAggregatesFilter<$PrismaModel = never> = {
equals?: Date | string | DateTimeFieldRefInput<$PrismaModel>
in?: Date[] | string[]
notIn?: Date[] | string[]
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 StoreScalarRelationFilter = {
is?: StoreWhereInput
isNot?: StoreWhereInput
}
export type UserNullableScalarRelationFilter = {
is?: UserWhereInput | null
isNot?: UserWhereInput | null
}
export type CartItemListRelationFilter = {
every?: CartItemWhereInput
some?: CartItemWhereInput
none?: CartItemWhereInput
}
export type CartItemOrderByRelationAggregateInput = {
_count?: SortOrder
}
export type CartStoreIdSessionIdCompoundUniqueInput = {
storeId: string
sessionId: string
}
export type CartStoreIdUserIdCompoundUniqueInput = {
storeId: string
userId: string
}
export type CartCountOrderByAggregateInput = {
id?: SortOrder
storeId?: SortOrder
sessionId?: SortOrder
userId?: SortOrder
createdAt?: SortOrder
updatedAt?: SortOrder
}
export type CartMaxOrderByAggregateInput = {
id?: SortOrder
storeId?: SortOrder
sessionId?: SortOrder
userId?: SortOrder
createdAt?: SortOrder
updatedAt?: SortOrder
}
export type CartMinOrderByAggregateInput = {
id?: SortOrder
storeId?: SortOrder
sessionId?: SortOrder
userId?: SortOrder
createdAt?: SortOrder
updatedAt?: SortOrder
}
export type IntFilter<$PrismaModel = never> = {
equals?: number | IntFieldRefInput<$PrismaModel>
in?: number[]
notIn?: number[]
lt?: number | IntFieldRefInput<$PrismaModel>
lte?: number | IntFieldRefInput<$PrismaModel>
gt?: number | IntFieldRefInput<$PrismaModel>
gte?: number | IntFieldRefInput<$PrismaModel>
not?: NestedIntFilter<$PrismaModel> | number
}
export type CartScalarRelationFilter = {
is?: CartWhereInput
isNot?: CartWhereInput
}
export type CartItemCountOrderByAggregateInput = {
id?: SortOrder
cartId?: SortOrder
productId?: SortOrder
priceId?: SortOrder
name?: SortOrder
unitAmount?: SortOrder
currency?: SortOrder
quantity?: SortOrder
createdAt?: SortOrder
updatedAt?: SortOrder
}
export type CartItemAvgOrderByAggregateInput = {
unitAmount?: SortOrder
quantity?: SortOrder
}
export type CartItemMaxOrderByAggregateInput = {
id?: SortOrder
cartId?: SortOrder
productId?: SortOrder
priceId?: SortOrder
name?: SortOrder
unitAmount?: SortOrder
currency?: SortOrder
quantity?: SortOrder
createdAt?: SortOrder
updatedAt?: SortOrder
}
export type CartItemMinOrderByAggregateInput = {
id?: SortOrder
cartId?: SortOrder
productId?: SortOrder
priceId?: SortOrder
name?: SortOrder
unitAmount?: SortOrder
currency?: SortOrder
quantity?: SortOrder
createdAt?: SortOrder
updatedAt?: SortOrder
}
export type CartItemSumOrderByAggregateInput = {
unitAmount?: SortOrder
quantity?: SortOrder
}
export type IntWithAggregatesFilter<$PrismaModel = never> = {
equals?: number | IntFieldRefInput<$PrismaModel>
in?: number[]
notIn?: number[]
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 UserAddressCountOrderByAggregateInput = {
id?: SortOrder
userId?: SortOrder
name?: SortOrder
street1?: SortOrder
city?: SortOrder
state?: SortOrder
zip?: SortOrder
country?: SortOrder
phone?: SortOrder
createdAt?: SortOrder
updatedAt?: SortOrder
}
export type UserAddressMaxOrderByAggregateInput = {
id?: SortOrder
userId?: SortOrder
name?: SortOrder
street1?: SortOrder
city?: SortOrder
state?: SortOrder
zip?: SortOrder
country?: SortOrder
phone?: SortOrder
createdAt?: SortOrder
updatedAt?: SortOrder
}
export type UserAddressMinOrderByAggregateInput = {
id?: SortOrder
userId?: SortOrder
name?: SortOrder
street1?: SortOrder
city?: SortOrder
state?: SortOrder
zip?: SortOrder
country?: SortOrder
phone?: SortOrder
createdAt?: SortOrder
updatedAt?: SortOrder
}
export type JsonFilter<$PrismaModel = never> =
| PatchUndefined<
Either<Required<JsonFilterBase<$PrismaModel>>, Exclude<keyof Required<JsonFilterBase<$PrismaModel>>, 'path'>>,
Required<JsonFilterBase<$PrismaModel>>
>
| OptionalFlat<Omit<Required<JsonFilterBase<$PrismaModel>>, 'path'>>
export type JsonFilterBase<$PrismaModel = never> = {
equals?: InputJsonValue | JsonFieldRefInput<$PrismaModel> | JsonNullValueFilter
path?: string
mode?: QueryMode | EnumQueryModeFieldRefInput<$PrismaModel>
string_contains?: string | StringFieldRefInput<$PrismaModel>
string_starts_with?: string | StringFieldRefInput<$PrismaModel>
string_ends_with?: string | StringFieldRefInput<$PrismaModel>
array_starts_with?: InputJsonValue | JsonFieldRefInput<$PrismaModel> | null
array_ends_with?: InputJsonValue | JsonFieldRefInput<$PrismaModel> | null
not?: InputJsonValue | JsonFieldRefInput<$PrismaModel> | JsonNullValueFilter
}
export type OrderCountOrderByAggregateInput = {
id?: SortOrder
storeId?: SortOrder
userId?: SortOrder
sessionId?: SortOrder
stripeCheckoutSessionId?: SortOrder
shippingRateId?: SortOrder
shippingRateSnapshot?: SortOrder
shippingAddress?: SortOrder
items?: SortOrder
status?: SortOrder
labelUrl?: SortOrder
createdAt?: SortOrder
updatedAt?: SortOrder
}
export type OrderMaxOrderByAggregateInput = {
id?: SortOrder
storeId?: SortOrder
userId?: SortOrder
sessionId?: SortOrder
stripeCheckoutSessionId?: SortOrder
shippingRateId?: SortOrder
status?: SortOrder
labelUrl?: SortOrder
createdAt?: SortOrder
updatedAt?: SortOrder
}
export type OrderMinOrderByAggregateInput = {
id?: SortOrder
storeId?: SortOrder
userId?: SortOrder
sessionId?: SortOrder
stripeCheckoutSessionId?: SortOrder
shippingRateId?: SortOrder
status?: SortOrder
labelUrl?: SortOrder
createdAt?: SortOrder
updatedAt?: SortOrder
}
export type JsonWithAggregatesFilter<$PrismaModel = never> =
| PatchUndefined<
Either<Required<JsonWithAggregatesFilterBase<$PrismaModel>>, Exclude<keyof Required<JsonWithAggregatesFilterBase<$PrismaModel>>, 'path'>>,
Required<JsonWithAggregatesFilterBase<$PrismaModel>>
>
| OptionalFlat<Omit<Required<JsonWithAggregatesFilterBase<$PrismaModel>>, 'path'>>
export type JsonWithAggregatesFilterBase<$PrismaModel = never> = {
equals?: InputJsonValue | JsonFieldRefInput<$PrismaModel> | JsonNullValueFilter
path?: string
mode?: QueryMode | EnumQueryModeFieldRefInput<$PrismaModel>
string_contains?: string | StringFieldRefInput<$PrismaModel>
string_starts_with?: string | StringFieldRefInput<$PrismaModel>
string_ends_with?: string | StringFieldRefInput<$PrismaModel>
array_starts_with?: InputJsonValue | JsonFieldRefInput<$PrismaModel> | null
array_ends_with?: InputJsonValue | JsonFieldRefInput<$PrismaModel> | null
not?: InputJsonValue | JsonFieldRefInput<$PrismaModel> | JsonNullValueFilter
_count?: NestedIntFilter<$PrismaModel>
_min?: NestedJsonFilter<$PrismaModel>
_max?: NestedJsonFilter<$PrismaModel>
}
export type BoolFilter<$PrismaModel = never> = {
equals?: boolean | BooleanFieldRefInput<$PrismaModel>
not?: NestedBoolFilter<$PrismaModel> | boolean
}
export type ProductCacheStoreIdStripeProductIdCompoundUniqueInput = {
storeId: string
stripeProductId: string
}
export type ProductCacheCountOrderByAggregateInput = {
id?: SortOrder
storeId?: SortOrder
stripeProductId?: SortOrder
stripePriceId?: SortOrder
name?: SortOrder
description?: SortOrder
unitAmount?: SortOrder
currency?: SortOrder
active?: SortOrder
createdAt?: SortOrder
updatedAt?: SortOrder
}
export type ProductCacheAvgOrderByAggregateInput = {
unitAmount?: SortOrder
}
export type ProductCacheMaxOrderByAggregateInput = {
id?: SortOrder
storeId?: SortOrder
stripeProductId?: SortOrder
stripePriceId?: SortOrder
name?: SortOrder
description?: SortOrder
unitAmount?: SortOrder
currency?: SortOrder
active?: SortOrder
createdAt?: SortOrder
updatedAt?: SortOrder
}
export type ProductCacheMinOrderByAggregateInput = {
id?: SortOrder
storeId?: SortOrder
stripeProductId?: SortOrder
stripePriceId?: SortOrder
name?: SortOrder
description?: SortOrder
unitAmount?: SortOrder
currency?: SortOrder
active?: SortOrder
createdAt?: SortOrder
updatedAt?: SortOrder
}
export type ProductCacheSumOrderByAggregateInput = {
unitAmount?: SortOrder
}
export type BoolWithAggregatesFilter<$PrismaModel = never> = {
equals?: boolean | BooleanFieldRefInput<$PrismaModel>
not?: NestedBoolWithAggregatesFilter<$PrismaModel> | boolean
_count?: NestedIntFilter<$PrismaModel>
_min?: NestedBoolFilter<$PrismaModel>
_max?: NestedBoolFilter<$PrismaModel>
}
export type EnumRoleFilter<$PrismaModel = never> = {
equals?: $Enums.Role | EnumRoleFieldRefInput<$PrismaModel>
in?: $Enums.Role[]
notIn?: $Enums.Role[]
not?: NestedEnumRoleFilter<$PrismaModel> | $Enums.Role
}
export type StoreNullableScalarRelationFilter = {
is?: StoreWhereInput | null
isNot?: StoreWhereInput | null
}
export type UserAddressNullableScalarRelationFilter = {
is?: UserAddressWhereInput | null
isNot?: UserAddressWhereInput | null
}
export type AccountListRelationFilter = {
every?: AccountWhereInput
some?: AccountWhereInput
none?: AccountWhereInput
}
export type SessionListRelationFilter = {
every?: SessionWhereInput
some?: SessionWhereInput
none?: SessionWhereInput
}
export type AccountOrderByRelationAggregateInput = {
_count?: SortOrder
}
export type SessionOrderByRelationAggregateInput = {
_count?: SortOrder
}
export type UserCountOrderByAggregateInput = {
id?: SortOrder
name?: SortOrder
email?: SortOrder
passwordHash?: SortOrder
role?: SortOrder
createdAt?: SortOrder
updatedAt?: SortOrder
}
export type UserMaxOrderByAggregateInput = {
id?: SortOrder
name?: SortOrder
email?: SortOrder
passwordHash?: SortOrder
role?: SortOrder
createdAt?: SortOrder
updatedAt?: SortOrder
}
export type UserMinOrderByAggregateInput = {
id?: SortOrder
name?: SortOrder
email?: SortOrder
passwordHash?: SortOrder
role?: SortOrder
createdAt?: SortOrder
updatedAt?: SortOrder
}
export type EnumRoleWithAggregatesFilter<$PrismaModel = never> = {
equals?: $Enums.Role | EnumRoleFieldRefInput<$PrismaModel>
in?: $Enums.Role[]
notIn?: $Enums.Role[]
not?: NestedEnumRoleWithAggregatesFilter<$PrismaModel> | $Enums.Role
_count?: NestedIntFilter<$PrismaModel>
_min?: NestedEnumRoleFilter<$PrismaModel>
_max?: NestedEnumRoleFilter<$PrismaModel>
}
export type SessionCountOrderByAggregateInput = {
id?: SortOrder
sessionToken?: SortOrder
userId?: SortOrder
expires?: SortOrder
createdAt?: SortOrder
updatedAt?: SortOrder
}
export type SessionMaxOrderByAggregateInput = {
id?: SortOrder
sessionToken?: SortOrder
userId?: SortOrder
expires?: SortOrder
createdAt?: SortOrder
updatedAt?: SortOrder
}
export type SessionMinOrderByAggregateInput = {
id?: SortOrder
sessionToken?: SortOrder
userId?: SortOrder
expires?: SortOrder
createdAt?: SortOrder
updatedAt?: SortOrder
}
export type IntNullableFilter<$PrismaModel = never> = {
equals?: number | IntFieldRefInput<$PrismaModel> | null
in?: number[] | null
notIn?: number[] | null
lt?: number | IntFieldRefInput<$PrismaModel>
lte?: number | IntFieldRefInput<$PrismaModel>
gt?: number | IntFieldRefInput<$PrismaModel>
gte?: number | IntFieldRefInput<$PrismaModel>
not?: NestedIntNullableFilter<$PrismaModel> | number | null
}
export type AccountProviderProviderAccountIdCompoundUniqueInput = {
provider: string
providerAccountId: string
}
export type AccountCountOrderByAggregateInput = {
id?: SortOrder
userId?: SortOrder
type?: SortOrder
provider?: SortOrder
providerAccountId?: SortOrder
refresh_token?: SortOrder
access_token?: SortOrder
expires_at?: SortOrder
token_type?: SortOrder
scope?: SortOrder
id_token?: SortOrder
session_state?: SortOrder
}
export type AccountAvgOrderByAggregateInput = {
expires_at?: SortOrder
}
export type AccountMaxOrderByAggregateInput = {
id?: SortOrder
userId?: SortOrder
type?: SortOrder
provider?: SortOrder
providerAccountId?: SortOrder
refresh_token?: SortOrder
access_token?: SortOrder
expires_at?: SortOrder
token_type?: SortOrder
scope?: SortOrder
id_token?: SortOrder
session_state?: SortOrder
}
export type AccountMinOrderByAggregateInput = {
id?: SortOrder
userId?: SortOrder
type?: SortOrder
provider?: SortOrder
providerAccountId?: SortOrder
refresh_token?: SortOrder
access_token?: SortOrder
expires_at?: SortOrder
token_type?: SortOrder
scope?: SortOrder
id_token?: SortOrder
session_state?: SortOrder
}
export type AccountSumOrderByAggregateInput = {
expires_at?: SortOrder
}
export type IntNullableWithAggregatesFilter<$PrismaModel = never> = {
equals?: number | IntFieldRefInput<$PrismaModel> | null
in?: number[] | null
notIn?: number[] | null
lt?: number | IntFieldRefInput<$PrismaModel>
lte?: number | IntFieldRefInput<$PrismaModel>
gt?: number | IntFieldRefInput<$PrismaModel>
gte?: number | IntFieldRefInput<$PrismaModel>
not?: NestedIntNullableWithAggregatesFilter<$PrismaModel> | number | null
_count?: NestedIntNullableFilter<$PrismaModel>
_avg?: NestedFloatNullableFilter<$PrismaModel>
_sum?: NestedIntNullableFilter<$PrismaModel>
_min?: NestedIntNullableFilter<$PrismaModel>
_max?: NestedIntNullableFilter<$PrismaModel>
}
export type VerificationTokenIdentifierTokenCompoundUniqueInput = {
identifier: string
token: string
}
export type VerificationTokenCountOrderByAggregateInput = {
identifier?: SortOrder
token?: SortOrder
expires?: SortOrder
}
export type VerificationTokenMaxOrderByAggregateInput = {
identifier?: SortOrder
token?: SortOrder
expires?: SortOrder
}
export type VerificationTokenMinOrderByAggregateInput = {
identifier?: SortOrder
token?: SortOrder
expires?: SortOrder
}
export type UserCreateNestedOneWithoutStoreInput = {
create?: XOR<UserCreateWithoutStoreInput, UserUncheckedCreateWithoutStoreInput>
connectOrCreate?: UserCreateOrConnectWithoutStoreInput
connect?: UserWhereUniqueInput
}
export type CartCreateNestedManyWithoutStoreInput = {
create?: XOR<CartCreateWithoutStoreInput, CartUncheckedCreateWithoutStoreInput> | CartCreateWithoutStoreInput[] | CartUncheckedCreateWithoutStoreInput[]
connectOrCreate?: CartCreateOrConnectWithoutStoreInput | CartCreateOrConnectWithoutStoreInput[]
createMany?: CartCreateManyStoreInputEnvelope
connect?: CartWhereUniqueInput | CartWhereUniqueInput[]
}
export type ProductCacheCreateNestedManyWithoutStoreInput = {
create?: XOR<ProductCacheCreateWithoutStoreInput, ProductCacheUncheckedCreateWithoutStoreInput> | ProductCacheCreateWithoutStoreInput[] | ProductCacheUncheckedCreateWithoutStoreInput[]
connectOrCreate?: ProductCacheCreateOrConnectWithoutStoreInput | ProductCacheCreateOrConnectWithoutStoreInput[]
createMany?: ProductCacheCreateManyStoreInputEnvelope
connect?: ProductCacheWhereUniqueInput | ProductCacheWhereUniqueInput[]
}
export type CartUncheckedCreateNestedManyWithoutStoreInput = {
create?: XOR<CartCreateWithoutStoreInput, CartUncheckedCreateWithoutStoreInput> | CartCreateWithoutStoreInput[] | CartUncheckedCreateWithoutStoreInput[]
connectOrCreate?: CartCreateOrConnectWithoutStoreInput | CartCreateOrConnectWithoutStoreInput[]
createMany?: CartCreateManyStoreInputEnvelope
connect?: CartWhereUniqueInput | CartWhereUniqueInput[]
}
export type ProductCacheUncheckedCreateNestedManyWithoutStoreInput = {
create?: XOR<ProductCacheCreateWithoutStoreInput, ProductCacheUncheckedCreateWithoutStoreInput> | ProductCacheCreateWithoutStoreInput[] | ProductCacheUncheckedCreateWithoutStoreInput[]
connectOrCreate?: ProductCacheCreateOrConnectWithoutStoreInput | ProductCacheCreateOrConnectWithoutStoreInput[]
createMany?: ProductCacheCreateManyStoreInputEnvelope
connect?: ProductCacheWhereUniqueInput | ProductCacheWhereUniqueInput[]
}
export type StringFieldUpdateOperationsInput = {
set?: string
}
export type NullableStringFieldUpdateOperationsInput = {
set?: string | null
}
export type DateTimeFieldUpdateOperationsInput = {
set?: Date | string
}
export type UserUpdateOneRequiredWithoutStoreNestedInput = {
create?: XOR<UserCreateWithoutStoreInput, UserUncheckedCreateWithoutStoreInput>
connectOrCreate?: UserCreateOrConnectWithoutStoreInput
upsert?: UserUpsertWithoutStoreInput
connect?: UserWhereUniqueInput
update?: XOR<XOR<UserUpdateToOneWithWhereWithoutStoreInput, UserUpdateWithoutStoreInput>, UserUncheckedUpdateWithoutStoreInput>
}
export type CartUpdateManyWithoutStoreNestedInput = {
create?: XOR<CartCreateWithoutStoreInput, CartUncheckedCreateWithoutStoreInput> | CartCreateWithoutStoreInput[] | CartUncheckedCreateWithoutStoreInput[]
connectOrCreate?: CartCreateOrConnectWithoutStoreInput | CartCreateOrConnectWithoutStoreInput[]
upsert?: CartUpsertWithWhereUniqueWithoutStoreInput | CartUpsertWithWhereUniqueWithoutStoreInput[]
createMany?: CartCreateManyStoreInputEnvelope
set?: CartWhereUniqueInput | CartWhereUniqueInput[]
disconnect?: CartWhereUniqueInput | CartWhereUniqueInput[]
delete?: CartWhereUniqueInput | CartWhereUniqueInput[]
connect?: CartWhereUniqueInput | CartWhereUniqueInput[]
update?: CartUpdateWithWhereUniqueWithoutStoreInput | CartUpdateWithWhereUniqueWithoutStoreInput[]
updateMany?: CartUpdateManyWithWhereWithoutStoreInput | CartUpdateManyWithWhereWithoutStoreInput[]
deleteMany?: CartScalarWhereInput | CartScalarWhereInput[]
}
export type ProductCacheUpdateManyWithoutStoreNestedInput = {
create?: XOR<ProductCacheCreateWithoutStoreInput, ProductCacheUncheckedCreateWithoutStoreInput> | ProductCacheCreateWithoutStoreInput[] | ProductCacheUncheckedCreateWithoutStoreInput[]
connectOrCreate?: ProductCacheCreateOrConnectWithoutStoreInput | ProductCacheCreateOrConnectWithoutStoreInput[]
upsert?: ProductCacheUpsertWithWhereUniqueWithoutStoreInput | ProductCacheUpsertWithWhereUniqueWithoutStoreInput[]
createMany?: ProductCacheCreateManyStoreInputEnvelope
set?: ProductCacheWhereUniqueInput | ProductCacheWhereUniqueInput[]
disconnect?: ProductCacheWhereUniqueInput | ProductCacheWhereUniqueInput[]
delete?: ProductCacheWhereUniqueInput | ProductCacheWhereUniqueInput[]
connect?: ProductCacheWhereUniqueInput | ProductCacheWhereUniqueInput[]
update?: ProductCacheUpdateWithWhereUniqueWithoutStoreInput | ProductCacheUpdateWithWhereUniqueWithoutStoreInput[]
updateMany?: ProductCacheUpdateManyWithWhereWithoutStoreInput | ProductCacheUpdateManyWithWhereWithoutStoreInput[]
deleteMany?: ProductCacheScalarWhereInput | ProductCacheScalarWhereInput[]
}
export type CartUncheckedUpdateManyWithoutStoreNestedInput = {
create?: XOR<CartCreateWithoutStoreInput, CartUncheckedCreateWithoutStoreInput> | CartCreateWithoutStoreInput[] | CartUncheckedCreateWithoutStoreInput[]
connectOrCreate?: CartCreateOrConnectWithoutStoreInput | CartCreateOrConnectWithoutStoreInput[]
upsert?: CartUpsertWithWhereUniqueWithoutStoreInput | CartUpsertWithWhereUniqueWithoutStoreInput[]
createMany?: CartCreateManyStoreInputEnvelope
set?: CartWhereUniqueInput | CartWhereUniqueInput[]
disconnect?: CartWhereUniqueInput | CartWhereUniqueInput[]
delete?: CartWhereUniqueInput | CartWhereUniqueInput[]
connect?: CartWhereUniqueInput | CartWhereUniqueInput[]
update?: CartUpdateWithWhereUniqueWithoutStoreInput | CartUpdateWithWhereUniqueWithoutStoreInput[]
updateMany?: CartUpdateManyWithWhereWithoutStoreInput | CartUpdateManyWithWhereWithoutStoreInput[]
deleteMany?: CartScalarWhereInput | CartScalarWhereInput[]
}
export type ProductCacheUncheckedUpdateManyWithoutStoreNestedInput = {
create?: XOR<ProductCacheCreateWithoutStoreInput, ProductCacheUncheckedCreateWithoutStoreInput> | ProductCacheCreateWithoutStoreInput[] | ProductCacheUncheckedCreateWithoutStoreInput[]
connectOrCreate?: ProductCacheCreateOrConnectWithoutStoreInput | ProductCacheCreateOrConnectWithoutStoreInput[]
upsert?: ProductCacheUpsertWithWhereUniqueWithoutStoreInput | ProductCacheUpsertWithWhereUniqueWithoutStoreInput[]
createMany?: ProductCacheCreateManyStoreInputEnvelope
set?: ProductCacheWhereUniqueInput | ProductCacheWhereUniqueInput[]
disconnect?: ProductCacheWhereUniqueInput | ProductCacheWhereUniqueInput[]
delete?: ProductCacheWhereUniqueInput | ProductCacheWhereUniqueInput[]
connect?: ProductCacheWhereUniqueInput | ProductCacheWhereUniqueInput[]
update?: ProductCacheUpdateWithWhereUniqueWithoutStoreInput | ProductCacheUpdateWithWhereUniqueWithoutStoreInput[]
updateMany?: ProductCacheUpdateManyWithWhereWithoutStoreInput | ProductCacheUpdateManyWithWhereWithoutStoreInput[]
deleteMany?: ProductCacheScalarWhereInput | ProductCacheScalarWhereInput[]
}
export type StoreCreateNestedOneWithoutCartsInput = {
create?: XOR<StoreCreateWithoutCartsInput, StoreUncheckedCreateWithoutCartsInput>
connectOrCreate?: StoreCreateOrConnectWithoutCartsInput
connect?: StoreWhereUniqueInput
}
export type UserCreateNestedOneWithoutCartsInput = {
create?: XOR<UserCreateWithoutCartsInput, UserUncheckedCreateWithoutCartsInput>
connectOrCreate?: UserCreateOrConnectWithoutCartsInput
connect?: UserWhereUniqueInput
}
export type CartItemCreateNestedManyWithoutCartInput = {
create?: XOR<CartItemCreateWithoutCartInput, CartItemUncheckedCreateWithoutCartInput> | CartItemCreateWithoutCartInput[] | CartItemUncheckedCreateWithoutCartInput[]
connectOrCreate?: CartItemCreateOrConnectWithoutCartInput | CartItemCreateOrConnectWithoutCartInput[]
createMany?: CartItemCreateManyCartInputEnvelope
connect?: CartItemWhereUniqueInput | CartItemWhereUniqueInput[]
}
export type CartItemUncheckedCreateNestedManyWithoutCartInput = {
create?: XOR<CartItemCreateWithoutCartInput, CartItemUncheckedCreateWithoutCartInput> | CartItemCreateWithoutCartInput[] | CartItemUncheckedCreateWithoutCartInput[]
connectOrCreate?: CartItemCreateOrConnectWithoutCartInput | CartItemCreateOrConnectWithoutCartInput[]
createMany?: CartItemCreateManyCartInputEnvelope
connect?: CartItemWhereUniqueInput | CartItemWhereUniqueInput[]
}
export type StoreUpdateOneRequiredWithoutCartsNestedInput = {
create?: XOR<StoreCreateWithoutCartsInput, StoreUncheckedCreateWithoutCartsInput>
connectOrCreate?: StoreCreateOrConnectWithoutCartsInput
upsert?: StoreUpsertWithoutCartsInput
connect?: StoreWhereUniqueInput
update?: XOR<XOR<StoreUpdateToOneWithWhereWithoutCartsInput, StoreUpdateWithoutCartsInput>, StoreUncheckedUpdateWithoutCartsInput>
}
export type UserUpdateOneWithoutCartsNestedInput = {
create?: XOR<UserCreateWithoutCartsInput, UserUncheckedCreateWithoutCartsInput>
connectOrCreate?: UserCreateOrConnectWithoutCartsInput
upsert?: UserUpsertWithoutCartsInput
disconnect?: UserWhereInput | boolean
delete?: UserWhereInput | boolean
connect?: UserWhereUniqueInput
update?: XOR<XOR<UserUpdateToOneWithWhereWithoutCartsInput, UserUpdateWithoutCartsInput>, UserUncheckedUpdateWithoutCartsInput>
}
export type CartItemUpdateManyWithoutCartNestedInput = {
create?: XOR<CartItemCreateWithoutCartInput, CartItemUncheckedCreateWithoutCartInput> | CartItemCreateWithoutCartInput[] | CartItemUncheckedCreateWithoutCartInput[]
connectOrCreate?: CartItemCreateOrConnectWithoutCartInput | CartItemCreateOrConnectWithoutCartInput[]
upsert?: CartItemUpsertWithWhereUniqueWithoutCartInput | CartItemUpsertWithWhereUniqueWithoutCartInput[]
createMany?: CartItemCreateManyCartInputEnvelope
set?: CartItemWhereUniqueInput | CartItemWhereUniqueInput[]
disconnect?: CartItemWhereUniqueInput | CartItemWhereUniqueInput[]
delete?: CartItemWhereUniqueInput | CartItemWhereUniqueInput[]
connect?: CartItemWhereUniqueInput | CartItemWhereUniqueInput[]
update?: CartItemUpdateWithWhereUniqueWithoutCartInput | CartItemUpdateWithWhereUniqueWithoutCartInput[]
updateMany?: CartItemUpdateManyWithWhereWithoutCartInput | CartItemUpdateManyWithWhereWithoutCartInput[]
deleteMany?: CartItemScalarWhereInput | CartItemScalarWhereInput[]
}
export type CartItemUncheckedUpdateManyWithoutCartNestedInput = {
create?: XOR<CartItemCreateWithoutCartInput, CartItemUncheckedCreateWithoutCartInput> | CartItemCreateWithoutCartInput[] | CartItemUncheckedCreateWithoutCartInput[]
connectOrCreate?: CartItemCreateOrConnectWithoutCartInput | CartItemCreateOrConnectWithoutCartInput[]
upsert?: CartItemUpsertWithWhereUniqueWithoutCartInput | CartItemUpsertWithWhereUniqueWithoutCartInput[]
createMany?: CartItemCreateManyCartInputEnvelope
set?: CartItemWhereUniqueInput | CartItemWhereUniqueInput[]
disconnect?: CartItemWhereUniqueInput | CartItemWhereUniqueInput[]
delete?: CartItemWhereUniqueInput | CartItemWhereUniqueInput[]
connect?: CartItemWhereUniqueInput | CartItemWhereUniqueInput[]
update?: CartItemUpdateWithWhereUniqueWithoutCartInput | CartItemUpdateWithWhereUniqueWithoutCartInput[]
updateMany?: CartItemUpdateManyWithWhereWithoutCartInput | CartItemUpdateManyWithWhereWithoutCartInput[]
deleteMany?: CartItemScalarWhereInput | CartItemScalarWhereInput[]
}
export type CartCreateNestedOneWithoutItemsInput = {
create?: XOR<CartCreateWithoutItemsInput, CartUncheckedCreateWithoutItemsInput>
connectOrCreate?: CartCreateOrConnectWithoutItemsInput
connect?: CartWhereUniqueInput
}
export type IntFieldUpdateOperationsInput = {
set?: number
increment?: number
decrement?: number
multiply?: number
divide?: number
}
export type CartUpdateOneRequiredWithoutItemsNestedInput = {
create?: XOR<CartCreateWithoutItemsInput, CartUncheckedCreateWithoutItemsInput>
connectOrCreate?: CartCreateOrConnectWithoutItemsInput
upsert?: CartUpsertWithoutItemsInput
connect?: CartWhereUniqueInput
update?: XOR<XOR<CartUpdateToOneWithWhereWithoutItemsInput, CartUpdateWithoutItemsInput>, CartUncheckedUpdateWithoutItemsInput>
}
export type UserCreateNestedOneWithoutAddressInput = {
create?: XOR<UserCreateWithoutAddressInput, UserUncheckedCreateWithoutAddressInput>
connectOrCreate?: UserCreateOrConnectWithoutAddressInput
connect?: UserWhereUniqueInput
}
export type UserUpdateOneRequiredWithoutAddressNestedInput = {
create?: XOR<UserCreateWithoutAddressInput, UserUncheckedCreateWithoutAddressInput>
connectOrCreate?: UserCreateOrConnectWithoutAddressInput
upsert?: UserUpsertWithoutAddressInput
connect?: UserWhereUniqueInput
update?: XOR<XOR<UserUpdateToOneWithWhereWithoutAddressInput, UserUpdateWithoutAddressInput>, UserUncheckedUpdateWithoutAddressInput>
}
export type StoreCreateNestedOneWithoutProductsInput = {
create?: XOR<StoreCreateWithoutProductsInput, StoreUncheckedCreateWithoutProductsInput>
connectOrCreate?: StoreCreateOrConnectWithoutProductsInput
connect?: StoreWhereUniqueInput
}
export type BoolFieldUpdateOperationsInput = {
set?: boolean
}
export type StoreUpdateOneRequiredWithoutProductsNestedInput = {
create?: XOR<StoreCreateWithoutProductsInput, StoreUncheckedCreateWithoutProductsInput>
connectOrCreate?: StoreCreateOrConnectWithoutProductsInput
upsert?: StoreUpsertWithoutProductsInput
connect?: StoreWhereUniqueInput
update?: XOR<XOR<StoreUpdateToOneWithWhereWithoutProductsInput, StoreUpdateWithoutProductsInput>, StoreUncheckedUpdateWithoutProductsInput>
}
export type StoreCreateNestedOneWithoutUserInput = {
create?: XOR<StoreCreateWithoutUserInput, StoreUncheckedCreateWithoutUserInput>
connectOrCreate?: StoreCreateOrConnectWithoutUserInput
connect?: StoreWhereUniqueInput
}
export type CartCreateNestedManyWithoutUserInput = {
create?: XOR<CartCreateWithoutUserInput, CartUncheckedCreateWithoutUserInput> | CartCreateWithoutUserInput[] | CartUncheckedCreateWithoutUserInput[]
connectOrCreate?: CartCreateOrConnectWithoutUserInput | CartCreateOrConnectWithoutUserInput[]
createMany?: CartCreateManyUserInputEnvelope
connect?: CartWhereUniqueInput | CartWhereUniqueInput[]
}
export type UserAddressCreateNestedOneWithoutUserInput = {
create?: XOR<UserAddressCreateWithoutUserInput, UserAddressUncheckedCreateWithoutUserInput>
connectOrCreate?: UserAddressCreateOrConnectWithoutUserInput
connect?: UserAddressWhereUniqueInput
}
export type AccountCreateNestedManyWithoutUserInput = {
create?: XOR<AccountCreateWithoutUserInput, AccountUncheckedCreateWithoutUserInput> | AccountCreateWithoutUserInput[] | AccountUncheckedCreateWithoutUserInput[]
connectOrCreate?: AccountCreateOrConnectWithoutUserInput | AccountCreateOrConnectWithoutUserInput[]
createMany?: AccountCreateManyUserInputEnvelope
connect?: AccountWhereUniqueInput | AccountWhereUniqueInput[]
}
export type SessionCreateNestedManyWithoutUserInput = {
create?: XOR<SessionCreateWithoutUserInput, SessionUncheckedCreateWithoutUserInput> | SessionCreateWithoutUserInput[] | SessionUncheckedCreateWithoutUserInput[]
connectOrCreate?: SessionCreateOrConnectWithoutUserInput | SessionCreateOrConnectWithoutUserInput[]
createMany?: SessionCreateManyUserInputEnvelope
connect?: SessionWhereUniqueInput | SessionWhereUniqueInput[]
}
export type StoreUncheckedCreateNestedOneWithoutUserInput = {
create?: XOR<StoreCreateWithoutUserInput, StoreUncheckedCreateWithoutUserInput>
connectOrCreate?: StoreCreateOrConnectWithoutUserInput
connect?: StoreWhereUniqueInput
}
export type CartUncheckedCreateNestedManyWithoutUserInput = {
create?: XOR<CartCreateWithoutUserInput, CartUncheckedCreateWithoutUserInput> | CartCreateWithoutUserInput[] | CartUncheckedCreateWithoutUserInput[]
connectOrCreate?: CartCreateOrConnectWithoutUserInput | CartCreateOrConnectWithoutUserInput[]
createMany?: CartCreateManyUserInputEnvelope
connect?: CartWhereUniqueInput | CartWhereUniqueInput[]
}
export type UserAddressUncheckedCreateNestedOneWithoutUserInput = {
create?: XOR<UserAddressCreateWithoutUserInput, UserAddressUncheckedCreateWithoutUserInput>
connectOrCreate?: UserAddressCreateOrConnectWithoutUserInput
connect?: UserAddressWhereUniqueInput
}
export type AccountUncheckedCreateNestedManyWithoutUserInput = {
create?: XOR<AccountCreateWithoutUserInput, AccountUncheckedCreateWithoutUserInput> | AccountCreateWithoutUserInput[] | AccountUncheckedCreateWithoutUserInput[]
connectOrCreate?: AccountCreateOrConnectWithoutUserInput | AccountCreateOrConnectWithoutUserInput[]
createMany?: AccountCreateManyUserInputEnvelope
connect?: AccountWhereUniqueInput | AccountWhereUniqueInput[]
}
export type SessionUncheckedCreateNestedManyWithoutUserInput = {
create?: XOR<SessionCreateWithoutUserInput, SessionUncheckedCreateWithoutUserInput> | SessionCreateWithoutUserInput[] | SessionUncheckedCreateWithoutUserInput[]
connectOrCreate?: SessionCreateOrConnectWithoutUserInput | SessionCreateOrConnectWithoutUserInput[]
createMany?: SessionCreateManyUserInputEnvelope
connect?: SessionWhereUniqueInput | SessionWhereUniqueInput[]
}
export type EnumRoleFieldUpdateOperationsInput = {
set?: $Enums.Role
}
export type StoreUpdateOneWithoutUserNestedInput = {
create?: XOR<StoreCreateWithoutUserInput, StoreUncheckedCreateWithoutUserInput>
connectOrCreate?: StoreCreateOrConnectWithoutUserInput
upsert?: StoreUpsertWithoutUserInput
disconnect?: StoreWhereInput | boolean
delete?: StoreWhereInput | boolean
connect?: StoreWhereUniqueInput
update?: XOR<XOR<StoreUpdateToOneWithWhereWithoutUserInput, StoreUpdateWithoutUserInput>, StoreUncheckedUpdateWithoutUserInput>
}
export type CartUpdateManyWithoutUserNestedInput = {
create?: XOR<CartCreateWithoutUserInput, CartUncheckedCreateWithoutUserInput> | CartCreateWithoutUserInput[] | CartUncheckedCreateWithoutUserInput[]
connectOrCreate?: CartCreateOrConnectWithoutUserInput | CartCreateOrConnectWithoutUserInput[]
upsert?: CartUpsertWithWhereUniqueWithoutUserInput | CartUpsertWithWhereUniqueWithoutUserInput[]
createMany?: CartCreateManyUserInputEnvelope
set?: CartWhereUniqueInput | CartWhereUniqueInput[]
disconnect?: CartWhereUniqueInput | CartWhereUniqueInput[]
delete?: CartWhereUniqueInput | CartWhereUniqueInput[]
connect?: CartWhereUniqueInput | CartWhereUniqueInput[]
update?: CartUpdateWithWhereUniqueWithoutUserInput | CartUpdateWithWhereUniqueWithoutUserInput[]
updateMany?: CartUpdateManyWithWhereWithoutUserInput | CartUpdateManyWithWhereWithoutUserInput[]
deleteMany?: CartScalarWhereInput | CartScalarWhereInput[]
}
export type UserAddressUpdateOneWithoutUserNestedInput = {
create?: XOR<UserAddressCreateWithoutUserInput, UserAddressUncheckedCreateWithoutUserInput>
connectOrCreate?: UserAddressCreateOrConnectWithoutUserInput
upsert?: UserAddressUpsertWithoutUserInput
disconnect?: UserAddressWhereInput | boolean
delete?: UserAddressWhereInput | boolean
connect?: UserAddressWhereUniqueInput
update?: XOR<XOR<UserAddressUpdateToOneWithWhereWithoutUserInput, UserAddressUpdateWithoutUserInput>, UserAddressUncheckedUpdateWithoutUserInput>
}
export type AccountUpdateManyWithoutUserNestedInput = {
create?: XOR<AccountCreateWithoutUserInput, AccountUncheckedCreateWithoutUserInput> | AccountCreateWithoutUserInput[] | AccountUncheckedCreateWithoutUserInput[]
connectOrCreate?: AccountCreateOrConnectWithoutUserInput | AccountCreateOrConnectWithoutUserInput[]
upsert?: AccountUpsertWithWhereUniqueWithoutUserInput | AccountUpsertWithWhereUniqueWithoutUserInput[]
createMany?: AccountCreateManyUserInputEnvelope
set?: AccountWhereUniqueInput | AccountWhereUniqueInput[]
disconnect?: AccountWhereUniqueInput | AccountWhereUniqueInput[]
delete?: AccountWhereUniqueInput | AccountWhereUniqueInput[]
connect?: AccountWhereUniqueInput | AccountWhereUniqueInput[]
update?: AccountUpdateWithWhereUniqueWithoutUserInput | AccountUpdateWithWhereUniqueWithoutUserInput[]
updateMany?: AccountUpdateManyWithWhereWithoutUserInput | AccountUpdateManyWithWhereWithoutUserInput[]
deleteMany?: AccountScalarWhereInput | AccountScalarWhereInput[]
}
export type SessionUpdateManyWithoutUserNestedInput = {
create?: XOR<SessionCreateWithoutUserInput, SessionUncheckedCreateWithoutUserInput> | SessionCreateWithoutUserInput[] | SessionUncheckedCreateWithoutUserInput[]
connectOrCreate?: SessionCreateOrConnectWithoutUserInput | SessionCreateOrConnectWithoutUserInput[]
upsert?: SessionUpsertWithWhereUniqueWithoutUserInput | SessionUpsertWithWhereUniqueWithoutUserInput[]
createMany?: SessionCreateManyUserInputEnvelope
set?: SessionWhereUniqueInput | SessionWhereUniqueInput[]
disconnect?: SessionWhereUniqueInput | SessionWhereUniqueInput[]
delete?: SessionWhereUniqueInput | SessionWhereUniqueInput[]
connect?: SessionWhereUniqueInput | SessionWhereUniqueInput[]
update?: SessionUpdateWithWhereUniqueWithoutUserInput | SessionUpdateWithWhereUniqueWithoutUserInput[]
updateMany?: SessionUpdateManyWithWhereWithoutUserInput | SessionUpdateManyWithWhereWithoutUserInput[]
deleteMany?: SessionScalarWhereInput | SessionScalarWhereInput[]
}
export type StoreUncheckedUpdateOneWithoutUserNestedInput = {
create?: XOR<StoreCreateWithoutUserInput, StoreUncheckedCreateWithoutUserInput>
connectOrCreate?: StoreCreateOrConnectWithoutUserInput
upsert?: StoreUpsertWithoutUserInput
disconnect?: StoreWhereInput | boolean
delete?: StoreWhereInput | boolean
connect?: StoreWhereUniqueInput
update?: XOR<XOR<StoreUpdateToOneWithWhereWithoutUserInput, StoreUpdateWithoutUserInput>, StoreUncheckedUpdateWithoutUserInput>
}
export type CartUncheckedUpdateManyWithoutUserNestedInput = {
create?: XOR<CartCreateWithoutUserInput, CartUncheckedCreateWithoutUserInput> | CartCreateWithoutUserInput[] | CartUncheckedCreateWithoutUserInput[]
connectOrCreate?: CartCreateOrConnectWithoutUserInput | CartCreateOrConnectWithoutUserInput[]
upsert?: CartUpsertWithWhereUniqueWithoutUserInput | CartUpsertWithWhereUniqueWithoutUserInput[]
createMany?: CartCreateManyUserInputEnvelope
set?: CartWhereUniqueInput | CartWhereUniqueInput[]
disconnect?: CartWhereUniqueInput | CartWhereUniqueInput[]
delete?: CartWhereUniqueInput | CartWhereUniqueInput[]
connect?: CartWhereUniqueInput | CartWhereUniqueInput[]
update?: CartUpdateWithWhereUniqueWithoutUserInput | CartUpdateWithWhereUniqueWithoutUserInput[]
updateMany?: CartUpdateManyWithWhereWithoutUserInput | CartUpdateManyWithWhereWithoutUserInput[]
deleteMany?: CartScalarWhereInput | CartScalarWhereInput[]
}
export type UserAddressUncheckedUpdateOneWithoutUserNestedInput = {
create?: XOR<UserAddressCreateWithoutUserInput, UserAddressUncheckedCreateWithoutUserInput>
connectOrCreate?: UserAddressCreateOrConnectWithoutUserInput
upsert?: UserAddressUpsertWithoutUserInput
disconnect?: UserAddressWhereInput | boolean
delete?: UserAddressWhereInput | boolean
connect?: UserAddressWhereUniqueInput
update?: XOR<XOR<UserAddressUpdateToOneWithWhereWithoutUserInput, UserAddressUpdateWithoutUserInput>, UserAddressUncheckedUpdateWithoutUserInput>
}
export type AccountUncheckedUpdateManyWithoutUserNestedInput = {
create?: XOR<AccountCreateWithoutUserInput, AccountUncheckedCreateWithoutUserInput> | AccountCreateWithoutUserInput[] | AccountUncheckedCreateWithoutUserInput[]
connectOrCreate?: AccountCreateOrConnectWithoutUserInput | AccountCreateOrConnectWithoutUserInput[]
upsert?: AccountUpsertWithWhereUniqueWithoutUserInput | AccountUpsertWithWhereUniqueWithoutUserInput[]
createMany?: AccountCreateManyUserInputEnvelope
set?: AccountWhereUniqueInput | AccountWhereUniqueInput[]
disconnect?: AccountWhereUniqueInput | AccountWhereUniqueInput[]
delete?: AccountWhereUniqueInput | AccountWhereUniqueInput[]
connect?: AccountWhereUniqueInput | AccountWhereUniqueInput[]
update?: AccountUpdateWithWhereUniqueWithoutUserInput | AccountUpdateWithWhereUniqueWithoutUserInput[]
updateMany?: AccountUpdateManyWithWhereWithoutUserInput | AccountUpdateManyWithWhereWithoutUserInput[]
deleteMany?: AccountScalarWhereInput | AccountScalarWhereInput[]
}
export type SessionUncheckedUpdateManyWithoutUserNestedInput = {
create?: XOR<SessionCreateWithoutUserInput, SessionUncheckedCreateWithoutUserInput> | SessionCreateWithoutUserInput[] | SessionUncheckedCreateWithoutUserInput[]
connectOrCreate?: SessionCreateOrConnectWithoutUserInput | SessionCreateOrConnectWithoutUserInput[]
upsert?: SessionUpsertWithWhereUniqueWithoutUserInput | SessionUpsertWithWhereUniqueWithoutUserInput[]
createMany?: SessionCreateManyUserInputEnvelope
set?: SessionWhereUniqueInput | SessionWhereUniqueInput[]
disconnect?: SessionWhereUniqueInput | SessionWhereUniqueInput[]
delete?: SessionWhereUniqueInput | SessionWhereUniqueInput[]
connect?: SessionWhereUniqueInput | SessionWhereUniqueInput[]
update?: SessionUpdateWithWhereUniqueWithoutUserInput | SessionUpdateWithWhereUniqueWithoutUserInput[]
updateMany?: SessionUpdateManyWithWhereWithoutUserInput | SessionUpdateManyWithWhereWithoutUserInput[]
deleteMany?: SessionScalarWhereInput | SessionScalarWhereInput[]
}
export type UserCreateNestedOneWithoutSessionsInput = {
create?: XOR<UserCreateWithoutSessionsInput, UserUncheckedCreateWithoutSessionsInput>
connectOrCreate?: UserCreateOrConnectWithoutSessionsInput
connect?: UserWhereUniqueInput
}
export type UserUpdateOneRequiredWithoutSessionsNestedInput = {
create?: XOR<UserCreateWithoutSessionsInput, UserUncheckedCreateWithoutSessionsInput>
connectOrCreate?: UserCreateOrConnectWithoutSessionsInput
upsert?: UserUpsertWithoutSessionsInput
connect?: UserWhereUniqueInput
update?: XOR<XOR<UserUpdateToOneWithWhereWithoutSessionsInput, UserUpdateWithoutSessionsInput>, UserUncheckedUpdateWithoutSessionsInput>
}
export type UserCreateNestedOneWithoutAccountsInput = {
create?: XOR<UserCreateWithoutAccountsInput, UserUncheckedCreateWithoutAccountsInput>
connectOrCreate?: UserCreateOrConnectWithoutAccountsInput
connect?: UserWhereUniqueInput
}
export type NullableIntFieldUpdateOperationsInput = {
set?: number | null
increment?: number
decrement?: number
multiply?: number
divide?: number
}
export type UserUpdateOneRequiredWithoutAccountsNestedInput = {
create?: XOR<UserCreateWithoutAccountsInput, UserUncheckedCreateWithoutAccountsInput>
connectOrCreate?: UserCreateOrConnectWithoutAccountsInput
upsert?: UserUpsertWithoutAccountsInput
connect?: UserWhereUniqueInput
update?: XOR<XOR<UserUpdateToOneWithWhereWithoutAccountsInput, UserUpdateWithoutAccountsInput>, UserUncheckedUpdateWithoutAccountsInput>
}
export type NestedStringFilter<$PrismaModel = never> = {
equals?: string | StringFieldRefInput<$PrismaModel>
in?: string[]
notIn?: string[]
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 NestedStringNullableFilter<$PrismaModel = never> = {
equals?: string | StringFieldRefInput<$PrismaModel> | null
in?: string[] | null
notIn?: string[] | 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 NestedDateTimeFilter<$PrismaModel = never> = {
equals?: Date | string | DateTimeFieldRefInput<$PrismaModel>
in?: Date[] | string[]
notIn?: Date[] | string[]
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 NestedStringWithAggregatesFilter<$PrismaModel = never> = {
equals?: string | StringFieldRefInput<$PrismaModel>
in?: string[]
notIn?: string[]
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 NestedIntFilter<$PrismaModel = never> = {
equals?: number | IntFieldRefInput<$PrismaModel>
in?: number[]
notIn?: number[]
lt?: number | IntFieldRefInput<$PrismaModel>
lte?: number | IntFieldRefInput<$PrismaModel>
gt?: number | IntFieldRefInput<$PrismaModel>
gte?: number | IntFieldRefInput<$PrismaModel>
not?: NestedIntFilter<$PrismaModel> | number
}
export type NestedStringNullableWithAggregatesFilter<$PrismaModel = never> = {
equals?: string | StringFieldRefInput<$PrismaModel> | null
in?: string[] | null
notIn?: string[] | 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[] | null
notIn?: number[] | null
lt?: number | IntFieldRefInput<$PrismaModel>
lte?: number | IntFieldRefInput<$PrismaModel>
gt?: number | IntFieldRefInput<$PrismaModel>
gte?: number | IntFieldRefInput<$PrismaModel>
not?: NestedIntNullableFilter<$PrismaModel> | number | null
}
export type NestedJsonNullableFilter<$PrismaModel = never> =
| PatchUndefined<
Either<Required<NestedJsonNullableFilterBase<$PrismaModel>>, Exclude<keyof Required<NestedJsonNullableFilterBase<$PrismaModel>>, 'path'>>,
Required<NestedJsonNullableFilterBase<$PrismaModel>>
>
| OptionalFlat<Omit<Required<NestedJsonNullableFilterBase<$PrismaModel>>, 'path'>>
export type NestedJsonNullableFilterBase<$PrismaModel = never> = {
equals?: InputJsonValue | JsonFieldRefInput<$PrismaModel> | JsonNullValueFilter
path?: string
mode?: QueryMode | EnumQueryModeFieldRefInput<$PrismaModel>
string_contains?: string | StringFieldRefInput<$PrismaModel>
string_starts_with?: string | StringFieldRefInput<$PrismaModel>
string_ends_with?: string | StringFieldRefInput<$PrismaModel>
array_starts_with?: InputJsonValue | JsonFieldRefInput<$PrismaModel> | null
array_ends_with?: InputJsonValue | JsonFieldRefInput<$PrismaModel> | null
not?: InputJsonValue | JsonFieldRefInput<$PrismaModel> | JsonNullValueFilter
}
export type NestedDateTimeWithAggregatesFilter<$PrismaModel = never> = {
equals?: Date | string | DateTimeFieldRefInput<$PrismaModel>
in?: Date[] | string[]
notIn?: Date[] | string[]
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 NestedIntWithAggregatesFilter<$PrismaModel = never> = {
equals?: number | IntFieldRefInput<$PrismaModel>
in?: number[]
notIn?: number[]
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[]
notIn?: number[]
lt?: number | FloatFieldRefInput<$PrismaModel>
lte?: number | FloatFieldRefInput<$PrismaModel>
gt?: number | FloatFieldRefInput<$PrismaModel>
gte?: number | FloatFieldRefInput<$PrismaModel>
not?: NestedFloatFilter<$PrismaModel> | number
}
export type NestedJsonFilter<$PrismaModel = never> =
| PatchUndefined<
Either<Required<NestedJsonFilterBase<$PrismaModel>>, Exclude<keyof Required<NestedJsonFilterBase<$PrismaModel>>, 'path'>>,
Required<NestedJsonFilterBase<$PrismaModel>>
>
| OptionalFlat<Omit<Required<NestedJsonFilterBase<$PrismaModel>>, 'path'>>
export type NestedJsonFilterBase<$PrismaModel = never> = {
equals?: InputJsonValue | JsonFieldRefInput<$PrismaModel> | JsonNullValueFilter
path?: string
mode?: QueryMode | EnumQueryModeFieldRefInput<$PrismaModel>
string_contains?: string | StringFieldRefInput<$PrismaModel>
string_starts_with?: string | StringFieldRefInput<$PrismaModel>
string_ends_with?: string | StringFieldRefInput<$PrismaModel>
array_starts_with?: InputJsonValue | JsonFieldRefInput<$PrismaModel> | null
array_ends_with?: InputJsonValue | JsonFieldRefInput<$PrismaModel> | null
not?: InputJsonValue | JsonFieldRefInput<$PrismaModel> | JsonNullValueFilter
}
export type NestedBoolFilter<$PrismaModel = never> = {
equals?: boolean | BooleanFieldRefInput<$PrismaModel>
not?: NestedBoolFilter<$PrismaModel> | boolean
}
export type NestedBoolWithAggregatesFilter<$PrismaModel = never> = {
equals?: boolean | BooleanFieldRefInput<$PrismaModel>
not?: NestedBoolWithAggregatesFilter<$PrismaModel> | boolean
_count?: NestedIntFilter<$PrismaModel>
_min?: NestedBoolFilter<$PrismaModel>
_max?: NestedBoolFilter<$PrismaModel>
}
export type NestedEnumRoleFilter<$PrismaModel = never> = {
equals?: $Enums.Role | EnumRoleFieldRefInput<$PrismaModel>
in?: $Enums.Role[]
notIn?: $Enums.Role[]
not?: NestedEnumRoleFilter<$PrismaModel> | $Enums.Role
}
export type NestedEnumRoleWithAggregatesFilter<$PrismaModel = never> = {
equals?: $Enums.Role | EnumRoleFieldRefInput<$PrismaModel>
in?: $Enums.Role[]
notIn?: $Enums.Role[]
not?: NestedEnumRoleWithAggregatesFilter<$PrismaModel> | $Enums.Role
_count?: NestedIntFilter<$PrismaModel>
_min?: NestedEnumRoleFilter<$PrismaModel>
_max?: NestedEnumRoleFilter<$PrismaModel>
}
export type NestedIntNullableWithAggregatesFilter<$PrismaModel = never> = {
equals?: number | IntFieldRefInput<$PrismaModel> | null
in?: number[] | null
notIn?: number[] | null
lt?: number | IntFieldRefInput<$PrismaModel>
lte?: number | IntFieldRefInput<$PrismaModel>
gt?: number | IntFieldRefInput<$PrismaModel>
gte?: number | IntFieldRefInput<$PrismaModel>
not?: NestedIntNullableWithAggregatesFilter<$PrismaModel> | number | null
_count?: NestedIntNullableFilter<$PrismaModel>
_avg?: NestedFloatNullableFilter<$PrismaModel>
_sum?: NestedIntNullableFilter<$PrismaModel>
_min?: NestedIntNullableFilter<$PrismaModel>
_max?: NestedIntNullableFilter<$PrismaModel>
}
export type NestedFloatNullableFilter<$PrismaModel = never> = {
equals?: number | FloatFieldRefInput<$PrismaModel> | null
in?: number[] | null
notIn?: number[] | null
lt?: number | FloatFieldRefInput<$PrismaModel>
lte?: number | FloatFieldRefInput<$PrismaModel>
gt?: number | FloatFieldRefInput<$PrismaModel>
gte?: number | FloatFieldRefInput<$PrismaModel>
not?: NestedFloatNullableFilter<$PrismaModel> | number | null
}
export type UserCreateWithoutStoreInput = {
id?: string
name: string
email: string
passwordHash: string
role?: $Enums.Role
createdAt?: Date | string
updatedAt?: Date | string
carts?: CartCreateNestedManyWithoutUserInput
address?: UserAddressCreateNestedOneWithoutUserInput
accounts?: AccountCreateNestedManyWithoutUserInput
sessions?: SessionCreateNestedManyWithoutUserInput
}
export type UserUncheckedCreateWithoutStoreInput = {
id?: string
name: string
email: string
passwordHash: string
role?: $Enums.Role
createdAt?: Date | string
updatedAt?: Date | string
carts?: CartUncheckedCreateNestedManyWithoutUserInput
address?: UserAddressUncheckedCreateNestedOneWithoutUserInput
accounts?: AccountUncheckedCreateNestedManyWithoutUserInput
sessions?: SessionUncheckedCreateNestedManyWithoutUserInput
}
export type UserCreateOrConnectWithoutStoreInput = {
where: UserWhereUniqueInput
create: XOR<UserCreateWithoutStoreInput, UserUncheckedCreateWithoutStoreInput>
}
export type CartCreateWithoutStoreInput = {
id?: string
sessionId: string
createdAt?: Date | string
updatedAt?: Date | string
user?: UserCreateNestedOneWithoutCartsInput
items?: CartItemCreateNestedManyWithoutCartInput
}
export type CartUncheckedCreateWithoutStoreInput = {
id?: string
sessionId: string
userId?: string | null
createdAt?: Date | string
updatedAt?: Date | string
items?: CartItemUncheckedCreateNestedManyWithoutCartInput
}
export type CartCreateOrConnectWithoutStoreInput = {
where: CartWhereUniqueInput
create: XOR<CartCreateWithoutStoreInput, CartUncheckedCreateWithoutStoreInput>
}
export type CartCreateManyStoreInputEnvelope = {
data: CartCreateManyStoreInput | CartCreateManyStoreInput[]
}
export type ProductCacheCreateWithoutStoreInput = {
id?: string
stripeProductId: string
stripePriceId: string
name: string
description?: string | null
unitAmount: number
currency: string
active?: boolean
createdAt?: Date | string
updatedAt?: Date | string
}
export type ProductCacheUncheckedCreateWithoutStoreInput = {
id?: string
stripeProductId: string
stripePriceId: string
name: string
description?: string | null
unitAmount: number
currency: string
active?: boolean
createdAt?: Date | string
updatedAt?: Date | string
}
export type ProductCacheCreateOrConnectWithoutStoreInput = {
where: ProductCacheWhereUniqueInput
create: XOR<ProductCacheCreateWithoutStoreInput, ProductCacheUncheckedCreateWithoutStoreInput>
}
export type ProductCacheCreateManyStoreInputEnvelope = {
data: ProductCacheCreateManyStoreInput | ProductCacheCreateManyStoreInput[]
}
export type UserUpsertWithoutStoreInput = {
update: XOR<UserUpdateWithoutStoreInput, UserUncheckedUpdateWithoutStoreInput>
create: XOR<UserCreateWithoutStoreInput, UserUncheckedCreateWithoutStoreInput>
where?: UserWhereInput
}
export type UserUpdateToOneWithWhereWithoutStoreInput = {
where?: UserWhereInput
data: XOR<UserUpdateWithoutStoreInput, UserUncheckedUpdateWithoutStoreInput>
}
export type UserUpdateWithoutStoreInput = {
id?: StringFieldUpdateOperationsInput | string
name?: StringFieldUpdateOperationsInput | string
email?: StringFieldUpdateOperationsInput | string
passwordHash?: StringFieldUpdateOperationsInput | string
role?: EnumRoleFieldUpdateOperationsInput | $Enums.Role
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
carts?: CartUpdateManyWithoutUserNestedInput
address?: UserAddressUpdateOneWithoutUserNestedInput
accounts?: AccountUpdateManyWithoutUserNestedInput
sessions?: SessionUpdateManyWithoutUserNestedInput
}
export type UserUncheckedUpdateWithoutStoreInput = {
id?: StringFieldUpdateOperationsInput | string
name?: StringFieldUpdateOperationsInput | string
email?: StringFieldUpdateOperationsInput | string
passwordHash?: StringFieldUpdateOperationsInput | string
role?: EnumRoleFieldUpdateOperationsInput | $Enums.Role
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
carts?: CartUncheckedUpdateManyWithoutUserNestedInput
address?: UserAddressUncheckedUpdateOneWithoutUserNestedInput
accounts?: AccountUncheckedUpdateManyWithoutUserNestedInput
sessions?: SessionUncheckedUpdateManyWithoutUserNestedInput
}
export type CartUpsertWithWhereUniqueWithoutStoreInput = {
where: CartWhereUniqueInput
update: XOR<CartUpdateWithoutStoreInput, CartUncheckedUpdateWithoutStoreInput>
create: XOR<CartCreateWithoutStoreInput, CartUncheckedCreateWithoutStoreInput>
}
export type CartUpdateWithWhereUniqueWithoutStoreInput = {
where: CartWhereUniqueInput
data: XOR<CartUpdateWithoutStoreInput, CartUncheckedUpdateWithoutStoreInput>
}
export type CartUpdateManyWithWhereWithoutStoreInput = {
where: CartScalarWhereInput
data: XOR<CartUpdateManyMutationInput, CartUncheckedUpdateManyWithoutStoreInput>
}
export type CartScalarWhereInput = {
AND?: CartScalarWhereInput | CartScalarWhereInput[]
OR?: CartScalarWhereInput[]
NOT?: CartScalarWhereInput | CartScalarWhereInput[]
id?: StringFilter<"Cart"> | string
storeId?: StringFilter<"Cart"> | string
sessionId?: StringFilter<"Cart"> | string
userId?: StringNullableFilter<"Cart"> | string | null
createdAt?: DateTimeFilter<"Cart"> | Date | string
updatedAt?: DateTimeFilter<"Cart"> | Date | string
}
export type ProductCacheUpsertWithWhereUniqueWithoutStoreInput = {
where: ProductCacheWhereUniqueInput
update: XOR<ProductCacheUpdateWithoutStoreInput, ProductCacheUncheckedUpdateWithoutStoreInput>
create: XOR<ProductCacheCreateWithoutStoreInput, ProductCacheUncheckedCreateWithoutStoreInput>
}
export type ProductCacheUpdateWithWhereUniqueWithoutStoreInput = {
where: ProductCacheWhereUniqueInput
data: XOR<ProductCacheUpdateWithoutStoreInput, ProductCacheUncheckedUpdateWithoutStoreInput>
}
export type ProductCacheUpdateManyWithWhereWithoutStoreInput = {
where: ProductCacheScalarWhereInput
data: XOR<ProductCacheUpdateManyMutationInput, ProductCacheUncheckedUpdateManyWithoutStoreInput>
}
export type ProductCacheScalarWhereInput = {
AND?: ProductCacheScalarWhereInput | ProductCacheScalarWhereInput[]
OR?: ProductCacheScalarWhereInput[]
NOT?: ProductCacheScalarWhereInput | ProductCacheScalarWhereInput[]
id?: StringFilter<"ProductCache"> | string
storeId?: StringFilter<"ProductCache"> | string
stripeProductId?: StringFilter<"ProductCache"> | string
stripePriceId?: StringFilter<"ProductCache"> | string
name?: StringFilter<"ProductCache"> | string
description?: StringNullableFilter<"ProductCache"> | string | null
unitAmount?: IntFilter<"ProductCache"> | number
currency?: StringFilter<"ProductCache"> | string
active?: BoolFilter<"ProductCache"> | boolean
createdAt?: DateTimeFilter<"ProductCache"> | Date | string
updatedAt?: DateTimeFilter<"ProductCache"> | Date | string
}
export type StoreCreateWithoutCartsInput = {
id?: string
slug: string
stripeAccountId?: string | null
name?: string | null
website?: string | null
defaultSellingPreferences?: NullableJsonNullValueInput | InputJsonValue
createdAt?: Date | string
updatedAt?: Date | string
user: UserCreateNestedOneWithoutStoreInput
products?: ProductCacheCreateNestedManyWithoutStoreInput
}
export type StoreUncheckedCreateWithoutCartsInput = {
id?: string
slug: string
stripeAccountId?: string | null
userId: string
name?: string | null
website?: string | null
defaultSellingPreferences?: NullableJsonNullValueInput | InputJsonValue
createdAt?: Date | string
updatedAt?: Date | string
products?: ProductCacheUncheckedCreateNestedManyWithoutStoreInput
}
export type StoreCreateOrConnectWithoutCartsInput = {
where: StoreWhereUniqueInput
create: XOR<StoreCreateWithoutCartsInput, StoreUncheckedCreateWithoutCartsInput>
}
export type UserCreateWithoutCartsInput = {
id?: string
name: string
email: string
passwordHash: string
role?: $Enums.Role
createdAt?: Date | string
updatedAt?: Date | string
store?: StoreCreateNestedOneWithoutUserInput
address?: UserAddressCreateNestedOneWithoutUserInput
accounts?: AccountCreateNestedManyWithoutUserInput
sessions?: SessionCreateNestedManyWithoutUserInput
}
export type UserUncheckedCreateWithoutCartsInput = {
id?: string
name: string
email: string
passwordHash: string
role?: $Enums.Role
createdAt?: Date | string
updatedAt?: Date | string
store?: StoreUncheckedCreateNestedOneWithoutUserInput
address?: UserAddressUncheckedCreateNestedOneWithoutUserInput
accounts?: AccountUncheckedCreateNestedManyWithoutUserInput
sessions?: SessionUncheckedCreateNestedManyWithoutUserInput
}
export type UserCreateOrConnectWithoutCartsInput = {
where: UserWhereUniqueInput
create: XOR<UserCreateWithoutCartsInput, UserUncheckedCreateWithoutCartsInput>
}
export type CartItemCreateWithoutCartInput = {
id?: string
productId: string
priceId: string
name: string
unitAmount: number
currency: string
quantity: number
createdAt?: Date | string
updatedAt?: Date | string
}
export type CartItemUncheckedCreateWithoutCartInput = {
id?: string
productId: string
priceId: string
name: string
unitAmount: number
currency: string
quantity: number
createdAt?: Date | string
updatedAt?: Date | string
}
export type CartItemCreateOrConnectWithoutCartInput = {
where: CartItemWhereUniqueInput
create: XOR<CartItemCreateWithoutCartInput, CartItemUncheckedCreateWithoutCartInput>
}
export type CartItemCreateManyCartInputEnvelope = {
data: CartItemCreateManyCartInput | CartItemCreateManyCartInput[]
}
export type StoreUpsertWithoutCartsInput = {
update: XOR<StoreUpdateWithoutCartsInput, StoreUncheckedUpdateWithoutCartsInput>
create: XOR<StoreCreateWithoutCartsInput, StoreUncheckedCreateWithoutCartsInput>
where?: StoreWhereInput
}
export type StoreUpdateToOneWithWhereWithoutCartsInput = {
where?: StoreWhereInput
data: XOR<StoreUpdateWithoutCartsInput, StoreUncheckedUpdateWithoutCartsInput>
}
export type StoreUpdateWithoutCartsInput = {
id?: StringFieldUpdateOperationsInput | string
slug?: StringFieldUpdateOperationsInput | string
stripeAccountId?: NullableStringFieldUpdateOperationsInput | string | null
name?: NullableStringFieldUpdateOperationsInput | string | null
website?: NullableStringFieldUpdateOperationsInput | string | null
defaultSellingPreferences?: NullableJsonNullValueInput | InputJsonValue
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
user?: UserUpdateOneRequiredWithoutStoreNestedInput
products?: ProductCacheUpdateManyWithoutStoreNestedInput
}
export type StoreUncheckedUpdateWithoutCartsInput = {
id?: StringFieldUpdateOperationsInput | string
slug?: StringFieldUpdateOperationsInput | string
stripeAccountId?: NullableStringFieldUpdateOperationsInput | string | null
userId?: StringFieldUpdateOperationsInput | string
name?: NullableStringFieldUpdateOperationsInput | string | null
website?: NullableStringFieldUpdateOperationsInput | string | null
defaultSellingPreferences?: NullableJsonNullValueInput | InputJsonValue
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
products?: ProductCacheUncheckedUpdateManyWithoutStoreNestedInput
}
export type UserUpsertWithoutCartsInput = {
update: XOR<UserUpdateWithoutCartsInput, UserUncheckedUpdateWithoutCartsInput>
create: XOR<UserCreateWithoutCartsInput, UserUncheckedCreateWithoutCartsInput>
where?: UserWhereInput
}
export type UserUpdateToOneWithWhereWithoutCartsInput = {
where?: UserWhereInput
data: XOR<UserUpdateWithoutCartsInput, UserUncheckedUpdateWithoutCartsInput>
}
export type UserUpdateWithoutCartsInput = {
id?: StringFieldUpdateOperationsInput | string
name?: StringFieldUpdateOperationsInput | string
email?: StringFieldUpdateOperationsInput | string
passwordHash?: StringFieldUpdateOperationsInput | string
role?: EnumRoleFieldUpdateOperationsInput | $Enums.Role
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
store?: StoreUpdateOneWithoutUserNestedInput
address?: UserAddressUpdateOneWithoutUserNestedInput
accounts?: AccountUpdateManyWithoutUserNestedInput
sessions?: SessionUpdateManyWithoutUserNestedInput
}
export type UserUncheckedUpdateWithoutCartsInput = {
id?: StringFieldUpdateOperationsInput | string
name?: StringFieldUpdateOperationsInput | string
email?: StringFieldUpdateOperationsInput | string
passwordHash?: StringFieldUpdateOperationsInput | string
role?: EnumRoleFieldUpdateOperationsInput | $Enums.Role
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
store?: StoreUncheckedUpdateOneWithoutUserNestedInput
address?: UserAddressUncheckedUpdateOneWithoutUserNestedInput
accounts?: AccountUncheckedUpdateManyWithoutUserNestedInput
sessions?: SessionUncheckedUpdateManyWithoutUserNestedInput
}
export type CartItemUpsertWithWhereUniqueWithoutCartInput = {
where: CartItemWhereUniqueInput
update: XOR<CartItemUpdateWithoutCartInput, CartItemUncheckedUpdateWithoutCartInput>
create: XOR<CartItemCreateWithoutCartInput, CartItemUncheckedCreateWithoutCartInput>
}
export type CartItemUpdateWithWhereUniqueWithoutCartInput = {
where: CartItemWhereUniqueInput
data: XOR<CartItemUpdateWithoutCartInput, CartItemUncheckedUpdateWithoutCartInput>
}
export type CartItemUpdateManyWithWhereWithoutCartInput = {
where: CartItemScalarWhereInput
data: XOR<CartItemUpdateManyMutationInput, CartItemUncheckedUpdateManyWithoutCartInput>
}
export type CartItemScalarWhereInput = {
AND?: CartItemScalarWhereInput | CartItemScalarWhereInput[]
OR?: CartItemScalarWhereInput[]
NOT?: CartItemScalarWhereInput | CartItemScalarWhereInput[]
id?: StringFilter<"CartItem"> | string
cartId?: StringFilter<"CartItem"> | string
productId?: StringFilter<"CartItem"> | string
priceId?: StringFilter<"CartItem"> | string
name?: StringFilter<"CartItem"> | string
unitAmount?: IntFilter<"CartItem"> | number
currency?: StringFilter<"CartItem"> | string
quantity?: IntFilter<"CartItem"> | number
createdAt?: DateTimeFilter<"CartItem"> | Date | string
updatedAt?: DateTimeFilter<"CartItem"> | Date | string
}
export type CartCreateWithoutItemsInput = {
id?: string
sessionId: string
createdAt?: Date | string
updatedAt?: Date | string
store: StoreCreateNestedOneWithoutCartsInput
user?: UserCreateNestedOneWithoutCartsInput
}
export type CartUncheckedCreateWithoutItemsInput = {
id?: string
storeId: string
sessionId: string
userId?: string | null
createdAt?: Date | string
updatedAt?: Date | string
}
export type CartCreateOrConnectWithoutItemsInput = {
where: CartWhereUniqueInput
create: XOR<CartCreateWithoutItemsInput, CartUncheckedCreateWithoutItemsInput>
}
export type CartUpsertWithoutItemsInput = {
update: XOR<CartUpdateWithoutItemsInput, CartUncheckedUpdateWithoutItemsInput>
create: XOR<CartCreateWithoutItemsInput, CartUncheckedCreateWithoutItemsInput>
where?: CartWhereInput
}
export type CartUpdateToOneWithWhereWithoutItemsInput = {
where?: CartWhereInput
data: XOR<CartUpdateWithoutItemsInput, CartUncheckedUpdateWithoutItemsInput>
}
export type CartUpdateWithoutItemsInput = {
id?: StringFieldUpdateOperationsInput | string
sessionId?: StringFieldUpdateOperationsInput | string
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
store?: StoreUpdateOneRequiredWithoutCartsNestedInput
user?: UserUpdateOneWithoutCartsNestedInput
}
export type CartUncheckedUpdateWithoutItemsInput = {
id?: StringFieldUpdateOperationsInput | string
storeId?: StringFieldUpdateOperationsInput | string
sessionId?: StringFieldUpdateOperationsInput | string
userId?: NullableStringFieldUpdateOperationsInput | string | null
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type UserCreateWithoutAddressInput = {
id?: string
name: string
email: string
passwordHash: string
role?: $Enums.Role
createdAt?: Date | string
updatedAt?: Date | string
store?: StoreCreateNestedOneWithoutUserInput
carts?: CartCreateNestedManyWithoutUserInput
accounts?: AccountCreateNestedManyWithoutUserInput
sessions?: SessionCreateNestedManyWithoutUserInput
}
export type UserUncheckedCreateWithoutAddressInput = {
id?: string
name: string
email: string
passwordHash: string
role?: $Enums.Role
createdAt?: Date | string
updatedAt?: Date | string
store?: StoreUncheckedCreateNestedOneWithoutUserInput
carts?: CartUncheckedCreateNestedManyWithoutUserInput
accounts?: AccountUncheckedCreateNestedManyWithoutUserInput
sessions?: SessionUncheckedCreateNestedManyWithoutUserInput
}
export type UserCreateOrConnectWithoutAddressInput = {
where: UserWhereUniqueInput
create: XOR<UserCreateWithoutAddressInput, UserUncheckedCreateWithoutAddressInput>
}
export type UserUpsertWithoutAddressInput = {
update: XOR<UserUpdateWithoutAddressInput, UserUncheckedUpdateWithoutAddressInput>
create: XOR<UserCreateWithoutAddressInput, UserUncheckedCreateWithoutAddressInput>
where?: UserWhereInput
}
export type UserUpdateToOneWithWhereWithoutAddressInput = {
where?: UserWhereInput
data: XOR<UserUpdateWithoutAddressInput, UserUncheckedUpdateWithoutAddressInput>
}
export type UserUpdateWithoutAddressInput = {
id?: StringFieldUpdateOperationsInput | string
name?: StringFieldUpdateOperationsInput | string
email?: StringFieldUpdateOperationsInput | string
passwordHash?: StringFieldUpdateOperationsInput | string
role?: EnumRoleFieldUpdateOperationsInput | $Enums.Role
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
store?: StoreUpdateOneWithoutUserNestedInput
carts?: CartUpdateManyWithoutUserNestedInput
accounts?: AccountUpdateManyWithoutUserNestedInput
sessions?: SessionUpdateManyWithoutUserNestedInput
}
export type UserUncheckedUpdateWithoutAddressInput = {
id?: StringFieldUpdateOperationsInput | string
name?: StringFieldUpdateOperationsInput | string
email?: StringFieldUpdateOperationsInput | string
passwordHash?: StringFieldUpdateOperationsInput | string
role?: EnumRoleFieldUpdateOperationsInput | $Enums.Role
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
store?: StoreUncheckedUpdateOneWithoutUserNestedInput
carts?: CartUncheckedUpdateManyWithoutUserNestedInput
accounts?: AccountUncheckedUpdateManyWithoutUserNestedInput
sessions?: SessionUncheckedUpdateManyWithoutUserNestedInput
}
export type StoreCreateWithoutProductsInput = {
id?: string
slug: string
stripeAccountId?: string | null
name?: string | null
website?: string | null
defaultSellingPreferences?: NullableJsonNullValueInput | InputJsonValue
createdAt?: Date | string
updatedAt?: Date | string
user: UserCreateNestedOneWithoutStoreInput
carts?: CartCreateNestedManyWithoutStoreInput
}
export type StoreUncheckedCreateWithoutProductsInput = {
id?: string
slug: string
stripeAccountId?: string | null
userId: string
name?: string | null
website?: string | null
defaultSellingPreferences?: NullableJsonNullValueInput | InputJsonValue
createdAt?: Date | string
updatedAt?: Date | string
carts?: CartUncheckedCreateNestedManyWithoutStoreInput
}
export type StoreCreateOrConnectWithoutProductsInput = {
where: StoreWhereUniqueInput
create: XOR<StoreCreateWithoutProductsInput, StoreUncheckedCreateWithoutProductsInput>
}
export type StoreUpsertWithoutProductsInput = {
update: XOR<StoreUpdateWithoutProductsInput, StoreUncheckedUpdateWithoutProductsInput>
create: XOR<StoreCreateWithoutProductsInput, StoreUncheckedCreateWithoutProductsInput>
where?: StoreWhereInput
}
export type StoreUpdateToOneWithWhereWithoutProductsInput = {
where?: StoreWhereInput
data: XOR<StoreUpdateWithoutProductsInput, StoreUncheckedUpdateWithoutProductsInput>
}
export type StoreUpdateWithoutProductsInput = {
id?: StringFieldUpdateOperationsInput | string
slug?: StringFieldUpdateOperationsInput | string
stripeAccountId?: NullableStringFieldUpdateOperationsInput | string | null
name?: NullableStringFieldUpdateOperationsInput | string | null
website?: NullableStringFieldUpdateOperationsInput | string | null
defaultSellingPreferences?: NullableJsonNullValueInput | InputJsonValue
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
user?: UserUpdateOneRequiredWithoutStoreNestedInput
carts?: CartUpdateManyWithoutStoreNestedInput
}
export type StoreUncheckedUpdateWithoutProductsInput = {
id?: StringFieldUpdateOperationsInput | string
slug?: StringFieldUpdateOperationsInput | string
stripeAccountId?: NullableStringFieldUpdateOperationsInput | string | null
userId?: StringFieldUpdateOperationsInput | string
name?: NullableStringFieldUpdateOperationsInput | string | null
website?: NullableStringFieldUpdateOperationsInput | string | null
defaultSellingPreferences?: NullableJsonNullValueInput | InputJsonValue
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
carts?: CartUncheckedUpdateManyWithoutStoreNestedInput
}
export type StoreCreateWithoutUserInput = {
id?: string
slug: string
stripeAccountId?: string | null
name?: string | null
website?: string | null
defaultSellingPreferences?: NullableJsonNullValueInput | InputJsonValue
createdAt?: Date | string
updatedAt?: Date | string
carts?: CartCreateNestedManyWithoutStoreInput
products?: ProductCacheCreateNestedManyWithoutStoreInput
}
export type StoreUncheckedCreateWithoutUserInput = {
id?: string
slug: string
stripeAccountId?: string | null
name?: string | null
website?: string | null
defaultSellingPreferences?: NullableJsonNullValueInput | InputJsonValue
createdAt?: Date | string
updatedAt?: Date | string
carts?: CartUncheckedCreateNestedManyWithoutStoreInput
products?: ProductCacheUncheckedCreateNestedManyWithoutStoreInput
}
export type StoreCreateOrConnectWithoutUserInput = {
where: StoreWhereUniqueInput
create: XOR<StoreCreateWithoutUserInput, StoreUncheckedCreateWithoutUserInput>
}
export type CartCreateWithoutUserInput = {
id?: string
sessionId: string
createdAt?: Date | string
updatedAt?: Date | string
store: StoreCreateNestedOneWithoutCartsInput
items?: CartItemCreateNestedManyWithoutCartInput
}
export type CartUncheckedCreateWithoutUserInput = {
id?: string
storeId: string
sessionId: string
createdAt?: Date | string
updatedAt?: Date | string
items?: CartItemUncheckedCreateNestedManyWithoutCartInput
}
export type CartCreateOrConnectWithoutUserInput = {
where: CartWhereUniqueInput
create: XOR<CartCreateWithoutUserInput, CartUncheckedCreateWithoutUserInput>
}
export type CartCreateManyUserInputEnvelope = {
data: CartCreateManyUserInput | CartCreateManyUserInput[]
}
export type UserAddressCreateWithoutUserInput = {
id?: string
name: string
street1: string
city: string
state: string
zip: string
country: string
phone?: string | null
createdAt?: Date | string
updatedAt?: Date | string
}
export type UserAddressUncheckedCreateWithoutUserInput = {
id?: string
name: string
street1: string
city: string
state: string
zip: string
country: string
phone?: string | null
createdAt?: Date | string
updatedAt?: Date | string
}
export type UserAddressCreateOrConnectWithoutUserInput = {
where: UserAddressWhereUniqueInput
create: XOR<UserAddressCreateWithoutUserInput, UserAddressUncheckedCreateWithoutUserInput>
}
export type AccountCreateWithoutUserInput = {
id?: string
type: string
provider: string
providerAccountId: string
refresh_token?: string | null
access_token?: string | null
expires_at?: number | null
token_type?: string | null
scope?: string | null
id_token?: string | null
session_state?: string | null
}
export type AccountUncheckedCreateWithoutUserInput = {
id?: string
type: string
provider: string
providerAccountId: string
refresh_token?: string | null
access_token?: string | null
expires_at?: number | null
token_type?: string | null
scope?: string | null
id_token?: string | null
session_state?: string | null
}
export type AccountCreateOrConnectWithoutUserInput = {
where: AccountWhereUniqueInput
create: XOR<AccountCreateWithoutUserInput, AccountUncheckedCreateWithoutUserInput>
}
export type AccountCreateManyUserInputEnvelope = {
data: AccountCreateManyUserInput | AccountCreateManyUserInput[]
}
export type SessionCreateWithoutUserInput = {
id?: string
sessionToken: string
expires: Date | string
createdAt?: Date | string
updatedAt?: Date | string
}
export type SessionUncheckedCreateWithoutUserInput = {
id?: string
sessionToken: string
expires: Date | string
createdAt?: Date | string
updatedAt?: Date | string
}
export type SessionCreateOrConnectWithoutUserInput = {
where: SessionWhereUniqueInput
create: XOR<SessionCreateWithoutUserInput, SessionUncheckedCreateWithoutUserInput>
}
export type SessionCreateManyUserInputEnvelope = {
data: SessionCreateManyUserInput | SessionCreateManyUserInput[]
}
export type StoreUpsertWithoutUserInput = {
update: XOR<StoreUpdateWithoutUserInput, StoreUncheckedUpdateWithoutUserInput>
create: XOR<StoreCreateWithoutUserInput, StoreUncheckedCreateWithoutUserInput>
where?: StoreWhereInput
}
export type StoreUpdateToOneWithWhereWithoutUserInput = {
where?: StoreWhereInput
data: XOR<StoreUpdateWithoutUserInput, StoreUncheckedUpdateWithoutUserInput>
}
export type StoreUpdateWithoutUserInput = {
id?: StringFieldUpdateOperationsInput | string
slug?: StringFieldUpdateOperationsInput | string
stripeAccountId?: NullableStringFieldUpdateOperationsInput | string | null
name?: NullableStringFieldUpdateOperationsInput | string | null
website?: NullableStringFieldUpdateOperationsInput | string | null
defaultSellingPreferences?: NullableJsonNullValueInput | InputJsonValue
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
carts?: CartUpdateManyWithoutStoreNestedInput
products?: ProductCacheUpdateManyWithoutStoreNestedInput
}
export type StoreUncheckedUpdateWithoutUserInput = {
id?: StringFieldUpdateOperationsInput | string
slug?: StringFieldUpdateOperationsInput | string
stripeAccountId?: NullableStringFieldUpdateOperationsInput | string | null
name?: NullableStringFieldUpdateOperationsInput | string | null
website?: NullableStringFieldUpdateOperationsInput | string | null
defaultSellingPreferences?: NullableJsonNullValueInput | InputJsonValue
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
carts?: CartUncheckedUpdateManyWithoutStoreNestedInput
products?: ProductCacheUncheckedUpdateManyWithoutStoreNestedInput
}
export type CartUpsertWithWhereUniqueWithoutUserInput = {
where: CartWhereUniqueInput
update: XOR<CartUpdateWithoutUserInput, CartUncheckedUpdateWithoutUserInput>
create: XOR<CartCreateWithoutUserInput, CartUncheckedCreateWithoutUserInput>
}
export type CartUpdateWithWhereUniqueWithoutUserInput = {
where: CartWhereUniqueInput
data: XOR<CartUpdateWithoutUserInput, CartUncheckedUpdateWithoutUserInput>
}
export type CartUpdateManyWithWhereWithoutUserInput = {
where: CartScalarWhereInput
data: XOR<CartUpdateManyMutationInput, CartUncheckedUpdateManyWithoutUserInput>
}
export type UserAddressUpsertWithoutUserInput = {
update: XOR<UserAddressUpdateWithoutUserInput, UserAddressUncheckedUpdateWithoutUserInput>
create: XOR<UserAddressCreateWithoutUserInput, UserAddressUncheckedCreateWithoutUserInput>
where?: UserAddressWhereInput
}
export type UserAddressUpdateToOneWithWhereWithoutUserInput = {
where?: UserAddressWhereInput
data: XOR<UserAddressUpdateWithoutUserInput, UserAddressUncheckedUpdateWithoutUserInput>
}
export type UserAddressUpdateWithoutUserInput = {
id?: StringFieldUpdateOperationsInput | string
name?: StringFieldUpdateOperationsInput | string
street1?: StringFieldUpdateOperationsInput | string
city?: StringFieldUpdateOperationsInput | string
state?: StringFieldUpdateOperationsInput | string
zip?: StringFieldUpdateOperationsInput | string
country?: StringFieldUpdateOperationsInput | string
phone?: NullableStringFieldUpdateOperationsInput | string | null
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type UserAddressUncheckedUpdateWithoutUserInput = {
id?: StringFieldUpdateOperationsInput | string
name?: StringFieldUpdateOperationsInput | string
street1?: StringFieldUpdateOperationsInput | string
city?: StringFieldUpdateOperationsInput | string
state?: StringFieldUpdateOperationsInput | string
zip?: StringFieldUpdateOperationsInput | string
country?: StringFieldUpdateOperationsInput | string
phone?: NullableStringFieldUpdateOperationsInput | string | null
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type AccountUpsertWithWhereUniqueWithoutUserInput = {
where: AccountWhereUniqueInput
update: XOR<AccountUpdateWithoutUserInput, AccountUncheckedUpdateWithoutUserInput>
create: XOR<AccountCreateWithoutUserInput, AccountUncheckedCreateWithoutUserInput>
}
export type AccountUpdateWithWhereUniqueWithoutUserInput = {
where: AccountWhereUniqueInput
data: XOR<AccountUpdateWithoutUserInput, AccountUncheckedUpdateWithoutUserInput>
}
export type AccountUpdateManyWithWhereWithoutUserInput = {
where: AccountScalarWhereInput
data: XOR<AccountUpdateManyMutationInput, AccountUncheckedUpdateManyWithoutUserInput>
}
export type AccountScalarWhereInput = {
AND?: AccountScalarWhereInput | AccountScalarWhereInput[]
OR?: AccountScalarWhereInput[]
NOT?: AccountScalarWhereInput | AccountScalarWhereInput[]
id?: StringFilter<"Account"> | string
userId?: StringFilter<"Account"> | string
type?: StringFilter<"Account"> | string
provider?: StringFilter<"Account"> | string
providerAccountId?: StringFilter<"Account"> | string
refresh_token?: StringNullableFilter<"Account"> | string | null
access_token?: StringNullableFilter<"Account"> | string | null
expires_at?: IntNullableFilter<"Account"> | number | null
token_type?: StringNullableFilter<"Account"> | string | null
scope?: StringNullableFilter<"Account"> | string | null
id_token?: StringNullableFilter<"Account"> | string | null
session_state?: StringNullableFilter<"Account"> | string | null
}
export type SessionUpsertWithWhereUniqueWithoutUserInput = {
where: SessionWhereUniqueInput
update: XOR<SessionUpdateWithoutUserInput, SessionUncheckedUpdateWithoutUserInput>
create: XOR<SessionCreateWithoutUserInput, SessionUncheckedCreateWithoutUserInput>
}
export type SessionUpdateWithWhereUniqueWithoutUserInput = {
where: SessionWhereUniqueInput
data: XOR<SessionUpdateWithoutUserInput, SessionUncheckedUpdateWithoutUserInput>
}
export type SessionUpdateManyWithWhereWithoutUserInput = {
where: SessionScalarWhereInput
data: XOR<SessionUpdateManyMutationInput, SessionUncheckedUpdateManyWithoutUserInput>
}
export type SessionScalarWhereInput = {
AND?: SessionScalarWhereInput | SessionScalarWhereInput[]
OR?: SessionScalarWhereInput[]
NOT?: SessionScalarWhereInput | SessionScalarWhereInput[]
id?: StringFilter<"Session"> | string
sessionToken?: StringFilter<"Session"> | string
userId?: StringFilter<"Session"> | string
expires?: DateTimeFilter<"Session"> | Date | string
createdAt?: DateTimeFilter<"Session"> | Date | string
updatedAt?: DateTimeFilter<"Session"> | Date | string
}
export type UserCreateWithoutSessionsInput = {
id?: string
name: string
email: string
passwordHash: string
role?: $Enums.Role
createdAt?: Date | string
updatedAt?: Date | string
store?: StoreCreateNestedOneWithoutUserInput
carts?: CartCreateNestedManyWithoutUserInput
address?: UserAddressCreateNestedOneWithoutUserInput
accounts?: AccountCreateNestedManyWithoutUserInput
}
export type UserUncheckedCreateWithoutSessionsInput = {
id?: string
name: string
email: string
passwordHash: string
role?: $Enums.Role
createdAt?: Date | string
updatedAt?: Date | string
store?: StoreUncheckedCreateNestedOneWithoutUserInput
carts?: CartUncheckedCreateNestedManyWithoutUserInput
address?: UserAddressUncheckedCreateNestedOneWithoutUserInput
accounts?: AccountUncheckedCreateNestedManyWithoutUserInput
}
export type UserCreateOrConnectWithoutSessionsInput = {
where: UserWhereUniqueInput
create: XOR<UserCreateWithoutSessionsInput, UserUncheckedCreateWithoutSessionsInput>
}
export type UserUpsertWithoutSessionsInput = {
update: XOR<UserUpdateWithoutSessionsInput, UserUncheckedUpdateWithoutSessionsInput>
create: XOR<UserCreateWithoutSessionsInput, UserUncheckedCreateWithoutSessionsInput>
where?: UserWhereInput
}
export type UserUpdateToOneWithWhereWithoutSessionsInput = {
where?: UserWhereInput
data: XOR<UserUpdateWithoutSessionsInput, UserUncheckedUpdateWithoutSessionsInput>
}
export type UserUpdateWithoutSessionsInput = {
id?: StringFieldUpdateOperationsInput | string
name?: StringFieldUpdateOperationsInput | string
email?: StringFieldUpdateOperationsInput | string
passwordHash?: StringFieldUpdateOperationsInput | string
role?: EnumRoleFieldUpdateOperationsInput | $Enums.Role
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
store?: StoreUpdateOneWithoutUserNestedInput
carts?: CartUpdateManyWithoutUserNestedInput
address?: UserAddressUpdateOneWithoutUserNestedInput
accounts?: AccountUpdateManyWithoutUserNestedInput
}
export type UserUncheckedUpdateWithoutSessionsInput = {
id?: StringFieldUpdateOperationsInput | string
name?: StringFieldUpdateOperationsInput | string
email?: StringFieldUpdateOperationsInput | string
passwordHash?: StringFieldUpdateOperationsInput | string
role?: EnumRoleFieldUpdateOperationsInput | $Enums.Role
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
store?: StoreUncheckedUpdateOneWithoutUserNestedInput
carts?: CartUncheckedUpdateManyWithoutUserNestedInput
address?: UserAddressUncheckedUpdateOneWithoutUserNestedInput
accounts?: AccountUncheckedUpdateManyWithoutUserNestedInput
}
export type UserCreateWithoutAccountsInput = {
id?: string
name: string
email: string
passwordHash: string
role?: $Enums.Role
createdAt?: Date | string
updatedAt?: Date | string
store?: StoreCreateNestedOneWithoutUserInput
carts?: CartCreateNestedManyWithoutUserInput
address?: UserAddressCreateNestedOneWithoutUserInput
sessions?: SessionCreateNestedManyWithoutUserInput
}
export type UserUncheckedCreateWithoutAccountsInput = {
id?: string
name: string
email: string
passwordHash: string
role?: $Enums.Role
createdAt?: Date | string
updatedAt?: Date | string
store?: StoreUncheckedCreateNestedOneWithoutUserInput
carts?: CartUncheckedCreateNestedManyWithoutUserInput
address?: UserAddressUncheckedCreateNestedOneWithoutUserInput
sessions?: SessionUncheckedCreateNestedManyWithoutUserInput
}
export type UserCreateOrConnectWithoutAccountsInput = {
where: UserWhereUniqueInput
create: XOR<UserCreateWithoutAccountsInput, UserUncheckedCreateWithoutAccountsInput>
}
export type UserUpsertWithoutAccountsInput = {
update: XOR<UserUpdateWithoutAccountsInput, UserUncheckedUpdateWithoutAccountsInput>
create: XOR<UserCreateWithoutAccountsInput, UserUncheckedCreateWithoutAccountsInput>
where?: UserWhereInput
}
export type UserUpdateToOneWithWhereWithoutAccountsInput = {
where?: UserWhereInput
data: XOR<UserUpdateWithoutAccountsInput, UserUncheckedUpdateWithoutAccountsInput>
}
export type UserUpdateWithoutAccountsInput = {
id?: StringFieldUpdateOperationsInput | string
name?: StringFieldUpdateOperationsInput | string
email?: StringFieldUpdateOperationsInput | string
passwordHash?: StringFieldUpdateOperationsInput | string
role?: EnumRoleFieldUpdateOperationsInput | $Enums.Role
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
store?: StoreUpdateOneWithoutUserNestedInput
carts?: CartUpdateManyWithoutUserNestedInput
address?: UserAddressUpdateOneWithoutUserNestedInput
sessions?: SessionUpdateManyWithoutUserNestedInput
}
export type UserUncheckedUpdateWithoutAccountsInput = {
id?: StringFieldUpdateOperationsInput | string
name?: StringFieldUpdateOperationsInput | string
email?: StringFieldUpdateOperationsInput | string
passwordHash?: StringFieldUpdateOperationsInput | string
role?: EnumRoleFieldUpdateOperationsInput | $Enums.Role
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
store?: StoreUncheckedUpdateOneWithoutUserNestedInput
carts?: CartUncheckedUpdateManyWithoutUserNestedInput
address?: UserAddressUncheckedUpdateOneWithoutUserNestedInput
sessions?: SessionUncheckedUpdateManyWithoutUserNestedInput
}
export type CartCreateManyStoreInput = {
id?: string
sessionId: string
userId?: string | null
createdAt?: Date | string
updatedAt?: Date | string
}
export type ProductCacheCreateManyStoreInput = {
id?: string
stripeProductId: string
stripePriceId: string
name: string
description?: string | null
unitAmount: number
currency: string
active?: boolean
createdAt?: Date | string
updatedAt?: Date | string
}
export type CartUpdateWithoutStoreInput = {
id?: StringFieldUpdateOperationsInput | string
sessionId?: StringFieldUpdateOperationsInput | string
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
user?: UserUpdateOneWithoutCartsNestedInput
items?: CartItemUpdateManyWithoutCartNestedInput
}
export type CartUncheckedUpdateWithoutStoreInput = {
id?: StringFieldUpdateOperationsInput | string
sessionId?: StringFieldUpdateOperationsInput | string
userId?: NullableStringFieldUpdateOperationsInput | string | null
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
items?: CartItemUncheckedUpdateManyWithoutCartNestedInput
}
export type CartUncheckedUpdateManyWithoutStoreInput = {
id?: StringFieldUpdateOperationsInput | string
sessionId?: StringFieldUpdateOperationsInput | string
userId?: NullableStringFieldUpdateOperationsInput | string | null
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type ProductCacheUpdateWithoutStoreInput = {
id?: StringFieldUpdateOperationsInput | string
stripeProductId?: StringFieldUpdateOperationsInput | string
stripePriceId?: StringFieldUpdateOperationsInput | string
name?: StringFieldUpdateOperationsInput | string
description?: NullableStringFieldUpdateOperationsInput | string | null
unitAmount?: IntFieldUpdateOperationsInput | number
currency?: StringFieldUpdateOperationsInput | string
active?: BoolFieldUpdateOperationsInput | boolean
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type ProductCacheUncheckedUpdateWithoutStoreInput = {
id?: StringFieldUpdateOperationsInput | string
stripeProductId?: StringFieldUpdateOperationsInput | string
stripePriceId?: StringFieldUpdateOperationsInput | string
name?: StringFieldUpdateOperationsInput | string
description?: NullableStringFieldUpdateOperationsInput | string | null
unitAmount?: IntFieldUpdateOperationsInput | number
currency?: StringFieldUpdateOperationsInput | string
active?: BoolFieldUpdateOperationsInput | boolean
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type ProductCacheUncheckedUpdateManyWithoutStoreInput = {
id?: StringFieldUpdateOperationsInput | string
stripeProductId?: StringFieldUpdateOperationsInput | string
stripePriceId?: StringFieldUpdateOperationsInput | string
name?: StringFieldUpdateOperationsInput | string
description?: NullableStringFieldUpdateOperationsInput | string | null
unitAmount?: IntFieldUpdateOperationsInput | number
currency?: StringFieldUpdateOperationsInput | string
active?: BoolFieldUpdateOperationsInput | boolean
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type CartItemCreateManyCartInput = {
id?: string
productId: string
priceId: string
name: string
unitAmount: number
currency: string
quantity: number
createdAt?: Date | string
updatedAt?: Date | string
}
export type CartItemUpdateWithoutCartInput = {
id?: StringFieldUpdateOperationsInput | string
productId?: StringFieldUpdateOperationsInput | string
priceId?: StringFieldUpdateOperationsInput | string
name?: StringFieldUpdateOperationsInput | string
unitAmount?: IntFieldUpdateOperationsInput | number
currency?: StringFieldUpdateOperationsInput | string
quantity?: IntFieldUpdateOperationsInput | number
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type CartItemUncheckedUpdateWithoutCartInput = {
id?: StringFieldUpdateOperationsInput | string
productId?: StringFieldUpdateOperationsInput | string
priceId?: StringFieldUpdateOperationsInput | string
name?: StringFieldUpdateOperationsInput | string
unitAmount?: IntFieldUpdateOperationsInput | number
currency?: StringFieldUpdateOperationsInput | string
quantity?: IntFieldUpdateOperationsInput | number
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type CartItemUncheckedUpdateManyWithoutCartInput = {
id?: StringFieldUpdateOperationsInput | string
productId?: StringFieldUpdateOperationsInput | string
priceId?: StringFieldUpdateOperationsInput | string
name?: StringFieldUpdateOperationsInput | string
unitAmount?: IntFieldUpdateOperationsInput | number
currency?: StringFieldUpdateOperationsInput | string
quantity?: IntFieldUpdateOperationsInput | number
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type CartCreateManyUserInput = {
id?: string
storeId: string
sessionId: string
createdAt?: Date | string
updatedAt?: Date | string
}
export type AccountCreateManyUserInput = {
id?: string
type: string
provider: string
providerAccountId: string
refresh_token?: string | null
access_token?: string | null
expires_at?: number | null
token_type?: string | null
scope?: string | null
id_token?: string | null
session_state?: string | null
}
export type SessionCreateManyUserInput = {
id?: string
sessionToken: string
expires: Date | string
createdAt?: Date | string
updatedAt?: Date | string
}
export type CartUpdateWithoutUserInput = {
id?: StringFieldUpdateOperationsInput | string
sessionId?: StringFieldUpdateOperationsInput | string
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
store?: StoreUpdateOneRequiredWithoutCartsNestedInput
items?: CartItemUpdateManyWithoutCartNestedInput
}
export type CartUncheckedUpdateWithoutUserInput = {
id?: StringFieldUpdateOperationsInput | string
storeId?: StringFieldUpdateOperationsInput | string
sessionId?: StringFieldUpdateOperationsInput | string
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
items?: CartItemUncheckedUpdateManyWithoutCartNestedInput
}
export type CartUncheckedUpdateManyWithoutUserInput = {
id?: StringFieldUpdateOperationsInput | string
storeId?: StringFieldUpdateOperationsInput | string
sessionId?: StringFieldUpdateOperationsInput | string
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type AccountUpdateWithoutUserInput = {
id?: StringFieldUpdateOperationsInput | string
type?: StringFieldUpdateOperationsInput | string
provider?: StringFieldUpdateOperationsInput | string
providerAccountId?: StringFieldUpdateOperationsInput | string
refresh_token?: NullableStringFieldUpdateOperationsInput | string | null
access_token?: NullableStringFieldUpdateOperationsInput | string | null
expires_at?: NullableIntFieldUpdateOperationsInput | number | null
token_type?: NullableStringFieldUpdateOperationsInput | string | null
scope?: NullableStringFieldUpdateOperationsInput | string | null
id_token?: NullableStringFieldUpdateOperationsInput | string | null
session_state?: NullableStringFieldUpdateOperationsInput | string | null
}
export type AccountUncheckedUpdateWithoutUserInput = {
id?: StringFieldUpdateOperationsInput | string
type?: StringFieldUpdateOperationsInput | string
provider?: StringFieldUpdateOperationsInput | string
providerAccountId?: StringFieldUpdateOperationsInput | string
refresh_token?: NullableStringFieldUpdateOperationsInput | string | null
access_token?: NullableStringFieldUpdateOperationsInput | string | null
expires_at?: NullableIntFieldUpdateOperationsInput | number | null
token_type?: NullableStringFieldUpdateOperationsInput | string | null
scope?: NullableStringFieldUpdateOperationsInput | string | null
id_token?: NullableStringFieldUpdateOperationsInput | string | null
session_state?: NullableStringFieldUpdateOperationsInput | string | null
}
export type AccountUncheckedUpdateManyWithoutUserInput = {
id?: StringFieldUpdateOperationsInput | string
type?: StringFieldUpdateOperationsInput | string
provider?: StringFieldUpdateOperationsInput | string
providerAccountId?: StringFieldUpdateOperationsInput | string
refresh_token?: NullableStringFieldUpdateOperationsInput | string | null
access_token?: NullableStringFieldUpdateOperationsInput | string | null
expires_at?: NullableIntFieldUpdateOperationsInput | number | null
token_type?: NullableStringFieldUpdateOperationsInput | string | null
scope?: NullableStringFieldUpdateOperationsInput | string | null
id_token?: NullableStringFieldUpdateOperationsInput | string | null
session_state?: NullableStringFieldUpdateOperationsInput | string | null
}
export type SessionUpdateWithoutUserInput = {
id?: StringFieldUpdateOperationsInput | string
sessionToken?: StringFieldUpdateOperationsInput | string
expires?: DateTimeFieldUpdateOperationsInput | Date | string
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type SessionUncheckedUpdateWithoutUserInput = {
id?: StringFieldUpdateOperationsInput | string
sessionToken?: StringFieldUpdateOperationsInput | string
expires?: DateTimeFieldUpdateOperationsInput | Date | string
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
}
export type SessionUncheckedUpdateManyWithoutUserInput = {
id?: StringFieldUpdateOperationsInput | string
sessionToken?: StringFieldUpdateOperationsInput | string
expires?: DateTimeFieldUpdateOperationsInput | Date | string
createdAt?: DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string
}
/**
* Batch Payload for updateMany & deleteMany & createMany
*/
export type BatchPayload = {
count: number
}
/**
* DMMF
*/
export const dmmf: runtime.BaseDMMF
}